Page 1 of 1
improper datatype
Posted: Tue Oct 30, 2007 11:00 am
by dspxguy
I am getting this error
Code: Select all
Program "JOB.261291493.DT.1454834689.TRANS1": Line 165, Improper data type.
there is a sequential file ---transfoermer ---sequential file being used.
I check for the RT_BPnnn file and went to line 165, but couldnt understand what was the error.
Posted: Tue Oct 30, 2007 12:33 pm
by DSguru2B
A little bit more info on the design and what you are trying to achieve, will be helpful.
Posted: Tue Oct 30, 2007 12:57 pm
by chulett
That or post the block of code around line 165 for us to see.
Posted: Tue Oct 30, 2007 9:49 pm
by dspxguy
chulett wrote:That or post the block of code around line 165 for us to see. ...
Guys thanks for your responses...
I will post the Basic Code tomorrow first thing in the morning :D
Posted: Wed Oct 31, 2007 1:49 pm
by dspxguy
Code: Select all
229 ERROR = Pin%%V0S1P1.REJECTEDCODE
230 WHILE NOT(ERROR)
231 * Stage variable evaluation
232 IF STAGECOM.TRACE.STATS THEN CALL $PERF.BEGIN(-2)
233 V0S1.Stagevar%%1 = Pin%%V0S1P1.Column%%12
234 V0S1.Stagevar%%2 = Pin%%V0S1P1.Column%%12
235 V0S1.Stagevar%%3 = if len(trim(computeTCV(Pin%%V0S1P1.Column%%5, Pin%%V0S1P1.Column%%6, Pin%%V0S1P1.Column%%7, Pin%%V0S1P1.Column%%8))) = 0 then 0 else computeTCV(Pin%%V0S1P1.Column%%5, Pin%%V0S1P1.Column%%6, Pin%%V0S1P1.Column%%7, Pin%%V0S1P1.Column%%8)
236 V0S1.Stagevar%%4 = V0S1.Stagevar%%3 / Pin%%V0S1P1.Column%%5
237 V0S1.Stagevar%%5 = Int(Pin%%V0S1P1.Column%%5 / 12)
238 V0S1.Stagevar%%6 = If V0S1.Stagevar%%5 <= 1 Then 0 Else V0S1.Stagevar%%3 / V0S1.Stagevar%%5
239 V0S1.Stagevar%%7 = If V0S1.Stagevar%%5 <= 1 Then V0S1.Stagevar%%3 Else V0S1.Stagevar%%3 - (V0S1.Stagevar%%6 * (V0S1.Stagevar%%5 - 1))
240 V0S1.Stagevar%%8 = If V0S1.Stagevar%%1 = 1 Then V0S1.Stagevar%%7 Else 0
241 V0S1.Stagevar%%9 = If Pin%%V0S1P1.Column%%5 - (V0S1.Stagevar%%1 - 1) < 12 Then V0S1.Stagevar%%4 * (Pin%%V0S1P1.Column%%5 - (V0S1.Stagevar%%1 - 1)) Else V0S1.Stagevar%%4 * 12
242 V0S1.Stagevar%%10 = V0S1.Stagevar%%9 * (Pin%%V0S1P1.Column%%10 / 100)
243 V0S1.Stagevar%%11 = If Pin%%V0S1P1.Column%%5 - (V0S1.Stagevar%%1 - 1) < 12 Then (V0S1.Stagevar%%9 - V0S1.Stagevar%%10) / (Pin%%V0S1P1.Column%%5 - (V0S1.Stagevar%%1 - 1)) Else (V0S1.Stagevar%%9 - V0S1.Stagevar%%10) / 12
244 V0S1.Stagevar%%12 = If V0S1.Stagevar%%1 = Int(Pin%%V0S1P1.Column%%5) Then (V0S1.Stagevar%%3 - V0S1.Stagevar%%13) Else ( If V0S1.Stagevar%%1 = 1 Or Mod(V0S1.Stagevar%%1 - 1, 12) = 0 Then V0S1.Stagevar%%10 + V0S1.Stagevar%%11 Else V0S1.Stagevar%%11)
245 V0S1.Stagevar%%13 = If V0S1.Stagevar%%1 <> Int(Pin%%V0S1P1.Column%%5) Then ( If (V0S1.Stagevar%%22 = Pin%%V0S1P1.Column%%1 And V0S1.Stagevar%%23 = Pin%%V0S1P1.Column%%2 And V0S1.Stagevar%%24 = Pin%%V0S1P1.Column%%3) Then V0S1.Stagevar%%13 + V0S1.Stagevar%%12 Else V0S1.Stagevar%%12) Else V0S1.Stagevar%%13
246 V0S1.Stagevar%%14 = Oconv(Iconv(Pin%%V0S1P1.Column%%9[1, 10], "D-YMD[4,2,2]"), "D/MDY[2,2,4]")[1, 2] 247 V0S1.Stagevar%%15 = Oconv(Iconv(Pin%%V0S1P1.Column%%9[1, 10], "D-YMD[4,2,2]"), "D/MDY[2,2,4]")[7, 4] + INT((V0S1.Stagevar%%14 + (V0S1.Stagevar%%2 - 1)) / 12) 248 V0S1.Stagevar%%16 = IF INDEX(Pin%%V0S1P1.Column%%11, 24, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 25, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 40, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 41, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 42, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 43, 1) <> 0 OR INDEX(Pin%%V0S1P1.Column%%11, 44, 1) <> 0 THEN 2 ELSE IF INDEX(Pin%%V0S1P1.Column%%11, 17, 1) <> 0 THEN 3 ELSE IF INDEX(Pin%%V0S1P1.Column%%11, 18, 1) <> 0 THEN 4 ELSE IF LEN(Pin%%V0S1P1.Column%%11) = 0 THEN 1 ELSE 1 249 V0S1.Stagevar%%17 = IF MOD((V0S1.Stagevar%%14 + (V0S1.Stagevar%%2 - 1)), 12) = 0 THEN 12 ELSE IF LEN(MOD((V0S1.Stagevar%%14 + (V0S1.Stagevar%%2 - 1)), 12)) = 1 THEN "0" : MOD((V0S1.Stagevar%%14 + (V0S1.Stagevar%%2 - 1)), 12) ELSE MOD((V0S1.Stagevar%%14 + (V0S1.Stagevar%%2 - 1)), 12)
error is on line 242....improper data..
Posted: Wed Oct 31, 2007 2:32 pm
by gateleys
Looks like you are performing arithmetic on some non-numeric columns. Check the data in those columns. You may want to test by first passing few rows to see if the result occurs. If it does, then you can narrow it down to the calculation columns for non-numeric value.
Alternatively, you may want to check the suspect columns with the num() function to see if they consist of only numbers.