11. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 10/2/2017 3:33:08 PM Eastern Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

11.1 Files compared

# Location File Last Modified
1 OSCIF_ CPRS Enh P1_OR_3.0_439_build_4_August_2017.zip OR_3_453 System Design Document NSR 20130504.docx Fri Sep 29 16:04:08 2017 UTC
2 OSCIF_ CPRS Enh P1_OR_3.0_439_build_4_August_2017.zip OR_3_453 System Design Document NSR 20130504.docx Mon Oct 2 15:53:17 2017 UTC

11.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 5 3404
Changed 4 15
Inserted 0 0
Removed 0 0

11.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

11.4 Active regular expressions

No regular expressions were active.

11.5 Comparison detail

  1   Provider U tilities v 1.0
  2   System Des ign Docume nt
  3  
  4  
  5  
  6   May 2017
  7   Version 1. 0
  8  
  9   Department  of Vetera ns Affairs
  10  
  11   Revision H istory
  12   Date
  13   Version
  14   Descriptio n
  15   Author
  16   06/21/2017
  17   1.0
  18   Initial Dr aft
  19   PII
  20   PIi
  21  
  22  
  23  
  24  
  25  
  26  
  27  
  28  
  29  
  30  
  31  
  32  
  33  
  34  
  35  
  36  
  37  
  38  
  39  
  40  
  41  
  42  
  43  
  44  
  45  
  46  
  47  
  48  
  49  
  50  
  51  
  52   Artifact R ationale
  53   The System  Design Do cument (SD D) is a du al-use doc ument that  provides  the concep tual desig n as well  as the as- built desi gn.  This  document w ill be upd ated as th e product  is built,  to reflect  the as-bu ilt produc t. 
  54  
  55  
  56   When to Co mplete Eac h Section  of the SDD
  57   Section
  58   Completed  On or Befo re PMAS Ph ase
  59   Rationale
  60   1 – Introd uction
  61   MS 0 Revie w; updated  thereafte r
  62   Conceptual  design sh ould infor m evaluati on of inve stments
  63   2 – Backgr ound
  64   MS 0 Revie w; updated  thereafte r
  65   Conceptual  design sh ould infor m evaluati on of inve stments
  66   3 – Concep tual Desig n
  67   MS 0 Revie w; updated  thereafte r
  68   Conceptual  design sh ould infor m evaluati on of inve stments
  69   4 – System  Architect ure
  70   MS 0 Revie w; updated  thereafte r
  71   Conceptual  design sh ould infor m evaluati on of inve stments
  72   5 – Data D esign
  73   MS 1 Revie w; updated  thereafte r
  74   Design det ails shoul d be elabo rated upon  during PM AS Plannin g phase an d prior to  developme nt
  75   6 – Detail ed Design
  76   MS 1 Revie w; updated  thereafte r
  77   Design det ails shoul d be elabo rated upon  during PM AS Plannin g phase an d prior to  developme nt
  78   7 – Extern al System  Interface  Design
  79   MS 1 Revie w; updated  thereafte r
  80   Design det ails shoul d be elabo rated upon  during PM AS Plannin g phase an d prior to  developme nt
  81   8 – Human  Machine In terfaces
  82   MS 1 Revie w; updated  thereafte r
  83   Design det ails shoul d be elabo rated upon  during PM AS Plannin g phase an d prior to  developme nt
  84   Attachment s
  85   MS 1 Revie w; updated  thereafte r
  86   Design det ails shoul d be elabo rated upon  during PM AS Plannin g phase an d prior to  developme nt
  87  
  88   A product’ s system d esign shou ld be defi ned concep tually pri or to the  allocation  of person nel and re sources th at occur a t project  initiation .  This gi ves the en terprise a n opportun ity to eva luate IT i nvestments  before pr oject team s are stoo d up and f unding is  allocated.   Sections  1- 4 whic h discuss  the high-l evel desig n should b e complete d prior to  MS 0. All  sections  should be  completed  and update d before M S 1.  Proj ects will  need to ad dress all  SDD approv al constra ints prior  to the MS  2 review.   In addit ion, the S DD should  reflect th e as-built  product g oing into  the MS 2 r eview.
  89  
  90   Instructio ns
  91  
  92   Activity
  93   New Capabi lity (1)
  94   Feature En hancement  (2)
  95   Field Depl oyment (A)
  96   Yes
  97   New Applic ation
  98   Cloud/Web  Deployment  (B)
  99   No
  100   No
  101   Mobile App lication ( C)
  102   No
  103   No
  104  
  105   Table of C ontents
  106   1.Introduc tion1
  107   1.1.Scope1
  108   1.2.User P rofiles1
  109   2.Backgrou nd1
  110   2.1.Overvi ew of the  System1
  111   2.2.Overvi ew of the  Business P rocess1
  112   2.3.Overvi ew of the  Significan t Requirem ents2
  113   3.Conceptu al Design2
  114   3.1.Concep tual Appli cation Des ign2
  115   3.1.1.Appl ication Co ntext3
  116   3.1.2.High -Level App lication D esign4
  117   3.1.3.Appl ication Lo cations5
  118   3.2.Concep tual Data  Design6
  119   3.2.1.Proj ect Concep tual Data  Model6
  120   3.2.2.Data base Infor mation6
  121   3.2.3.User  Interface  Data Mapp ing7
  122   3.2.3.1.Ap plication  Screen Int erface7
  123   3.2.3.2.Ap plication  Report Int erface7
  124   3.2.3.3.Un mapped Dat a Element7
  125   3.3.Concep tual Infra structure  Design7
  126   3.3.1.Syst em Critica lity and H igh Availa bility8
  127   3.3.2.Spec ial Techno logy8
  128   3.3.3.Tech nology Loc ations8
  129   3.3.4.Conc eptual Inf rastructur e Diagram8
  130   3.3.4.1.Lo cation of  Environmen ts and Ext ernal Inte rfaces8
  131   3.3.4.2.Co nceptual P roduction  String Dia gram8
  132   4.System A rchitectur e9
  133   4.1.Hardwa re Archite cture9
  134   4.2.Softwa re Archite cture10
  135   4.3.Networ k Architec ture10
  136   4.4.Servic e Oriented  Architect ure / ESS1 1
  137   4.5.Enterp rise Archi tecture11
  138   5.Data Des ign11
  139   5.1.DBMS F iles11
  140   5.2.Non-DB MS Files11
  141   5.3.Data V iew12
  142   6.Detailed  Design12
  143   6.1.Hardwa re Detaile d Design12
  144   6.2.Softwa re Detaile d Design12
  145   6.2.1.Delp hi GUI Cod e Overview 12
  146   6.2.1.1.De lphi Units 12
  147   6.2.2.Conc eptual Des ign13
  148   6.2.2.1.Pr oduct Pers pective13
  149   6.2.2.1.1. User Inter faces13
  150   6.2.2.1.2. Hardware I nterfaces1 3
  151   6.2.2.1.3. Software I nterfaces1 4
  152   6.2.2.1.4. Communicat ions Inter faces14
  153   6.2.2.1.5. Memory Con straints14
  154   6.2.2.1.6. Special Op erations14
  155   6.2.2.2.Pr oduct Feat ures14
  156   6.2.2.3.Us er Charact eristics14
  157   6.2.2.4.De pendencies  and Const raints14
  158   6.2.3.Spec ific Requi rements15
  159   6.2.3.1.Da tabase Rep ository15
  160   6.2.3.2.Sy stem Featu res19
  161   6.2.3.2.1. NSR # 2013 0504 – Pro vider Role  Change En hancement1 9
  162   6.2.3.2.1. 1.OR3P4531 9
  163   6.2.3.2.1. 2.ORB3 Rou tine20
  164   6.2.3.2.1. 3.ORCSAVE  Routine22
  165   6.2.3.2.1. 4.ORELR5 R outine26
  166   6.2.3.2.1. 5.ORQ2 Rou tine29
  167   6.2.3.2.1. 6.ORQ3 Rou tine31
  168   6.2.3.2.2. Remote Pro cedure Cal l (RPC)34
  169   6.3.Networ k Detailed  Design35
  170   6.4.Securi ty and Pri vacy35
  171   6.4.1.Secu rity35
  172   6.4.2.Priv acy35
  173   6.5.Servic e Oriented  Architect ure / ESS  Detailed D esign36
  174   7.External  System In terface De sign36
  175   7.1.Interf ace Archit ecture36
  176   7.2.Interf ace Detail ed Design3 6
  177   8.Human-Ma chine Inte rface36
  178   8.1.Interf ace Design  Rules36
  179   8.2.Inputs 36
  180   8.3.Output s36
  181   8.4.Naviga tion Hiera rchy36
  182   8.4.1.Main  Form: “Pr ovider Uti lities: Re assign Pat ient Order s”37
  183   8.4.1.1.Us age (optim al program  flow)38
  184   8.4.1.2.Sp ecific fun ctionality 38
  185   8.4.2.Moda l Form: “S elect Curr ent Provid er”39
  186   8.4.3.Moda l Form: Qu alifying O rders40
  187   8.4.4.Moda l Form: Re assign Ord ers (Revie w and Exec ute)41
  188   9.Attachme nt A – App roval Sign atures42
  189   A.Addition al Informa tion43
  190   A.1.Identi fication o f Technolo gy and Sta ndards43
  191   A.2.Constr aining Pol icies, Dir ectives an d Procedur es43
  192   A.3.Requir ements Tra ceability  Matrix43
  193   A.4.Packag ing and In stallation 43
  194   A.5.Design  Metrics43
  195  
  196   Introducti on
  197   This docum ent is the  System De sign Docum ent (SDD)  for the Pr ovider Uti lities dev elopment p roject. Se ction 1 co ntains the  purpose,  scope, and  reference s for the  project.
  198   This docum ent will u se the nam es “Provid er Utiliti es” and “P rovider Ro le Change”  interchan geably. “P rovider Ut ilities” i s the file  name of t he executa ble applic ation deli vered to t he custome r. “Provid er Role Ch ange” is t he CPRS me nu item na me by whic h the user  executes  the applic ation. Thi s menu ite m is found  in the CP RS “Tools”  menu,
  199   This is a  living doc ument and  will conti nue to evo lve throug hout the p roject. Th is project  is implem ented util izing agil e methods  which incl ude multip le sprints , or short  developme nt cycles.  This docu ment will  be updated  regularly  during th e developm ent cycle  to reflect  the chang es impleme nted in a  sprint alo ng with ch anges plan ned for fu ture sprin ts.
  200   Scope
  201   As determi ned by sta keholders  during a s eries of i nteractive  meetings,  this prod uct will a llow a use r to move  one or mor e patients  and assoc iated qual ifying ord ers from o ne provide r to anoth er (or sev eral provi ders) for  notificati on purpose s. Scope a nd feature s shall no t exceed t hat functi onality.
  202  
  203   User Profi les
  204   Provider U tilities c an be used  any autho rized VA u ser tasked  with supp orting VA  providers,  but was p rimarily d esigned fo r use by t he followi ng user ty pes:
  205   Clinical A pplication s Coordina tor(CAC).  A CAC may  be tasked  with condu cting admi nistrative  support f or one or  more provi ders. For  example, a  CAC may b e asked to  reassign  qualifying  orders in  the event  of an unp lanned rea ssignment  of a provi der.
  206   Provider.  A provider  may prefe r to perfo rm certain  administr ative task s directly . An examp le would b e a provid er changin g roles wh o wishes t o examine  a list of  patients a nd orders,  and then  individual ly reassig n qualifyi ng orders  based on t he nature  of each pa tient/orde r. 
  207   Background
  208   Overview o f the Syst em
  209   Subject Ma tter Exper ts (SMEs)  from affec ted areas  such as ph ysicians,  nurses and  pharmacis ts as well  as clinic al applica tion coord inators ha ve been in volved in  determinin g the fina l requirem ents and w ill be inv olved in t he field t esting and  approval  of these e nhancement s for rele ase.
  210  
  211   Overview o f the Busi ness Proce ss
  212   Provider U tilities s upports th e followin g business  processes :
  213   Provider R ole Change : The reas signment o f qualifyi ng orders  to another  provider  in the eve nt the ord ering prov ider chang es roles ( and surrog acy is imp racticable ).
  214  
  215  
  216   Overview o f the Sign ificant Re quirements
  217  
  218   Link to th e consolid ated RSD:  http://URL .DNS/
  219   Link to th e NSR:   h ttp://URL. DNS/
  220   Link to RT M:    http ://URL.DNS /
       
  221  
  222   Conceptual  Design
  223   Conceptual  Applicati on Design
  224   Provider U tilities i s a standa lone Windo ws applica tion imple mented in  the Delphi  XE8 langu age. It is  completel y independ ent of CPR S. CPRS an d Provider  Utilities  do not co mmunicate  or share d ata. The s ole relati onship bet ween the a pplication s is that  CPRS can “ launch and  forget” P rovider Ut ilities fr om the Too ls menu (P rovider Ro le Change  menu item) .
  225   Provider U tilities c ommunicate s with the  Vista ser ver using  the same c omponent l ibrary as  CPRS. It l ogs into t he server  with the C PRS identi fication k ey. It val idates the  user via  2-factor a uthenticat ion and th e user ID  and pass c ode.
  226   This proje ct compris es changes  in both M  and Delph i.
  227   Applicatio n Context
  228   There is n o modifica tion to th e existing  applicati on context . Please r efer to th e MOCHA Se rver SDD f or changes  to the MO CHA Server  interface .  
  229  
  230  
  231    Applicati on Context  Diagram
  232   Table 5 (G rouping):  Applicatio n Context  Descriptio n
  233   Object
  234   ID
  235   Name
  236   Descriptio n
  237   Interface  Name
  238   Interface  System
  239   1
  240   Provider U tiliities
  241  
  242   Computeriz ed Patient  Record Sy stem (CPRS )
  243   Provider U tilities a nd CPRS (1 ) retrieve s and send s clinical  informati on to Vist A (2). Thi s includes  order inf ormation s uch as Pha rmacy Pres criptions.
  244   RPC Broker
  245   VistA
  246   2
  247   VistA
  248   VistA is t he primary  data stor e for Pati ent and He alth relat ed informa tion.  
  249   RPC Broker
  250   CPRS
  251   Interfaces  External  to OIT
  252   CPRS does  not contai n any inte rfaces ext ernal to O IT.
  253   Interfaces  Internal  to OIT
  254   ID
  255   Name
  256   Related Ob ject
  257   Input Mess ages
  258   Output Mes sages
  259   External P arty
  260   1I
  261   RPC Broker
  262   CPRS (1)
  263   VistA (2)
  264   Message co ntaining a  request f or informa tion or or der inform ation
  265   Requested  informatio n, or noti fication o f success.
  266   N/A
  267   High-Level  Applicati on Design
  268  
  269  
  270   High-Level  Applicati on Design
  271  
  272  
  273   Table 6: O bjects in  the High L evel Appli cation Des ign
  274   Objects /  Components  to be Bui lt or Modi fied
  275   Internal D ata Stores
  276   ID
  277   Name
  278   Data Store d
  279   Steward
  280   Access
  281   2 VistA (O rder reass ignment tr acking)
  282   Order Reas signment T racking
  283   From Provi der
  284   To Provide rUser Requ esting Rea ssignment
  285   Date Time  of Reassig nment
  286   OR-Order R eassignmen t Tracking
  287   Create
  288   Retrieve
  289    
  290   Applicatio n Location s
  291   Provider U tilities i s a CPRS a djunct app lication.  Essentiall y, it foll ows most C PRS conven tions.
  292   CPRS is a  Legacy Vis tA applica tion. Ther efore, eve n though C loud techn ology is a  goal in r eforming F ederal IT,  this proj ect will n ot utilize  that tech nology. In  addition,  regional  deployment s are used  at variou s stations , however,  it is not  the decis ion of the  developme nt team. R egional de ployment d ecisions a re made by  the regio nal IT sta ff.
  293   Table 7: A pplication  Locations
  294   Applicatio n Componen t
  295   Descriptio n
  296   Location a t Which Co mponent is  Run
  297   Type
  298   CPRS
  299   Provider R ole Change
  300   Executable
  301   Workstatio ns located  throughou t each VAM C. 
  302   Presentati on Logic a lthough th ere is som e business  logic con tained in  the execut able.
  303   VistA Serv er
  304   Database w hich also  contains t he server  side execu table code  of the Vi stA applic ations.
  305   VistA serv ers are lo cated eith er in loca l VAMCs or  at region al data pr ocessing c enters.
  306   There are  some appli cations th at use the  roll/scro ll present ation logi c. It is a lso the da tabase and  contains  business l ogic and i nterface c ode.
  307   Table 8: A pplication  Users
  308   Applicatio n Componen t
  309   Location
  310   User
  311   Provider R ole Change
  312   CPRS
  313   VistA Serv er
  314   Users for  both CPRS  and the Vi stA server  are locat ed not onl y locally  at each VA MC, but ca n also be  located at  CBOCS or  may be loc ated at re mote locat ion and co nnect thro ugh CAG or  VPN
  315   Physician
  316   Clinical A pplication s Coordina tor
  317   Conceptual  Data Desi gn
  318   Project Co nceptual D ata Model
  319   Project Co nceptual D ata Model
  320  
  321  
  322   Database I nformation
  323   Table 9: D atabase In ventory
  324   Database N ame
  325   Descriptio n
  326   Type
  327   Steward
  328   VistA
  329   M/Cache da tabase con taining cl inical and  non-clini cal data f or all Vis tA applica tion
  330   Modify
  331   Overall, t he VA is t he steward  of the da tabase in  its’ entir ety.
  332   Specifical ly, data i s being mo dified in  data that  is owned b y Pharmacy , CPRS, Ke rnel and L aboratory.
  333   User Inter face Data  Mapping
  334   Applicatio n Screen I nterface
  335   See sectio n 8 for a  full descr iption of  the Provid er Utilite s GUI hier archy.
  336   Applicatio n Report I nterface
  337   N/A.
  338   Unmapped D ata Elemen t
  339   Currently,  there are  no new da ta element s being ad ded that a re not map ped to a u ser interf ace.
  340   Conceptual  Infrastru cture Desi gn
  341  
  342  
  343  
  344   System Cri ticality a nd High Av ailability  
  345   Provider U tilities i s a CPRS a djunct app lication.  CPRS is co nsidered a  mission c ritical sy stem. Howe ver, witho ut the Vis tA databas e and serv ers, CPRS  cannot fun ction. OIT  has desig ned region al data pr ocessing c enters and  ‘hot back up’ sites  for VistA  instances.  This proj ect is not  modifying  those app roaches. A ny modific ation to t hose schem es will be  done outs ide the co nsideratio n of these  enhanceme nts.
  346   Special Te chnology
  347   N/A
  348   Technology  Locations
  349   Table 13:  Technology  Location  Details
  350   Technology  Component
  351   Production  1
  352   Location
  353   Usage
  354   Workstatio ns
  355   VAMCs
  356   CBOCs
  357   Remote (th rough CAG  and VPN)
  358   Clinicians  and suppo rt staff
  359   Special Ha rdware
  360   None
  361  
  362   Interface  Processors
  363   None
  364   None
  365   Legacy Mai nframe
  366   None
  367  
  368   Legacy App lication S erver
  369   None
  370  
  371   Legacy Dat abases
  372   Local
  373   Regional
  374   Houses Vis tA databas e.
  375   Other
  376   None
  377  
  378  
  379  
  380   Conceptual  Infrastru cture Diag ram
  381   Location o f Environm ents and E xternal In terfaces
  382   Currently,  the locat ion of env ironments  varies bet ween VAMCs . Some VAM Cs still h ave local  hardware c onfigurati ons. Many  are conver ted to a r egional da ta process ing setup.  There is  a group re sponsible  for determ ining the  appropriat e configur ation and  scheduling  conversio ns for sit es from lo cal to reg ional depl oyment.
  383   Provider U tilities a nd CPRS is  designed  to fit wit hin whatev er environ ment exist s: either  local or r egional.
  384   Conceptual  Productio n String D iagram
  385  
  386  
  387   Conceptual  Productio n String D iagram
  388   System Arc hitecture
  389   Hardware A rchitectur e
  390   Provider U tilities i s a CPRS a djunct app lication.  It follows  and utili zes CPRS c onventions , describe d below.
  391   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. As  such, it  utilizes t he existin g VistA ha rdware arc hitecture.
  392   Some VistA  instances  are local  to the VA MC that us e it. Othe rs are ins talled in  regional d ata proces sing cente rs. Most o f these in stances ha ve hot bac kup sites  located in  another g eographica lly separa ted locati on.
  393   The primar y architec ture at th is time is  a cluster  of Linux  servers th at act as  the applic ations ser ver. The c lient work stations a re connect ed to this  cluster.  This clust er is conn ected to a  cluster o f VMS serv ers that a ct as the  database s erver wher e the Vist A database  resides.
  394   The client  workstati ons may be  local to  the VAMC o r they may  be remote  at CBOCs,  other VAM Cs (in the  case of i ntegrated  sites) or  may even b e one-off  remote wor kstations  that conne ct via CAG  or VPN.
  395   While pers onnel outs ide of Pro duct Devel opment are  responsib le for det ermining t he best co nfiguratio ns and ens uring adeq uate hardw are and ne twork conn ectivity,  the CPRS v 32 project  considers  additiona l space an d potentia l performa nce impact s. The ult imate goal  is to add  no more t han an add itional 5%  disk spac e or CPU r equirement s.
  396   During the  field tes ting phase , any addi tional fil es created  are monit ored to en sure this  is not exc eeded. Loc al and reg ional IT s taff monit or the sys tems and n otifie CPR S developm ent is the  performan ce exceeds  expectati ons based  on the dev elopment e nvironment .
  397  
  398   Software A rchitectur e
  399   Provider U tilities i s an indep endent Del phi applic ation runn ing under  Windows. I t communic ates with  the VistA  server usi ng existin g CPRS mec hanisms.
  400   The Delphi  GUI appli cation is  a single-t hreaded Wi ndows exec utable wit h a main a nd ancilla ry windows . The wind ow hierarc hy is desc ribed in d etail in s ection 8.
  401   Network Ar chitecture
  402   Provider U tilities i s a CPRS a djunct app lication.  It follows  and utili zes CPRS c onventions , describe d below.
  403   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. Th e executab le portion  of CPRS w ill contin ue communi cate using  the exist ing networ k architec ture that  supports t he legacy  VistA syst ems.
  404   CPRS utili zes remote  procedure  calls (RP Cs) over t he local o r wide are a network  to communi cate betwe en the cli ent and th e VistA in stance. Th is communi cation uti lizes Kern el’s broke r package.
  405   Reference  the hardwa re archite cture for  a high-lev el overvie w of the c ommunicati on pathway s.
  406   Service Or iented Arc hitecture  / ESS
  407   Provider U tilities i s a CPRS a djunct app lication.  It follows  and utili zes CPRS c onventions , describe d below.
  408   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. CP RS is enha ncing the  existing C PRS system .
  409   Note: CPRS ’s archite cture does  not suppl y new serv ices or co nsume serv ices.
  410   Enterprise  Architect ure
  411   Provider U tilities i s a CPRS a djunct app lication.  It follows  and utili zes CPRS c onventions . Provider  Role Chan ge uses De lphi XE8 f or the Del phi develo pment.
  412   The server  side code  is writte n using Ca che/MUMPS,  which is  approved u nder the T RM.
  413   Data Desig n
  414   DBMS Files  
  415   CPRS Provi der Role C hange will  utilize t he existin g FileMan  database.  The follow ing update s have bee n made to  Data Dicti onaries wi thin FileM an.
  416  
  417   Within the  ORDER Fil e (#100),  a new “New  Style” cr oss refere nce “EPRAC DT” has be en created  which is  keyed off  of the PRO VIDER (#10 0.008, 3)  & DATE/TIM E ORDERED  (#100.008,  .01) subf ields of t he ORDER A CTIONS Mul tiple so t hat Orders  can speed ily be ret rieved for  a specifi c Provider  and Date/ Time Order ed for pos sible Re-A ssignment  to one or  more other  Providers .
  418   Also, with in the ORD ER File (# 100), a ne w ORDER TR ANSFERS Mu ltiple (#1 00.011) ha s been cre ated with  each subre cord holdi ng a TRANS FER DATE/T IME (#100. 011, .01)  Date/Time  type field , TRANSFER RED FROM ( #100.011,  .02) point er field,  TRANSFERRE D TO (#100 .011, .03)  pointer f ield, & TR ANSFER USE R (#100.01 1,  .04) p ointer fie ld.  The l atter thre e fields p oint to NE W PERSON F ile (#200) .
  419   As regards  this new  ORDER TRAN SFERS Mult iple just  described  above, a n ew “New St yle” cross  reference  “EPRTRDT”  has been  created wh ich is key ed off of  the TRANSF ERRED TO ( #100.011,  .03) & TRA NSFER DATE /TIME (#10 0.011,  .0 1) subfiel ds to hand le the cas e where an  Order was  Re-assign ed to a Pr ovider, ye t this Pro vider has  to Re-Assi gn the sam e Order to  a 3rd Pro vider.
  420  
  421   Section 6. 2.2 contai ns the spe cifics of  the data d ictionary  updates.
  422  
  423   The files  will be ac cessed eit her by Fil eMan Datab ase Server  (DBS) cal ls or by d irect glob al access,  where app ropriate a nd allowed .
  424   Non-DBMS F iles
  425   N/A
  426   Data View 
  427   There are  no updates  planned f or the per sistent da ta objects  currently  in the re leased ver sion of CP RS. Since  no Entity  Relationsh ip Diagram  (ERD) can  be locate d CPRS wil l construc t a high l evel ERD t o be inclu ded in the  final ver sion of th is documen t.
  428  
  429   Detailed D esign
  430   Hardware D etailed De sign
  431   Provider U tilities w ill use ex isting CPR S hardware  infrastru cture and  will be de signed to  require no  significa nt increas e in data  storage ca pacity or  CPRS resou rces.
  432   Software D etailed De sign 
  433   Delphi GUI  Code Over view
  434   See Sectio n 8 for a  visual ove rview of t he Delphi  GUI window s, to incl ude the fu nctionalit y and spec ified beha vior or ea ch.
  435   Delphi Uni ts
  436   ProviderUt ilities.dp r: The Del phi projec t file, wh ich lists  the units  used by th e applicat ion and co ntains pro gram initi alization  code.
  437   ProviderUt ilities.dp roj: The D elphi proj ect config uration fi les. This  is an XML  file conta ining vari ous projec t settings  and infor mation.
  438   ProviderUt ilities.re s: The Del phi projec t resource  file. Con tains stan dard Windo ws resourc e informat ion linked  to the fi nal execut able.
  439   fReassignO rders.pas:  The Delph i source f or the mai n window.
  440   fReassignO rders.dfm:  The Delph i form des ign for th e main win dow.
  441   fApplyChan ges.pas: T he Delphi  source cod e for the  “Review an d Apply Ch anges” win dow.
  442   fApplyChan ges.dfm: T he Delphi  form desig n for the  “Review an d Apply Ch anges” win dow.
  443   ProviderEn gine.pas:  The Delphi  source co de for the  provider  engine obj ect. This  object per forms all  non-visual  work invo lved in re assigning  orders.
  444   fConnectTo Server.pas : The Delp hi source  code for a  connectio n banner f rame that  appears at  the top o f the main  window du ring start up.
  445   fConnectTo Server.dfm : The Delp hi form de sign for t he connect ion banner  frame.
  446   fSelectPro vider.pas:  The Delph i source c ode for th e form to  select a n ew or curr ent provid er (and op tionally a  qualified  order dat e range).
  447   fSelectPro vider.dfm:  The Delph i form des ign for th e provider  selection  form.
  448   fPatientOr ders.pas:  The Delphi  source co de for the  orders di splay form
  449   fPatientOr ders.dfm:  The Delphi  form desi gn for the  orders di splay form .
  450   fProgramIn formation. pas: The D elphi souc e code for  the “Abou t” form.
  451   fProgramIn formation. dfm: The D elphi form  design fo r the “Abo ut” form.
  452   Utilities. pas: The D elphi sour ce code fo r some sup port utili ties.
  453   Conceptual  Design
  454   Product Pe rspective
  455   http://URL .DNS/
  456   View CPRS  v32 requir ements in  this link:  Computeri zed Patien t Record S ystem (CPR S) v32 Req uirements  Specificat ion Docume nt
  457  
  458   User Inter faces
  459   The follow ing three  block diag rams show,  at its si mplest for m the inte rfaces in  use for CP RS. There  will be tw o GUI exec utables: C PRS and Pr ovider Rol e Change.  Both of th ese utiliz e GUI scre ens to com municate w ith users.
  460   For all Vi stA (serve r side) ch anges, the  user inte rface will  be roll a nd scroll.
  461  
  462  
  463   Hardware I nterfaces
  464   Provider U tilities i s a CPRS a djunct app lication. 
  465   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. Pr ovider Uti lities is  enhancing  the existi ng CPRS sy stem. No m odificatio ns to the  existing h ardware in terfaces a re planned .
  466   Currently,  CPRS, uti lizing the  Kernel sy stem will  support an y device t hat Kernel  supports.
  467   Software I nterfaces
  468   Provider U tilities i s a CPRS a djunct app lication. 
  469   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. Pr ovider Uti lities is  enhancing  the existi ng CPRS sy stem.
  470   CPRS commu nicates wi th all the  VistA cli nical appl ications a nd several  of the fi nancial ap plications . In addit ion, CPRS  uses FileM an and Ker nel. CPRS  is written  using the  current n ationally  released v ersion of  each of th ese packag es and pla ns to cont inue to ut ilize and  support th e currentl y released  version.
  471  
  472   Communicat ions Inter faces
  473   Provider U tilities i s a CPRS a djunct app lication. 
  474   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. Pr ovider Uti lities is  enhancing  the existi ng CPRS sy stem. No m odificatio ns will be  made to t he existin g communic ations int erface whi ch are und er the con trol of En gineering.
  475   Memory Con straints
  476   N/A
  477   Special Op erations
  478   N/A
  479   Product Fe atures
  480   Please ref er to Sect ion 2.3 an d Section  8.
  481   User Chara cteristics
  482   Provider U tilities i s a CPRS a djunct app lication.
  483   CPRS is us ed primari ly by clin icians suc h as physi cians, nur ses, physi cian assis tants, nur se practio ners, phar macists an d other an cillary cl inical use rs.
  484   Dependenci es and Con straints
  485  
  486   Provider U tilities m ust utiliz e the exis ting hardw are and ne twork infr astructure . Therefor e, the inc rease in n etwork, me mory, CPU  and data s torage can  not be si gnificant.  Some remo te install ations, su ch as the  CBOCs are  particular ly suscept ible.
  487   Provider U tilities i s not 508  compliant.
  488   Specific R equirement s
  489   Database R epository
  490   The data f or CPRS Pr ovider Rol e Change w ill reside  in the ex isting Vis tA databas e.
  491   Modificati ons (shown  in Yellow ) to Field s in ORDER  ACTIONS M ultiple of  ORDER Fil e (#100):
  492   100.008,.0 1     DATE /TIME ORDE RED      0 ;1 DATE (R equired)
  493  
  494                    INPU T TRANSFOR M:  S %DT= "ETXR" D ^ %DT S X=Y  K:Y<1 X
  495                    LAST  EDITED:       MAY 16 , 2017 
  496       HELP-P ROMPT:       Enter th e date/tim e this act ion was             
  497                           Ordered.
  498       DESCRI PTION:       This is  the date/t ime this a ction was
  499                                        ordere d.  
  500  
  501                    CROS S-REFERENC E:  100^AC T3^MUMPS 
  502   1)= N ORDA  S ORDA=DA (1) D   AC T1^ORDD100 A(ORDA,DA)
  503  
  504   2)= N ORDA  S ORDA=DA (1) D ACT2 ^ORDD100A( ORDA,DA)
  505   ^OR(100,"A CT",ORVP,9 999999- OR LOG,ORDG,O RIFN,DA) 
  506                                      Allows r etrieval o f orders i n
  507                                      reverse- chronologi cal order.   
  508  
  509                    CROS S-REFERENC E:100^AC1^ MUMPS 
  510   1)= N X1,X 2 S X1=DA( 1),X2=DA D  SET^ORDD1 00(X1,X2)
  511  
  512   2)= N X1,X 2 S X1=DA( 1),X2=DA D  KIL^ORDD1 00(X1,X2)
  513                                      ^OR(100, "AC",ORVP, 9999999-OR LOG,ORIFN, DA) 
  514                                      Allows r etrieval o f "active"  orders; i ncludes
  515                                      orders w ith any ki nd of acti ve status,  as   
  516     well as  those that  have ende d w/in the
  517     Active O rders Cont ext Hours.   
  518  
  519                    CROS S-REFERENC E:100^AS1^ MUMPS 
  520   1)= N ORDA  S ORDA=DA (1) D   S1 ^ORDD100(O RDA,DA,"", X)
  521  
  522   2)= N ORDA  S ORDA=DA (1) D  S2^ ORDD100(OR DA,DA,"",X )
  523                                      ^OR(100, "AS",ORVP, 9999999-OR LOG,ORIFN, DA) 
  524                                      Allows r etrieval o f unsigned  orders.  
  525  
  526  
  527                    CROS S-REFERENC E:100^AF 
  528                                      1)= S ^O R(100,"AF" ,$E(X,1,30 ),DA(1),DA )=""
  529                                      2)= K ^O R(100,"AF" ,$E(X,1,30 ),DA(1),DA )
  530  
  531                    RECO RD INDEX:    EPRACDT  (#1454)     REGULAR     IR
  532                                      LOOKUP &  SORTING     WHOLE FI LE (#100)
  533                      Sh ort Descr:   Index on  PROVIDER  & ACTION D ATE/TIME f or
  534                                      Activiti es
  535                      De scription:   This ind ex will be  used as p art of the  new  
  536                                      ORQ3 EN  Remote Pro cedure Cal l to speed ily 
  537                                      pick up  all Orders  for a spe cific Orde ring 
  538                                      Provider  and withi n a date r ange that  has 
  539                                      been sel ected by t he end use r so that  the 
  540                                      Orders t hat come u p can be R e-Assigned  
  541                                      (Transfe rred) to o ne or more  New Provi ders.
  542                         Set Logic:   S ^OR(10 0,"EPRACDT ",X(1),X(2 ),DA(1),DA )=""
  543                       K ill Logic:   K ^OR(10 0,"EPRACDT ",X(1),X(2 ),DA(1),DA )
  544                       W hole Kill:   K ^OR(10 0,"EPRACDT ")
  545                              X(1):   PROVIDER   (100.008 ,3)  (Subs cr 1)  (fo rwards)
  546                              X(2):   DATE/TIM E ORDERED   (100.008, .01)  (Sub scr 2)
  547                                      (forward s)
  548  
  549   100.008,3        PROV IDER              0;3  POINTER T O NEW PERS ON FILE (# 200)
  550  
  551                    LAST  EDITED:     MAY 16,  2017 
  552                    HELP -PROMPT:     Enter th e name of  the reques ting clini cian
  553                                      for this  order. 
  554                    DESC RIPTION:
  555                                      This is  the reques tor of thi s order.  
  556  
  557                    RECO RD INDEX:    EPRACDT  (#1454)     REGULAR     IR
  558                                      LOOKUP &  SORTING     WHOLE FI LE (#100)
  559                      Sh ort Descr:   Index on  PROVIDER  & ACTION D ATE/TIME f or
  560                                      Activiti es
  561                      De scription:   This ind ex will be  used as p art of the  new  
  562                                      ORQ3 EN  Remote Pro cedure Cal l to speed ily 
  563                                      pick up  all Orders  for a spe cific Orde ring 
  564                                      Provider  and withi n a date r ange that  has 
  565                                      been sel ected by t he end use r so that  the 
  566                                      Orders t hat come u p can be R e-Assigned  
  567                                      (Transfe rred) to o ne or more  New Provi ders.
  568                         Set Logic:   S ^OR(10 0,"EPRACDT ",X(1),X(2 ),DA(1),DA )=""
  569                       K ill Logic:   K ^OR(10 0,"EPRACDT ",X(1),X(2 ),DA(1),DA )
  570                       W hole Kill:   K ^OR(10 0,"EPRACDT ")
  571                              X(1):   PROVIDER   (100.008 ,3)  (Subs cr 1)  (fo rwards)
  572                              X(2):   DATE/TIM E ORDERED   (100.008, .01)  (Sub scr 2)
  573                                      (forward s)
  574  
  575   New ORDER  TRANSFERS  Multiple ( along with  New Style  Cross Ref erence) wi thin ORDER  File (#10 0):
  576  
  577   100,70         ORDER  TRANSFERS         11; 0 DATE Mul tiple #100 .011
  578  
  579                  DESCRI PTION:       This is  the list o f Order Tr ansfers th at have
  580                                      occurred  transferr ing to a n ew Provide r from 
  581                                      an old o ne.  
  582  
  583  
  584   100.011,.0 1     TRAN SFER DATE/ TIME     0 ;1 DATE (R equired)
  585  
  586                    INPU T TRANSFOR M:  S %DT= "ETXR" D ^ %DT S X=Y  K:Y<1 X
  587                    LAST  EDITED:       JUN 01 , 2017 
  588                    HELP -PROMPT:       Enter  the Date/T ime of the  Order Tra nsfer. 
  589                    DESC RIPTION:
  590                                        This i s the Date /Time of t he Order
  591                                        Transf er.  
  592  
  593                    CROS S-REFERENC E:  100.01 1^B 
  594                                        1)= S    
  595                                        ^OR(10 0,DA(1),11 ,"B",$E(X, 1,30),DA)= ""
  596                                        2)= K  ^OR(100,DA (1),11,"B" ,$E(X,1,30 ),DA)
  597  
  598                    RECO RD INDEX:      EPRTRD T (#1332)     REGULAR     IR
  599                                        LOOKUP  & SORTING     WHOLE  FILE (#100 )
  600                         Short Desc r:  Index  on TRANSFE RRED TO Pr ovider and    
  601                                        TRANSF ER DATE/TI ME
  602                         Descriptio n:  This i ndex will  be used as  part of t he new
  603                                        ORQ3 E N Remote P rocedure C all to spe edily
  604                                        pick u p all Orde rs which h ave alread y been
  605                                        transf erred from  the origi nal Orderi ng
  606                                        Provid er to one  or more Ne w Provider s in 
  607                                        the ca se where a  New Provi der also h appens 
  608                                        to nee d his or h er Orders  transferre d to a 
  609                                        third  New Provid er, then t his index  can 
  610                                        then b e conduciv e to this  type of sc enario.  
  611                                        It wor ks similar  to EPRACD T Index bu t will 
  612                                        utiliz e TRANSFER RED TO Pro vider & TR ANSFER 
  613                                        DATE/T IME to qui ckly bring  up Orders  for 
  614                                        additi onal Re-As signment ( Transfer).
  615                           Set Logi c:  S ^OR( 100,"EPRTR DT",X(1),X (2),DA(1), DA)=""
  616                          Kill Logi c:  K ^OR( 100,"EPRTR DT",X(1),X (2),DA(1), DA)
  617                          Whole Kil l:  K ^OR( 100,"EPRTR DT")
  618                                X(1 ):  TRANSF ERRED TO   (100.011,. 03)  (Subs cr 1)
  619                                        (forwa rds)
  620                                X(2 ):  TRANSF ER DATE/TI ME  (100.0 11,.01) (S ubscr 
  621                                        2) (fo rwards)
  622  
  623  
  624   100.011,.0 2     TRAN SFERRED FR OM       0 ;2 POINTER  TO NEW PE RSON FILE  (#200)
  625                                         (Requ ired)
  626  
  627                    LAST  EDITED:       MAY 04 , 2017 
  628                    HELP -PROMPT:       Enter  the Provid er that th is Order i s being 
  629                                        Transf erred From
  630                    DESC RIPTION:       This i s the Prov ider that  this Order  is  
  631                                        being  Transferre d From.  
  632  
  633  
  634   100.011,.0 3     TRAN SFERRED TO          0 ;3 POINTER  TO NEW PE RSON FILE  (#200)
  635                                         (Requ ired)
  636  
  637                    LAST  EDITED:       JUN 01 , 2017 
  638                    HELP -PROMPT:       Enter  in the Pro vider that  this Orde r is 
  639                                        being  Transferre d To. 
  640                    DESC RIPTION:       This i s the Prov ider to wh ich this O rder is
  641                                        being  Transferre d.  
  642  
  643                    RECO RD INDEX:      EPRTRD T (#1332)     REGULAR     IR
  644                                        LOOKUP  & SORTING     WHOLE  FILE (#100 )
  645                         Short Desc r:  Index  on TRANSFE RRED TO Pr ovider and    
  646                                        TRANSF ER DATE/TI ME
  647                         Descriptio n:  This i ndex will  be used as  part of t he new
  648                                        ORQ3 E N Remote P rocedure C all to spe edily
  649                                        pick u p all Orde rs which h ave alread y been
  650                                        transf erred from  the origi nal Orderi ng
  651                                        Provid er to one  or more Ne w Provider s in 
  652                                        the ca se where a  New Provi der also h appens 
  653                                        to nee d his or h er Orders  transferre d to a 
  654                                        third  New Provid er, then t his index  can 
  655                                        then b e conduciv e to this  type of sc enario.  
  656                                        It wor ks similar  to EPRACD T Index bu t will 
  657                                        utiliz e TRANSFER RED TO Pro vider & TR ANSFER 
  658                                        DATE/T IME to qui ckly bring  up Orders  for 
  659                                        additi onal Re-As signment ( Transfer).
  660                           Set Logi c:  S ^OR( 100,"EPRTR DT",X(1),X (2),DA(1), DA)=""
  661                          Kill Logi c:  K ^OR( 100,"EPRTR DT",X(1),X (2),DA(1), DA)
  662                          Whole Kil l:  K ^OR( 100,"EPRTR DT")
  663                                X(1 ):  TRANSF ERRED TO   (100.011,. 03)  (Subs cr 1)
  664                                        (forwa rds)
  665                                X(2 ):  TRANSF ER DATE/TI ME  (100.0 11,.01)  ( Subscr 
  666                                        2) (fo rwards)
  667  
  668  
  669   100.011,.0 4     TRAN SFER USER           0 ;4 POINTER  TO NEW PE RSON FILE  (#200)
  670                                         (Requ ired)
  671  
  672                    LAST  EDITED:       MAY 04 , 2017 
  673                    HELP -PROMPT:       Enter  in the Use r that per formed thi s Order 
  674                                        Transf er. 
  675                    DESC RIPTION:       This i s the User  who perfo rmed the O rder
  676                                        Transf er.  
  677  
  678  
  679         FILE S POINTED  TO                        FIELDS
  680  
  681   NEW PERSON  (#200)                   ORDER  TRANSFERS: TRANSFERRE D FROM (#. 02)
  682                                        TRANSF ERRED TO ( #.03)
  683                                        TRANSF ER USER (# .04)
  684  
  685   System Fea tures
  686   Please ref er to the  RSD using  this link:
  687   http://URL .DNS/
  688  
  689  
  690   NSR # 2013 0504 – Pro vider Role  Change En hancement
  691   OR3P453
  692   Routines
  693   Activities
  694   Routine Na me
  695   OR3P453
  696   Enhancemen t Category
  697    New
  698    Modify
  699    Delete
  700    No Change
  701   RTM
  702  
  703   Related Op tions
  704   N/A
  705  
  706   Related Ro utines
  707   Routines “ Called By”
  708   Routines “ Called”   
  709  
  710   Called by  Installati on of OR*3 .0*453 by  Installing  User
  711   %ZTLOAD, D DMOD, DIR,  XLFDT, XM D, XPDUTL
  712   Routines
  713   Activities
  714   Data Dicti onary (DD)  Reference s
  715   N/A
  716   Related Pr otocols
  717   N/A
  718   Related In tegration  Control Re gistration s (ICRs)
  719   N/A
  720   Data Passi ng
  721    Input
  722    Output Re ference
  723    Both
  724    Global Re ference
  725    Local
  726   Input Attr ibute Name  and Defin ition
  727   Name:  
  728   Definition
  729   Output Att ribute Nam e and Defi nition
  730   Name:
  731   Definition :
  732  
  733   Current Lo gic
  734   N/A
  735  
  736   Modified L ogic (Chan ges are in  bold)
  737   OR3P453  ; SLC/RBD Po st Install  453 ;07/1 4/17  10:5 2
  738            ; ;3.0;ORDER  ENTRY/RES ULTS REPOR TING;**453 **;Dec 17,  1997
  739            ;
  740   ENV      ;  ensure th at user un derstands  what is ab out to hap pen with c reation
  741            ;  of New St yle cross  reference.
  742            N  DIR,DIRUT ,DTOUT,DUO UT,Y
  743            S  XPDABORT= ""
  744            W  !!,$C(7), "****** Cr eation of  New Style  'EPRACDT'  Cross Refe rence **** **",!
  745            W  !,"This w ill loop t hrough the  ORDER ACT IONS Multi ple of the  entire OR DER"
  746            W  !,"File ( #100) and  create the  'EPRACDT'  New Style  Cross Ref erence bas ed"
  747            W  !,"on the  PROVIDER  & DATE/TIM E ORDERED  sub-fields .",!
  748            W  !,"WARNIN G: Once yo u agree to  create th is, you sh ould let i t run unti l"
  749            W  !,"it has  finished  completely  !!",!
  750            S  DIR("A")= "Are you s ure you wa nt to do t his"
  751            S  DIR("A",1 )="You are  about to  create the  index whi ch could t ake quite  awhile."
  752            S  DIR("B")= "NO"
  753            S  DIR(0)="Y "
  754            D  ^DIR
  755            I  $D(DIRUT) !$D(DTOUT) !$D(DUOUT) !(Y'=1) W  !!,"Ok, I  am stoppin g the inst all." S XP DABORT=1 Q
  756            E   W !,"Ok,  let's con tinue!",!
  757            I  XPDABORT= "" K XPDAB ORT
  758            Q
  759            ;
  760   POST     ;  Post-Inst all for OR *3.0*453
  761            ;  This will  assist wi th EPRACDT  cross ref erence cre ation alon g with
  762            ;  Creation  of new EPR ACDT Indic es
  763            N  ORMSG
  764            S  ORMSG(1)= "This patc h will cre ate a new  New Style  cross refe rence"
  765            S  ORMSG(2)= "called 'E PRACDT' wh ich will b e at the O RDER file  level"
  766            S  ORMSG(3)= "but on PR OVIDER & D ATE/TIME O RDERED sub -fields of  the"
  767            S  ORMSG(4)= "ORDER ACT IONS Multi ple."
  768            S  ORMSG(5)= " "
  769            S  ORMSG(6)= "Creation  of 'EPRACD T' will no w go forwa rd in the"
  770            S  ORMSG(7)= "Backgroun d."
  771            S  ORMSG(8)= " "
  772            S  ORMSG(9)= "You will  be given a  TaskMan t ask # to c heck on or ,"
  773            S  ORMSG(10) ="alternat ely, you c an check y our mail o n MailMan  for a"
  774            S  ORMSG(11) ="message  expressing  Completio n of this  Task with"
  775            S  ORMSG(12) ="appropri ate detail s."
  776            S  ORMSG(13) =" "
  777            S  ORMSG(14) ="Note Ins tall of th is Patch c annot be c onsidered"
  778            S  ORMSG(15) ="Complete  unless an d until th is Task is  Completed ."
  779            S  ORMSG(16) =" "
  780            D  BMES^XPDU TL(.ORMSG)
  781            I  $D(^XTMP( "OR3P453", "START"))  D
  782            .  D MES^XPD UTL("Task  to Create  'EPRACDT'  Already Be gun "_$$HT E^XLFDT(^X
  783   TMP("OR3P4 53","START "))_".")
  784            .  D MES^XPD UTL("")
  785            I  $D(^XTMP( "OR3P453", "FINISH"))  D  Q
  786            .  D MES^XPD UTL("...an d Complete d "_$$HTE^ XLFDT(^XTM P("OR3P453 ","FINISH" ))_".")
  787            .  D MES^XPD UTL("")
  788            Q :$D(^XTMP( "OR3P453") )
  789            S  ZTRTN="SE TXREF^OR3P 453",ZTIO= "",ZTDTH=$ H
  790            S  ZTDESC="C reation of  New Style  X-Ref 'EP RACDT' in  ORDER file " D ^%ZTLO AD
  791            I  $G(ZTSK)  D MES^XPDU TL("Task # "_ZTSK_" q ueued to s tart "_$$H TE^XLFDT($ G(ZTSK("D" )))) I 1
  792            E   D MES^XP DUTL("**** * UNABLE T O QUEUE CR EATION OF  'EPRACDT'  ORDER FILE  X-REF *** **")
  793            K  ZTRTN,ZTI O,ZTDTH,ZT DESC,ZTSK
  794            Q
  795            ;
  796   SETXREF  ;  Set new E PRACDT New  Style cro ss referen ce for old  data
  797            N  DA,DIK,OR IEN,XTMPCN T,XTMPMSG, ZTREQ
  798            K  ^XTMP("OR 3P453")
  799            S  ^XTMP("OR 3P453",0)= $$FMADD^XL FDT($$DT^X LFDT(),90)
  800            S  ^XTMP("OR 3P453","ST ART")=$H
  801            S  XTMPCNT=0
  802            S  XTMPCNT=X TMPCNT+1
  803            S  XTMPMSG=" Creation o f 'EPRACDT ' X-Ref fo r ORDER fi le Started  "
  804            S  XTMPMSG=X TMPMSG_$$H TE^XLFDT(^ XTMP("OR3P 453","STAR T"))_"."
  805            S  ^XTMP("OR 3P453",XTM PCNT)=XTMP MSG
  806            S  XTMPCNT=X TMPCNT+1,^ XTMP("OR3P 453",XTMPC NT)=" "
  807            K  ^OR(100," EPRACDT")
  808            S  ORIEN=0
  809            F   S ORIEN= $O(^OR(100 ,ORIEN)) Q :'ORIEN  D
  810            .  S DIK="^O R(100,"_OR IEN_",8,", DIK(1)=".0 1^EPRACDT" ,DA(1)=ORI EN D ENALL ^DIK
  811            S  XTMPMSG=" Creation o f 'EPRACDT ' X-Ref Co mpleted."
  812            S  XTMPCNT=X TMPCNT+1,^ XTMP("OR3P 453",XTMPC NT)=XTMPMS G
  813            S  XTMPCNT=X TMPCNT+1,^ XTMP("OR3P 453",XTMPC NT)=" "
  814            S  ^XTMP("OR 3P453","FI NISH")=$H
  815            S  XTMPMSG=" Background  Task Fini shed "
  816            S  XTMPMSG=X TMPMSG_$$H TE^XLFDT(^ XTMP("OR3P 453","FINI SH"))_"."
  817            S  XTMPCNT=X TMPCNT+1,^ XTMP("OR3P 453",XTMPC NT)=XTMPMS G
  818            ;
  819            ;  Send Mail  to instal ler to not ify of com pletion
  820            S  XMSUB="OR *3.0*453 p ost instal l has run  to complet ion."
  821            S  XMDUZ="Pa tch OR*3.0 *453"
  822            S  XTMPCNT=0
  823   XRFLOOP  S  XTMPCNT=$ O(^XTMP("O R3P453",XT MPCNT)) G: XTMPCNT'?1 N.N FIN
  824            S  ^TMP($J," OR3P453",X TMPCNT,0)= ^XTMP("OR3 P453",XTMP CNT)
  825            G  XRFLOOP
  826            ;
  827   FIN      S  XMTEXT="^ TMP($J,""O R3P453"","
  828            S  XMY(DUZ)= "" D ^XMD  K ^TMP($J, "OR3P453")  S ZTREQ=" @"
  829            K  XMDUZ,XMS UB,XMTEXT, XMY
  830            Q
  831            ;
  832  
  833   ORB3 Routi ne
  834   Routines
  835   Activities
  836   Routine Na me
  837   ORB3
  838   Enhancemen t Category
  839    New
  840    Modify
  841    Delete
  842    No Change
  843   RTM
  844  
  845   Related Op tions
  846   N/A
  847  
  848   Related Ro utines
  849   Routines “ Called By”
  850   Routines “ Called”   
  851  
  852   Called by  GMRCP, LR7 ORB3, OCXO CMPG, OCXO Z0I, OCXOZ 0J, OCXOZ0 K, OCXOZ0L , OCXOZ0M,  OCXOZ0N,  OCXOZ0O, O CXOZ0P, OC XOZ0Q, OCX OZ0R, OCXO Z0S, OCXOZ 0T, OCXOZ0 Y, OCXOZ0Z , OCXOZ11,  OCXOZ12,  OCXOZ13, O LDCP, ORAR EN, ORB3LA B, ORB3TIM 1, ORB3TIM 2, ORB3UTL , ORBSMART , ORKCHK,  ORTSKLPS,  ORWDAL32,  ORX3, PSOP KIV1, PXRM NTFY, RAO7 PC4, RAUTL 00, RAUTL1 , RAUTL19,  WVSNOMED,  WVTDALRT
  853   DGCV, ORB3 1, ORB3FN,  ORB3REG,  ORB3SPEC,  ORBSMART,  ORQOR2, OR QPTQ1, SCA PMC, SCMCM HTC, SDUTL 3, VADPT,  XLFDT, XLF STR, XPAR,  XQALBUTL,  XQALERT, 
  854  
  855   Routines
  856   Activities
  857   Data Dicti onary (DD)  Reference s
  858   ^OR(100,   ^ORD(100.9
  859   Related Pr otocols
  860   N/A
  861   Related In tegration  Control Re gistration s (ICRs)
  862   1362
  863   Data Passi ng
  864    Input
  865    Output Re ference
  866    Both
  867    Global Re ference
  868    Local
  869   Input Attr ibute Name  and Defin ition
  870   Name:  ORN
  871   Definition : IEN into  OE/RR NOT IFICATIONS  file (#10 0.9)
  872   Name: ORBD FN
  873   Definition : IEN into  PATIENT f ile (#2)
  874   Name: ORNU M
  875   Definition : IEN into  ORDER fil e (#100)
  876   Name: ORBA DUZ
  877   Definition : Array of  Recipient  DUZs.
  878   Name: ORBP MSG
  879   Definition : Message  Text
  880   Name: ORBP DATA
  881   Definition : Identifi es the pac kage the N otificatio n is based  on.
  882   Output Att ribute Nam e and Defi nition
  883   Name:
  884   Definition :
  885  
  886   Current Lo gic
  887   USER     ; should USE R (ORBDUZ)  be a reci p
  888            D  USER^ORB3 USER(.XQA, ORBDUZ,ORN ,.ORBU,.OR BUI,ORBDFN ,+$G(ORNUM ))
  889            I  $D(ORFORC E(ORBDUZ))  S XQA(ORB DUZ)=""
  890            Q
  891  
  892   Modified L ogic (Chan ges are in  bold)
  893   USER     ; should USE R (ORBDUZ)  be a reci p
  894            ;  RBD OR*3. 0*453 Inte rcept User  (Provider ) to recei ve alert t o see if i t permanen tly routes  to anothe r User (Pr ovider)
  895            ;                    Th en check i f that Use r can rece ive Alerts
  896            N  ORTRDAT,O RTRNUM,ORT RREC I +$G (ORNUM)>0  D
  897            .  S ORTRDAT =$O(^OR(10 0,ORNUM,11 ,"B",$$NOW ^XLFDT()), -1) I +ORT RDAT>0 D
  898            . . S ORTRNU M=$O(^OR(1 00,ORNUM,1 1,"B",ORTR DAT,""),-1 ) I +ORTRN UM>0 D
  899            . .. S ORTRR EC=$G(^OR( 100,ORNUM, 11,ORTRNUM ,0)) I ORT RREC]"" D
  900            . ... I $P(O RTRREC,U,2 )=ORBDUZ,$ P(ORTRREC, U,3) S ORB DUZ=$P(ORT RREC,U,3)
  901            D  USER^ORB3 USER(.XQA, ORBDUZ,ORN ,.ORBU,.OR BUI,ORBDFN ,+$G(ORNUM ))
  902            I  $D(ORFORC E(ORBDUZ))  S XQA(ORB DUZ)=""
  903            Q
  904  
  905   ORCSAVE Ro utine
  906  
  907   Routines
  908   Activities
  909   Routine Na me
  910   ORCSAVE
  911   Enhancemen t Category
  912    New
  913    Modify
  914    Delete
  915    No Change
  916   RTM
  917  
  918   Related Op tions
  919   N/A
  920  
  921   Related Ro utines
  922   Routines “ Called By”
  923   Routines “ Called”   
  924  
  925   CORWDX, GM TSPST2,
  926   JCWDX, JLC WDX,
  927   JORMPS, JO RWDX,
  928   JSGORWDXA,  OR3C100,
  929   ORCACT2, O RCACT4,
  930   ORCDFH, OR CDFHO,
  931   ORCDFHTF,  ORCDLG,
  932   ORCMED, OR CONV3,
  933   ORCSEND, O RCSEND2,
  934   ORCSEND3,  ORMEVNT1,
  935   ORMFH, ORM FH1,
  936   ORMGMRC, O RMLR,
  937   ORMLR1, OR MPS,
  938   ORMPS2, OR MPS3,
  939   ORMRA, ORM VBEC,
  940   ORWD, ORWD FH,
  941   ORWDX, ORW DXA,
  942   ORWDXM, OR WDXR,
  943   ORWDXRBU,  TYBORWDX,
  944   TYORWDX, V EJDVGR1
  945   DIC, DID,  DIQ, HMPOR , ORCD, OR CSAVE1, OR MBLDOR, OR OCAPI1, OR WDPS1, XLF DT
  946  
  947   Routines
  948   Activities
  949   Data Dicti onary (DD)  Reference s
  950   ^DIC(9.4,  ^OR(100,   ^ORD(100.2 , ^ORD(100 .05, ^ORD( 100.7, ^OR D(100.41
  951   Related Pr otocols
  952   N/A
  953   Related In tegration  Control Re gistration s (ICRs)
  954   N/A
  955   Data Passi ng
  956    Input
  957    Output Re ference
  958    Both
  959    Global Re ference
  960    Local
  961   Input Attr ibute Name  and Defin ition
  962   Name: ORDI ALOG
  963   Definition : Array of  Dialog Va lues
  964   Name: ORDG
  965   Definition : Display  Group
  966   Name: ORPK G
  967   Definition : Package
  968   Name: ORCA T
  969   Definition :  Patient  Class
  970   Name: OREV ENT
  971   Definition :  OE/RR P atient Eve nt
  972   Name: ORDU Z
  973   Definition : Who Ente red Order
  974   Name: ORLO G
  975   Definition : When Ord er Entered
  976   Name: CODE
  977   Definition : Action C ode
  978   Name: DA
  979   Definition : IEN of O RDER file  (#100)
  980   Name: PROV
  981   Definition :  Action  Provider
  982   Name: REAS ON
  983   Definition : Reason f or Action
  984   Name: WHEN
  985   Definition : When Act ion Perfor med
  986   Name: WHO
  987   Definition : Who Perf ormed Acti on
  988   Name: DLG
  989   Definition : Order Di alog
  990   Output Att ribute Nam e and Defi nition
  991   Name: ORIF N
  992   Definition :  Order N umber
  993   Name: NEXT
  994   Definition : Next Act ion Number
  995   Name: ORPI FN
  996   Definition : IFN of N ew Parent  Order
  997  
  998   Current Lo gic
  999   EN1, ACTIO N & SET Ta gs affecte d:
  1000  
  1001   EN1      S  ^OR(100,O RIFN,0)=OR IFN_U_ORVP _U_U_$G(OR NP)_U_+ORD IALOG_";OR D(101.41,^
  1002   "_USR_U_LO G_U_U_U_LO C_U_DG_U_C ATG_U_TRSP EC_U_PKG_U _U_SIGNREQ D_U_$G(ORE VENT)_U_$G (ORAPPT)
  1003            S  ^OR(100,O RIFN,3)=LO G_"^90^"_S TS_U_$S($G (ORIT):ORI T_";ORD(10 1.41,",1:"
  1004   ")_U_$G(OR DIALOG("PR EV"))_"^^1 ^^^^"_TYPE
  1005            S  ^OR(100,O RIFN,8,0)= "^100.008D A^1^1",^OR (100,ORIFN ,8,1,0)=LO G_"^NW^"_$
  1006   G(ORNP)_U_ $S(SIGNREQ D:2,1:3)_" ^^^^^^^^"_ NATR_U_USR _"^1^"_STS ,^OR(100,O RIFN,8,"C"
  1007   ,"NW",1)=" "
  1008            S  ^OR(100," AF",LOG,OR IFN,1)=""
  1009  
  1010   ACTION(COD E,DA,PROV, REASON,WHE N,WHO) ; - - save new  action
  1011            N  NEXT,TOTA L,HDR,LAST ,X,PAT,DGR P,SIG,NATR ,TXT S DA= +DA
  1012            Q :'$D(^OR(1 00,DA,0))  0 Q:$G(COD E)'?2U 0
  1013            S :'$G(WHEN)  WHEN=+$E( $$NOW^XLFD T,1,12) S: '$G(WHO) W HO=DUZ
  1014            S  NATR=+$O( ^ORD(100.0 2,"C","E", 0)) ;assum e Elec Ent ered until  changed
  1015            S  PAT=$P(^O R(100,DA,0 ),U,2),DGR P=$P(^(0), U,11),SIG= $P(^(0),U, 16),X=+$P(
  1016   $G(^(3)),U ,7),HDR=$G (^(8,0))
  1017            S :X'>0 X=1  S TXT=$P($ G(^OR(100, DA,8,X,0)) ,U,14) ;cu rrent actn 's txt ptr
  1018            S :HDR="" HD R="^100.00 8DA^^" S T OTAL=+$P(H DR,U,4)
  1019            S  LAST=$O(^ OR(100,DA, 8,"C",CODE ,"?"),-1)  I LAST D
  1020            .  S X=$G(^O R(100,DA,8 ,LAST,0))  Q:$P(X,U,1 5)'=11  Q: $P(X,U,4)' =2
  1021            .  S NEXT=LA ST I PAT,$ P(X,U) D   ; kill old  xref entr ies
  1022            .  . K:DGRP  ^OR(100,"A CT",PAT,(9 999999-$P( X,U)),DGRP ,DA,NEXT)
  1023            .  . K ^OR(1 00,"AC",PA T,(9999999 -$P(X,U)), DA,NEXT),^ OR(100,"AS ",PAT,(999
  1024   9999-$P(X, U)),DA,NEX T),^OR(100 ,"AF",$P(X ,U),DA,NEX T)
  1025            S :'$G(NEXT)  NEXT=$O(^ OR(100,DA, 8,"?"),-1) +1,TOTAL=T OTAL+1
  1026            S  ^OR(100,D A,8,NEXT,0 )=WHEN_U_C ODE_U_$G(P ROV)_U_$S( SIG:2,1:3) _"^^^^^^^^
  1027   "_NATR_U_W HO_U_TXT_" ^11",^OR(1 00,DA,8,"C ",CODE,NEX T)=""
  1028            S  ^OR(100," AF",WHEN,D A,NEXT)=""
  1029  
  1030   SET(DLG) ;  -- Create  new paren t for orde r set ORDI ALOG
  1031            ;  Returns O RPIFN = if n of new p arent orde r for set
  1032            ;
  1033            Q :'$G(ORVP)   Q:'$G(DL G)  N OR0, PKG,NOW,CA TG,STS,ORL OC,TRSPEC, X
  1034            S  OR0=$G(^O RD(101.41, DLG,0)) Q: OR0=""  S  ORPIFN=$$N EXTIFN Q:' ORPIFN
  1035            S  PKG=$O(^D IC(9.4,"C" ,"OR",0)), CATG=$S($$ INPT^ORCD: "I",1:"O") ,STS=$S($G
  1036   (OREVENT): 10,1:11),N OW=$S($G(O RSLOG):ORS LOG,1:+$E( $$NOW^XLFD T,1,12))
  1037            I  $G(OREVEN T) S ORLOC ="",TRSPEC =""
  1038            S  ^OR(100,O RPIFN,0)=O RPIFN_U_OR VP_U_U_$G( ORNP)_U_DL G_";ORD(10 1.41,^"_DU
  1039   Z_U_NOW_U_ U_U_ORLOC_ U_U_CATG_U _TRSPEC_U_ PKG_"^^^"_ $G(OREVENT ),^(3)=NOW _"^90^"_ST S_U_$S($G( ORIT):ORIT _"ORD(101. 41,",1:"") _"^^^1^^^^ 0^^"_+$P(O R0,U,6)
  1040            S  ^OR(100,O RPIFN,8,0) ="^100.008 DA^1^1",^( 1,0)=NOW_" ^NW^"_$G(O RNP)_"^^^^
  1041   ^^^^^^"_DU Z_"^^"_STS ,^OR(100,O RPIFN,8,"C ","NW",1)= "",^OR(100 ,"AF",NOW, ORPIFN,1)= ""
  1042  
  1043   Modified L ogic (Chan ges are in  bold)
  1044   EN1, ACTIO N & SET Ta gs affecte d:
  1045  
  1046   EN1      S  ^OR(100,O RIFN,0)=OR IFN_U_ORVP _U_U_$G(OR NP)_U_+ORD IALOG_";OR D(101.41,^
  1047   "_USR_U_LO G_U_U_U_LO C_U_DG_U_C ATG_U_TRSP EC_U_PKG_U _U_SIGNREQ D_U_$G(ORE VENT)_U_$G
  1048   (ORAPPT)
  1049            S  ^OR(100,O RIFN,3)=LO G_"^90^"_S TS_U_$S($G (ORIT):ORI T_";ORD(10 1.41,",1:"
  1050   ")_U_$G(OR DIALOG("PR EV"))_"^^1 ^^^^"_TYPE
  1051            S  ^OR(100,O RIFN,8,0)= "^100.008D A^1^1",^OR (100,ORIFN ,8,1,0)=LO G_"^NW^"_$
  1052   G(ORNP)_U_ $S(SIGNREQ D:2,1:3)_" ^^^^^^^^"_ NATR_U_USR _"^1^"_STS ,^OR(100,O RIFN,8,"C" ,"NW",1)=" "
  1053            S  ^OR(100," AF",LOG,OR IFN,1)=""
  1054            ;  RBD OR*3. 0*453 Add  setting of  EPRACDT i ndex expli citly
  1055            I  $G(ORNP)] "" S ^OR(1 00,"EPRACD T",ORNP,LO G,ORIFN,1) =""
  1056  
  1057   ACTION(COD E,DA,PROV, REASON,WHE N,WHO) ; - - save new  action
  1058            N  NEXT,TOTA L,HDR,LAST ,X,PAT,DGR P,SIG,NATR ,TXT S DA= +DA
  1059            Q :'$D(^OR(1 00,DA,0))  0 Q:$G(COD E)'?2U 0
  1060            S :'$G(WHEN)  WHEN=+$E( $$NOW^XLFD T,1,12) S: '$G(WHO) W HO=DUZ
  1061            S  NATR=+$O( ^ORD(100.0 2,"C","E", 0)) ;assum e Elec Ent ered until  changed
  1062            S  PAT=$P(^O R(100,DA,0 ),U,2),DGR P=$P(^(0), U,11),SIG= $P(^(0),U, 16),X=+$P( $G(^(3)),U ,7),HDR=$G (^(8,0))
  1063            S :X'>0 X=1  S TXT=$P($ G(^OR(100, DA,8,X,0)) ,U,14) ;cu rrent actn 's txt ptr
  1064            S :HDR="" HD R="^100.00 8DA^^" S T OTAL=+$P(H DR,U,4)
  1065            S  LAST=$O(^ OR(100,DA, 8,"C",CODE ,"?"),-1)  I LAST D
  1066            .  S X=$G(^O R(100,DA,8 ,LAST,0))  Q:$P(X,U,1 5)'=11  Q: $P(X,U,4)' =2
  1067            .  S NEXT=LA ST I PAT,$ P(X,U) D   ; kill old  xref entr ies
  1068            .  . K:DGRP  ^OR(100,"A CT",PAT,(9 999999-$P( X,U)),DGRP ,DA,NEXT)
  1069            .  . K ^OR(1 00,"AC",PA T,(9999999 -$P(X,U)), DA,NEXT),^ OR(100,"AS ",PAT,(999
  1070   9999-$P(X, U)),DA,NEX T),^OR(100 ,"AF",$P(X ,U),DA,NEX T)
  1071            .  . I $P(X, U,3) K ^OR (100,"EPRA CDT",$P(X, U,3),$P(X, U),DA,NEXT )   ; RBD 
  1072   OR*3.0*453  Handle Ki ll of EPRA CDT index  as AF inde x is done
  1073            S :'$G(NEXT)  NEXT=$O(^ OR(100,DA, 8,"?"),-1) +1,TOTAL=T OTAL+1
  1074            S  ^OR(100,D A,8,NEXT,0 )=WHEN_U_C ODE_U_$G(P ROV)_U_$S( SIG:2,1:3) _"^^^^^^^^
  1075   "_NATR_U_W HO_U_TXT_" ^11",^OR(1 00,DA,8,"C ",CODE,NEX T)=""
  1076            S  ^OR(100," AF",WHEN,D A,NEXT)=""  I $G(PROV )]"" S ^OR (100,"EPRA CDT",PROV, WHEN,DA,NE XT)=""   ;  RBD OR*3. 0*453 Hand le Set of  EPRACDT in dex
  1077  
  1078   SET(DLG) ;  -- Create  new paren t for orde r set ORDI ALOG
  1079            ;  Returns O RPIFN = if n of new p arent orde r for set
  1080            ;
  1081            Q :'$G(ORVP)   Q:'$G(DL G)  N OR0, PKG,NOW,CA TG,STS,ORL OC,TRSPEC, X
  1082            S  OR0=$G(^O RD(101.41, DLG,0)) Q: OR0=""  S  ORPIFN=$$N EXTIFN Q:' ORPIFN
  1083            S  PKG=$O(^D IC(9.4,"C" ,"OR",0)), CATG=$S($$ INPT^ORCD: "I",1:"O") ,STS=$S($G
  1084   (OREVENT): 10,1:11),N OW=$S($G(O RSLOG):ORS LOG,1:+$E( $$NOW^XLFD T,1,12))
  1085            I  $G(OREVEN T) S ORLOC ="",TRSPEC =""
  1086            S  ^OR(100,O RPIFN,0)=O RPIFN_U_OR VP_U_U_$G( ORNP)_U_DL G_";ORD(10 1.41,^"_DU
  1087   Z_U_NOW_U_ U_U_ORLOC_ U_U_CATG_U _TRSPEC_U_ PKG_"^^^"_ $G(OREVENT ),^(3)=NOW _"^90^"_ST
  1088   S_U_$S($G( ORIT):ORIT _"ORD(101. 41,",1:"") _"^^^1^^^^ 0^^"_+$P(O R0,U,6)
  1089            S  ^OR(100,O RPIFN,8,0) ="^100.008 DA^1^1",^( 1,0)=NOW_" ^NW^"_$G(O RNP)_"^^^^
  1090   ^^^^^^"_DU Z_"^^"_STS ,^OR(100,O RPIFN,8,"C ","NW",1)= "",^OR(100 ,"AF",NOW, ORPIFN,1)= ""
  1091            I  $G(ORNP)] "" S ^OR(1 00,"EPRACD T",ORNP,NO W,ORPIFN,1 )=""   ; R BD OR*3.0*
  1092   453 Set ne w EPRACDT  index expl icitly as  AF index i s done
  1093  
  1094   ORELR5 Rou tine
  1095   Routines
  1096   Activities
  1097   Routine Na me
  1098   ORELR5
  1099   Enhancemen t Category
  1100    New
  1101    Modify
  1102    Delete
  1103    No Change
  1104   RTM
  1105  
  1106   Related Op tions
  1107   Check Lab  orders fro m file 69  to 100 [OR E LAB ORDE RS CHECK 6 9=>100]
  1108  
  1109   Related Ro utines
  1110   Routines “ Called By”
  1111   Routines “ Called”   
  1112  
  1113   ORELR
  1114   DICN, ORCS AVE2, ORDD 100, ORU,  ORUTL1, OR X, XLFDT
  1115  
  1116   Routines
  1117   Activities
  1118   Data Dicti onary (DD)  Reference s
  1119   ^DD(100, ^ LAB(60, ^L R, ^LRO(69 , ^OR(100,  
  1120   Related Pr otocols
  1121   N/A
  1122   Related In tegration  Control Re gistration s (ICRs)
  1123   N/A
  1124   Data Passi ng
  1125    Input
  1126    Output Re ference
  1127    Both
  1128    Global Re ference
  1129    Local
  1130   Input Attr ibute Name  and Defin ition
  1131   Name: LRDF N
  1132   Definition : IEN into  PATIENT f ile (#2)
  1133   Name: ORAF IX
  1134   Definition : Flag to  Fix Databa se or not
  1135   Output Att ribute Nam e and Defi nition
  1136   Name:
  1137   Definition :
  1138  
  1139   Current Lo gic
  1140   LOOP(LRDFN ,ORAFIX) ; Loop on pa tient
  1141            I  '$D(^LR(L RDFN,0)) D  WRT(,,,"N o entry in  ^LR("_LRD FN,ORAFIX)  S DCNT=DC
  1142   NT+1,TOTCN T=TOTCNT+1  K:ORAFIX  ^LRO(69,"D ",LRDFN) Q
  1143            Q :$P(^LR(LR DFN,0),"^" ,2)'=2  ;N ot in pati ent file.
  1144            S  DFN=$P(^L R(LRDFN,0) ,"^",3)
  1145            Q :'$D(^LRO( 69,"D",$G( LRDFN)))
  1146            N  LRODT,LRS N,LRTI,LRT ST,LRENT,X ,X0,X3,ORX 1,ORX2,ORI FN,X8O
  1147            S  LRODT=0 F   S LRODT= $O(^LRO(69 ,"D",LRDFN ,LRODT)) Q :'LRODT  S  LRSN=0 F 
  1148    S LRSN=$O (^LRO(69," D",LRDFN,L RODT,LRSN) ) Q:'LRSN   D
  1149            .  I '$D(^LR O(69,LRODT ,1,LRSN,0) ) D WRT(LR ODT,LRSN,, "D X-ref i nvalid",OR AFIX) S DC NT=DCNT+1, TOTCNT=TOT CNT+1 K:OR AFIX ^LRO( 69,"D",LRD FN,LRODT,L RSN) Q
  1150            .  S X=^LRO( 69,LRODT,1 ,LRSN,0),L RENT=$P(X, "^",5)
  1151            .  S LRTI=0  F  S LRTI= $O(^LRO(69 ,LRODT,1,L RSN,2,LRTI )) Q:LRTI< 1  S X0=^( LRTI,0) D
  1152            . . S LRTST= +X0,ORIFN= $P(X0,"^", 7)
  1153            . . I ORIFN  D
  1154            . .. I '$D(^ OR(100,ORI FN)) D WRT (LRODT,LRS N,LRTI,"Br oken point er to 100:
  1155   "_ORIFN,OR AFIX) S F1 00CNT=F100 CNT+1,TOTC NT=TOTCNT+ 1 S:ORAFIX  $P(^LRO(6 9,LRODT,1, LRSN,2,LRT I,0),"^",7 )="P" Q  ; P=purged
  1156            . .. S X=^OR (100,ORIFN ,0),X3=$G( ^(3))
  1157            . .. I DFN'= +$P(X,"^", 2) D WRT(L RODT,LRSN, LRTI,"Pati ent mismat ch:"_ORIFN
  1158   _"<"_$P(X3 ,"^",3)_"> ") S PTCNT =PTCNT+1,T OTCNT=TOTC NT+1 Q
  1159            . .. D STATU S(LRODT,LR SN,LRTI,X0 ,ORAFIX)
  1160            . .. I LRENT ,$P(X,"^", 7)>$S($P($ P(X,"^",8) ,".",2):$P (X,"^",8), 1:$P(X,"^" ,8)_".2359 ") D
  1161            . ... S ORX1 =$$FMADD^X LFDT($P(X, "^",7),,,3 0),ORX2=$$ FMADD^XLFD T($P(X,"^"
  1162   ,7),,,-30)
  1163            . ... I LREN T<ORX2!(LR ENT>ORX1)  S ENTCNT=E NTCNT+1,TO TCNT=TOTCN T+1 I ORAF IX D
  1164            . .... S $P( ^OR(100,OR IFN,0),"^" ,7)=LRENT
  1165            . .... I $P( X,"^",7)=+ $G(^OR(100 ,ORIFN,8,1 ,0)) S X8O =$G(^(0))  D
  1166            . ..... N DI ,DIC,DIE,D A,DR,D0,DQ ,DISYS
  1167            . ..... I $P (X,"^",11)  K ^OR(100 ,"ACT",$P( X,"^",2),9 999999-+X8 O,$P(X,"^" ,11),ORIFN ,1)
  1168            . ..... K ^O R(100,"AC" ,$P(X,"^", 2),9999999 -+X8O,ORIF N,1),^OR(1 00,"AF",+X
  1169   8O,ORIFN,1 ),^OR(100, "AS",$P(X, "^",2),999 9999-(+X8O ),ORIFN,1)
  1170            . ..... I $P (X8O,"^",1 6)=+X8O K  ^OR(100,"A R",$P(X,"^ ",2),99999 99-(+X8O),
  1171   ORIFN,1) S  ^OR(100," AR",$P(X," ^",2),9999 999-LRENT, ORIFN,1)=" ",$P(^OR(1 00,ORIFN,8
  1172   ,1,0),"^", 16)=LRENT
  1173            . ..... S $P (^OR(100,O RIFN,8,1,0 ),"^")=LRE NT,^OR(100 ,"AF",LREN T,ORIFN,1) =""
  1174            . ..... D S1 ^ORDD100(O RIFN,1,"", LRENT),SET ^ORDD100(O RIFN,1),AC T1^ORDD100
  1175   A(ORIFN,1)
  1176            Q
  1177  
  1178   Modified L ogic (Chan ges are in  bold)
  1179   LOOP(LRDFN ,ORAFIX) ; Loop on pa tient
  1180            I  '$D(^LR(L RDFN,0)) D  WRT(,,,"N o entry in  ^LR("_LRD FN,ORAFIX)  S DCNT=DC NT+1,TOTCN T=TOTCNT+1  K:ORAFIX  ^LRO(69,"D ",LRDFN) Q
  1181            Q :$P(^LR(LR DFN,0),"^" ,2)'=2  ;N ot in pati ent file.
  1182            S  DFN=$P(^L R(LRDFN,0) ,"^",3)
  1183            Q :'$D(^LRO( 69,"D",$G( LRDFN)))
  1184            N  LRODT,LRS N,LRTI,LRT ST,LRENT,X ,X0,X3,ORX 1,ORX2,ORI FN,X8O
  1185            S  LRODT=0 F   S LRODT= $O(^LRO(69 ,"D",LRDFN ,LRODT)) Q :'LRODT  S  LRSN=0 F 
  1186    S LRSN=$O (^LRO(69," D",LRDFN,L RODT,LRSN) ) Q:'LRSN   D
  1187            .  I '$D(^LR O(69,LRODT ,1,LRSN,0) ) D WRT(LR ODT,LRSN,, "D X-ref i nvalid",OR AFIX) S DC NT=DCNT+1, TOTCNT=TOT CNT+1 K:OR AFIX ^LRO( 69,"D",LRD FN,LRODT,L RSN) Q
  1188            .  S X=^LRO( 69,LRODT,1 ,LRSN,0),L RENT=$P(X, "^",5)
  1189            .  S LRTI=0  F  S LRTI= $O(^LRO(69 ,LRODT,1,L RSN,2,LRTI )) Q:LRTI< 1  S X0=^( LRTI,0) D
  1190            . . S LRTST= +X0,ORIFN= $P(X0,"^", 7)
  1191            . . I ORIFN  D
  1192            . .. I '$D(^ OR(100,ORI FN)) D WRT (LRODT,LRS N,LRTI,"Br oken point er to 100: "_ORIFN,OR AFIX) S F1 00CNT=F100 CNT+1,TOTC NT=TOTCNT+ 1 S:ORAFIX  $P(^LRO(6 9,LRODT,1, LRSN,2,LRT I,0),"^",7 )="P" Q  ; P=purged
  1193            . .. S X=^OR (100,ORIFN ,0),X3=$G( ^(3))
  1194            . .. I DFN'= +$P(X,"^", 2) D WRT(L RODT,LRSN, LRTI,"Pati ent mismat ch:"_ORIFN _"<"_$P(X3 ,"^",3)_"> ") S PTCNT =PTCNT+1,T OTCNT=TOTC NT+1 Q
  1195            . .. D STATU S(LRODT,LR SN,LRTI,X0 ,ORAFIX)
  1196            . .. I LRENT ,$P(X,"^", 7)>$S($P($ P(X,"^",8) ,".",2):$P (X,"^",8), 1:$P(X,"^" ,8)_".2359 ") D
  1197            . ... S ORX1 =$$FMADD^X LFDT($P(X, "^",7),,,3 0),ORX2=$$ FMADD^XLFD T($P(X,"^" ,7),,,-30)
  1198            . ... I LREN T<ORX2!(LR ENT>ORX1)  S ENTCNT=E NTCNT+1,TO TCNT=TOTCN T+1 I ORAF IX D
  1199            . .... S $P( ^OR(100,OR IFN,0),"^" ,7)=LRENT
  1200            . .... I $P( X,"^",7)=+ $G(^OR(100 ,ORIFN,8,1 ,0)) S X8O =$G(^(0))  D
  1201            . ..... N DI ,DIC,DIE,D A,DR,D0,DQ ,DISYS
  1202            . ..... I $P (X,"^",11)  K ^OR(100 ,"ACT",$P( X,"^",2),9 999999-+X8 O,$P(X,"^" ,11),ORIFN ,1)
  1203            . ..... K ^O R(100,"AC" ,$P(X,"^", 2),9999999 -+X8O,ORIF N,1),^OR(1 00,"AF",+X
  1204   8O,ORIFN,1 ),^OR(100, "AS",$P(X, "^",2),999 9999-(+X8O ),ORIFN,1)
  1205            . ..... I $P (X8O,"^",3 ) K ^OR(10 0,"EPRACDT ",$P(X8O," ^",3),+X8O ,ORIFN,1)    ; RBD OR *3.0*453 C lean up ne w EPRACDT  index also
  1206            . ..... I $P (X8O,"^",1 6)=+X8O K  ^OR(100,"A R",$P(X,"^ ",2),99999 99-(+X8O), ORIFN,1) S  ^OR(100," AR",$P(X," ^",2),9999 999-LRENT, ORIFN,1)=" ",$P(^OR(1 00,ORIFN,8 ,1,0),"^", 16)=LRENT
  1207            . ..... S $P (^OR(100,O RIFN,8,1,0 ),"^")=LRE NT,^OR(100 ,"AF",LREN T,ORIFN,1) =""
  1208            . ..... S ^O R(100,"EPR ACDT",$P(X 8O,"^",3), LRENT,ORIF N,1)=""    ; RBD OR*3 .0*453 Res et EPRACDT  index als o
  1209            . ..... D S1 ^ORDD100(O RIFN,1,"", LRENT),SET ^ORDD100(O RIFN,1),AC T1^ORDD100 A(ORIFN,1)
  1210            Q
  1211  
  1212   ORQ2 Routi ne
  1213  
  1214   Routines
  1215   Activities
  1216   Routine Na me
  1217   ORQ2
  1218   Enhancemen t Category
  1219    New
  1220    Modify
  1221    Delete
  1222    No Change
  1223   RTM
  1224  
  1225   Related Op tions
  1226   N/A
  1227  
  1228   Related Ro utines
  1229   Routines “ Called By”
  1230   Routines “ Called”   
  1231  
  1232   ORCXPND2,  ORRCOR, OR WOR, SAVEW OR
  1233   DIQ, DIWP,  ICDEX, OR CD, ORCHEC K, ORHLESC , ORQ12, O RQ20, ORQ2 1, ORX8, V ADPT, XLFS TR, XPAR
  1234  
  1235   Routines
  1236   Activities
  1237   Data Dicti onary (DD)  Reference s
  1238   ^DIC(45.7,   ^GMR(123 , ^OR(100,  ^ORD(100. 01, ^ORD(1 01.41, ^SC
  1239   Related Pr otocols
  1240   N/A
  1241   Related In tegration  Control Re gistration s (ICRs)
  1242   4203
  1243   Data Passi ng
  1244    Input
  1245    Output Re ference
  1246    Both
  1247    Global Re ference
  1248    Local
  1249   Input Attr ibute Name  and Defin ition
  1250   Name: ORIF N
  1251   Definition : IEN into  ORDER fil e (#100)
  1252   Output Att ribute Nam e and Defi nition
  1253   Name: ORY
  1254   Definition : Array of  Order Det ail inform ation
  1255  
  1256   Current Lo gic
  1257   DETAIL(ORY ,ORIFN) ;  -- Returns  details o f order OR IFN in ORY (#)
  1258            N  X,X2,I,CN T,ORDIALOG ,OR0,OR3,O R6,SEQ,ITE M,PRMT,MUL T,FIRST,TI TLE,INST,D
  1259   IWL,DIWR,D IWF,ACTION ,VAIN,ORIG VIEW,ORNMS P,ORYT
  1260            S  CNT=0,ORI FN=+ORIFN, OR0=$G(^OR (100,ORIFN ,0)),OR3=$ G(^(3)),OR 6=$G(^(6))
  1261            S  ORNMSP=$$ NMSP^ORCD( $P(OR0,U,1 4))
  1262            K  @ORY,ORYT  S ORIGVIE W=1 D TEXT ^ORQ12(.OR YT,+ORIFN_ ";"_+$P(OR 3,U,7),80)
  1263    ;CurrTx
  1264            M  @ORY=ORYT  ;Move tex t to globa l
  1265            S  I=0 F CNT =1:1 S I=$ O(ORYT(I))  Q:I'>0  D :$D(IORVON ) SETVIDEO (I,1,$L(OR
  1266   YT(I)),IOR VON,IORVOF F)
  1267            S  CNT=CNT+1 ,@ORY@(CNT )="   " ;b lank
  1268   D1       I  $O(^OR(10 0,+ORIFN,2 ,0)) D
  1269            .  S CNT=CNT +1,@ORY@(C NT)="Sub O rders:"
  1270            .  D:$D(IOUO N) SETVIDE O(CNT,1,11 ,IOUON,IOU OFF)
  1271            .  N IFN S I FN=0
  1272            .  F  S IFN= +$O(^OR(10 0,+ORIFN,2 ,IFN)) Q:I FN<1  I $D (^OR(100,I FN,0)) D S UB(IFN)
  1273            .  S CNT=CNT +1,@ORY@(C NT)="   "  ;blank
  1274            I  $P(OR3,U, 9),$D(^OR( 100,+$P(OR 3,U,9),0))  D
  1275            .  S CNT=CNT +1,@ORY@(C NT)="Paren t Order:"
  1276            .  D:$D(IOUO N) SETVIDE O(CNT,1,12 ,IOUON,IOU OFF)
  1277            .  D SUB(+$P (OR3,U,9))
  1278            .  S CNT=CNT +1,@ORY@(C NT)="   "  ;blank
  1279            I  $P(OR3,U, 11)=1,$P(O R3,U,5) D   ;Changed  - show pre vious orde r
  1280            .  S CNT=CNT +1,@ORY@(C NT)="Previ ous Order: "
  1281            .  D:$D(IOUO N) SETVIDE O(CNT,1,15 ,IOUON,IOU OFF) ;prev  order ori ginal text
  1282            .  N ORZ,I,O RIGVIEW S  ORIGVIEW=2  D TEXT^OR Q12(.ORZ,+ $P(OR3,U,5 ),55)
  1283            .  S CNT=CNT +1,@ORY@(C NT)="      Order Text :        " _$G(ORZ(1) )
  1284            .  S I=1 F   S I=$O(ORZ (I)) Q:I'> 0  S CNT=C NT+1,@ORY@ (CNT)=$$RE PEAT^XLFST
  1285   R(" ",24)_ $G(ORZ(I))
  1286   D2       S  CNT=CNT+1 ,@ORY@(CNT )="Activit y:"
  1287            D :$D(IOUON)  SETVIDEO( CNT,1,9,IO UON,IOUOFF )
  1288            S  DIWL=1,DI WR=64,DIWF ="C64",ORI =0 K ^UTIL ITY($J,"W" )
  1289            F   S ORI=$O (^OR(100,O RIFN,8,ORI )) Q:ORI'> 0  S ACTIO N=$G(^(ORI ,0)) D ACT
  1290   ^ORQ20
  1291  
  1292   Modified L ogic (Chan ges are in  bold)
  1293   DETAIL(ORY ,ORIFN) ;  -- Returns  details o f order OR IFN in ORY (#)
  1294            N  X,X2,I,CN T,ORDIALOG ,OR0,OR3,O R6,SEQ,ITE M,PRMT,MUL T,FIRST,TI TLE,INST,D
  1295   IWL,DIWR,D IWF,ACTION ,VAIN,ORIG VIEW,ORNMS P,ORYT
  1296            N  ORTRANS
  1297            S  CNT=0,ORI FN=+ORIFN, OR0=$G(^OR (100,ORIFN ,0)),OR3=$ G(^(3)),OR 6=$G(^(6))
  1298            S  ORNMSP=$$ NMSP^ORCD( $P(OR0,U,1 4))
  1299            K  @ORY,ORYT  S ORIGVIE W=1 D TEXT ^ORQ12(.OR YT,+ORIFN_ ";"_+$P(OR 3,U,7),80)  ;CurrTx
  1300            M  @ORY=ORYT  ;Move tex t to globa l
  1301            S  I=0 F CNT =1:1 S I=$ O(ORYT(I))  Q:I'>0  D :$D(IORVON ) SETVIDEO (I,1,$L(OR YT(I)),IOR VON,IORVOF F)
  1302            S  CNT=CNT+1 ,@ORY@(CNT )="   " ;b lank
  1303   D1       I  $O(^OR(10 0,+ORIFN,2 ,0)) D
  1304            .  S CNT=CNT +1,@ORY@(C NT)="Sub O rders:"
  1305            .  D:$D(IOUO N) SETVIDE O(CNT,1,11 ,IOUON,IOU OFF)
  1306            .  N IFN S I FN=0
  1307            .  F  S IFN= +$O(^OR(10 0,+ORIFN,2 ,IFN)) Q:I FN<1  I $D (^OR(100,I FN,0)) D S UB(IFN)
  1308            .  S CNT=CNT +1,@ORY@(C NT)="   "  ;blank
  1309            I  $P(OR3,U, 9),$D(^OR( 100,+$P(OR 3,U,9),0))  D
  1310            .  S CNT=CNT +1,@ORY@(C NT)="Paren t Order:"
  1311            .  D:$D(IOUO N) SETVIDE O(CNT,1,12 ,IOUON,IOU OFF)
  1312            .  D SUB(+$P (OR3,U,9))
  1313            .  S CNT=CNT +1,@ORY@(C NT)="   "  ;blank
  1314            I  $P(OR3,U, 11)=1,$P(O R3,U,5) D   ;Changed  - show pre vious orde r
  1315            .  S CNT=CNT +1,@ORY@(C NT)="Previ ous Order: "
  1316            .  D:$D(IOUO N) SETVIDE O(CNT,1,15 ,IOUON,IOU OFF) ;prev  order ori ginal text
  1317            .  N ORZ,I,O RIGVIEW S  ORIGVIEW=2  D TEXT^OR Q12(.ORZ,+ $P(OR3,U,5 ),55)
  1318            .  S CNT=CNT +1,@ORY@(C NT)="      Order Text :        " _$G(ORZ(1) )
  1319            .  S I=1 F   S I=$O(ORZ (I)) Q:I'> 0  S CNT=C NT+1,@ORY@ (CNT)=$$RE PEAT^XLFST R(" ",24)_ $G(ORZ(I))
  1320   D2       S  CNT=CNT+1 ,@ORY@(CNT )="Activit y:"
  1321            D :$D(IOUON)  SETVIDEO( CNT,1,9,IO UON,IOUOFF )
  1322            S  DIWL=1,DI WR=64,DIWF ="C64",ORI =0 K ^UTIL ITY($J,"W" )
  1323            F   S ORI=$O (^OR(100,O RIFN,8,ORI )) Q:ORI'> 0  S ACTIO N=$G(^(ORI ,0)) D ACT ^ORQ20
  1324            ;  RBD OR*3. 0*453 Add  ORDER TRAN SFERS info rmation
  1325            S  ORI=0 F   S ORI=$O(^ OR(100,ORI FN,11,ORI) ) Q:ORI'>0   D
  1326            .  I ORI=1 D
  1327            . . S CNT=CN T+1,@ORY@( CNT)="   " ,CNT=CNT+1 ,@ORY@(CNT )="Reassig nments (Tr ansfers):"
  1328            .  S ORTRANS =$G(^OR(10 0,ORIFN,11 ,ORI,0))
  1329            .  S CNT=CNT +1,@ORY@(C NT)="Trans ferred fro m "_$$USER ^ORQ20($P( ORTRANS,U, 2))_" to " _$$USER^OR Q20($P(ORT RANS,U,3))
  1330            .  S CNT=CNT +1,@ORY@(C NT)="  by  "_$$USER^O RQ20($P(OR TRANS,U,4) )_" Effect ive From " _$$DATE^OR Q20($P(ORT RANS,U))
  1331            I  $D(^OR(10 0,ORIFN,11 )) S CNT=C NT+1,@ORY@ (CNT)="    "
  1332  
  1333   ORQ3 Routi ne
  1334   Routines
  1335   Activities
  1336   Routine Na me
  1337   ORQ3
  1338   Enhancemen t Category
  1339    New
  1340    Modify
  1341    Delete
  1342    No Change
  1343   RTM
  1344  
  1345   Related Op tions
  1346   N/A
  1347  
  1348   Related Ro utines
  1349   Routines “ Called By”
  1350   Routines “ Called”   
  1351  
  1352   Called by  CPRS GUI v ia RPC cal ls ORQ3 EN  & ORQ3 XF ER
  1353   DICN, ORQO R2, VADPT,  XLFDT
  1354  
  1355   Routines
  1356   Activities
  1357   Data Dicti onary (DD)  Reference s
  1358   ^OR(100, ^ VA(200
  1359   Related Pr otocols
  1360   N/A
  1361   Related In tegration  Control Re gistration s (ICRs)
  1362   N/A
  1363   Data Passi ng
  1364    Input
  1365    Output Re ference
  1366    Both
  1367    Global Re ference
  1368    Local
  1369   Input Attr ibute Name  and Defin ition
  1370   Name: ORPR IEN
  1371   Definition : IEN into  NEW PERSO N file (#2 00)
  1372   Name: ORDT 1
  1373   Definition : Starting  Date to S earch From
  1374   Name: ORDT 2
  1375   Definition : Ending D ate to Sea rch To
  1376   Name: LST
  1377   Definition :  List of  Order IEN s, Transfe rred From  Provider,  Transferre d To Provi ders, User  Requestin g Transfer , and Date /Times of  Transfer
  1378   Output Att ribute Nam e and Defi nition
  1379   Name: ORY
  1380   Definition : Return A rray of Pa tients & O rders info rmation
  1381   Name:  RES ULTS
  1382   Definition :  Return  Array of O rders that  have Succ essfully a nd Unsucce ssfully ha d Transfer /Re-Assign ment attem pted; if U nsuccessfu l then Err or Message  will also  be return ed.
  1383  
  1384   Current Lo gic
  1385   N/A
  1386  
  1387   Modified L ogic (Chan ges are in  bold)
  1388   ORQ3     ; SLC/RBD -  Provider R ole Change  APIs ;06/ 09/17  14: 12
  1389            ; ;3.0;ORDER  ENTRY/RES ULTS REPOR TING;**453 **;Dec 17,  1997
  1390            ;
  1391            Q
  1392            ;
  1393   EN(ORY,ORP RIEN,ORDT1 ,ORDT2) ;  Get Qualif ying Order s for Prov ider
  1394            ;
  1395            ;  This RPC  allows ret rieval of  Patients a nd Orders  for which  the
  1396            ;  Provider  is the Ord ering Prov ider and t he Orders  are Signed
  1397            ;
  1398            ;  Input:
  1399            ;    ORY is  the name o f the retu rn array
  1400            ;    ORPRIEN  identifie s the IEN  of the Pro vider to r etrieve Or ders for
  1401            ;    ORDT1 i dentifies  the start  date to st art lookin g from
  1402            ;    ORDT2 i dentifies  the end da te to stop  looking o nce reache d
  1403            ;  Output:
  1404            ;    Global  ^TMP("ORPA TRTN",$J,n ) where n  represents  each reco rd found
  1405            ;                                      starti ng with re cord "1"
  1406            ;      Conta ins data f or Patient  Name ^ Pa tient IEN  ^ Order IE N ^
  1407            ;                             Orde r Status ^  Order Dat e
  1408            ;
  1409            N  CNT,DFN,O R0,ORIEN,O ROBJ,ORPRX FRD,ORPTNM ,ORSIGNED, ORTMPDT,OR XFERNM,VAD M
  1410            S :'$D(U) U= "^" K ^TMP ("ORPTINFO ",$J),^TMP ("ORPATRTN ",$J)
  1411            S  ORY=$NA(^ TMP("ORPAT RTN",$J))
  1412            ;  Loop thro ugh Provid ers that a re Orderin g Provider s for Orde rs that ha ve been Si gned
  1413            S  ORTMPDT=O RDT1,ORDT2 =ORDT2_".2 359"
  1414            F   S ORDT1= $O(^OR(100 ,"EPRACDT" ,ORPRIEN,O RDT1)) Q:O RDT1>ORDT2   Q:ORDT1= ""  D
  1415            .  S ORIEN=" " F  S ORI EN=$O(^OR( 100,"EPRAC DT",ORPRIE N,ORDT1,OR IEN)) Q:OR IEN=""  D
  1416            . . S OR0=$G (^OR(100,O RIEN,0)) Q :ORIEN'[""   Q:$$ORDE RER^ORQOR2 (ORIEN)'=O RPRIEN   ;  skip if n ot Ord. Pr v.
  1417            . . S ORSIGN ED=($P($G( ^OR(100,+O RIEN,8,1,0 )),U,4)'=2 ) Q:'ORSIG NED     ;  skip if Or der not Si gned
  1418            . . ; if Old  Provider  already Tr ansferred,  skip
  1419            . . S ORPRXF RD=0,ORXFE RNM=0
  1420            . . F  S ORX FERNM=$O(^ OR(100,ORI EN,11,ORXF ERNM)) Q:O RXFERNM=""   Q:ORXFER NM'?1N.N   D
  1421            . .. I $P($G (^OR(100,O RIEN,11,OR XFERNM,0)) ,U,2)=ORPR IEN D
  1422            . ... S ORPR XFRD=1
  1423            . . Q:ORPRXF RD=1  S OR OBJ=$P(OR0 ,U,2) Q:OR OBJ'["DPT( "
  1424            . . S DFN=+O ROBJ D OER R^VADPT S  ORPTNM=$G( VADM(1)) Q :ORPTNM=""
  1425            . . S ^TMP(" ORPTINFO", $J,ORPTNM, DFN,ORIEN) =""
  1426            ;  Now order  through T ransferred  To Provid er index f or situati on where h e/she has
  1427            ;  to Transf er Order t o a third  Provider ( or fourth,  etc.) ...  only allo w last ent ry
  1428            ;  from ORDE R TRANSFER S multiple  to be use d though.
  1429            S  ORDT1=ORT MPDT
  1430            F   S ORDT1= $O(^OR(100 ,"EPRTRDT" ,ORPRIEN,O RDT1)) Q:O RDT1>ORDT2   Q:ORDT1= ""  D
  1431            .  S ORIEN=" " F  S ORI EN=$O(^OR( 100,"EPRTR DT",ORPRIE N,ORDT1,OR IEN)) Q:OR IEN=""  D
  1432            . . S ORXFER NM=$O(^OR( 100,ORIEN, 11,"B"),-1 ) Q:$P($G( ^OR(100,OR IEN,11,ORX FERNM,0)), U,3)’=
  1433   ORPRIEN
  1434            . . S OR0=$G (^OR(100,O RIEN,0)) Q :ORIEN'[""
  1435            . . S OROBJ= $P(OR0,U,2 ) Q:OROBJ' ["DPT("
  1436            . . S DFN=+O ROBJ D OER R^VADPT S  ORPTNM=$G( VADM(1)) Q :ORPTNM=""
  1437            . . S ^TMP(" ORPTINFO", $J,ORPTNM, DFN,ORIEN) =""
  1438            ;  Put in Pa tient Name , Patient  IEN, & Ord er IEN ord er to retu rn to GUI
  1439            S  CNT=0,ORP TNM="" F   S ORPTNM=$ O(^TMP("OR PTINFO",$J ,ORPTNM))  Q:ORPTNM=" "  D
  1440            .  S DFN=""  F  S DFN=$ O(^TMP("OR PTINFO",$J ,ORPTNM,DF N)) Q:DFN= ""  D
  1441            . . S ORIEN= "" F  S OR IEN=$O(^TM P("ORPTINF O",$J,ORPT NM,DFN,ORI EN)) Q:ORI EN=""  D
  1442            . .. S CNT=C NT+1
  1443            . .. S ^TMP( "ORPATRTN" ,$J,CNT)=O RPTNM_U_DF N_U_ORIEN_ U_$P($$STA TUS^ORQOR2
  1444   (ORIEN),U, 2)_U_$$FMT E^XLFDT($P ($G(^OR(10 0,ORIEN,0) ),U,7))
  1445            K  ^TMP("ORP TINFO",$J)
  1446            Q
  1447            ;
  1448   XFER(RESUL TS,LST) ;  Transfer O rders to N ew Provide rs
  1449            ;
  1450            ;  This RPC  allows the  Transferr ing from o ne Provide r to anoth er
  1451            ;  which wil l create a n entry in to each or der in a L ist into
  1452            ;  the ORDER  TRANSFERS  multiple
  1453            ;
  1454            ;  Input:
  1455            ;    LST(1.. n) where e ach entry  contains:
  1456            ;      ORIEN  identifie s the IEN  of the Ord er to crea te a
  1457            ;             Reassignm ent (Trans fer) for
  1458            ;      ORPRI EN1 identi fies the T ransferrin g From Pro vider
  1459            ;      ORPRI EN2 identi fies the T ransferrin g To Provi der
  1460            ;      ORUSE R identifi es the Use r requesti ng the Tra nsfer
  1461            ;      ORDTT M identifi es the Tra nsfer Date /Time
  1462            ;  Output:
  1463            ;    Global  ^TMP("OROR DRTN",$J,n ) where n  represents  each reco rd
  1464            ;                                      starti ng with re cord "1"
  1465            ;      Conta ins data f or Order I EN ^ Succe ss Flag
  1466            ;                             ^ Er ror Messag e if Unsuc cessful
  1467            ;         Wh ere Succes s Flag = 0  if Unsucc essful or  1 if Succe ssful
  1468            ;
  1469            N  CNT,DA,DI C,DIE,DR,O RDTTM,ORIE N,ORPRIEN1 ,ORPRIEN2, ORUSER,X,Y
  1470            S :'$D(U) U= "^" K ^TMP ("ORORDRTN ",$J)
  1471            S  RESULTS=$ NA(^TMP("O RORDRTN",$ J))
  1472            S  CNT=0 F   S CNT=$O(L ST(CNT)) Q :CNT=""  D
  1473            .  S ORIEN=$ P(LST(CNT) ,U,1),ORPR IEN1=$P(LS T(CNT),U,2 )
  1474            .  S ORPRIEN 2=$P(LST(C NT),U,3),O RUSER=$P(L ST(CNT),U, 4)
  1475            .  S ORDTTM= $P(LST(CNT ),U,5)
  1476            .  I ORIEN'] "" S ^TMP( "ORORDRTN" ,$J,CNT)=O RIEN_U_0_U _"Order IE N Blank" Q
  1477            .  I '$D(^OR (100,ORIEN )) D  Q
  1478            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "Invalid O rder IEN"
  1479            .  I ORPRIEN 1']"" D  Q
  1480            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "From Prov ider IEN B lank"
  1481            .  I '$D(^VA (200,ORPRI EN1)) D  Q
  1482            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "From Prov ider IEN " _ORPRIEN1_ " Invalid"
  1483            .  I ORPRIEN 2']"" D  Q
  1484            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "To Provid er IEN Bla nk"
  1485            .  I '$D(^VA (200,ORPRI EN2)) D  Q
  1486            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "To Provid er IEN "_O RPRIEN2_"  Invalid"
  1487            .  I ORUSER' ]"" D  Q
  1488            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "Transferr ing User I EN Blank"
  1489            .  I '$D(^VA (200,ORUSE R)) D  Q
  1490            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "Transferr ing User I EN "_ORUSE R_" Invali d"
  1491            .  I ORDTTM' ?7N1"."4N  S ^TMP("OR ORDRTN",$J ,CNT)=ORIE N_U_0_U_"I nvalid Tra nsfer Date /Time" Q
  1492            .  I ORDTTM< $$NOW^XLFD T() D  Q
  1493            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "Transfer  Date/Time  Cannot be  in the Pas t"
  1494            .  L +^OR(10 0,ORIEN):0  I '$T D   Q
  1495            . . S ^TMP(" ORORDRTN", $J,CNT)=OR IEN_U_0_U_ "Another u ser is edi ting this  Order."
  1496            .  S DIC="^O R(100,"_OR IEN_",11," ,DA(1)=ORI EN,DIC(0)= "L",X=ORDT TM
  1497            .  S DIC("DR ")=".02/// /"_ORPRIEN 1_";.03/// /"_ORPRIEN 2
  1498            .  S DIC("DR ")=DIC("DR ")_";.04// //"_ORUSER  D FILE^DI CN
  1499            .  I +Y<0 S  ^TMP("OROR DRTN",$J,C NT)=ORIEN_ U_0_U_"Sav e Unsucces sful" L -^ OR(100,ORI EN) Q
  1500            .  S ^TMP("O RORDRTN",$ J,CNT)=ORI EN_U_1 L - ^OR(100,OR IEN)
  1501            Q
  1502            ;
  1503  
  1504   Remote Pro cedure Cal l (RPC)
  1505   RPCs
  1506   Activities
  1507   Name
  1508    'ORQ3 EN'  
  1509   TAG^RTN
  1510   EN^ORQ3
  1511   Input Para meters
  1512   ORPRIEN –  IEN into N EW PERSON  file (#200 ), ORDT1 –  Start Dat e to begin  Search fo r, ORDT2 –  End Date  to stop Se arch for
  1513   Results Ar ray
  1514    Single Va lue
  1515    Array
  1516    Word Proc essing
  1517  
  1518    Global Ar ray
  1519    Global In stance
  1520  
  1521   Descriptio n
  1522   NSR2013050 4 – Provid er Role Ch ange 
  1523   Returns re sults in P atient Nam e, Patient  IEN, Orde r IEN sort  order wit h the foll owing 5 fi elds:
  1524   Patient Na me,  IEN i nto PATIEN T file (#2 ), IEN int o ORDER fi le (#100),  Status of  the Order , e.g., AC TIVE, PEND ING,  etc. , Date of  Order
  1525  
  1526   RPCs
  1527   Activities
  1528   Name
  1529    'ORQ3 XFE R' 
  1530   TAG^RTN
  1531   XFER^ORQ3
  1532   Input Para meters
  1533   LST(1..n)  where each  entry con tains:
  1534   ORIEN – IE N of ORDER  file (#10 0), ORPRIE N1 – IEN i nto NEW PE RSON file  (#200) rep resenting  Transferri ng From Pr ovider, OR PRIEN2 – I EN into NE W PERSON f ile (#200)  represent ing Transf erring To  Provider,   ORUSER –  IEN into N EW PERSON  file (#200 ) represen ting User  Requesting  Transfer,  & ORDTTM  representi ng Date/Ti me  of Tra nsfer
  1535   Results Ar ray
  1536    Single Va lue
  1537    Array
  1538    Word Proc essing
  1539  
  1540    Global Ar ray
  1541    Global In stance
  1542  
  1543   Descriptio n
  1544   NSR2013050 4 – Provid er Role Ch ange
  1545   Returns re sults of O RDER TRANS FERS Multi ple subrec ord creati on as IEN  into ORDER  file (#10 0), Succes s Flag “1”  if Succes sful and “ 0” otherwi se, & Erro r Message  if Success  Flag is “ 0”
  1546  
  1547   Network De tailed Des ign 
  1548   One of the  design co nstraints  for Provid er Utiliti es is to u tilize the  existing  network in frastructu re. Theref ore no pro curement i s expected .
  1549   Security a nd Privacy
  1550   Security
  1551   This proje ct will co ntinue to  use the ex isting Vis tA / CPRS  security m odel.
  1552   Privacy
  1553   This proje ct will co ntinue to  use the ex isting Vis tA / CPRS  privacy mo del.  
  1554  
  1555   Service Or iented Arc hitecture  / ESS Deta iled Desig
  1556   CPRS is a  legacy GUI  applicati on that pr ovides a G UI front-e nd to the  VistA syst em and is  primarily  used by ph ysicians,  nurses and  other cli nicians re sponsible  for provid ing patien t care. Pr ovider Uti lities is  enhancing  the existi ng CPRS sy stem.
  1557   One note:  CPRS’s arc hitecture  does not s upply new  services o r consume  services.
  1558   External S ystem Inte rface Desi gn
  1559   None.
  1560   Interface  Architectu re 
  1561   Provider U tilities u ses existi ng CPRS ar chitecture .
  1562   Interface  Detailed D esign
  1563   Provider U tilities u ses existi ng CPRS co nventions  for commun icating wi th the Vis tA server.
  1564    Human-Mac hine Inter face
  1565   Interface  Design Rul es
  1566   VA standar ds, Scienc e Advisory  & Coordin ating Comm ittee (SAC C) and IBM  Common Us er Interfa ce (CUA).
  1567   Inputs
  1568   Mouse and  keyboard,  no special  or novel  input devi ce is requ ired.
  1569   Outputs
  1570   Provider R ole Change  (GUI) pro vides a si ngle optio nal text r eport afte r order re assignment . The repo rt contain ts patient  sensitive  informati on and mus t be handl ed appropr iately by  the user.  The report  is simple  text that  can be pl aced into  the Window s clipboar d for appr opriate di sposition  by the use r.
  1571   Navigation  Hierarchy
  1572   The follow ing diagra m illustra tes the GU I navigati on flow. T he names s hown are t he window  captions –  not to be  confused  with the D elphi form  names.
  1573  
  1574   Figure 1:  GUI Naviga tion Flow
  1575   Main Form:  “Provider  Utilities : Reassign  Patient O rders”
  1576   This is th e main win dow. The u ser views  and reassi gns patien ts from cu rrent to n ew provide rs by drag ging from  left to ri ght. This  form utili zes a drag  and drop  GUI metaph or, supple mented by  command bu ttons, to  reassign p atients fr om a curre nt provide r to one o r more new  providers .
  1577  
  1578  
  1579   Figure 2:  Main Form
  1580  
  1581   Usage (opt imal progr am flow)
  1582   The main w indow enab les a 4-st ep process  to reassi gn patient s: select  current pr ovider, se lect new p rovider, m ove patien ts, review  & execute .
  1583   User opens  the appli cation and  the main  window app ears
  1584   User selec ts a curre nt provide r and orde r dates by  clicking  the button  “Choose C urrent Pro vider and  Order Date s”.
  1585   User selec ts one or  more new p roviders b y clicking  the butto n “Add New  Provider” .
  1586   User drags  patients  from the l eft list t o the righ t list, dr opping on  the desire d new prov ider. As a n alternat ive to dra g and drop , user can  utilized  the button s at scree n center t o move pat ients.
  1587   User click s the butt on “Apply  Changes” t o review a nd execute  the order  reassignm ents.
  1588   User exits  the appli cation or  repeats th is process  for addit ional prov iders.
  1589   Specific f unctionali ty
  1590   The main w indow Delp hi units a re fReassi gnOrders.p as and fRe assignOrde rs.dfm. Al l data use d in the w indow is d erived fro m the Delp hi provide r engine o bject.
  1591  
  1592   The main w indow has  this speci fic GUI fu nctionalit y:
  1593  
  1594   Selection:  The user  can select  one or mo re current  patients  at left us ing the mo use. The m ouse suppo rts Shift+ click and  Ctrl+ clic k to assis t selectin g multiple  patients.
  1595   Selection:  The user  can select  on or mor e current  patients a t left usi ng the key board. The  user can  select mul tiple pati ents by ho lding down  the Shift  key while  using the  down arro w key.
  1596   Selection:  A context  (popup) m enu will s elect or d eselect al l current  patients.
  1597   Informatio n: A list  of current  patients  is display ed at left .Informati on: A list  of new pr oviders an d assigned  patients  is display ed at righ t.
  1598   Informatio n: The mai n window a lways disp lays an up dated pati ent count  below the  current pa tients lis t.
  1599   Informatio n: The mai n window a lways disp lays (abov e the curr ent patien t list) a  caption fo r the curr ently sele cted provi der, to in clude name  and the o rder date  range.
  1600   Informatio n: The ord er count f or each cu rrent pati ent is sho wn in () f or any pat ient in th e left or  right list s.
  1601   Informatio n: The use r can “dri ll-down” i nto a pati ent’s orde rs by doub le–clickin g a patien t in the l ist at lef t. A conte xt menu al so provide s this abi lity.
  1602   Action: Th e button o r edit men u item “Ch oose Curre nt Provide r and Orde r Dates” d isplays a  modal dial og in whic h the user  can enter  the requi red data.
  1603   Action: Th e button o r edit men u item “Ad d New Prov ider” disp lays a mod al dialog  in which t he user ca n select a  new provi der.
  1604   Action: Th e button o r edit men u item “Ap ply Change s” display s a modal  dialog in  which the  user can r eview chan ges and op tionally s end them t o the serv er (or can cel).
  1605   Action: Th e button o r edit men u item “Ad d Selected ” assigns  all select ed current  patients  to the sel ected new  provider.  This actio n is enabl ed only if  a patient  is select ed at left  and a new  provider  is selecte d at right .
  1606   Action: Th e button o r edit men u item “Ad d All” ass igns all p atients at  left to t he selecte d new prov ider at ri ght. This  action is  enabled on ly if a ne w provider  is select ed at righ t.
  1607   Action: Th e button o r edit men u item “Au to Allocat e All” eve nly distri butes all  patients a t left bet ween new p roviders a t right.
  1608   Action: Th e button o r edit men u item “Un do Selecte d” will mo ve all sel ected new  patients a t right ba ck to the  current pa tient list  at left.
  1609   Action: :T he button  or edit me nu item “U ndo All” w ill move a ll new pat ients at r ight to th e current  patient li st at left .
  1610   Behavior:  Inappropri ate action s (buttons , menu ite ms) are di sabled whe n appropri ate.
  1611   Behavior:  Hot keys f or all act ions are a utomatical ly assigne d. The use r can view  hot keys  by pressin g the “Alt ” key.
  1612   Behavior:  If a patie nt is sele cted at ri ght, the p rogram wil l consider  the new p rovider pa rent to be  selected  when enabl ing/disabl ing action s.
  1613   Modal Form : “Select  Current Pr ovider” 
  1614   In this mo dal form,  the user s elects a c urrent pro vider, and  also acce pts or mod ifies the  default or der start  date and s top date.  The date r ange will  be used to  extract o rders from  the Vista  database  for the se lected cur rent provi der. The d ates are i nclusive,  meaning an y order en tered on o r after th e start da te and bef ore or on  the end da te will be  processed .
  1615   The Delphi  units for  this form  are fSele ctProvider .pas and f SelectProv ider.dfm.  The defaul t stop dat e is “now”  as obtain ed from th e Vista se rver. Prov ider names  are taken  from the  server via  the ORWU  NEWPERS M  command.
  1616  
  1617   Figure 3:  Select Cur rent Provi der
  1618   This form  is reused  to obtain  the new pr ovider. Th e only fun ctional di fference i s that the  date edit  controls  are hidden , as they  are not re levant whe n selectin g new prov iders.
  1619   Modal Form : Qualifyi ng Orders
  1620   When the u ser double -clicks a  current pa tient, the  applicati on will di splay this  modal for m. The for m displays  a list of  orders fo r the sele cted patie nt. In thi s form, th e user can  click any  order at  left and s ee an orde r detail a t right. T his form i s informat ional only  – there i s no other  functiona lity.
  1621   The Delphi  units for  this wind ow are fPa tientOrder s.pas and  fPatientOr ders.dfm.  Data for t he right p ortion of  this windo w is taken  from the  Vista M co mmand ORQO R DETAIL.  The list o f orders a t left is  obtained f rom the De lphi Provi derEngine  object.
  1622  
  1623   Figure 4:  Qualifying  Orders fo r Patient
  1624   Modal Form : Reassign  Orders (R eview and  Execute)
  1625   When the u ser clicks  the butto n “Apply C hanges” in  the main  form, this  modal for m appears.  This enfo rces a “tw o click” d esign patt ern that g ives the u ser the op portunity  to review  the propos ed changes  and cance l if desir ed. Also,  the user i s required  to modify  or accept  the defau lt executi on time, w hich is “n ow” as obt ained from  the Vista  server. A  future ti me can be  entered –  this is us eful when  a provider ’s role ch ange date  is known i n advance,  and the o rder reass ignment is  prepared  before tha t date. No t that a f ull date/t ime value  is require d.
  1626   The Delphi  units for  this wind ow are fAp plyChanges .pas and f ApplyChang es.dfm. Al l data for  this wind ow is obta ined from  the Provid erEngine D elphi obje ct.
  1627  
  1628  
  1629   Figure 5:  Reassign O rders
  1630  
  1631    Attachmen t A – Appr oval Signa tures
  1632   This secti on is used  to docume nt the app roval of t he System  Design Doc ument. The  review sh ould be co nducted fa ce to face  where sig natures ca n be obtai ned ‘live’  during th e review.  If unable  to conduct  a face-to -face meet ing then i t should b e held via  LiveMeeti ng and con currence c aptured du ring the m eeting. Th e Scribe s hould add  /es/name b y each pos ition cite d. Example  provided  below.
  1633   The Busine ss Sponsor  and Proje ct Manager  are requi red to sig n.
  1634  
  1635   __________ __________ __________ __________ __________ __________ __________ ________
  1636   Signed:Dat e: 
  1637   < Business  Sponsor >
  1638  
  1639   __________ __________ __________ __________ __________ __________ __________ ________
  1640   Signed:Dat e: 
  1641   < Project  Manager >
  1642  
  1643  
  1644   Additional  Informati on 
  1645   Attach any  addition  informatio n that sup plements t he design  specificat ion.
  1646   Identifica tion of Te chnology a nd Standar ds
  1647   Identify t he system  and softwa re which a pply to th e SDD, inc luding: id entificati on number( s), title( s), abbrev iation(s),  version n umber(s),  and releas e number(s ). Identif y all stan dards (e.g ., America n National  Standards  Institute  [ANSI], I nternation al Organiz ation for  Standardiz ation [ISO ], Institu te of Elec trical and  Electroni cs Enginee rs [IEEE],  etc.).
  1648   Constraini ng Policie s, Directi ves and Pr ocedures
  1649   Identify a ny constra ints or re quirements  placed on  this docu ment by po licies, di rectives,  or procedu res.
  1650   Requiremen ts Traceab ility Matr ix
  1651   Include an  RTM that  traces mod ules and d ata struct ures to th e software  requireme nts. A ref erence to  the locati on of the  RTM is als o acceptab le.
  1652   Packaging  and Instal lation
  1653   Outline an y special  considerat ions for s oftware pa ckaging an d installa tion.
  1654   Design Met rics
  1655   Describe a ll metrics  to be use d during t he design  activity.
  1656  
  1657  
  1658   Template R evision Hi story
  1659   Date
  1660   Version
  1661   Descriptio n
  1662   Author
  1663   June 2015
  1664   2.10
  1665   Changed He ading 1 de fault sett ing to eli minate pag e break be fore
  1666   Process Ma nagement
  1667   May 2015
  1668   2.9
  1669   Edited for  Section 5 08 conform ance and r emediated  with Commo n Look Off ice tool
  1670   Process Ma nagement
  1671   February 2 015
  1672   2.8
  1673   Incorporat es revisio ns from PM AS Reform  Lockdown;  namely rem oving requ irements f or informa tion that  can be obt ained from  other PMA S authorit ative sour ces.
  1674   Andrew Sla wter, Offi ce of Tech nology Str ategies
  1675   September  2014
  1676   2.7
  1677   Adds Enter prise Shar ed Service s terms an d requires  AERB Comp liance Cer tificate a ttachment.
  1678   Process Ma nagement
  1679   August 201 4
  1680   2.6
  1681   Signature  block upda te authori zed by AER B  CR_0189 34
  1682   Process Ma nagement
  1683   March 2014
  1684   2.5
  1685   Section 50 8 repairs  to new ver sion appro ved by AER B Chair ap proved 
  1686   Process Ma nagement
  1687   August 201 3
  1688   2.3
  1689   Replaced t he Service  Architect ure sub-se ction with  new sub-s ections fo r consumed  and provi ded servic es. Also a pplied mis cellaneous  feedback  from VA te am. 
  1690   ASD Enterp rise Share d Services  (ESS) Wor k Group
  1691   June 2013
  1692   1.3
  1693   Upgraded t o MS Offic e 2007-201 0 format 
  1694   Process Ma nagement
  1695   June 2013
  1696   1.2
  1697   Address in consistenc ies in Sec tion 3, Co nceptual D esign, Cor rect headi ngs 
  1698   Process Ma nagement
  1699   March 2013
  1700   1.1
  1701   Formatted  to documen tation sta ndards and  edited fo r Section  508 confor mance
  1702   Process Ma nagement
  1703   January 20 13
  1704   1.0
  1705   Initial Do cument
  1706   PMAS Busin ess Office
  1707  
  1708  
  1709   See TOGAF®  9.1, Part  III: ADM  Guidelines  & Techniq ues, Gap A nalysis on  TOGAF web site at ht tp://pubs. opengroup. org/archit ecture/tog af9-doc/ar ch/chap27. html