Btree.Extract returns different results on different PC's (OpenInsight 32-bit Specific)
At 05 AUG 2004 01:21:59PM Ron Hollar wrote:
I have a little routine that returns different results when run on different machines under OI 7.01:
Subroutine btree_test( dummy)
declare subroutine btree.extract, msg
cust.fld=BILL_CUST_NO'
cust.no=AZP36SL'
SearchData=cust.fld :@vm: cust.no: @fm
start.date=iconv( '05/01/04','D')
end.date=iconv( '08/01/04','D')
SearchData := 'SHIP_DATE': @vm: oconv( start.date, 'D2/'): '…': oconv( end.date, 'D2/'): @fm
open 'DICT.INVOICES' to DICT.INVOICES else null
keys='
flag='
Btree.Extract( SearchData, 'INVOICES', DICT.INVOICES, keys,
, flag) convert @vm to '|' in keys msg( keys) I get the same results on my Win 2000 and WinXP boxes, a list of 24 key values, but only the first key is returned on one users WinXP box runing the same program. Has anyone ever run into this? </QUOTE> —- === At 05 AUG 2004 01:27PM Ron Hollar wrote: === <QUOTE>Some additional information… Just out of curiosity I wrote this routine that asks for the same data using rlist, and it returns the same data on both machines: Subroutine rlist_test( dummy) Declare subroutine rlist, msg rlist=SELECT INVOICES WITH BILL_CUST_NO=: quote( 'AZP36SL') rlist := ' AND WITH SHIP_DATE FROM ': quote( '05/01/04'): ' TO ': QUOTE( '08/01/04') rlist( rlist, 5,
,,
)rlist.done='
list='
loop
readnext inv.no else rlist.done=1until rlist.done
list := inv.no: '|'repeat
msg( list)
At 10 AUG 2004 02:42AM dsig@sigafoos.org wrote:
Nope .. but have you gone to debug before the btree.extract and then checked the params? Is it possible that the date is different on the machines?
dsig@sigafoos.org
Phone: 971-570-2005
At 20 AUG 2004 06:16PM Ron Hollar wrote:
The solution turned out to be simple. When I installed OI 7.0 I didn't check the environment settings for the sort path, and it was blank. The default path to OI is on our network, and we do not grant write access to that path. The process of doing selects or using BTREE.EXTRACT gives no errors (maybe Get_Status() could be checked) and so the report gave different results for the end users compared to the developers who basically have admin rights for the whole OI path. Setting the sort path to C: fixed the problem, now the report works the same way for everyone.