>CLEAR > >CREATE CURSOR newData (Field1 C(10), Field2 C(7)) > >APPEND BLANK >APPEND BLANK >APPEND BLANK >APPEND BLANK > >index on Padr(myUdf1(Field1), 20) + Padr(myUdf2(Field2), 15) tag F_1_2_new > >CREATE CURSOR oldData (Field1 C(10), Field2 C(7)) > >APPEND BLANK >APPEND BLANK >APPEND BLANK >APPEND BLANK > >index on Padr(myUdf1(Field1), 20) + Padr(myUdf2(Field2), 15) tag F_1_2_Old > >SYS(3054,12) > >Select ; > Nw.Field1, Ol.Field2 ; > from newData Nw ; > join oldData Ol ; > on Padr(myUdf1(ol.Field1), 20) + Padr(myUdf2(ol.Field2), 15) ; > = Padr(myUdf1(nw.Field1), 20) + Padr(myUdf2(nw.Field2), 15) ; >INTO CURSOR res > >select newData >delete TAG F_1_2_new >index on Padr(myUdf1((Field1)), 20) + Padr(myUdf2((Field2)), 15) tag F_1_2_new > >select oldData >delete TAG F_1_2_Old >index on Padr(myUdf1((Field1)), 20) + Padr(myUdf2((Field2)), 15) tag F_1_2_Old >? >Select ; > Nw.Field1, Ol.Field2 ; > from newData Nw ; > join oldData Ol ; > on Padr(myUdf1(ol.Field1), 20) + Padr(myUdf2(ol.Field2), 15) ; > = Padr(myUdf1(nw.Field1), 20) + Padr(myUdf2(nw.Field2), 15) ; >INTO CURSOR res > >SYS(3054,0) > >FUNCTION myUdf1(val1) > RETURN val1+val1 >RETURN > >FUNCTION myUdf2(val2) > RETURN val2+val2 >RETURN >>