VistA-FOIAVistA/r/ORDER_ENTRY_RESULTS_REPORTI.../OCXF22.m

91 lines
2.4 KiB
Mathematica

OCXF22 ;SLC/RJS,CLA - GENERATES CODE FOR 'Free Text (String)' OPERATORS ;10/29/98 12:37
;;3.0;ORDER ENTRY/RESULTS REPORTING;**32**;Dec 17,1997
;; ;;ORDER CHECK EXPERT version 1.01 released OCT 29,1998
Q
;
;
LEN(X) ;
I ($E(X,1)="""") Q ($L(X)-2)
Q "$L("_X_")"
;
START(DATA,CVAL) ; DATA STARTS WITH VALUE
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "($E("_DATA_",1,"_$$LEN(CVAL)_")="_CVAL_")"
;
END(DATA,CVAL) ; DATA ENDS WITH VALUE
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "($E("_DATA_",($L("_DATA_")-("_$$LEN(CVAL)_"-1)),$L("_DATA_"))="_CVAL_")"
;
PAT(DATA,CVAL) ; MUMPS PATTERN MATCH
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "("_DATA_"?"_CVAL_")"
;
;
CONT(DATA,CVAL) ; DATA CONTAINS VALUE
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "("_DATA_"["_CVAL_")"
;
PREC(DATA,CVAL) ; DATA PRECEDES VALUE ALPHABETICALLY
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "("_CVAL_"]"_DATA_")"
;
;
FOLLOW(DATA,CVAL) ; DATA FOLLOWS VALUE ALPHABETICALLY
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "("_DATA_"]"_CVAL_")"
;
AEQ(DATA,CVAL) ; DATA EQUALS VALUE ALPHABETICALLY
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "("_DATA_"="_CVAL_")"
;
AEQT(DATA,CVAL) ; DATA EQUALS STANDARD TERM ALPHABETICALLY
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "$$EQTERM("_DATA_","_CVAL_")"
;
NAEQ(DATA,CVAL) ; DATA DOES NOT EQUAL VALUE ALPHABETICALLY
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL)) "" Q "'("_DATA_"="_CVAL_")"
;
AINCL(DATA,CVAL1,CVAL2) ; ALPHA INCLUSIVE BETWEEN
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL1)) "" Q:'$L($G(CVAL2)) ""
;
Q "'("_$$PREC(DATA,CVAL1)_"!"_$$FOLLOW(DATA,CVAL2)_")"
;
AEXCL(DATA,CVAL1,CVAL2) ; ALPHA EXCLUSIVE BETWEEN
;
Q:'$L($G(DATA)) "" Q:'$L($G(CVAL1)) "" Q:'$L($G(CVAL2)) ""
;
Q "("_$$FOLLOW(DATA,CVAL1)_"&"_$$PREC(DATA,CVAL2)_")"
;
; ***** STRING LENGTH OPERATORS *****
;
LGRT(DATA,CVAL) ; GREATER THAN SPECIFIED STRING LENGTH
;
Q $$GRT^OCXF20("$L("_DATA_")",CVAL)
;
LESS(DATA,CVAL) ; LESS THAN SPECIFIED STRING LENGTH
;
Q $$LESS^OCXF20("$L("_DATA_")",CVAL)
;
LEQ(DATA,CVAL) ; EQUALS SPECIFIED STRING LENGTH
;
Q $$EQ^OCXF20("$L("_DATA_")",CVAL)
;
LINCL(DATA,CVAL1,CVAL2) ; STRING LENGTH INCLUSIVE BETWEEN
;
Q $$INCL^OCXF20("$L("_DATA_")",CVAL1,CVAL2)
;
LEXCL(DATA,CVAL1,CVAL2) ; STRING LENGTH EXCLUSIVE BETWEEN
;
Q $$EXCL^OCXF20("$L("_DATA_")",CVAL1,CVAL2)
;
EQSET(DATA,CVAL) ; STRING IS EQUAL TO ONE OF A LIST OF VALUES
;
Q "$$LIST("_DATA_","_CVAL_")"
;
CONSET(DATA,CVAL) ; STRING CONTAINS ONE OF A LIST OF VALUES
;
Q "$$CLIST("_DATA_","_CVAL_")"
;