PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → Etats & Requêtes → Problème source de données.
Problème source de données.
Débuté par lepoix, 24 mar. 2014 11:06 - Aucune réponse
Posté le 24 mars 2014 - 11:06
Bonjour à tous,
j'ai un soucis de requête SQL. Pouvez vous me dire si mon code est correct?

Merci

GLOBAL
NOM_TXt est une chaîne
No_Fic est un entier=-1
vch est une chaîne
FAM_PIC est une chaîne
gsGPCodepiece est une chaîne
gsDesignation est une chaîne
gsCodeClient est une chaîne
gsDateSortie est une chaîne
gsGest est une chaîne
gsCodeFamille est une chaîne
gsCodeAct est une chaîne
gsModelDT est un entier
gsINDPL est une chaîne
gsINDPCe est une chaîne
gsINDGAM est une chaîne
gsDIM1DEBIT est un monétaire
gsDIM2DEBIT est un monétaire
gsARTBLOC est un entier
gsARTMLOC est un entier
gsPHASE est un entier
gsVvallide est un entier
gsVrien est une chaîne
gsVDateSO est une chaîne
gsVblocage1 est une chaîne
gsVcodeblocage1 est une chaîne
gsVblocage2 est une chaîne
gsVcodeblocage2 est une chaîne

NOM_TXT = "G:\Clipper local\extract\DT.csv"
No_Fic = fOuvre(NOM_TXT,foCréation)
//entêtes des colonnes
vch = "Famille PIC;Code de la pièce Cyclée;Désignation article;Code Client;Date Sortie;Gestionnaire;Code Famille;Code activité;Modèle dossier technique;Indice Plan;Indice pièce;Indice Gamme;Pièce;Dim 1 débit;Dim 2 débit;Blocage Pièce cyclée;Blocage article;Phase"
fEcritLigne(No_Fic,vch)

sdGsdDT est une Source de Données

HExécuteRequêteSQL("sdGsdDT","SELECT ART.LIBRETXT5 AS REQ_FPIC, ART.GPCOPIECE AS REQ_CPIECE, ART.DESA1 AS REQ_DESA, ART.COCLI AS REQ_COCLI, ART.DATESO AS REQ_DATESO, ARTICLEM.GESTIONNAIRE AS REQ_GEST, ART.COFA AS REQ_COFA, ART.COACT AS REQ_COACT,AR.MODELEDT AS REQ_MODELEDT,ENGAPI.INDPL AS REQ_INDPL,ENGAPI.INDPCE AS REQ_INDPCE,ENGAPI.INDGAM AS REQ_INDGAM,NOMENPC.NPCE AS REQ_NPCE,DIMNOMEN.DIM1DEBIT AS REQ_DIM1DEB, DIMNOMEN.DIM2DEBIT AS REQ_DIM2DEB, ART.BLOCAGE AS REQ_BLOCAPC, ARTICLEM.BLOCAGE AS REQ_BLOCAART,NOMENPC.PHASE AS REQ_PHASE FROM ART,ARTICLEM,ENGAPI,NOMENPC,DIMNOMENPC WHERE DIMNOMEN.NCCLEUNIK = NOMENPC.NCCLEUNIK AND NOMENPC.GPCOPIECE = ART.GPCOPIECE AND ENGAPI.GPCOPIECE = ART.GPCOPIECE AND GAPIECE.GPCOPIECE = ART.GPCOPIECE AND ARTICLEM.COART = ART.GPCOPIECE")
HLitPremier("sdGsdDT")

TANTQUE PAS HEnDehors("sdGsdDT")

gsVvallide=0
gsVrien=sdGsdDT.REQ_FPIC
gsVrien=sdGsdDT.REQ_CPIECE
gsVrien=sdGsdDT.REQ_DESA
gsVrien=sdGsdDT.REQ_COCLI
gsVrien=sdGsdDT.REQ_DATESO
gsVrien=sdGsdDT.REQ_GEST
gsVrien=sdGsdDT.REQ_COFA
gsVrien=sdGsdDT.REQ_COACT
gsVrien=sdGsdDT.REQ_MODELEDT
gsVrien=sdGsdDT.REQ_INDPL
gsVrien=sdGsdDT.REQ_INDPCE
gsVrien=sdGsdDT.REQ_INDGAM
gsVrien=sdGsdDT.REQ_NPCE
gsVrien=sdGsdDT.REQ_DIM1DEB
gsVrien=sdGsdDT.REQ_DIM2DEB
gsVrien=sdGsdDT.REQ_BLOCAPC
gsVrien=sdGsdDT.REQ_BLOCAART
gsVrien=sdGsdDT.REQ_PHASE

SI DateValide(sdGsdDT.REQ_DATESO) ALORS
gsVDateSO=DateVersChaîne(sdGsdDT.REQ_DATESO)
SINON
gsVDateSO=""
FIN

SI sdGsdDT.REQ_BLOCAPC<>0 ALORS
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC))=1 ALORS
gsVcodeblocage1="BLOC00"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC)
SINON
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC))=2 ALORS
gsVcodeblocage1="BLOC0"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC)
SINON
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC))=3 ALORS
gsVcodeblocage1="BLOC"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAPC)
FIN
FIN
FIN
SI HLitRecherchePremier("PARAM","COPAR",gsVcodeblocage1) ALORS
gsVblocage1=SansEspace(PARAM.VALPAR)
FIN
FIN

SI sdGsdDT.REQ_BLOCAART<>0 ALORS
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART))=1 ALORS
gsVcodeblocage2="BLOC00"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART)
SINON
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART))=2 ALORS
gsVcodeblocage2="BLOC0"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART)
SINON
SI Taille(NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART))=3 ALORS
gsVcodeblocage2="BLOC"+NumériqueVersChaîne(sdGsdDT.REQ_BLOCAART)
FIN
FIN
FIN
SI HLitRecherchePremier("PARAM","COPAR",gsVcodeblocage2) ALORS
gsVblocage2=SansEspace(PARAM.VALPAR)
FIN
FIN

SI gsVvallide<>1 ALORS
vch = sdGsdDT.REQ_FPIC +";"+ Remplace(SansEspace(sdGsdDT.REQ_CPIECE),";"," ")+";"+Remplace(SansEspace(sdGsdDT.REQ_DESA),";"," ")+";"+ sdGsdDT.REQ_COCLI+";"+ gsVDateSO+";"+ Remplace(SansEspace(sdGsdDT.REQ_GEST),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_COFA),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_COACT),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_MODELDT),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_INDPL),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_INDPCE),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_INDGAM),";"," ")+";"+ Remplace(SansEspace(sdGsdDT.REQ_NPCE),";"," ")+";"+sdGsdDT.REQ_DIM1DEB+";"+sdGsdDT.REQ_DIM2DEB+";"+gsVblocage1+";"+gsVblocage2+";"+ sdGsdDT.REQ_PHASE
fEcritLigne(No_Fic,vch)
FIN
HLitSuivant("sdGsdDT")
FIN

HAnnuleDéclaration("sdGsdDT")
fFerme(No_Fic)
iFermeEtat()