| 1 | GMTSDGP ; SLC/TRS,KER/NDBI - PTF Surgeries/Procedures ; 03/24/2004 [4/1/04 2:55pm]
 | 
|---|
| 2 |  ;;2.7;Health Summary;**28,49,60,71**;Oct 20, 1995
 | 
|---|
| 3 |  ;                    
 | 
|---|
| 4 |  ; External References
 | 
|---|
| 5 |  ;   DBIA  3390  $$ICDOP^ICDCODE
 | 
|---|
| 6 |  ;   DBIA  1372  ^DGPT(
 | 
|---|
| 7 |  ;   DBIA  1372  ^DGPT("B"
 | 
|---|
| 8 |  ;   DBIA  2929  OPC^A7RHSM
 | 
|---|
| 9 |  ;   DBIA  2929  PRC^A7RHSM
 | 
|---|
| 10 |  ;                    
 | 
|---|
| 11 | ENS ; Module For History of PTF Surgery Episodes
 | 
|---|
| 12 |  I $D(GMTSNDM),GMTSNDM>0 S CNTR=GMTSNDM
 | 
|---|
| 13 |  E  S CNTR=100
 | 
|---|
| 14 |  S T1=GMTSEND,T2=GMTSBEG,GMCZ=0
 | 
|---|
| 15 |  S PTF=0
 | 
|---|
| 16 |  F  S PTF=$O(^DGPT("B",DFN,PTF)) Q:PTF=""  D ICDS
 | 
|---|
| 17 |  D:$$ROK^GMTSU("A7RHSM")&($$NDBI^GMTSU) OPC^A7RHSM
 | 
|---|
| 18 |  I $D(GMS) S O=0 F I=1:1 S O=$O(GMS(O)) Q:O=""  Q:'CNTR  S CNTR=CNTR-1 S O1=0,LN1=1 F I=1:1 S O1=$O(GMS(O,O1)) Q:O1=""  D CKP^GMTSUP Q:$D(GMTSQIT)  S:GMTSNPG LN1=1 W:LN1 GMS(O) W ?21,$P(GMS(O,O1),U),?68,$P(GMS(O,O1),U,2),! S LN1=0
 | 
|---|
| 19 |  D KILLADM Q
 | 
|---|
| 20 | ICDS ;   ICD Surgery
 | 
|---|
| 21 |  N GMCZ,GMA,D0,DA,DR,DIC,II,IX,SURG,ZI Q:'$D(^DGPT(PTF,"S"))
 | 
|---|
| 22 |  S II=0 F ZI=1:1 S II=$O(^DGPT(PTF,"S",II)) Q:'II  S SURG=^DGPT(PTF,"S",II,0),X=$P(SURG,U,1),IX=9999999-X I X>T2&(X<T1) D REGDT4^GMTSU D ICDS1
 | 
|---|
| 23 |  Q
 | 
|---|
| 24 | ICDS1 ;   Load Surgery entries into GMS array (inverted)
 | 
|---|
| 25 |  S GMCZ=2 S GMS(IX)="  Surgery  "_X F GMA=8:1:12 D SGY
 | 
|---|
| 26 |  Q
 | 
|---|
| 27 | SGY ;   Surgery Line
 | 
|---|
| 28 |  N ICDP,ICDI,ICDX
 | 
|---|
| 29 |  S ICDI=+$P(SURG,U,GMA) Q:ICDI'>0
 | 
|---|
| 30 |  S ICDX=$$ICDOP^ICDCODE(+ICDI)
 | 
|---|
| 31 |  S ICDS(80.1,ICDI,.01)=$P(ICDX,"^",2)
 | 
|---|
| 32 |  S ICDS(80.1,ICDI,4)=$P(ICDX,"^",5)
 | 
|---|
| 33 |  I $D(ICDS(80.1,ICDI)) D
 | 
|---|
| 34 |  . S GMS(IX,GMA)=$E($G(ICDS(80.1,ICDI,4)),1,45)_U_$G(ICDS(80.1,ICDI,.01))
 | 
|---|
| 35 |  Q
 | 
|---|
| 36 |  ;                    
 | 
|---|
| 37 | ENP ; Module For History of PTF Procedures
 | 
|---|
| 38 |  I $D(GMTSNDM),GMTSNDM>0 S CNTR=GMTSNDM
 | 
|---|
| 39 |  E  S CNTR=100
 | 
|---|
| 40 |  S T1=GMTSEND,T2=GMTSBEG,GMCZ=0
 | 
|---|
| 41 |  S PTF=0
 | 
|---|
| 42 |  F  S PTF=$O(^DGPT("B",DFN,PTF)) Q:PTF=""  D ICDP
 | 
|---|
| 43 |  D:$$ROK^GMTSU("A7RHSM")&($$NDBI^GMTSU) PRC^A7RHSM
 | 
|---|
| 44 |  I $D(GMP) S O=0 F I=1:1 S O=$O(GMP(O)) Q:O=""  Q:'CNTR  S CNTR=CNTR-1 S O1=0,LN1=1 F I=1:1 S O1=$O(GMP(O,O1)) Q:O1=""  D CKP^GMTSUP Q:$D(GMTSQIT)  S:GMTSNPG LN1=1 W:LN1 GMP(O) W ?21,$P(GMP(O,O1),U),?68,$P(GMP(O,O1),U,2),! S LN1=0
 | 
|---|
| 45 |  D KILLADM Q
 | 
|---|
| 46 |  Q
 | 
|---|
| 47 | ICDP ;   ICD Procedures
 | 
|---|
| 48 |  N D0,DA,DIC,DR,GMCZ,GTA,II,IX,PRX,ZI Q:'$D(^DGPT(PTF,"P"))
 | 
|---|
| 49 |  S II=0 F ZI=1:1 S II=$O(^DGPT(PTF,"P",II)) Q:'II  S PRX=^DGPT(PTF,"P",II,0),X=$P(PRX,U,1),IX=9999999-X I X>T2&(X<T1) D REGDT4^GMTSU D ICDP1
 | 
|---|
| 50 |  Q
 | 
|---|
| 51 | ICDP1 ;   Load Procedure entries into GMP array (inverted)
 | 
|---|
| 52 |  S GMCZ=2 S GMP(IX)="Procedure  "_X F GTA=5:1:9 D PXGY
 | 
|---|
| 53 |  Q
 | 
|---|
| 54 | PXGY ;   Procedure Line
 | 
|---|
| 55 |  N ICDP,ICDI,ICDX
 | 
|---|
| 56 |  S ICDI=+$P(PRX,U,GTA) Q:ICDI'>0
 | 
|---|
| 57 |  S ICDX=$$ICDOP^ICDCODE(+ICDI)
 | 
|---|
| 58 |  S ICDP(80.1,ICDI,.01)=$P(ICDX,"^",2)
 | 
|---|
| 59 |  S ICDP(80.1,ICDI,4)=$P(ICDX,"^",5)
 | 
|---|
| 60 |  I $D(ICDP(80.1,ICDI)) D
 | 
|---|
| 61 |  . S GMP(IX,GTA)=$E($G(ICDP(80.1,ICDI,4)),1,45)_U_$G(ICDP(80.1,ICDI,.01))
 | 
|---|
| 62 |  Q
 | 
|---|
| 63 |  ;                    
 | 
|---|
| 64 | KILLADM ; Kills Admission variables
 | 
|---|
| 65 |  K CNTR,GMCZ,LN1,IX,X,ZA,N,ICD,ICD0,PTF,GMC,O,O1,GMS,T1,T2,SURG,SURGY,PRX,PRXY,DATE,D1,I,IMT,GMA,GTA,II,ZI,GMP
 | 
|---|
| 66 |  K ICDP,ICDS
 | 
|---|
| 67 |  Q
 | 
|---|