Compilation Problem

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
samba
Premium Member
Premium Member
Posts: 62
Joined: Wed Dec 07, 2005 11:44 am

Compilation Problem

Post by samba »

I got questions with a job which is developed in DEV env and able to successfully run the job in Development. Now when I exported the job into test envinorment, I am able to compile the job with my user name but my dsadm is not able to compile it. Could anybody help me with this situation.



The following is the Compilation Error:

Error compiling parallel transformer MDWSCMDeptExpReport.xfmDeptPerExpOutput from transformer compilation follows:##I TFCN 000001 14:10:47(000) <main_program> Ascential DataStage(tm) Enterprise Edition 7.5.1ACopyright (c) 2004, 1997-2004 Ascential Software Corporation.All Rights Reserved##I TUTL 000031 14:10:47(001) <main_program> The open files limit is 2000; raising to 2147483647.##I TOSH 000002 14:10:47(002) <main_program> orchgeneral: loaded##I TOSH 000002 14:10:47(003) <main_program> orchsort: loaded##I TOSH 000002 14:10:47(004) <main_program> orchstats: loaded##I TFSC 000001 14:10:47(007) <main_program> APT configuration file: /opt/Ascential/DataStage/Configurations/default.apt##W TCOS 000049 14:10:48(000) <main_program> Parameter specified but not used in flow: DSPXWorkingDir##W TFCP 000000 14:10:48(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".##E TFCP 000026 14:10:48(003) <transform> Error when checking composite operator: Setting null to this non-nullable field: StageVar0_svMonth.##E TFSR 000019 14:10:48(004) <main_program> Could not check all operators because of previous error(s)##E TCOS 000029 14:10:48(005) <main_program> Creation of a step finished with status = FAILED. (MDWSCMDeptExpReport.xfmDeptPerExp)*** Internal Generated Transformer Code follows:0001: //0002: // Generated file to implement the V0S515_MDWSCMDeptExpReport_xfmDeptPerExp transform operator.0003: //0004: 0005: // define our input/output link names0006: inputname 0 inxfmDeptPerExp;0007: outputname 0 inoraDeptPerExp;0008: outputname 1 inoraSTG_DEPT_PRCREMT_EXP;0009: 0010: global {0011: // Job parameter declaration0012: string PROC_AUDIT_ID;0013: string DSJobStartTimestamp;0014: }0015: 0016: initialize {0017: // define our row rejected variable0018: int8 RowRejected0;0019: 0020: // define our null set variable0021: int8 NullSetVar0;0022: 0023: // declare our intermediate variables for this section0024: string InterVar0_0;0025: string InterVar0_1;0026: string InterVar0_2;0027: string InterVar0_3;0028: string InterVar0_4;0029: string InterVar0_5;0030: string InterVar0_6;0031: string InterVar0_7;0032: string InterVar0_8;0033: string InterVar0_9;0034: string InterVar0_10;0035: string InterVar0_11;0036: string InterVar0_12;0037: string InterVar0_13;0038: string InterVar0_14;0039: string InterVar0_15;0040: string InterVar0_16;0041: string InterVar0_17;0042: string InterVar0_18;0043: string InterVar0_19;0044: string InterVar0_20;0045: string InterVar0_21;0046: string InterVar0_22;0047: string InterVar0_23;0048: string InterVar0_24;0049: string InterVar0_25;0050: string InterVar0_26;0051: string InterVar0_27;0052: date InterVar0_28;0053: date InterVar0_29;0054: string InterVar0_30;0055: string InterVar0_31;0056: string InterVar0_32;0057: string InterVar0_33;0058: string InterVar0_34;0059: string InterVar0_35;0060: string InterVar0_36;0061: string InterVar0_37;0062: string InterVar0_39;0063: string InterVar0_40;0064: string InterVar0_41;0065: 0066: // initialise constant values which require conversion0067: InterVar0_0 = " ";0068: InterVar0_1 = "January";0069: InterVar0_2 = "01";0070: InterVar0_3 = "February";0071: InterVar0_4 = "02";0072: InterVar0_5 = "March";0073: InterVar0_6 = "03";0074: InterVar0_7 = "April";0075: InterVar0_8 = "04";0076: InterVar0_9 = "May";0077: InterVar0_10 = "05";0078: InterVar0_11 = "June";0079: InterVar0_12 = "06";0080: InterVar0_13 = "July";0081: InterVar0_14 = "07";0082: InterVar0_15 = "August";0083: InterVar0_16 = "08";0084: InterVar0_17 = "September";0085: InterVar0_18 = "09";0086: InterVar0_19 = "October";0087: InterVar0_20 = "10";0088: InterVar0_21 = "November";0089: InterVar0_22 = "11";0090: InterVar0_23 = "December";0091: InterVar0_24 = "12";0092: InterVar0_25 = "-";0093: InterVar0_26 = "Date";0094: InterVar0_27 = "%yyyy-%mm-%dd";0095: InterVar0_28 = date_from_string("Y");0096: InterVar0_29 = date_from_string("N");0097: InterVar0_30 = "%mm-%dd-%yyyy";0098: InterVar0_31 = "Y";0099: InterVar0_32 = "N";0100: InterVar0_33 = "Company";0101: InterVar0_34 = "AP";0102: InterVar0_35 = " 00:00:00";0103: InterVar0_36 = "%yyyy-%mm-%dd %hh:%nn:%ss";0104: InterVar0_37 = "%mm-%dd-%yyyy %hh:%nn:%ss";0105: InterVar0_39 = "";0106: InterVar0_40 = ",";0107: InterVar0_41 = "I";0108: // Stage variable declaration and initialisation0109: string StageVar0_svAlphaDate;0110: StageVar0_svAlphaDate = "";0111: string StageVar0_svMonth;0112: StageVar0_svMonth = "";0113: string StageVar0_svDay;0114: StageVar0_svDay = "";0115: string StageVar0_svYear;0116: StageVar0_svYear = "";0117: string StageVar0_svDate;0118: StageVar0_svDate = "";0119: date StageVar0_svValidDate;0120: StageVar0_svValidDate = date_from_string("2001-01-01");0121: string StageVar0_StageVar;0122: StageVar0_StageVar = "";0123: }0124: 0125: mainloop {0126: // initialise our row rejected variable0127: RowRejected0 = 1;0128: 0129: // declare our intermediate variables for this section0130: string InterVar0_38;0131: 0132: // evaluate the stage variables first0133: StageVar0_svAlphaDate = substring_by_delimiter(inxfmDeptPerExp.AlphaDate , InterVar0_0 , 1 , 1);0134: NullSetVar0 = 0;0135: if ((StageVar0_svAlphaDate == InterVar0_1)) {0136: StageVar0_svMonth = InterVar0_2;0137: } else {0138: if ((StageVar0_svAlphaDate == InterVar0_3)) {0139: StageVar0_svMonth = InterVar0_4;0140: } else {0141: if ((StageVar0_svAlphaDate == InterVar0_5)) {0142: StageVar0_svMonth = InterVar0_6;0143: } else {0144: if ((StageVar0_svAlphaDate == InterVar0_7)) {0145: StageVar0_svMonth = InterVar0_8;0146: } else {0147: if ((StageVar0_svAlphaDate == InterVar0_9)) {0148: StageVar0_svMonth = InterVar0_10;0149: } else {0150: if ((StageVar0_svAlphaDate == InterVar0_11)) {0151: StageVar0_svMonth = InterVar0_12;0152: } else {0153: if ((StageVar0_svAlphaDate == InterVar0_13)) {0154: StageVar0_svMonth = InterVar0_14;0155: } else {0156: if ((StageVar0_svAlphaDate == InterVar0_15)) {0157: StageVar0_svMonth = InterVar0_16;0158: } else {0159: if ((StageVar0_svAlphaDate == InterVar0_17)) {0160: StageVar0_svMonth = InterVar0_18;0161: } else {0162: if ((StageVar0_svAlphaDate == InterVar0_19)) {0163: StageVar0_svMonth = InterVar0_20;0164: } else {0165: if ((StageVar0_svAlphaDate == InterVar0_21)) {0166: StageVar0_svMonth = InterVar0_22;0167: } else {0168: if ((StageVar0_svAlphaDate == InterVar0_23)) {0169: StageVar0_svMonth = InterVar0_24;0170: } else {0171: NullSetVar0 = 1;0172: }0173: //;0174: }0175: //;0176: }0177: //;0178: }0179: //;0180: }0181: //;0182: }0183: //;0184: }0185: //;0186: }0187: //;0188: }0189: //;0190: }0191: //;0192: }0193: //;0194: }0195: StageVar0_svMonth = (NullSetVar0 == 1) ? set_null() : StageVar0_svMonth;0196: StageVar0_svDay = substring_1(right_substring(inxfmDeptPerExp.AlphaDate , 8) , 1 , 2);0197: StageVar0_svYear = right_substring(inxfmDeptPerExp.AlphaDate , 4);0198: StageVar0_svDate = ((((StageVar0_svYear + InterVar0_25) + StageVar0_svMonth) + InterVar0_25) + StageVar0_svDay);0199: if (is_valid(InterVar0_26 , string_from_date(date_from_string(StageVar0_svDate , InterVar0_27)))) {0200: StageVar0_svValidDate = InterVar0_28;0201: } else {0202: StageVar0_svValidDate = InterVar0_29;0203: }0204: //;0205: if (is_valid(InterVar0_26 , string_from_date(date_from_string(inxfmDeptPerExp.PostingDate , InterVar0_30)))) {0206: StageVar0_StageVar = InterVar0_31;0207: } else {0208: StageVar0_StageVar = InterVar0_32;0209: }0210: //;0211: 0212: // evaluate constraint and columns for link: inoraDeptPerExp0213: if (((inxfmDeptPerExp.Company != InterVar0_33) && (inxfmDeptPerExp.SourceCode != InterVar0_34)))0214: {0215: inoraDeptPerExp.CO_NBR = inxfmDeptPerExp.Company;0216: inoraDeptPerExp.CO_DESCR = inxfmDeptPerExp.Name;0217: inoraDeptPerExp.CURR_CD = inxfmDeptPerExp.CurrencyCode;0218: inoraDeptPerExp.FROM_ACCTN_PRD_NBR = inxfmDeptPerExp.FrAcctPeriod;0219: inoraDeptPerExp.TO_ACCTN_PRD_NBR = inxfmDeptPerExp.ToAcctPeriod;0220: inoraDeptPerExp.REP_CRTN_DT = timestamp_from_string((StageVar0_svDate + InterVar0_35) , InterVar0_36);0221: inoraDeptPerExp.FSCL_YR_NBR = inxfmDeptPerExp.FiscalYear;0222: inoraDeptPerExp.ACCT_UNIT = inxfmDeptPerExp.AccountingUnit;0223: inoraDeptPerExp.ACCT_UNIT_DESCR = inxfmDeptPerExp.AcctUnitName;0224: inoraDeptPerExp.ACCT = inxfmDeptPerExp.Account;0225: inoraDeptPerExp.SUB_ACCT = inxfmDeptPerExp.Subaccount;0226: inoraDeptPerExp.SUB_ACCT_DESCR = inxfmDeptPerExp.AccountName;0227: inoraDeptPerExp.TRANS_SYS_ORIG_CD = inxfmDeptPerExp.SystemCode;0228: inoraDeptPerExp.ORD_DOC_TYP_CD = inxfmDeptPerExp.SourceCode;0229: inoraDeptPerExp.LOCTN_NBR = inxfmDeptPerExp.LocationCode;0230: inoraDeptPerExp.ITEM_NBR = inxfmDeptPerExp.ItemNumber;0231: NullSetVar0 = 0;0232: if ((StageVar0_StageVar == InterVar0_31)) {0233: inoraDeptPerExp.PSTN_DT = timestamp_from_string((inxfmDeptPerExp.PostingDate + InterVar0_35) , InterVar0_37);0234: } else {0235: NullSetVar0 = 1;0236: }0237: inoraDeptPerExp.PSTN_DT = (NullSetVar0 == 1) ? set_null() : inoraDeptPerExp.PSTN_DT;0238: inoraDeptPerExp.UOM_CD = inxfmDeptPerExp.UnitofMeasure;0239: inoraDeptPerExp.SRC_DOC_ITEM_QTY = inxfmDeptPerExp.Quantity;0240: inoraDeptPerExp.EXTND_CST_AMT = inxfmDeptPerExp.TotalCost_5;0241: inoraDeptPerExp.VNDR_NM = inxfmDeptPerExp.VendorName;0242: inoraDeptPerExp.SRC_DOC_DESCR = inxfmDeptPerExp.Description;0243: inoraDeptPerExp.JRNL_ENTRY_NBR = inxfmDeptPerExp.ControlGroup;0244: inoraDeptPerExp.INV_NBR = inxfmDeptPerExp.InvoiceNumber;0245: inoraDeptPerExp.INV_RECUR_NBR = inxfmDeptPerExp.InvoiceSuffix;0246: inoraDeptPerExp.PO_NBR = inxfmDeptPerExp.PONumber;0247: inoraDeptPerExp.PO_CLASSN_CD = inxfmDeptPerExp.PoCode;0248: inoraDeptPerExp.PO_RLSE_NBR = inxfmDeptPerExp.POReleaseNumber;0249: inoraDeptPerExp.REQSTN_NBR = inxfmDeptPerExp.ReqNumber;0250: inoraDeptPerExp.DEPT_PRCREMT_EXP_DT = timestamp_from_string(DSJobStartTimestamp);0251: if (notnull(inxfmDeptPerExp.DocumentID)) {0252: InterVar0_38 = inxfmDeptPerExp.DocumentID;0253: } else {0254: InterVar0_38 = InterVar0_39;0255: }0256: NullSetVar0 = 0;0257: if ((InterVar0_38 == InterVar0_40)) {0258: NullSetVar0 = 1;0259: } else {0260: inoraDeptPerExp.SRC_DOC_NBR = inxfmDeptPerExp.DocumentID;0261: }0262: inoraDeptPerExp.SRC_DOC_NBR = (NullSetVar0 == 1) ? set_null() : inoraDeptPerExp.SRC_DOC_NBR;0263: inoraDeptPerExp.INSERT_PRCS_AUD_ID = PROC_AUDIT_ID;0264: inoraDeptPerExp.LST_UPDT_PRCS_AUD_ID = PROC_AUDIT_ID;0265: writerecord 0;0266: RowRejected0 = 0;0267: }0268: // evaluate constraint and columns for link: inoraSTG_DEPT_PRCREMT_EXP0269: if (((inxfmDeptPerExp.Company != InterVar0_33) && (inxfmDeptPerExp.SourceCode != InterVar0_34)))0270: {0271: inoraSTG_DEPT_PRCREMT_EXP.CO_NBR = inxfmDeptPerExp.Company;0272: inoraSTG_DEPT_PRCREMT_EXP.CO_DESCR = inxfmDeptPerExp.Name;0273: inoraSTG_DEPT_PRCREMT_EXP.CURR_CD = inxfmDeptPerExp.CurrencyCode;0274: inoraSTG_DEPT_PRCREMT_EXP.FROM_ACCTN_PRD_NBR = inxfmDeptPerExp.FrAcctPeriod;0275: inoraSTG_DEPT_PRCREMT_EXP.TO_ACCTN_PRD_NBR = inxfmDeptPerExp.ToAcctPeriod;0276: inoraSTG_DEPT_PRCREMT_EXP.REP_CRTN_DT = inxfmDeptPerExp.AlphaDate;0277: inoraSTG_DEPT_PRCREMT_EXP.FSCL_YR_NBR = inxfmDeptPerExp.FiscalYear;0278: inoraSTG_DEPT_PRCREMT_EXP.ACCT_UNIT = inxfmDeptPerExp.AccountingUnit;0279: inoraSTG_DEPT_PRCREMT_EXP.ACCT_UNIT_DESCR = inxfmDeptPerExp.AcctUnitName;0280: inoraSTG_DEPT_PRCREMT_EXP.ACCT = inxfmDeptPerExp.Account;0281: inoraSTG_DEPT_PRCREMT_EXP.SUB_ACCT = inxfmDeptPerExp.Subaccount;0282: inoraSTG_DEPT_PRCREMT_EXP.SUB_ACCT_DESCR = inxfmDeptPerExp.AccountName;0283: inoraSTG_DEPT_PRCREMT_EXP.TRANS_SYS_ORIG_CD = inxfmDeptPerExp.SystemCode;0284: inoraSTG_DEPT_PRCREMT_EXP.ORD_DOC_TYP_CD = inxfmDeptPerExp.SourceCode;0285: inoraSTG_DEPT_PRCREMT_EXP.LOCTN_NBR = inxfmDeptPerExp.LocationCode;0286: inoraSTG_DEPT_PRCREMT_EXP.ITEM_NBR = inxfmDeptPerExp.ItemNumber;0287: inoraSTG_DEPT_PRCREMT_EXP.PSTN_DT = inxfmDeptPerExp.PostingDate;0288: inoraSTG_DEPT_PRCREMT_EXP.UOM_CD = inxfmDeptPerExp.UnitofMeasure;0289: inoraSTG_DEPT_PRCREMT_EXP.SRC_DOC_ITEM_QTY = inxfmDeptPerExp.Quantity;0290: inoraSTG_DEPT_PRCREMT_EXP.EXTND_CST_AMT = inxfmDeptPerExp.TotalCost_5;0291: inoraSTG_DEPT_PRCREMT_EXP.VNDR_NM = inxfmDeptPerExp.VendorName;0292: inoraSTG_DEPT_PRCREMT_EXP.SRC_DOC_DESCR = inxfmDeptPerExp.Description;0293: inoraSTG_DEPT_PRCREMT_EXP.JRNL_ENTRY_NBR = inxfmDeptPerExp.ControlGroup;0294: inoraSTG_DEPT_PRCREMT_EXP.INV_NBR = inxfmDeptPerExp.InvoiceNumber;0295: inoraSTG_DEPT_PRCREMT_EXP.INV_RECUR_NBR = inxfmDeptPerExp.InvoiceSuffix;0296: inoraSTG_DEPT_PRCREMT_EXP.PO_NBR = inxfmDeptPerExp.PONumber;0297: inoraSTG_DEPT_PRCREMT_EXP.PO_CLASSN_CD = inxfmDeptPerExp.PoCode;0298: inoraSTG_DEPT_PRCREMT_EXP.PO_RLSE_NBR = inxfmDeptPerExp.POReleaseNumber;0299: inoraSTG_DEPT_PRCREMT_EXP.REQSTN_NBR = inxfmDeptPerExp.ReqNumber;0300: inoraSTG_DEPT_PRCREMT_EXP.SRC_DOC_NBR = inxfmDeptPerExp.DocumentID;0301: inoraSTG_DEPT_PRCREMT_EXP.CDC_CD = InterVar0_41;0302: inoraSTG_DEPT_PRCREMT_EXP.SRC_STG_TSP = timestamp_from_string(DSJobStartTimestamp);0303: writerecord 1;0304: RowRejected0 = 0;0305: }0306: }0307: 0308: finish {0309: }0310: *** End of Internal Generated Transformer Code


Thanks in Advance
Samba
samba
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Would you be prepared to read that mess for someone else? Please format it properly. Each warning begins on a new line - make it so.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
samba
Premium Member
Premium Member
Posts: 62
Joined: Wed Dec 07, 2005 11:44 am

Post by samba »

In one of the stage variable i am using SetNull(), may be this is causing problem.....

Thanks
samba
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

If the SetNull() and reject set are your only problems then it still doesn't explain why one user can compile and another cannot. I would check your environment settings and permissions (particularly group permissions).
Post Reply