IBDEI0BL ; ; 01-AUG-2022
 ;;3.0;IB ENCOUNTER FORM IMP/EXP;;AUG 01, 2022
 Q:'DIFQ(358.6)  F I=1:2 S X=$T(Q+I) Q:X=""  S Y=$E($T(Q+I+1),4,999),X=$E(X,4,999) S:$A(Y)=126 I=I+1,Y=$E(Y,2,999)_$E($T(Q+I+1),5,999) S:$A(Y)=61 Y=$E(Y,2,999) X NO E  S @X=Y
Q Q
 ;;^DIC(358.6,0,"GL")
 ;;=^IBE(358.6,
 ;;^DIC("B","IMP/EXP PACKAGE INTERFACE",358.6)
 ;;=
 ;;^DIC(358.6,"%D",0)
 ;;=^^1^1^2950927^^^^
 ;;^DIC(358.6,"%D",1,0)
 ;;=This file is used as a workspace by the import/export utility.
 ;;^DIC(358.6,"%D",2,0)
 ;;=Import/Export Utility as a temporary staging area for data from that file
 ;;^DIC(358.6,"%D",3,0)
 ;;=that is being imported or exported.
 ;;^DIC(358.6,"%D",4,0)
 ;;= 
 ;;^DIC(358.6,"%D",5,0)
 ;;=This file contains a description of all of the interfaces with other packages.
 ;;^DIC(358.6,"%D",6,0)
 ;;=The form will invoke the proper interface routines by doing a lookup on
 ;;^DIC(358.6,"%D",7,0)
 ;;=this file and then invoking the routine by indirection. The INPUT VARIABLE
 ;;^DIC(358.6,"%D",8,0)
 ;;=fields are for documentation purposes and to verify that the proper
 ;;^DIC(358.6,"%D",9,0)
 ;;=variables are defined. Data will be exchanged between the encounter form
 ;;^DIC(358.6,"%D",10,0)
 ;;=utilities and other packages by putting the data in a predefined location.
 ;;^DIC(358.6,"%D",11,0)
 ;;=The first part of the subscript is always be ^TMP("IB",$J,"INTERFACES".
 ;;^DIC(358.6,"%D",12,0)
 ;;=For output routines, but not selection routines, the fourth subscript is
 ;;^DIC(358.6,"%D",13,0)
 ;;=be the patient DFN. The next subscript is the name of the Package
 ;;^DIC(358.6,"%D",14,0)
 ;;=Interface. For single valued data and record valued data there is no
 ;;^DIC(358.6,"%D",15,0)
 ;;=additional subscript. For interfaces returning a list there is one
 ;;^DIC(358.6,"%D",16,0)
 ;;=additional subscript level, the number of the item on the list. For
 ;;^DIC(358.6,"%D",17,0)
 ;;=word processing type data the data will be in FM word-processing format,
 ;;^DIC(358.6,"%D",18,0)
 ;;=i.e., the final subscripts will be ...1,0),...2,0),...3,0), etc.
 ;;^DIC(358.6,"%D",19,0)
 ;;=these items of data can have its own entry in the Package Interface file,
 ;;^DIC(358.6,"%D",20,0)
 ;;=but by using the same entry point there is a savings because all of the
 ;;^DIC(358.6,"%D",21,0)
 ;;=data on that node can be obtained at once. The routines that invoke the
 ;;^DIC(358.6,"%D",22,0)
 ;;=entry point keep track of the entry points already invoked so they are
 ;;^DIC(358.6,"%D",23,0)
 ;;=not repeated.
 ;;^DD(358.6,0)
 ;;=FIELD^^21^76
 ;;^DD(358.6,0,"DDA")
 ;;=N
 ;;^DD(358.6,0,"DT")
 ;;=3000124
 ;;^DD(358.6,0,"ID",.06)
 ;;=W ""
 ;;^DD(358.6,0,"ID","WRITE")
 ;;=N IBDWNAM S IBDWNAM=$E($P(^(0),U),1,40) D EN^DDIOL(IBDWNAM,"","!?0")
 ;;^DD(358.6,0,"ID","WRITE1")
 ;;=N IBDWTYPE S IBDWTYPE=$S($P(^(0),"^",6)=1:"INPUT",$P(^(0),"^",6)=2:"OUTPUT",$P(^(0),"^",6)=3:"SELECTION",1:"REPORT")_$S($P(^(0),U,6)=3&'$P(^(0),"^",13):"  ** NOT SCANNABLE **",1:"") D EN^DDIOL("TYPE="_IBDWTYPE,"","?45")
 ;;^DD(358.6,0,"IX","B",358.6,.01)
 ;;=
 ;;^DD(358.6,0,"IX","C",358.6,.04)
 ;;=
 ;;^DD(358.6,0,"IX","D",358.6,3)
 ;;=
 ;;^DD(358.6,0,"IX","E",358.6,.01)
 ;;=
 ;;^DD(358.6,0,"NM","IMP/EXP PACKAGE INTERFACE")
 ;;=
 ;;^DD(358.6,0,"PT",358.2,.11)
 ;;=
 ;;^DD(358.6,0,"PT",358.5,.03)
 ;;=
 ;;^DD(358.6,0,"PT",358.6,.13)
 ;;=
 ;;^DD(358.6,0,"PT",358.93,.06)
 ;;=
 ;;^DD(358.6,0,"VRPK")
 ;;=IBD
 ;;^DD(358.6,.01,0)
 ;;=NAME^RF^^0;1^K:X[""""!($A(X)=45) X I $D(X) K:$L(X)>40!($L(X)<3)!'(X'?1P.E) X
 ;;^DD(358.6,.01,1,0)
 ;;=^.1
 ;;^DD(358.6,.01,1,1,0)
 ;;=358.6^B
 ;;^DD(358.6,.01,1,1,1)
 ;;=S ^IBE(358.6,"B",$E(X,1,30),DA)=""
 ;;^DD(358.6,.01,1,1,2)
 ;;=K ^IBE(358.6,"B",$E(X,1,30),DA)
 ;;^DD(358.6,.01,1,2,0)
 ;;=358.6^E^MUMPS
 ;;^DD(358.6,.01,1,2,1)
 ;;=S ^IBE(358.6,"E",$E(X,$F(X," "),40),DA)=""
 ;;^DD(358.6,.01,1,2,2)
 ;;=K ^IBE(358.6,"E",$E(X,$F(X," "),40),DA)
 ;;^DD(358.6,.01,1,2,"%D",0)
 ;;=^^4^4^2940224^
 ;;^DD(358.6,.01,1,2,"%D",1,0)
 ;;= 
 ;;^DD(358.6,.01,1,2,"%D",2,0)
 ;;=For package interfaces that are output routines the name has the custodial
 ;;^DD(358.6,.01,1,2,"%D",3,0)
 ;;=package's name space as a prefix. This cross-reference removes that
 ;;^DD(358.6,.01,1,2,"%D",4,0)
 ;;=prefix. It is used to improve the display of output routines for the user.
 ;;^DD(358.6,.01,1,2,"DT")
 ;;=2930409
 ;;^DD(358.6,.01,3)
 ;;=Answer must be 3-40 characters in length. All entries with Action Type other than PRINT REPORT must be be prefixed with the namespace of the package that is responsible for the data.
 ;;^DD(358.6,.01,21,0)
 ;;=^^3^3^2950412^^^^
 ;;^DD(358.6,.01,21,1,0)
 ;;= 
 ;;^DD(358.6,.01,21,2,0)
 ;;=The name of the Package Interface. For interfaces returning data the name
 ;;^DD(358.6,.01,21,3,0)
 ;;=should be preceded with the namespace of the package.
 ;;^DD(358.6,.01,23,0)
 ;;=^^1^1^2950412^
 ;;^DD(358.6,.01,23,1,0)
 ;;= 
 ;;^DD(358.6,.01,"DT")
 ;;=2930409
 
--- Routine Detail   --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HIBDEI0BL   5015     printed  Sep 23, 2025@19:21:27                                                                                                                                                                                                    Page 2
IBDEI0BL  ; ; 01-AUG-2022
 +1       ;;3.0;IB ENCOUNTER FORM IMP/EXP;;AUG 01, 2022
 +2        if 'DIFQ(358.6)
               QUIT 
           FOR I=1:2
               SET X=$TEXT(Q+I)
               if X=""
                   QUIT 
               SET Y=$EXTRACT($TEXT(Q+I+1),4,999)
               SET X=$EXTRACT(X,4,999)
               if $ASCII(Y)=126
                   SET I=I+1
                   SET Y=$EXTRACT(Y,2,999)_$EXTRACT($TEXT(Q+I+1),5,999)
               if $ASCII(Y)=61
                   SET Y=$EXTRACT(Y,2,999)
               XECUTE NO
              IF '$TEST
                   SET @X=Y
Q          QUIT 
 +1       ;;^DIC(358.6,0,"GL")
 +2       ;;=^IBE(358.6,
 +3       ;;^DIC("B","IMP/EXP PACKAGE INTERFACE",358.6)
 +4       ;;=
 +5       ;;^DIC(358.6,"%D",0)
 +6       ;;=^^1^1^2950927^^^^
 +7       ;;^DIC(358.6,"%D",1,0)
 +8       ;;=This file is used as a workspace by the import/export utility.
 +9       ;;^DIC(358.6,"%D",2,0)
 +10      ;;=Import/Export Utility as a temporary staging area for data from that file
 +11      ;;^DIC(358.6,"%D",3,0)
 +12      ;;=that is being imported or exported.
 +13      ;;^DIC(358.6,"%D",4,0)
 +14      ;;= 
 +15      ;;^DIC(358.6,"%D",5,0)
 +16      ;;=This file contains a description of all of the interfaces with other packages.
 +17      ;;^DIC(358.6,"%D",6,0)
 +18      ;;=The form will invoke the proper interface routines by doing a lookup on
 +19      ;;^DIC(358.6,"%D",7,0)
 +20      ;;=this file and then invoking the routine by indirection. The INPUT VARIABLE
 +21      ;;^DIC(358.6,"%D",8,0)
 +22      ;;=fields are for documentation purposes and to verify that the proper
 +23      ;;^DIC(358.6,"%D",9,0)
 +24      ;;=variables are defined. Data will be exchanged between the encounter form
 +25      ;;^DIC(358.6,"%D",10,0)
 +26      ;;=utilities and other packages by putting the data in a predefined location.
 +27      ;;^DIC(358.6,"%D",11,0)
 +28      ;;=The first part of the subscript is always be ^TMP("IB",$J,"INTERFACES".
 +29      ;;^DIC(358.6,"%D",12,0)
 +30      ;;=For output routines, but not selection routines, the fourth subscript is
 +31      ;;^DIC(358.6,"%D",13,0)
 +32      ;;=be the patient DFN. The next subscript is the name of the Package
 +33      ;;^DIC(358.6,"%D",14,0)
 +34      ;;=Interface. For single valued data and record valued data there is no
 +35      ;;^DIC(358.6,"%D",15,0)
 +36      ;;=additional subscript. For interfaces returning a list there is one
 +37      ;;^DIC(358.6,"%D",16,0)
 +38      ;;=additional subscript level, the number of the item on the list. For
 +39      ;;^DIC(358.6,"%D",17,0)
 +40      ;;=word processing type data the data will be in FM word-processing format,
 +41      ;;^DIC(358.6,"%D",18,0)
 +42      ;;=i.e., the final subscripts will be ...1,0),...2,0),...3,0), etc.
 +43      ;;^DIC(358.6,"%D",19,0)
 +44      ;;=these items of data can have its own entry in the Package Interface file,
 +45      ;;^DIC(358.6,"%D",20,0)
 +46      ;;=but by using the same entry point there is a savings because all of the
 +47      ;;^DIC(358.6,"%D",21,0)
 +48      ;;=data on that node can be obtained at once. The routines that invoke the
 +49      ;;^DIC(358.6,"%D",22,0)
 +50      ;;=entry point keep track of the entry points already invoked so they are
 +51      ;;^DIC(358.6,"%D",23,0)
 +52      ;;=not repeated.
 +53      ;;^DD(358.6,0)
 +54      ;;=FIELD^^21^76
 +55      ;;^DD(358.6,0,"DDA")
 +56      ;;=N
 +57      ;;^DD(358.6,0,"DT")
 +58      ;;=3000124
 +59      ;;^DD(358.6,0,"ID",.06)
 +60      ;;=W ""
 +61      ;;^DD(358.6,0,"ID","WRITE")
 +62      ;;=N IBDWNAM S IBDWNAM=$E($P(^(0),U),1,40) D EN^DDIOL(IBDWNAM,"","!?0")
 +63      ;;^DD(358.6,0,"ID","WRITE1")
 +64      ;;=N IBDWTYPE S IBDWTYPE=$S($P(^(0),"^",6)=1:"INPUT",$P(^(0),"^",6)=2:"OUTPUT",$P(^(0),"^",6)=3:"SELECTION",1:"REPORT")_$S($P(^(0),U,6)=3&'$P(^(0),"^",13):"  ** NOT SCANNABLE **",1:"") D EN^DDIOL("TYPE="_IBDWTYPE,"","?45")
 +65      ;;^DD(358.6,0,"IX","B",358.6,.01)
 +66      ;;=
 +67      ;;^DD(358.6,0,"IX","C",358.6,.04)
 +68      ;;=
 +69      ;;^DD(358.6,0,"IX","D",358.6,3)
 +70      ;;=
 +71      ;;^DD(358.6,0,"IX","E",358.6,.01)
 +72      ;;=
 +73      ;;^DD(358.6,0,"NM","IMP/EXP PACKAGE INTERFACE")
 +74      ;;=
 +75      ;;^DD(358.6,0,"PT",358.2,.11)
 +76      ;;=
 +77      ;;^DD(358.6,0,"PT",358.5,.03)
 +78      ;;=
 +79      ;;^DD(358.6,0,"PT",358.6,.13)
 +80      ;;=
 +81      ;;^DD(358.6,0,"PT",358.93,.06)
 +82      ;;=
 +83      ;;^DD(358.6,0,"VRPK")
 +84      ;;=IBD
 +85      ;;^DD(358.6,.01,0)
 +86      ;;=NAME^RF^^0;1^K:X[""""!($A(X)=45) X I $D(X) K:$L(X)>40!($L(X)<3)!'(X'?1P.E) X
 +87      ;;^DD(358.6,.01,1,0)
 +88      ;;=^.1
 +89      ;;^DD(358.6,.01,1,1,0)
 +90      ;;=358.6^B
 +91      ;;^DD(358.6,.01,1,1,1)
 +92      ;;=S ^IBE(358.6,"B",$E(X,1,30),DA)=""
 +93      ;;^DD(358.6,.01,1,1,2)
 +94      ;;=K ^IBE(358.6,"B",$E(X,1,30),DA)
 +95      ;;^DD(358.6,.01,1,2,0)
 +96      ;;=358.6^E^MUMPS
 +97      ;;^DD(358.6,.01,1,2,1)
 +98      ;;=S ^IBE(358.6,"E",$E(X,$F(X," "),40),DA)=""
 +99      ;;^DD(358.6,.01,1,2,2)
 +100     ;;=K ^IBE(358.6,"E",$E(X,$F(X," "),40),DA)
 +101     ;;^DD(358.6,.01,1,2,"%D",0)
 +102     ;;=^^4^4^2940224^
 +103     ;;^DD(358.6,.01,1,2,"%D",1,0)
 +104     ;;= 
 +105     ;;^DD(358.6,.01,1,2,"%D",2,0)
 +106     ;;=For package interfaces that are output routines the name has the custodial
 +107     ;;^DD(358.6,.01,1,2,"%D",3,0)
 +108     ;;=package's name space as a prefix. This cross-reference removes that
 +109     ;;^DD(358.6,.01,1,2,"%D",4,0)
 +110     ;;=prefix. It is used to improve the display of output routines for the user.
 +111     ;;^DD(358.6,.01,1,2,"DT")
 +112     ;;=2930409
 +113     ;;^DD(358.6,.01,3)
 +114     ;;=Answer must be 3-40 characters in length. All entries with Action Type other than PRINT REPORT must be be prefixed with the namespace of the package that is responsible for the data.
 +115     ;;^DD(358.6,.01,21,0)
 +116     ;;=^^3^3^2950412^^^^
 +117     ;;^DD(358.6,.01,21,1,0)
 +118     ;;= 
 +119     ;;^DD(358.6,.01,21,2,0)
 +120     ;;=The name of the Package Interface. For interfaces returning data the name
 +121     ;;^DD(358.6,.01,21,3,0)
 +122     ;;=should be preceded with the namespace of the package.
 +123     ;;^DD(358.6,.01,23,0)
 +124     ;;=^^1^1^2950412^
 +125     ;;^DD(358.6,.01,23,1,0)
 +126     ;;= 
 +127     ;;^DD(358.6,.01,"DT")
 +128     ;;=2930409