DSD Run Error
Posted: Wed Jun 11, 2008 2:46 am
We are running some jobs which are doing simple transformations from text file to text file.
The following error occurs when lots of jobs are run together
DataStage Job 474 Phantom 1418
Program "DSD.RUN": Line 2166, Variable previously undefined. Zero length string used.
Program "DSD.RUN": Line 2166, Variable previously undefined. Zero length string used.
It always occurs in the same job, and I believe it is due to the definition of the stage variables
Value - Variable being set
oldcle - "-1"
cle - ""
compteur - (date()*86400) + Time()
codecif - ""
numligne - 1
Questions
Is there anyway I can know what is happening at line 2166
Should I initialise the variables to something other than "". Does initialising them actually do anything ?
BTW I have inherited this code. If I fully understood it I don't think I would have done it this way![Wink :wink:](./images/smilies/icon_wink.gif)
The following error occurs when lots of jobs are run together
DataStage Job 474 Phantom 1418
Program "DSD.RUN": Line 2166, Variable previously undefined. Zero length string used.
Program "DSD.RUN": Line 2166, Variable previously undefined. Zero length string used.
It always occurs in the same job, and I believe it is due to the definition of the stage variables
Value - Variable being set
- cle - oldcle
(If IsNull(DonneeCible_vers_MiseEnForme.S1_CIF_ID) Then "" Else DonneeCible_vers_MiseEnForme.S1_CIF_ID) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.BUSINESS_UNIT) Then "" Else DonneeCible_vers_MiseEnForme.BUSINESS_UNIT) : @VM :(If IsNull(DonneeCible_vers_MiseEnForme.JOURNAL_DATE) Then "" Else DonneeCible_vers_MiseEnForme.JOURNAL_DATE) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.DOC_TYPE) Then "" Else DonneeCible_vers_MiseEnForme.DOC_TYPE) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.LEDGER_GROUP) Then "" Else DonneeCible_vers_MiseEnForme.LEDGER_GROUP) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.TRANS_REF_NUM) Then "" Else DonneeCible_vers_MiseEnForme.TRANS_REF_NUM) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.S1_DATE_ORIGIN) Then "" Else DonneeCible_vers_MiseEnForme.S1_DATE_ORIGIN) : @VM : (If IsNull(DonneeCible_vers_MiseEnForme.LEDGER) Then "" Else DonneeCible_vers_MiseEnForme.LEDGER) - cle
if cle <> oldcle then compteur+1 else compteur - compteur
if cle <> oldcle then DonneeCible_vers_MiseEnForme.S1_ID_FLUX : DonneeCible_vers_MiseEnForme.S1_NO_EMISSION : "_" : DonneeCible_vers_MiseEnForme.S1_ID_SSFLUX : "_" : compteur else codecif ) - codecif
if cle <> oldcle then 1 else numligne+1 - numligne
oldcle - "-1"
cle - ""
compteur - (date()*86400) + Time()
codecif - ""
numligne - 1
Questions
Is there anyway I can know what is happening at line 2166
Should I initialise the variables to something other than "". Does initialising them actually do anything ?
BTW I have inherited this code. If I fully understood it I don't think I would have done it this way
![Wink :wink:](./images/smilies/icon_wink.gif)