Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: VENPCCIX

VENPCCIX.m

Go to the documentation of this file.
  1. VENPCCIX ; IHS/OIT/GIS - INSTALLATION TOOLS: ADD A NEW TEMPLATE FOR VER 2.5 EXTENSION OF VENPCCIT ;
  1. ;;2.6;PCC+;;NOV 12, 2007
  1. ;
  1. ;
  1. ;
  1. LAB ; EP-DISPLAY CERTAIN LAB RESULTS
  1. W !!,SEP," RECENT LAB RESULTS ",SEP
  1. W !!,"Want to include recent lab test results on the form..."
  1. S %=2
  1. I $O(^VEN(7.41,TIEN,7,0)) S %=1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. D YN^DICN
  1. I %Y=U W !!,SEP G HMR^VENPCCIT
  1. I %Y?2."^" G FIN
  1. S DA(1)=TIEN,DIC="^VEN(7.41,"_DA(1)_",7,"
  1. I %=2,$O(^VEN(7.41,DA(1),7,0)),'$$OK("lab tests") G LAB1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. I %=2 D G GRAPH
  1. . S DA(1)=TIEN,DIK=DIC,DA=0
  1. . F S DA=$O(^VEN(7.41,DA(1),7,DA)) Q:'DA D ^DIK
  1. . Q
  1. LAB1 S DIC("P")="19707.417PA",DIC(0)="AEQL",DLAYGO=19707.417
  1. S DIC("A")="Enter the name of "_$S($D(^VEN(7.41,TIEN,7)):"another",1:"a")_" lab test result: "
  1. D ^DIC I Y=-1 G GRAPH
  1. S DA=+Y,DIE=DIC
  1. I $P(Y,U,3) G LAB2
  1. W !,"This test already is on the form. Want to delete it"
  1. S %=2
  1. D YN^DICN
  1. I %=1 S DIK=DIC D ^DIK W ! G LAB1
  1. LAB2 S DR=".02CPT Code;.03Printed test name;.08Max number of results allowed;.09Max age of result allowed (mos);.06Point of care test"
  1. L +^VEN(7.41,TIEN):0 I D ^DIE L -^VEN(7.41,TIEN) W !
  1. G LAB1 ; ADD MORE TESTS TO THE FORM
  1. ;
  1. GRAPH ; EP - GRAPHS ASSOCIATED WITH THE FORM
  1. W !!,SEP," GRAPHS ",SEP
  1. W !!,"Want to include graphs of measurable results on this form"
  1. S %=2
  1. I $O(^VEN(7.41,TIEN,6,0)) S %=1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. D YN^DICN
  1. I %Y=U W !!,SEP G LAB
  1. I %Y?2."^" G FIN
  1. S DA(1)=TIEN,DIC="^VEN(7.41,"_DA(1)_",6,"
  1. I %=2,$O(^VEN(7.41,DA(1),6,0)),'$$OK("graphs") G GRAPH1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. I %=2 D G KB
  1. . S DA(1)=TIEN,DIK=DIC,DA=0
  1. . F S DA=$O(^VEN(7.41,DA(1),6,DA)) Q:'DA D ^DIK
  1. . Q
  1. GRAPH1 S DIC("P")="19707.416P",DIC(0)="AEQL",DLAYGO=19707.416
  1. S DIC("A")="Enter the name of "_$S($D(^VEN(7.41,TIEN,6)):"another",1:"a")_" graph: "
  1. D ^DIC I Y=-1 G KB
  1. S DA=+Y,DIE=DIC
  1. I $P(Y,U,3) W ! G GRAPH1
  1. W !,"This graph already is on the form. Want to delete it"
  1. S %=2
  1. D YN^DICN
  1. I %=1 S DIK=DIC D ^DIK
  1. W ! G GRAPH1 ; ADD MORE GRAPHS TO THE FORM
  1. ;
  1. KB ; EP - KNOWLEDGEBASE ASSOCIATED WITH THE FORM
  1. W !!,SEP," KNOWLEDGEBASES ",SEP
  1. W !,"A knowledgebase contains custom guidelines or patient education topics."
  1. S %=2
  1. I $O(^VEN(7.41,TIEN,19,0)) S %=1 D
  1. . W !,"This form already contains the following knowledgebase(s): "
  1. . S KIEN=0 F S KIEN=$O(^VEN(7.41,TIEN,19,"B",KIEN)) Q:'KIEN D
  1. .. S KNM=$P($G(^VEN(7.13,KIEN,0)),U)
  1. .. W !?3,KNM
  1. .. Q
  1. . W !!
  1. . Q
  1. W !,"Want to include knowledgebase(s) on this form"
  1. D YN^DICN
  1. I %Y=U W !!,SEP G GRAPH ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. I %Y?2."^" G FIN
  1. S DA(1)=TIEN,DIC="^VEN(7.41,"_DA(1)_",19,"
  1. I %=2,$O(^VEN(7.41,DA(1),19,0)),'$$OK("knowledgebases") G KB1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. I %=2 D G GG
  1. . S DA(1)=TIEN,DIK=DIC,DA=0
  1. . F S DA=$O(^VEN(7.41,DA(1),19,DA)) Q:'DA D ^DIK
  1. . Q
  1. KB1 S DIC("P")="19707.4119P",DIC(0)="AEQL",DLAYGO=19707.4119
  1. S DIC("A")="Enter the name of a knowledgebase clinical domain: "
  1. D ^DIC I Y=-1 G GG ; ASSIGN A KB CLINICAL DOMAIN TO THE TEMPLATE
  1. S DA=+Y
  1. I '$P(^VEN(7.41,TIEN,19,DA,0),U,2) S $P(^(0),U,2)=(DA*5)+100 ; AUTOMATICALLY ASSIGN AN ORDER
  1. I $P(Y,U,3) W ! G KB1 ; CHECK TO SEE IF THE KB DOMAINE IS ALREADY ASSIGNED. IF SO, DOES IT NEED OT BE REMOVED
  1. W !,"This knowledgebase already is on the form. Want to delete it"
  1. S %=2
  1. D YN^DICN
  1. I %=1 S DIK=DIC D ^DIK
  1. W ! G KB1 ; ADD MORE GRAPHS TO THE FORM
  1. ;
  1. GG ; EP - GROWTH GRIDS FOR WELL CHILD FORM
  1. S GGIEN=$O(^VEN(7.62,"B","PEDS GROWTH CHART",0)),%=2
  1. I 'GGIEN G CL ; THE PEDS GROWTH CHART OCX IS UNAVAILABLE
  1. W !!,SEP," PEDIATRIC GROWTH GRIDS ",SEP
  1. I $D(^VEN(7.62,GGIEN,6,"B",TIEN)) S %=1
  1. W !!,"Want to include Pediatric Growth Grids on the form"
  1. D YN^DICN
  1. I %=1 G GG1
  1. I %Y=U W !! G KB
  1. I %Y?2."^" G FIN
  1. GGD I $D(^VEN(7.62,GGIEN,6,"B",TIEN)),%=2 D G CL ; DELETE GRID FROM FORM
  1. . W !,"Sure you want to remove the Grids from this template"
  1. . S %=2 D YN^DICN
  1. . I %'=1 D ^XBFMK Q
  1. . S DA(1)=GGIEN
  1. . S DIK="^VEN(7.62,"_DA(1)_",6,"
  1. . S DA=$O(^VEN(7.62,GGIEN,6,"B",TIEN,0)) I 'DA Q
  1. . D ^DIK
  1. . D ^XBFMK
  1. . Q
  1. Q ; PATCHED BY GIS/OIT 01/10/06 ; PCC+ 2.5 PATCH 2
  1. ;
  1. GG1 ; EP - UPDATE THE OCX COMPONENTS FILE
  1. S DA(1)=GGIEN
  1. S DIC="^VEN(7.62,"_DA(1)_",6," S DIC(0)="L"
  1. S DLAYGO=19707.626
  1. S DIC("P")=19707.626
  1. S X="`"_TIEN
  1. D ^DIC I Y=-1 G CL
  1. W !,"OK, you may now add Pediatric Growth Grids to this template"
  1. W !,"If 'blank' graphs appear on the printed form, you should review"
  1. W !,"section 5 in the PCC+ users guide to learn about the 'blank graph' remedy"
  1. CL ; CHECKLISTS
  1. W !!,SEP," CHECKLISTS ",SEP
  1. W !,"A checklist contains a set of orderable items or clinical tasks"
  1. W !!,"Want to include checklists(s) on this form"
  1. S %=2
  1. I $O(^VEN(7.41,TIEN,17,0)) S %=1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. D YN^DICN
  1. I %Y=U G GG
  1. I %Y?2."^" G FIN
  1. S DA(1)=TIEN,DIC="^VEN(7.41,"_DA(1)_",17,"
  1. I %=2,$O(^VEN(7.41,DA(1),17,0)),'$$OK("checklists") G CL1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. I %=2 D G HX
  1. . S DA(1)=TIEN,DIK=DIC,DA=0
  1. . F S DA=$O(^VEN(7.41,DA(1),17,DA)) Q:'DA D ^DIK
  1. . S %=$NA(^VEN(7.41,TIEN)),$P(@%@(0),U,17)=0 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. . Q
  1. CL1 S %=$NA(^VEN(7.41,TIEN)),$P(@%@(0),U,17)=1 ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. S DIC("P")="19707.4117P",DIC(0)="AEQL",DLAYGO=19707.4117
  1. S DIC("A")="Enter the name of "_$S($D(^VEN(7.41,TIEN,17)):"another",1:"a")_" checklist: "
  1. D ^DIC I Y=-1 G HX
  1. S DA=+Y,DIE=DIC
  1. I $P(Y,U,3) W ! G CL1
  1. W !,"This checklist already is on the form. Want to delete it"
  1. S %=2
  1. D YN^DICN
  1. I %=1 S DIK=DIC D ^DIK
  1. W ! G CL1 ; ADD MORE GRAPHS TO THE FORM
  1. ;
  1. HX ; EP - PATIENT HX
  1. W !!,SEP," HISTORICAL INFORMATION ",SEP
  1. HX1 W !!,"Want to include personal history items on the form"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,9) S %=1
  1. S Z=$G(FLD(5.09)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G CL
  1. I %Y?2."^" G FIN
  1. S FLD(5.09)=$S(%=1:1,1:0)
  1. I %'=1 G HX3
  1. HX2 W !!,"Want to exclude the onset date from the personal history"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,10) S %=1
  1. S Z=$G(FLD(5.1)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX1
  1. I %Y?2."^" G FIN
  1. S FLD(5.1)=$S(%=1:1,1:0)
  1. HX3 W !!,"Want to include family history items on this form"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,8) S %=1
  1. S Z=$G(FLD(5.08)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX1
  1. I %Y?2."^" G FIN
  1. S FLD(5.08)=$S(%=1:1,1:0)
  1. HX4 W !!,"Want to include past surgical procedures on this form"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,8) S %=1
  1. S Z=$G(FLD(5.04)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX3
  1. I %Y?2."^" G FIN
  1. I %'=1 G FIN
  1. S FLD(5.04)=$S(%=1:1,1:0)
  1. HX5 W !!,"Want to include the diagnosis with the procedure"
  1. S %=1
  1. I '$P($G(^VEN(7.41,TIEN,5)),U,8) S %=2
  1. S Z=$G(FLD(5.05)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX4
  1. I %Y?2."^" G FIN
  1. S FLD(5.05)=$S(%=1:1,1:0)
  1. HX6 W !!,"Want to include the operating provider with the procedure"
  1. S %=1
  1. I '$P($G(^VEN(7.41,TIEN,5)),U,8) S %=2
  1. S Z=$G(FLD(5.06)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX5
  1. I %Y?2."^" G FIN
  1. S FLD(5.06)=$S(%=1:1,1:0)
  1. HX7 W !!,"Want to exclude minor procedures from the list"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,8) S %=1
  1. S Z=$G(FLD(5.07)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX6
  1. I %Y?2."^" G FIN
  1. S FLD(5.07)=$S(%=1:1,1:0)
  1. HX8 W !!,"Want to display only the last major procedure"
  1. S %=2
  1. I $P($G(^VEN(7.41,TIEN,5)),U,8) S %=1
  1. S Z=$G(FLD(5.11)) I $L(Z) S %=$S(Z=1:1,1:2)
  1. D YN^DICN
  1. I %Y=U G HX7
  1. I %Y?2."^" G FIN
  1. S FLD(5.11)=$S(%=1:1,1:0)
  1. HX9 W !!,"Want to display the ICD code associated with the procedure"
  1. S %=1
  1. I '$P($G(^VEN(7.41,TIEN,5)),U,8) S %=2
  1. D YN^DICN
  1. I %Y=U G HX8
  1. I %Y?2."^" G FIN
  1. S FLD(5.12)=$S(%=1:1,1:0)
  1. HXDIE D DIE^VENPCCIT(TIEN)
  1. W !!,SEP,!!,"CONGRATULATIONS! This template's definition is now complete..."
  1. W !,"Be sure to copy the template '"_TMN_"_template.doc on to BOTH print severs"
  1. W !,"Then check template synchronization with the 'TS' option on the"
  1. W !,"PCC+ Install menu. It is no longer necessary to make a companion file."
  1. W !,"You can edit the properties of '",TNM,"' at any"
  1. W !,"time by running this utility again.",!!,SEP,!!
  1. FIN D ^XBFMK
  1. Q
  1. ;
  1. GRADD ; EP - ENTER A NEW GRAPH
  1. N NAME,TYPE,LFILE,MFILE,FILE,MM,MDP,UNIT,X,Y,Z,%,DIC,DA,DR,DIE,DIR,DTOUT,GIEN
  1. GRA1 S DIR(0)="F^3:30",DIR("A")="Name of graph"
  1. D ^DIR K DIR
  1. I $D(DTOUT) G GRAX
  1. I Y?1."^" G GRAX
  1. I Y'?1U2.29UN W " ??" G GRA1
  1. I $D(^VEN(7.63,"B",Y)) W !,"This graph name already exists! Enter another name..." G GRA1
  1. S DIC(0)="L",X=""""_Y_""""
  1. S DIC="^VEN(7.63,",DLAYGO=19707.63
  1. D ^DIC I Y=-1 Q
  1. W !,"This name will also be used as the graph's title",!
  1. S GIEN=+Y,NAME=$P(Y,U,2)
  1. GRA2 S DIR(0)="S^M:MEASUREMENT;L:LAB TEST RESULT",DIR("A")="Data type",DIR("B")=$G(TYPE)
  1. D ^DIR K DIR
  1. I $D(DTOUT) G GRAX
  1. I Y?1."^" G GRAX
  1. S TYPE=Y
  1. GRAM ; GET MEASUREMENT ENTRY
  1. I TYPE="L" G GRAL
  1. I TYPE'="M" G GRAX
  1. S DIC("A")="Enter the associated MEASUREMENT file entry: "
  1. I $D(^AUTTMSR("B",NAME)) S DIC("B")=NAME
  1. I $L($G(MFILE)) S DIC("B")=MFILE
  1. S DIC(0)="AEQM" S DIC="^AUTTMSR("
  1. D ^DIC I Y=-1 G GRAX
  1. S FILE=+Y,MFILE=$P(Y,U,2)
  1. G GRAMM
  1. ;
  1. GRAL ; EP - GET LAB RESULT ENTRY
  1. S DIC("A")="Enter the associated LAB file entry: "
  1. I $D(^LAB(60,"B",NAME)) S DIC("B")=NAME
  1. I $L($G(LFILE)) S DIC("B")=LFILE
  1. S DIC(0)="AEQM" S DIC="^LAB(60,"
  1. D ^DIC I Y=-1 G GRAX
  1. S FILE=+Y,LFILE=$P(Y,U,2)
  1. GRAMM ; MAX MONTHS
  1. S DIR(0)="NO^1:300:0",DIR("A")="Enter the max months displayed in this graph"
  1. S DIR("B")=24 I $G(MM) S DIR("B")=MM
  1. D ^DIR K DIR
  1. I $D(DTOUT) G GRAX
  1. I Y=U W ! G GRAM
  1. I Y?2."^" G GRAX
  1. S MM=Y
  1. GRAD ; MAX DATA POINTS
  1. S DIR(0)="NO^1:999:0",DIR("A")="Enter the max # data points displayed in this graph"
  1. S DIR("B")=10 I $G(MDP) S DIR("B")=MDP
  1. D ^DIR K DIR
  1. I $D(DTOUT) G GRAX
  1. I Y=U W ! G GRAMM
  1. I Y?2."^" G GRAX
  1. S MDP=Y
  1. GRAU ; UNITS
  1. S DIR(0)="FO^3:30",DIR("A")="Units represented in this graph"
  1. I $L($G(UNIT)) S DIR("B")=UNIT
  1. D ^DIR K DIR
  1. I $D(DTOUT) G GRAX
  1. I Y=U W ! G GRAD
  1. I Y?2."^" G GRAX
  1. S UNIT=Y
  1. I UNIT="@" S UNIT=""
  1. I $L(UNIT) W !,"The unit '",UNIT,"' will be used as the y-axis label",!
  1. GRAF ; FILE THE RESULTS
  1. S DIE="^VEN(7.63,",DA=GIEN
  1. S DR=".02///^S X=TYPE;.03///^S X=MM;.04///^S X=MDP;.05///^S X=NAME;.08///^S X=UNIT"
  1. I $L($G(MFILE)) S DR=DR_";.11///^S X=FILE"
  1. I $L($G(LFILE)) S DR=DR_";.12///^S X=FILE"
  1. D ^DIE
  1. W !,"This graph has been added to PCC+.",!,"Use the TCU option to attach it to specific PCC+ templates."
  1. GRAX D ^XBFMK
  1. Q
  1. ;
  1. GRED ; EP - EDIT A GRAPH'S PROPERTIES
  1. N DIC,DIE,DR,DA,X,Y,%,TYPE
  1. S DIC="^VEN(7.63,",DIC(0)="AEQ",DIC("A")="Which graph do you want to edit: "
  1. D ^DIC I Y=-1 G GREX
  1. S DA=+Y,DIE=DIC,DR=".02" D ^DIE
  1. S TYPE=$P($G(^VEN(7.63,DA,0)),U,2)
  1. I TYPE="" W !,"No data type specified. Graph entry will be deleted!",! N DIK G GRDEL
  1. I TYPE=1 S DR=".11Associated MEASUREMENT file entry"
  1. I TYPE=2 S DR=".12Associated LAB file entry"
  1. S DR=DR_";.03;.04;.08"
  1. D ^DIE W !,"The properties of this graph have been updated...",!
  1. GREX D ^XBFMK
  1. Q
  1. ;
  1. GRD ; EP - DELETE A GRAPH
  1. N DIK,DIC,X,Y,NAME,GRIEN,TIEN,GIEN
  1. S DIC("A")="Which graph do you want to delete: "
  1. S DIC="^VEN(7.63,",DIC(0)="AEQ"
  1. D ^DIC I Y=-1 G GRAX
  1. S GRIEN=+Y,NAME=$P(Y,U,2)
  1. W !,"WARNING: This will remove this graph from PCC+ and ",!,"detach it from all PCC+ templates..."
  1. W !,"Are you sure you want to delete this graph"
  1. S %=0 D YN^DICN I %'=1 G GRAX
  1. GRDT ; REMOVE GRAPH FROM INDIVIDUAL TEMPLATES
  1. S TIEN=0
  1. F S TIEN=$O(^VEN(7.41,TIEN)) Q:'TIEN D ; REMOVE GRAPH FROM ALL TEMPLATE DEFINITIONS
  1. . S GIEN=0 F S GIEN=$O(^VEN(7.41,TIEN,6,"B",GRIEN,GIEN)) Q:'GIEN D
  1. .. S DA(1)=TIEN,DA=GIEN
  1. .. S DIK="^VEN(7.41,"_DA(1)_",6,"
  1. .. D ^DIK
  1. .. Q
  1. . Q
  1. K DIK
  1. GRDEL S DIK="^VEN(7.63," S DA=GRIEN ; REMOVE GRAPH DEFINITION
  1. I '$D(^VEN(7.63,+$G(DA))) Q
  1. D ^DIK W !,NAME," deleted..."
  1. D ^XBFMK
  1. Q
  1. ;
  1. OK(TXT) ; EP - CONFRIM REMOVAL OF ITEMS
  1. ; PATCHED BY GIS/OIT 10/15/05 ; PCC+ 2.5 PATCH 1
  1. N %,%Y
  1. S TXT=$S($L($G(TXT)):TXT,1:"items")
  1. W !,"This will remove ALL ",TXT," from the form!!!"
  1. W !,"Are you sure you want to do this"
  1. S %=2
  1. D YN^DICN
  1. I %=1 Q 1
  1. Q 0
  1. ;