- IBDFU91 ;ALB/CJM - ENCOUNTER FORM - transforms needed to validate,display and pass data;AUG 18,1995
- ;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997
- ;
- OUTPUT(PI,Y) ;xecutes the output transform of the package interface on Y
- ;Y should be passed by reference
- ;the underlying output transform should set Y="" if the transform can not be made
- ;in that case Y is set to "?"
- ;
- I $G(PI),$D(Y) X $G(^IBE(357.6,PI,14)) I Y="" S Y="?"
- Q
- ;
- INPUT(PI,X) ;xecutes the input transform of the package interface on X
- ;X should be passed by reference
- ;the underlying input transform:
- ; can be interactive if $G(IBDEVICE("LISTMAN"))
- ; should set X to the form needed for passing to the database
- ; X should be killed if it can not be put into the correct form
- ; does not guarantee validity - for example, X could be an inactive code
- ;
- I $G(PI),$D(X) X $G(^IBE(357.6,PI,9))
- Q
- ;
- CHOICE(PI,X) ;executes the selector of the package interface=PI, user input is X
- ; -- X should be passed by reference.
- ; -- sets IBLABEL,IBID,IBQUAL
- ;
- N DIC,DIE,%,%W,%Y,C,DIPGM,DISYS,I,Q,D,D0,DO,DI,DQ,D1,%X,%Y,Y,DIX,DICR
- ;execute the selector
- I $G(PI) X $G(^IBE(357.6,PI,17))
- Q
- ;
- FDCHOICE(PI,X) ;executes the selector of the package interface=PI,X=the user input, then runs it through the input transform for a value that can be passed to the PCE GDI
- ; -- X should be passed by reference.
- ;
- N DIC,DIE,%,%W,%Y,C,DIPGM,DISYS,I,Q,D,D0,DO,DI,DQ,D1,%X,%Y,Y,DIX,DICR,IBLABEL,IBQUAL,IBID
- I $G(PI) D
- .;execute the selector
- .X $G(^IBE(357.6,PI,17))
- .;the selector actually returns the ID for the selection in the variabel IBID - X is the displayable value, which may be different
- .;I $G(IBID)="" K X Q
- .;pass the selection through the input transform
- .I $D(X),$G(IBID)'="" S X=IBID D INPUT(PI,.X)
- Q
- ;
- HPTRNS(TYPEDATA,X,IBFORMID) ;used to transform a value read from a hand print field (X) into a value that can be passed to the database
- ;TYPEDATA = data type (file 359.1)
- ;IBFORMID = id in form tracking,should be passed by reference
- ; available form form tracking:
- ; IBFORMID("DFN")
- ; IBFORMID("APPT")
- ; IBFORMID("CLINIC")
- ; IBFORMID("SOURCE")
- ;
- ;X = the value that needs to be transformed
- ;returns the transformed value
- ;returns "" if it can not be put inot the correct form
- ;
- ;the underlying input transform:
- ; should not be interactive
- ; can use the IBFORMID array
- ; should set X to the form needed for passing to the database
- ; X should be killed if it can not be put into the correct form
- ; does not guarantee validity - for example, X could be an inactive code
- ;
- I '$G(TYPEDATA)!'$D(X) S X="" Q X
- I '$D(^IBE(359.1,TYPEDATA,0)) S X="" Q
- X $G(^IBE(359.1,TYPEDATA,1))
- S:'$D(X) X=""
- Q X
- ;
- VALIDATE(PI,X) ;used to validate the value stored with a selection(file 357.3)
- ;PI is assumed to be a selection type package interface
- ;kills X if not valid, but otherwise does not change it
- ;pass X by reference
- ;the underlying validation transform:
- ; should not be interactive
- ; should kill X if it is not valid
- ;
- I X="" K X Q
- I 'PI K X Q
- I '$D(^IBE(357.6,PI,0)) K X Q
- X $G(^IBE(357.6,PI,11))
- Q
- ;
- HELP(PI) ;writes the help message for the package interface
- ;
- I PI W !,?6,$G(^IBE(357.6,PI,10)),!
- I PI D CHOICE(PI,"?")
- Q
- IBDFU91 ;ALB/CJM - ENCOUNTER FORM - transforms needed to validate,display and pass data;AUG 18,1995
- +1 ;;3.0;AUTOMATED INFO COLLECTION SYS;;APR 24, 1997
- +2 ;
- OUTPUT(PI,Y) ;xecutes the output transform of the package interface on Y
- +1 ;Y should be passed by reference
- +2 ;the underlying output transform should set Y="" if the transform can not be made
- +3 ;in that case Y is set to "?"
- +4 ;
- +5 IF $GET(PI)
- IF $DATA(Y)
- XECUTE $GET(^IBE(357.6,PI,14))
- IF Y=""
- SET Y="?"
- +6 QUIT
- +7 ;
- INPUT(PI,X) ;xecutes the input transform of the package interface on X
- +1 ;X should be passed by reference
- +2 ;the underlying input transform:
- +3 ; can be interactive if $G(IBDEVICE("LISTMAN"))
- +4 ; should set X to the form needed for passing to the database
- +5 ; X should be killed if it can not be put into the correct form
- +6 ; does not guarantee validity - for example, X could be an inactive code
- +7 ;
- +8 IF $GET(PI)
- IF $DATA(X)
- XECUTE $GET(^IBE(357.6,PI,9))
- +9 QUIT
- +10 ;
- CHOICE(PI,X) ;executes the selector of the package interface=PI, user input is X
- +1 ; -- X should be passed by reference.
- +2 ; -- sets IBLABEL,IBID,IBQUAL
- +3 ;
- +4 NEW DIC,DIE,%,%W,%Y,C,DIPGM,DISYS,I,Q,D,D0,DO,DI,DQ,D1,%X,%Y,Y,DIX,DICR
- +5 ;execute the selector
- +6 IF $GET(PI)
- XECUTE $GET(^IBE(357.6,PI,17))
- +7 QUIT
- +8 ;
- FDCHOICE(PI,X) ;executes the selector of the package interface=PI,X=the user input, then runs it through the input transform for a value that can be passed to the PCE GDI
- +1 ; -- X should be passed by reference.
- +2 ;
- +3 NEW DIC,DIE,%,%W,%Y,C,DIPGM,DISYS,I,Q,D,D0,DO,DI,DQ,D1,%X,%Y,Y,DIX,DICR,IBLABEL,IBQUAL,IBID
- +4 IF $GET(PI)
- Begin DoDot:1
- +5 ;execute the selector
- +6 XECUTE $GET(^IBE(357.6,PI,17))
- +7 ;the selector actually returns the ID for the selection in the variabel IBID - X is the displayable value, which may be different
- +8 ;I $G(IBID)="" K X Q
- +9 ;pass the selection through the input transform
- +10 IF $DATA(X)
- IF $GET(IBID)'=""
- SET X=IBID
- DO INPUT(PI,.X)
- End DoDot:1
- +11 QUIT
- +12 ;
- HPTRNS(TYPEDATA,X,IBFORMID) ;used to transform a value read from a hand print field (X) into a value that can be passed to the database
- +1 ;TYPEDATA = data type (file 359.1)
- +2 ;IBFORMID = id in form tracking,should be passed by reference
- +3 ; available form form tracking:
- +4 ; IBFORMID("DFN")
- +5 ; IBFORMID("APPT")
- +6 ; IBFORMID("CLINIC")
- +7 ; IBFORMID("SOURCE")
- +8 ;
- +9 ;X = the value that needs to be transformed
- +10 ;returns the transformed value
- +11 ;returns "" if it can not be put inot the correct form
- +12 ;
- +13 ;the underlying input transform:
- +14 ; should not be interactive
- +15 ; can use the IBFORMID array
- +16 ; should set X to the form needed for passing to the database
- +17 ; X should be killed if it can not be put into the correct form
- +18 ; does not guarantee validity - for example, X could be an inactive code
- +19 ;
- +20 IF '$GET(TYPEDATA)!'$DATA(X)
- SET X=""
- QUIT X
- +21 IF '$DATA(^IBE(359.1,TYPEDATA,0))
- SET X=""
- QUIT
- +22 XECUTE $GET(^IBE(359.1,TYPEDATA,1))
- +23 IF '$DATA(X)
- SET X=""
- +24 QUIT X
- +25 ;
- VALIDATE(PI,X) ;used to validate the value stored with a selection(file 357.3)
- +1 ;PI is assumed to be a selection type package interface
- +2 ;kills X if not valid, but otherwise does not change it
- +3 ;pass X by reference
- +4 ;the underlying validation transform:
- +5 ; should not be interactive
- +6 ; should kill X if it is not valid
- +7 ;
- +8 IF X=""
- KILL X
- QUIT
- +9 IF 'PI
- KILL X
- QUIT
- +10 IF '$DATA(^IBE(357.6,PI,0))
- KILL X
- QUIT
- +11 XECUTE $GET(^IBE(357.6,PI,11))
- +12 QUIT
- +13 ;
- HELP(PI) ;writes the help message for the package interface
- +1 ;
- +2 IF PI
- WRITE !,?6,$GET(^IBE(357.6,PI,10)),!
- +3 IF PI
- DO CHOICE(PI,"?")
- +4 QUIT