Lookupallsextet

I am trying to troubleshoot a database converted from Panorama 6. It makes use of the lookupallsextet function. Upon conversion, the procedure shows an “Expression parsing error.”

If I change it to any of lookupall,lookupalldouble,lookupalltriple or lookupallquadruple it works fine (of course removing the extra fields) but anything higher than quadruple generates an error. I tried mixing and matching the fields to see if that is the issue but it made no difference. The lookup is from the same database. I realize I could achieve the same thing with arraymerge but this should work. Any thoughts?

This is the line:
gvDonData=lookupallsextet(“Donations”,“DonorID”,“DonorID”,“Receipt”,str(“Donation#”),“Date”,“PayMethod”,str(“CAD”),str(“Amount”),cr(),"^")

I will look into this.

In the meantime, I would suggest that using arraybuild( would now be much simpler and faster, since in Panorama X this function allows a query to be specified. I think this is the formula you need.

gvDonData = arraybuild(cr(),"Donations",
    {Receipt+"^"+«Donation»+"^"+Date+"^"+Paymethod+"^"+CAD+"^"+Amount},
    {DonorID=««DonorID»»}

Many thanks!

Closing the circle on this, it turns out there was a problem with these functions. In fact, the underlying problem was that any function with 10 or more parameters would not work (only for functions with a fixed number of parameters). It turned out there were only 4 functions with 10 or more parameters, all the lookupall functions with extra fields.

@KevinShantz I think you’ve since changed your code to use arraybuild(, so it doesn’t matter, but your original code had another problem – you were using formulas for some of the parameters, but only fields are allowed. So for example you had str("Donation#"), but that is not ok, it should have been just "Donation#". Fortunately with the arraybuild( method I suggested you can use any formula you want.