1 | GMTSOBL2 ; SLC/KER - HS Object - Lookup ; 01/06/2003
|
---|
2 | ;;2.7;Health Summary;**58**;Oct 20, 1995
|
---|
3 | ;
|
---|
4 | ; External References
|
---|
5 | ; DBIA 10006 ^DIC (file #142.5)
|
---|
6 | ; DBIA 10013 ^DIK (file #142 and 142.5)
|
---|
7 | ; DBIA 10016 ^DIM
|
---|
8 | ; DBIA 10103 $$NOW^XLFDT
|
---|
9 | ; DBIA 10103 $$FMADD^XLFDT
|
---|
10 | ;
|
---|
11 | Q
|
---|
12 | N(X) ; Verify Name
|
---|
13 | N DA,DIK,GMTSIEN,GMTSNEW S GMTSIEN=+($G(X)),GMTSNEW=+($P($G(X),"^",3))
|
---|
14 | I GMTSIEN'>0!('$L($P($G(^GMT(142.5,+($G(X)),0)),"^",1))) D
|
---|
15 | . S DA=GMTSIEN,DIK="^GMT(142.5,"
|
---|
16 | . W !," 'NAME' is a required field" Q:'GMTSNEW
|
---|
17 | . D:DA>0 ^DIK S X=-1
|
---|
18 | . W:'$D(^GMT(142.5,+DA,0)) !," < Health Summary Object deleted >"
|
---|
19 | Q X
|
---|
20 | NN(GMTS) ; No Name Entered
|
---|
21 | N DA,DIK,GMTSIEN,GMTSNEW S GMTSIEN=+($G(GMTS)),GMTSNEW=+($P($G(GMTS),"^",3))
|
---|
22 | I +GMTSIEN>0 D
|
---|
23 | . Q:$L($P($G(^GMT(142.5,+GMTSIEN,0)),"^",1))
|
---|
24 | . S DA=+GMTSIEN,DIK="^GMT(142.5,"
|
---|
25 | . W !," 'NAME' is a required field" Q:'GMTSNEW D:DA>0 ^DIK
|
---|
26 | . W:'$D(^GMT(142.5,+DA,0)) !," < Health Summary Object deleted >"
|
---|
27 | . S:'$D(^GMT(142.5,+DA,0)) (DA,X,Y)=-1,GMTSQ=1
|
---|
28 | Q
|
---|
29 | T(X) ; Type
|
---|
30 | N GMTST,GMTSB,GMTSC,GMTSIEN,GMTSNEW S GMTSIEN=+($G(X)),GMTST=+($P($G(^GMT(142.5,GMTSIEN,0)),"^",3)),GMTSNEW=+($P($G(X),"^",3))
|
---|
31 | I GMTST=0 D Q X
|
---|
32 | . S DA=GMTSIEN,DIK="^GMT(142.5,"
|
---|
33 | . W !," 'Health Summary Type' is a required field" Q:'GMTSNEW
|
---|
34 | . D:DA>0 ^DIK S X=-1
|
---|
35 | . W !," < Health Summary Object deleted >"
|
---|
36 | S GMTSB=+($D(^GMT(142,GMTST,1,"B"))),GMTSB=$S(GMTSB>0:1,1:0)
|
---|
37 | I GMTSB=0 D Q X
|
---|
38 | . S DA=GMTSIEN,DIK="^GMT(142.5,"
|
---|
39 | . W !," Selected Health Summary Type has no Components" Q:'GMTSNEW
|
---|
40 | . D:DA>0 ^DIK S X=-1
|
---|
41 | . W !," < Health Summary Object deleted >"
|
---|
42 | S GMTSC=$O(^GMT(142,GMTST,1,"C",0)),GMTSC=$S(GMTSC<9999&(GMTSC>0):1,1:0)
|
---|
43 | Q X
|
---|
44 | NT(GMTS) ; No Type Entered
|
---|
45 | N DA,DIK,GMTSIEN,GMTSNEW S GMTSIEN=+($G(GMTS)),GMTSNEW=+($P($G(GMTS),"^",3))
|
---|
46 | I +GMTSIEN>0 D
|
---|
47 | . Q:+($P($G(^GMT(142.5,+GMTSIEN,0)),"^",3))>0
|
---|
48 | . S DA=+GMTSIEN,DIK="^GMT(142.5,"
|
---|
49 | . W !," 'HEALTH SUMMARY TYPE' is a required field" Q:'GMTSNEW
|
---|
50 | . D:DA>0 ^DIK
|
---|
51 | . W:'$D(^GMT(142.5,+DA,0)) !," < Health Summary Object deleted >"
|
---|
52 | . S:'$D(^GMT(142.5,+DA,0)) (DA,X,Y)=-1,GMTSQ=1
|
---|
53 | Q
|
---|
54 | NEW(GMTS) ; New
|
---|
55 | S GMTS=+($G(GMTS))
|
---|
56 | I +GMTS>0,$D(^GMT(142.5,GMTS,0)) D
|
---|
57 | . N GMTSDT S GMTSDT=$$NOW^XLFDT
|
---|
58 | . S $P(^GMT(142.5,+GMTS,0),"^",18)=GMTSDT
|
---|
59 | . S GMTSDT=$$FMADD^XLFDT(GMTSDT,,,1,)
|
---|
60 | . S $P(^GMT(142.5,+GMTS,0),"^",19)=GMTSDT
|
---|
61 | . Q:+($G(DUZ))'>0 S $P(^GMT(142.5,+GMTS,0),"^",17)=+($G(DUZ))
|
---|
62 | Q
|
---|
63 | VER(X) ; Verify Object
|
---|
64 | N GMTSIEN,GMTSNAM,GMTSNEW S GMTSIEN=+($G(X)) Q:+GMTSIEN'>0 -1
|
---|
65 | S GMTSNAM=$P($G(X),"^",2),GMTSNEW=+($P($G(X),"^",3))
|
---|
66 | Q:'$D(^GMT(142.5,+GMTSIEN,0)) -1
|
---|
67 | I '$L($P($G(^GMT(142.5,+GMTSIEN,0)),"^",1)) D Q -1
|
---|
68 | . S DA=+GMTSIEN,DIK="^GMT(142.5," W !," 'NAME' is a required field" D:DA>0 ^DIK
|
---|
69 | . W:'$D(^GMT(142.5,+DA,0)) !," < Health Summary Object deleted >" S:'$D(^GMT(142.5,+DA,0)) (DA,X,Y)=-1,GMTSQ=1
|
---|
70 | Q:'$D(^GMT(142.5,+GMTSIEN,0)) -1
|
---|
71 | I +($P($G(^GMT(142.5,+GMTSIEN,0)),"^",3))'>0 D Q -1
|
---|
72 | . S DA=+GMTSIEN,DIK="^GMT(142.5," W !," 'HEALTH SUMMARY TYPE' is a required field" D:DA>0 ^DIK
|
---|
73 | . W:'$D(^GMT(142.5,+DA,0)) !," < Health Summary Object deleted >" S:'$D(^GMT(142.5,+DA,0)) (DA,X,Y)=-1,GMTSQ=1
|
---|
74 | Q:'$D(^GMT(142.5,+GMTSIEN,0)) -1
|
---|
75 | Q X
|
---|
76 | MOD(GMTS) ; Modified
|
---|
77 | S GMTS=+($G(GMTS))
|
---|
78 | I +GMTS>0,$D(^GMT(142.5,GMTS,0)) D
|
---|
79 | . N GMTSDT S GMTSDT=$$NOW^XLFDT
|
---|
80 | . S GMTSDT=$$FMADD^XLFDT(GMTSDT,,,1,)
|
---|
81 | . S $P(^GMT(142.5,+GMTS,0),"^",19)=GMTSDT
|
---|
82 | Q
|
---|
83 | TRIM(X) ; Trim Spaces
|
---|
84 | S X=$G(X) F Q:$E(X,1)'=" " S X=$E(X,2,$L(X))
|
---|
85 | F Q:$E(X,$L(X))'=" " S X=$E(X,1,($L(X)-1))
|
---|
86 | Q X
|
---|
87 | B(X) ; Default "B"
|
---|
88 | Q:+($G(DUZ))=0 "" N Y,DIR,DIC,DTOUT,DUOUT,DIROUT,DLAYGO,DA,D,D0,D1,DI,DQ S U="^"
|
---|
89 | S DIC=142.5,DIC(0)="Z",X=" " D ^DIC S X=$S(+Y>0:Y,1:"") Q X
|
---|
90 | Q
|
---|
91 | NAH ; Name Help
|
---|
92 | W !," Enter the name of the Health Summary Object, 3 to 30 characters"
|
---|
93 | W !," in length. This Object is stored and then embedded in another"
|
---|
94 | W !," document as needed."
|
---|
95 | Q
|
---|
96 | DIM(X) ; Test DIC("S")
|
---|
97 | S X=$G(X) D ^DIM Q:'$D(X) ""
|
---|
98 | Q X
|
---|