Page 1 of 1

Compiler error using AsInteger(StringToDecimal()) function

Posted: Fri Oct 28, 2011 12:53 pm
by pdntsap
Hello,

We have a variable declared as VarChar and we are convering it to an Integer using the following function

Code: Select all

AsInteger(StringToDecimal(In.Column))
where In.Column is the VarChar variable.

We get the following error when we compile:

##I TUTL 000031 18:42:05(001) <main_program> The open files limit is 2000; raising to 2147483647.
##I TOSH 000002 18:42:05(002) <main_program> orchgeneral: loaded
##I TOSH 000002 18:42:05(003) <main_program> orchsort: loaded
##I TOSH 000002 18:42:05(004) <main_program> orchstats: loaded
##I TFSC 000001 18:42:05(007) <main_program> APT configuration file: /dvl/etl12/Ascential/DataStage/Configurations/etld2.apt
##W TCOS 000049 18:42:06(000) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E TBLD 000000 18:42:09(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 256.
##E TFSR 000019 18:42:09(001) <main_program> Could not check all operators because of previous error(s)
##W TFCP 000000 18:42:09(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##W TFCP 000048 18:42:09(003) <transform> Error when checking composite operator: Function decimal_from_string, [line 142, character 18], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(004) <transform> Error when checking composite operator: Function decimal_from_string, [line 144, character 18], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(005) <transform> Error when checking composite operator: Function decimal_from_string, [line 166, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(006) <transform> Error when checking composite operator: Function decimal_from_string, [line 168, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(007) <transform> Error when checking composite operator: Function decimal_from_string, [line 171, character 18], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(008) <transform> Error when checking composite operator: Function decimal_from_string, [line 173, character 20], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(009) <transform> Error when checking composite operator: Function decimal_from_string, [line 190, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(010) <transform> Error when checking composite operator: Function decimal_from_string, [line 193, character 19], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(011) <transform> Error when checking composite operator: Function decimal_from_string, [line 210, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(012) <transform> Error when checking composite operator: Function decimal_from_string, [line 212, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(013) <transform> Error when checking composite operator: Function decimal_from_string, [line 299, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(014) <transform> Error when checking composite operator: Function decimal_from_string, [line 302, character 19], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(015) <transform> Error when checking composite operator: Function decimal_from_string, [line 319, character 17], returns a decimal; default precision is used.
##W TFCP 000048 18:42:09(016) <transform> Error when checking composite operator: Function decimal_from_string, [line 321, character 17], returns a decimal; default precision is used.
##W TFCP 000000 18:42:09(017) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(018) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(019) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(020) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000025 18:42:09(021) <transform> Error when checking composite operator: Possible range limitation.
##W TFCP 000000 18:42:09(022) <transform> Error when checking composite operator: Implicit conversion from source type "Int32" to result type "Decimal".
##W TFCP 000000 18:42:09(023) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(024) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000025 18:42:09(025) <transform> Error when checking composite operator: Possible range limitation.
##W TFCP 000000 18:42:09(026) <transform> Error when checking composite operator: Implicit conversion from source type "Int32" to result type "Decimal".
##W TFCP 000000 18:42:09(027) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(028) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(029) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000025 18:42:09(030) <transform> Error when checking composite operator: Possible range limitation.
##W TFCP 000000 18:42:09(031) <transform> Error when checking composite operator: Implicit conversion from source type "Int32" to result type "Decimal".
##W TFCP 000000 18:42:09(032) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TFCP 000000 18:42:09(033) <transform> Error when checking composite operator: Implicit conversion from source type "Decimal" to result type "DFloat".
##W TBLD 000000 18:42:09(034) <main_program> Error when checking composite operator: Output from subprocess: "/dvl/etlmas/projects/masdvl/RT_BP490.O/V0S28_IntFrRlMtch_Wldstr_FS_Transformer_28.C", line 1599.1: 1540-0184 (S) The "{" has no matching "}".

##I TFCP 000000 18:42:09(035) <transform> Error when checking composite operator: /usr/vacpp/bin/xlC_r -O -I/dvl/etl12/Ascential/DataStage/PXEngine/include -O -c -qspill=32704 /dvl/etlmas/projects/masdvl/RT_BP490.O/V0S28_IntFrRlMtch_Wldstr_FS_Transformer_28.C -o /dvl/etlmas/projects/masdvl/RT_BP490.O/V0S28_IntFrRlMtch_Wldstr_FS_Transformer_28.tmp.o.
##E TCOS 000029 18:42:09(036) <main_program> Creation of a step finished with status = FAILED. (IntFrRlMtch_Wldstr_FS.Transformer_28)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S28_repos_Transformer_28 transform operator.
0003: //
0004:
0005: // define our input/output link names
0006: inputname 0 DSLink24;
0007: outputname 0 DSLink29;
0008:
0009: initialize {
0010: // define our row rejected variable
0011: int8 RowRejected0;
0012:
0013: // define our null set variable
0014: int8 NullSetVar0;
0015:
0016: // declare our intermediate variables for this section
0017: string InterVar0_0;
0018: string InterVar0_1;
0019: string InterVar0_2;
0020: string InterVar0_3;
0021: string InterVar0_4;
0022: string InterVar0_5;
0023: string InterVar0_14;
0024: string InterVar0_15;
0025: string InterVar0_16;
0026:
0027: // initialise constant values which require conversion
0028: InterVar0_0 = "Y";
0029: InterVar0_1 = "S";
0030: InterVar0_2 = "Z";
0031: InterVar0_3 = "N";
0032: InterVar0_4 = "C";
0033: InterVar0_5 = "A";
0034: InterVar0_14 = "RU";
0035: InterVar0_15 = "XU";
0036: InterVar0_16 = "-";
0037: // Stage variable declaration and initialisation
0038: string StageVar0_StageVar;
0039: StageVar0_StageVar = "";
0040: string StageVar0_StageVar1;
0041: StageVar0_StageVar1 = "";
0042: string StageVar0_StageVar2;
0043: StageVar0_StageVar2 = "";
0044: string StageVar0_StageVar3;
0045: StageVar0_StageVar3 = "";
0046: string StageVar0_StageVar4;
0047: StageVar0_StageVar4 = "";
0048: string StageVar0_StageVar5;
0049: StageVar0_StageVar5 = "";
0050: string StageVar0_StageVar6;
0051: StageVar0_StageVar6 = "";
0052: string StageVar0_StageVar7;
0053: StageVar0_StageVar7 = "";
0054: string StageVar0_StageVar8;
0055: StageVar0_StageVar8 = "";
0056: string StageVar0_StageVar9;
0057: StageVar0_StageVar9 = "";
0058: string StageVar0_StageVar10;
0059: StageVar0_StageVar10 = "";
0060: string StageVar0_StageVar11;
0061: StageVar0_StageVar11 = "";
0062: string StageVar0_StageVar12;
0063: StageVar0_StageVar12 = "";
0064: string StageVar0_StageVar13;
0065: StageVar0_StageVar13 = "";
0066: string StageVar0_StageVar14;
0067: StageVar0_StageVar14 = "";
0068: string StageVar0_StageVar15;
0069: StageVar0_StageVar15 = "";
0070: string StageVar0_StageVar16;
0071: StageVar0_StageVar16 = "";
0072: string StageVar0_StageVar17;
0073: StageVar0_StageVar17 = "";
0074: }
0075:
0076: mainloop {
0077: // initialise our row rejected variable
0078: RowRejected0 = 1;
0079:
0080: // declare our intermediate variables for this section
0081: dfloat InterVar0_6;
0082: int64 InterVar0_7;
0083: dfloat InterVar0_8;
0084: int64 InterVar0_9;
0085: decimal InterVar0_10;
0086: dfloat InterVar0_11;
0087: int64 InterVar0_12;
0088: int64 InterVar0_13;
0089:
0090: // evaluate the stage variables first
0091: if (null(DSLink24.Location1_Type_Code)) {
0092: StageVar0_StageVar = InterVar0_0;
0093: } else {
0094: if (((DSLink24.Location1_Type_Code == InterVar0_1) || (DSLink24.Location1_Type_Code == InterVar0_2))) {
0095: StageVar0_StageVar = InterVar0_0;
0096: } else {
0097: StageVar0_StageVar = InterVar0_3;
0098: }
0099: //;
0100: }
0101: //;
0102: if ((StageVar0_StageVar == InterVar0_3)) {
0103: if ((DSLink24.Location1_Type_Code == InterVar0_4)) {
0104: if (null(DSLink24.LOCATION2_TYPE_CODE)) {
0105: if (((DSLink24.LOCATION1_CODE == DSLink24.Orig_Ap_Cty_Cde) || (DSLink24.LOCATION1_CODE == DSLink24.Dest_Ap_Cty_Cde))) {
0106: StageVar0_StageVar1 = InterVar0_0;
0107: } else {
0108: StageVar0_StageVar1 = InterVar0_3;
0109: }
0110: //;
0111: } else {
0112: StageVar0_StageVar1 = InterVar0_3;
0113: }
0114: //;
0115: } else {
0116: StageVar0_StageVar1 = InterVar0_3;
0117: }
0118: //;
0119: } else {
0120: StageVar0_StageVar1 = InterVar0_3;
0121: }
0122: //;
0123: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0124: if (((DSLink24.Location1_Type_Code == InterVar0_4) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_4))) {
0125: if ((((DSLink24.LOCATION1_CODE == DSLink24.Orig_Ap_Cty_Cde) && (DSLink24.LOCATION2_CODE == DSLink24.Dest_Ap_Cty_Cde)) || ((DSLink24.LOCATION2_CODE == DSLink24.Orig_Ap_Cty_Cde) && (DSLink24.LOCATION2_CODE == DSLink24.Dest_Ap_Cty_Cde)))) {
0126: StageVar0_StageVar2 = InterVar0_0;
0127: } else {
0128: StageVar0_StageVar2 = InterVar0_3;
0129: }
0130: //;
0131: } else {
0132: StageVar0_StageVar2 = InterVar0_3;
0133: }
0134: //;
0135: } else {
0136: StageVar0_StageVar2 = InterVar0_3;
0137: }
0138: //;
0139: if ((StageVar0_StageVar == InterVar0_3)) {
0140: if ((DSLink24.Location1_Type_Code == InterVar0_5)) {
0141: if (null(DSLink24.LOCATION2_TYPE_CODE)) {
0142: InterVar0_6 = decimal_from_string(DSLink24.LOCATION1_CODE);
0143: InterVar0_7 = InterVar0_6;
0144: InterVar0_8 = decimal_from_string(DSLink24.LOCATION1_CODE);
0145: InterVar0_9 = InterVar0_8;
0146: if (((InterVar0_7 == DSLink24.Orig_World_Area_Number) || (InterVar0_9 == DSLink24.Dest_World_Area_Number))) {
0147: StageVar0_StageVar3 = InterVar0_0;
0148: } else {
0149: StageVar0_StageVar3 = InterVar0_3;
0150: }
0151: //;
0152: } else {
0153: StageVar0_StageVar3 = InterVar0_3;
0154: }
0155: //;
0156: } else {
0157: StageVar0_StageVar3 = InterVar0_3;
0158: }
0159: //;
0160: } else {
0161: StageVar0_StageVar3 = InterVar0_3;
0162: }
0163: //;
0164: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0165: if (((DSLink24.Location1_Type_Code == InterVar0_5) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_5))) {
0166: InterVar0_6 = decimal_from_string(DSLink24.LOCATION1_CODE);
0167: InterVar0_7 = InterVar0_6;
0168: InterVar0_8 = decimal_from_string(DSLink24.LOCATION2_CODE);
0169: InterVar0_9 = InterVar0_8;
0170: InterVar0_10 = DSLink24.Orig_World_Area_Number;
0171: InterVar0_11 = decimal_from_string(DSLink24.LOCATION1_CODE);
0172: InterVar0_12 = InterVar0_11;
0173: InterVar0_13 = ((decimal_from_string(DSLink24.LOCATION2_CODE) == InterVar0_10) && (InterVar0_12 == DSLink24.Dest_World_Area_Number));
0174: if ((((InterVar0_7 == DSLink24.Orig_World_Area_Number) && (InterVar0_9 == DSLink24.Dest_World_Area_Number)) || InterVar0_13)) {
0175: StageVar0_StageVar4 = InterVar0_0;
0176: } else {
0177: StageVar0_StageVar4 = InterVar0_3;
0178: }
0179: //;
0180: } else {
0181: StageVar0_StageVar4 = InterVar0_3;
0182: }
0183: //;
0184: } else {
0185: StageVar0_StageVar4 = InterVar0_3;
0186: }
0187: //;
0188: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0189: if (((DSLink24.Location1_Type_Code == InterVar0_4) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_5))) {
0190: InterVar0_6 = decimal_from_string(DSLink24.LOCATION2_CODE);
0191: InterVar0_7 = InterVar0_6;
0192: InterVar0_10 = DSLink24.Orig_World_Area_Number;
0193: InterVar0_9 = ((decimal_from_string(DSLink24.LOCATION2_CODE) == InterVar0_10) && (DSLink24.LOCATION1_CODE == DSLink24.Dest_Ap_Cty_Cde));
0194: if ((((DSLink24.LOCATION1_CODE == DSLink24.Orig_Ap_Cty_Cde) && (InterVar0_7 == DSLink24.Dest_World_Area_Number)) || InterVar0_9)) {
0195: StageVar0_StageVar5 = InterVar0_0;
0196: } else {
0197: StageVar0_StageVar5 = InterVar0_3;
0198: }
0199: //;
0200: } else {
0201: StageVar0_StageVar5 = InterVar0_3;
0202: }
0203: //;
0204: } else {
0205: StageVar0_StageVar5 = InterVar0_3;
0206: }
0207: //;
0208: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0209: if (((DSLink24.Location1_Type_Code == InterVar0_5) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_4))) {
0210: InterVar0_6 = decimal_from_string(DSLink24.LOCATION1_CODE);
0211: InterVar0_7 = InterVar0_6;
0212: InterVar0_8 = decimal_from_string(DSLink24.LOCATION1_CODE);
0213: InterVar0_9 = InterVar0_8;
0214: if ((((InterVar0_7 == DSLink24.Orig_World_Area_Number) && (DSLink24.LOCATION2_CODE == DSLink24.Dest_Ap_Cty_Cde)) || ((DSLink24.LOCATION2_CODE == DSLink24.Orig_Ap_Cty_Cde) && (InterVar0_9 == DSLink24.Dest_World_Area_Number)))) {
0215: StageVar0_StageVar6 = InterVar0_0;
0216: } else {
0217: StageVar0_StageVar6 = InterVar0_3;
0218: }
0219: //;
0220: } else {
0221: StageVar0_StageVar6 = InterVar0_3;
0222: }
0223: //;
0224: } else {
0225: StageVar0_StageVar6 = InterVar0_3;
0226: }
0227: //;
0228: if ((StageVar0_StageVar == InterVar0_3)) {
0229: if ((DSLink24.Location1_Type_Code == InterVar0_3)) {
0230: if (null(DSLink24.LOCATION2_TYPE_CODE)) {
0231: if (((substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Orig_Country_Code) || (substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Dest_Country_Code))) {
0232: StageVar0_StageVar7 = InterVar0_0;
0233: } else {
0234: StageVar0_StageVar7 = InterVar0_3;
0235: }
0236: //;
0237: } else {
0238: StageVar0_StageVar7 = InterVar0_3;
0239: }
0240: //;
0241: } else {
0242: StageVar0_StageVar7 = InterVar0_3;
0243: }
0244: //;
0245: } else {
0246: StageVar0_StageVar7 = InterVar0_3;
0247: }
0248: //;
0249: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0250: if (((DSLink24.Location1_Type_Code == InterVar0_3) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_3))) {
0251: if ((((substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Dest_Country_Code)) || ((substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Dest_Country_Code)))) {
0252: StageVar0_StageVar8 = InterVar0_0;
0253: } else {
0254: StageVar0_StageVar8 = InterVar0_3;
0255: }
0256: //;
0257: } else {
0258: StageVar0_StageVar8 = InterVar0_3;
0259: }
0260: //;
0261: } else {
0262: StageVar0_StageVar8 = InterVar0_3;
0263: }
0264: //;
0265: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0266: if (((DSLink24.Location1_Type_Code == InterVar0_4) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_3))) {
0267: if ((((DSLink24.LOCATION1_CODE == DSLink24.Orig_Ap_Cty_Cde) && (substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Dest_Country_Code)) || ((substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (DSLink24.LOCATION1_CODE == DSLink24.Dest_Ap_Cty_Cde)))) {
0268: StageVar0_StageVar9 = InterVar0_0;
0269: } else {
0270: StageVar0_StageVar9 = InterVar0_3;
0271: }
0272: //;
0273: } else {
0274: StageVar0_StageVar9 = InterVar0_3;
0275: }
0276: //;
0277: } else {
0278: StageVar0_StageVar9 = InterVar0_3;
0279: }
0280: //;
0281: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0282: if (((DSLink24.Location1_Type_Code == InterVar0_3) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_4))) {
0283: if ((((substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (DSLink24.LOCATION2_CODE == DSLink24.Dest_Ap_Cty_Cde)) || ((DSLink24.LOCATION2_CODE == DSLink24.Orig_Ap_Cty_Cde) && (substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Dest_Country_Code)))) {
0284: StageVar0_StageVar10 = InterVar0_0;
0285: } else {
0286: StageVar0_StageVar10 = InterVar0_3;
0287: }
0288: //;
0289: } else {
0290: StageVar0_StageVar10 = InterVar0_3;
0291: }
0292: //;
0293: } else {
0294: StageVar0_StageVar10 = InterVar0_3;
0295: }
0296: //;
0297: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0298: if (((DSLink24.Location1_Type_Code == InterVar0_3) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_5))) {
0299: InterVar0_6 = decimal_from_string(DSLink24.LOCATION2_CODE);
0300: InterVar0_7 = InterVar0_6;
0301: InterVar0_10 = DSLink24.Orig_World_Area_Number;
0302: InterVar0_9 = ((decimal_from_string(DSLink24.LOCATION2_CODE) == InterVar0_10) && (substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Dest_Country_Code));
0303: if ((((substring_1(DSLink24.LOCATION1_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (InterVar0_7 == DSLink24.Dest_World_Area_Number)) || InterVar0_9)) {
0304: StageVar0_StageVar11 = InterVar0_0;
0305: } else {
0306: StageVar0_StageVar11 = InterVar0_3;
0307: }
0308: //;
0309: } else {
0310: StageVar0_StageVar11 = InterVar0_3;
0311: }
0312: //;
0313: } else {
0314: StageVar0_StageVar11 = InterVar0_3;
0315: }
0316: //;
0317: if ((notnull(DSLink24.Location1_Type_Code) && notnull(DSLink24.LOCATION2_TYPE_CODE))) {
0318: if (((DSLink24.Location1_Type_Code == InterVar0_5) && (DSLink24.LOCATION2_TYPE_CODE == InterVar0_3))) {
0319: InterVar0_6 = decimal_from_string(DSLink24.LOCATION1_CODE);
0320: InterVar0_7 = InterVar0_6;
0321: InterVar0_8 = decimal_from_string(DSLink24.LOCATION1_CODE);
0322: InterVar0_9 = InterVar0_8;
0323: if ((((InterVar0_7 == DSLink24.Orig_World_Area_Number) && (substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Dest_Country_Code)) || ((substring_1(DSLink24.LOCATION2_CODE , 1 , 2) == DSLink24.Orig_Country_Code) && (InterVar0_9 == DSLink24.Dest_World_Area_Number)))) {
0324: StageVar0_StageVar12 = InterVar0_0;
0325: } else {
0326: StageVar0_StageVar12 = InterVar0_3;
0327: }
0328: //;
0329: } else {
0330: StageVar0_StageVar12 = InterVar0_3;
0331: }
0332: //;
0333: } else {
0334: StageVar0_StageVar12 = InterVar0_3;
0335: }
0336: //;
0337: if (null(DSLink24.LOCATION2_TYPE_CODE)) {
0338: StageVar0_StageVar13 = InterVar0_3;
0339: } else {
0340: if (((DSLink24.LOCATION2_TYPE_CODE == InterVar0_1) || (DSLink24.LOCATION2_TYPE_CODE == InterVar0_2))) {
0341: StageVar0_StageVar13 = InterVar0_0;
0342: } else {
0343: StageVar0_StageVar13 = InterVar0_3;
0344: }
0345: //;
0346: }
0347: //;
0348: if (notnull(DSLink24.Orig_Country_Code)) {
0349: if (((DSLink24.Spec_Origin_Country_Code == InterVar0_14) && (DSLink24.Orig_Country_Code == InterVar0_15))) {
0350: StageVar0_StageVar14 = InterVar0_0;
0351: } else {
0352: StageVar0_StageVar14 = InterVar0_3;
0353: }
0354: //;
0355: } else {
0356: StageVar0_StageVar14 = InterVar0_3;
0357: }
0358: //;
0359: if (notnull(DSLink24.Dest_Country_Code)) {
0360: if (((DSLink24.Spec_Destination_Country_Code == InterVar0_14) && (DSLink24.Dest_Country_Code == InterVar0_15))) {
0361: StageVar0_StageVar15 = InterVar0_0;
0362: } else {
0363: StageVar0_StageVar15 = InterVar0_3;
0364: }
0365: //;
0366: } else {
0367: StageVar0_StageVar15 = InterVar0_3;
0368: }
0369: //;
0370: if (null(DSLink24.Directional_Ind)) {
0371: StageVar0_StageVar16 = InterVar0_3;
0372: } else {
0373: if (((DSLink24.Directional_Ind == 3) || (DSLink24.Directional_Ind == 4))) {
0374: StageVar0_StageVar16 = InterVar0_0;
0375: } else {
0376: StageVar0_StageVar16 = InterVar0_3;
0377: }
0378: //;
0379: }
0380: //;
0381: if (null(DSLink24.Fare_Class_Code)) {
0382: StageVar0_StageVar17 = InterVar0_0;
0383: } else {
0384: if (null(DSLink24.Frbs_Cde)) {
0385: StageVar0_StageVar17 = InterVar0_0;
0386: } else {
0387: if ((((DSLink24.Frbs_Cde != DSLink24.Fare_Class_Code) && (index_of_substring_basic(DSLink24.Fare_Class_Code , InterVar0_16 , 1) > 0)) && (index_of_substring_basic(DSLink24.FARE_CLASS_CODE_WILD , DSLink24.Frbs_Cde , 1) > 0))) {
0388: StageVar0_StageVar17 = InterVar0_0;
0389: } else {
0390: StageVar0_StageVar17 = InterVar0_3;
0391: }
0392: //;
0393: }
0394: //;
0395: }
0396: //;
0397:
0398: // evaluate constraint and columns for link: DSLink29
0399: if (((((((((((((((((((StageVar0_StageVar == InterVar0_0) || (StageVar0_StageVar1 == InterVar0_0)) || (StageVar0_StageVar2 == InterVar0_0)) || (StageVar0_StageVar3 == InterVar0_0)) || (StageVar0_StageVar4 == InterVar0_0)) || (StageVar0_StageVar5 == InterVar0_0)) || (StageVar0_StageVar6 == InterVar0_0)) || (StageVar0_StageVar7 == InterVar0_0)) || (StageVar0_StageVar8 == InterVar0_0)) || (StageVar0_StageVar9 == InterVar0_0)) || (StageVar0_StageVar10 == InterVar0_0)) || (StageVar0_StageVar11 == InterVar0_0)) || (StageVar0_StageVar12 == InterVar0_0)) || (StageVar0_StageVar13 == InterVar0_0)) || (StageVar0_StageVar14 == InterVar0_0)) || (StageVar0_StageVar15 == InterVar0_0)) || (StageVar0_StageVar16 == InterVar0_0)) || (StageVar0_StageVar17 == InterVar0_0)))
0400: {
0401: DSLink29.Day_Of_Week_Type_Code = DSLink24.Day_Of_Week_Type_Code;
0402: DSLink29.FOOTNOTE_CODE = DSLink24.Pub_Ftnte_Id_Cde;
0403: writerecord 0;
0404: RowRejected0 = 0;
0405: }
0406: }
0407:
0408: finish {
0409: }
0410:
*** End of Internal Generated Transformer Code


Please let me know what I am doing wrong here.

Thanks.

Posted: Fri Oct 28, 2011 3:27 pm
by ray.wurlod
Can you compile other jobs with Transformer stages?

Posted: Fri Oct 28, 2011 3:31 pm
by pdntsap
Ray,

Yes. I can.

Thanks.

Posted: Sun Oct 30, 2011 1:22 am
by SURA
Any SetNull() function used in the Stage Variable?

DS User

Posted: Thu Nov 03, 2011 2:16 pm
by pdntsap
No SetNull() function used.

Checking the validity before conversion seems to have fixed the problem. So adding

Code: Select all

if(isValid("decimal",StringToDecimal(StageVariable))) 
before converting seems to work.

Posted: Thu Nov 03, 2011 6:36 pm
by chulett
That is a "best practice" but I'm a little surprised to see it as a compile time error rather than a run time error. Interesting.