I once had an argument with a Meditech programmer as to why the (rejected) 
technique below does NOT produce an infinite loop.  It's another glaring 
example of why a syntax checker is not needed, and as to what can happen when 
the sytax checker (personified) doesn't understand the syntax.  I wouldn't 
thoroughly embrace the technique, however, unless one trusts that Meditech will 
have the query subscripts in exact sequential numerical order. Using the + is 
safer.

>>> "Davis Daniel - Southern Hills" <[EMAIL PROTECTED]> 01/16/07 10:51 AM >>>
I haven't answered any questions regarding the erase and clear macros
because I haven't had access to 5.6 to test out what the problem is.
Thanks to Joe Cocuzzo from Iatrics, I believe the problem can be solved
with a small code change in the macro.  Here is what Joe says:

 

The issue is that the new syntax checker does not like the do loop with
no + and an increment of the multiple query subscript

 

T: IF{MLINE 0^IDX,

:  DO{[B,QRY,"M",IDX+1^IDX] ""^/[B%0,QRY]M[IDX]};

T: DO{[B,QRY,"M",IDX+1^IDX] ""^/[B%0,QRY]M[IDX]};

:  ""^/[B%0,QRY]}}

 

The syntax checker won't let you do
DO{[SUB,CNT+1^CNT]<space>@YOUR.CODE.HERE}

 

You have to change to:

 

DO{+[SUB,CNT]^CNT @YOUR.CODE.HERE}

 

 

So, someone that has 5.6 can try making the suggested change and then
post the macro to the list.  Here is the code I believe you would need
in the new macro.

 

;

;

; A=CDS

; B=ANS

;

IF{/["aa"] @RUN};

 

RUN

IF{["B"_"ANS"] "B";

["C"_"ANS"] "C";

["E"_"ANS"] "E";

["F"_"ANS"] "F";

["H"_"ANS"] "H"}^SYMB,

IF{B;[SYMB_"ANS"]}^B,

""^QRY^FLD^ID^MLINE,

DO{+\GXX[A]E[FLD]^FLD \GXX[A]E[FLD]|0^QRY,

@MIS.QUERY.multiple.line[QRY]^MLINE,

IF{MLINE 0^IDX,

DO{+[B,QRY,"M",IDX]^IDX ""^/[B%0,QRY,"M",IDX]};

""^/[B%0,QRY]}}

 

Daniel Davis, RN
PCM Coordinator
Southern Hills Medical Center <http://www.southernhills.com> 
Among the Nation's 100 Best Acute Care Hospitals
T: 615.781.4153

This email and any files transmitted with it may contain PRIVILEGED or
CONFIDENTIAL information, and may be read or used only by the intended
recipient. If you are not the intended recipient of the email or any of
its attachments, please be advised that you have received this email in
error and that any use, dissemination, distribution, forwarding,
printing, or copying of this email or any attached files is strictly
prohibited. If you have received this email in error, please immediately
purge it and all attachments and notify the sender by reply email or
contact the sender at the number listed.



=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
To subscribe or unsubscribe to the meditech-l, visit MTUsers.COM.

To check the status of the meditech-l, visit MTUsers.NET.

For help, email [EMAIL PROTECTED]
______________________________________
meditech-l mailing list
[email protected]
http://mtusers.com/mailman/listinfo/meditech-l

Reply via email to