I will try this once again... if it doesn't work then I don't know how to get Notes to send to the list and I guess I will have to not post.
Yes, this is a bug in the low level function qcomp(). I fixed this within the DataStage Engine code back in 2002 (after version 9.6 of universe). Itbs a fairly simple fix; the problem is that if you specify Left justification, the initialization code ignores it and makes it a Right justification. This bug was created because at rev 9.6, we did away with having 2 routines to do compares (1 in query, 1 in basic) and the code was merged into the query version incorrectly. The complaint on this was: When using the COMPARE function in Basic, it is incorrect if the strings are different lengths when Left justified. For example it comes back that "A22" is less than "A2". The problem is in the QCOMP function when BASFLG is set. It puts the delimiter @FM at the end of string1 and string2. If they are of different lengths, like in the example, it winds up comparing the second 2 (In "A22") to the @FM at the end of string "A2". Since @FM is greater than the number 2, it says that A2 is greater than A22 which is incorrect. It appears that this code was put in as a result of gtar 22949. Glenn _________________________________________________________ "I reject your reality and substitute my own" - Adam Savage Glenn M. Herbert - Connectivity Development Engineer Information Integration Solutions, IBM Software Group 50 Washington Street Westboro, MA 01581 508-599-7281 direct ------- u2-users mailing list [email protected] To unsubscribe please visit http://listserver.u2ug.org/
