Subject Problem with Locate
Author tremel@tremel-computer.de
Hello,

I have a Problem with 4.2.Ee in D5E. When I do a

Locate('Artikelnr;Foerderernr;Gratis;Selbstzahler',
VarArrayOf([qry.FieldValues['Artikelnr'], qry.FieldValues
['Foerderernr'],
qry.FieldValues['Gratis'], qry.FieldValues
['Selbstzahler']]),
[lopFindNearest]);

on the following Query (which is, I think, not important for the
error):
SELECT BP.ARTIKELNR, BP.Foerderernr, Artikel.CODE,
Artikel.BEZEICHNUNG, BP.GRATIS, BP.SELBSTZAHLER,
SUM( BP.ANZAHL ) as Bezug
FROM BEZUGPOSTEN BP
INNER JOIN ARTIKEL Artikel
ON (BP.ARTIKELNR = Artikel.ARTIKELNR)
GROUP BY BP.ARTIKELNR, BP.Foerderernr, Artikel.CODE,
Artikel.BEZEICHNUNG, BP.GRATIS, BP.SELBSTZAHLER
Having (Sum(BP.Anzahl) <> 0)
ORDER BY BP.ARTIKELNR

I get an error "invalid variant operation" in function
TIB_BDataset.SysLocateRecord. When qry.FieldValues['Foerderernr'] is
null then both KVal and FVal is unassigned. tmpResult becomes True by
tmpResult := not (( VarIsEmpty( KVal ) or VarIsNull(
KVal )) xor
( VarIsEmpty( FVal ) or VarIsNull(
FVal )));

In the line
tmpResult := tmpResult and ( KVal = FVal );
the error occurs because of the comparison.

Any idea for me?

Thank You very much
Dieter Tremel