***SPAM*** Re: ***SPAM*** Re: odd lookup problem
Kenneth Brody
kenbrody at spamcop.net
Mon Nov 8 18:13:20 PST 2010
On 11/8/2010 2:46 PM, Richard Kreiss wrote:
[...]
> Modified code which didn't work:
>
> 192 ------- - - - - - - - - - - - - - - - -
> ◄ If: ◄
> Then: lv=master_code&"99" ◄
> 193 ------- - - - - - - - - - - - - - - - -
> ◄ If: ◄
> Then: lookup SALES = sales_journal k=lv i=C -nL ◄
> 194 ------- - - - - - - - - - - - - - - - -
> ◄ If: SALES ◄ This line shows false in debugger
> Then: GOTO next_w ◄
[...]
> Working code:
>
> 192 ------- - - - - - - - - - - - - - - - -
> ◄ If:
> Then: lv=master_code&"99"
> 193 ------- - - - - - - - - - - - - - - - -
> ◄ If:
> Then: lookup SALES = sales_journal k=lv i=C -nL
> 194 ------- - - - - - - - - - - - - - - - -
> ◄ If: NOT sales
> Then: GOTO ask_sv
> 195 ------- - - - - - - - - - - - - - - - -
> ◄ If: SALES and sales(4) = master_code
> Then: GOTO next_w
[...]
> In the above version, line 195 shows true. This was tested before I added the check for the master_code in the sales journal as the next lowest value could be someone else's record when using next lowest.
>
> Master_code in in the form NNNNN-NNNN
>
> Again, my question is why is line 194, the not statement, necessary for line 195 to be true when it doesn't apply when doing an exact match lookup?
Assuming identical values for field "lv", and identical data and index.C in
the "sales_journal" file, there is no reason that "if: sales" would be false
in the first version and "if: not sales" would be false in the second version.
Now, in the second version, the "if: not sales" is required because, without
it, the "if" on line 195 would error out if the lookup failed, due to the
reference to "sales(4)". However, this is a separate issue. (Note, too,
that in the second version, the test for sales on line 195 is redundant, as
it must be true if the line is reached.)
--
Kenneth Brody
More information about the Filepro-list
mailing list