Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
The Impossible String !
Message
From
20/11/2015 04:06:30
 
 
To
19/11/2015 13:28:02
John Ryan
Captain-Cooker Appreciation Society
Taumata Whakatangi ..., New Zealand
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 9 SP1
OS:
Windows 7
Network:
Windows 2003 Server
Database:
Visual FoxPro
Application:
Desktop
Miscellaneous
Thread ID:
01627611
Message ID:
01627663
Views:
61
diagnosis table is/was (saw answer negating the option) prime suspect for me as well - but even our for program execution single threaded vfp knows some interrupts: on key label, OLE asynch returns the ones I found responsible for some weird constellations in the error stack ;-)

There also could be some events triggered, either from included other sources (like a C timer), Eventhandler or Bindevented Windows events - vfp Timer probably is out, as a vfp program is already executing and timer is documented to fire only when not (as vfp internally fires up 3 or 4 threads - probably to decouple disk access - no chance to know for certain without access to the vfp sources).

One of points of discussion here with colleagues is that I tend to leave log/assert/verify code in my sources forever and tend not to write externally driven test code, old dog and so on... But for such situations having the log code available at all times is more than nice as it might explain some twilight zone suspected issues ;-)

>>>I'll check into that in the diagnoses table and source tables.
>
>Wise. To immediate review there is no obvious explanation for additional segments inside the string, except field values from the diagnoses table. Example: it may well be that in the dim distant past, somebody created or edited placeholder row/s in diagnoses for certain special cases, putting ^^| in diagnosis_code and diagnosis_code_qualifier to mimic the empty/not found state. I've seen that before for some of the "not otherwise qualified" codes that the user wants to store but to be treated as blank for billing or other purposes. That's fine except that it causes nested ^^| in your code. If so, be careful changing it, in case you transfer the breakage somewhere else! Might be better to alter your IF along the lines of
>
>IF THIS.m_seek(ALLTRIM(STR(rx.rx_no)) + ALLTRIM(STR(refill_no)),"diagnoses","fullrx",1) and diagnoses.diagnosis_code !="^^|"
>
>Or if you're sure it's used nowhere else, you can replace diagnosis_code and diagnosis_code_qualifier with "" for diagnosis_code="^^|" or even delete the row if it's not part of an official codeset lookup.
>
>If it's not from diagnoses then I agree it's a twilight zone issue!
Previous
Reply
Map
View

Click here to load this message in the networking platform