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

ONCSRV01.m

Go to the documentation of this file.
  1. ONCSRV01 ;HIRMFO/RVD-SERVER ROUTINE FOR 160.16 AND REPORTS ;6/12/13
  1. ;;2.2;ONCOLOGY;**1,4**;Jul 31, 2013;Build 5
  1. ;
  1. 16016 ;process if update, delete or new entry.
  1. ;* separates the mailman message
  1. N ONC16016,ONCIEN
  1. S ONC16016=$P(XMRGONC1,"*",3),ONCIEN=$P(XMRGONC1,"*",4)
  1. I XMRGONC1["RULES" S IEN=0 G RULE ;update RULES.
  1. I (XMRGONC1["DELETE")!(XMRGONC1["UPDATE") G DIK1 ;go to delete or update an entry.
  1. S IEN=0
  1. N DA,DR,ONC01,ONC1,ONC2,ONC3,ONCSS,ONCOLD,ONCRUDA
  1. ;
  1. NUE ;new and update an entry in file #160.16
  1. ;#*^ seperate the message from the ien
  1. S ONCSS=$G(ONCSRDAT(IEN)) G:'$D(ONCSS)!(ONCSS="") EXIT
  1. S ONCOLD=$P(ONCSS,"#*^",1),ONCRUDA=$P(ONCSS,"#*^",2)
  1. I ONCOLD=0 G UP160
  1. I (ONCOLD=1),((IEN=2)!(IEN=3)) S ^ONCO(160.16,ONC16016,"FIELD",ONCIEN,1)=^ONCO(160.16,ONC16016,"FIELD",ONCIEN,1)_ONCRUDA S IEN=IEN+1 G NUE
  1. I ONCOLD=1 S ^ONCO(160.16,ONC16016,"FIELD",ONCIEN,1)=ONCRUDA
  1. I ONCOLD=2 S ^ONCO(160.16,ONC16016,"FIELD",ONCIEN,2)=ONCRUDA
  1. I ONCOLD=3 S ^ONCO(160.16,ONC16016,"FIELD",ONCIEN,3)=ONCRUDA
  1. I ONCOLD=4 S ^ONCO(160.16,ONC16016,"FIELD",ONCIEN,4)=ONCRUDA
  1. S IEN=IEN+1
  1. G NUE
  1. ;
  1. UP160 ;add/update an entry in the extract.
  1. S DIC(0)="EL"
  1. S DA(1)=ONC16016,DA=ONCIEN
  1. S ONC01=$P(ONCSS,U,2),ONC1=$P(ONCSS,U,3),ONC2=$P(ONCSS,U,4),ONC3=$P(ONCSS,U,5)
  1. S DIE="^ONCO(160.16,"_DA(1)_",""FIELD"","
  1. S DR=".01///^S X=ONC01;1///^S X=ONC1;2///^S X=ONC2;3///^S X=ONC3" D ^DIE
  1. S IEN=IEN+1
  1. G NUE
  1. ;
  1. DIK1 ;delete an entry in file #160.16
  1. N DIK,DA
  1. S DA(1)=ONC16016,DA=ONCIEN
  1. S DIK="^ONCO(160.16,"_DA(1)_",""FIELD""," D ^DIK
  1. G NUE
  1. ;
  1. RULE ;update RULES node
  1. ;#*^ seperate the message from ien
  1. ;K ^ONCO(150.16,ONC15016,"RULES") ;clean-up before updating, remove comment when release
  1. N ONCSS,ONCOLD,ONCRUDA
  1. S ONCSS=$G(ONCSRDAT(IEN)),ONCOLD=$P(ONCSS,"#*^",1),ONCRUDA=$P(ONCSS,"#*^",2)
  1. S ^ONCO(160.16,ONC16016,"RULES",ONCOLD)=ONCRUDA
  1. RULES ;
  1. S IEN=IEN+1
  1. S ONCSS=$G(ONCSRDAT(IEN)) G:'$D(ONCSS)!(ONCSS="") EXIT
  1. S ONCOLD=$P(ONCSS,"#*^",1),ONCRUDA=$P(ONCSS,"#*^",2)
  1. I $D(^ONCO(160.16,ONC16016,"RULES",ONCOLD,0)) S ^ONCO(160.16,ONC16016,"RULES",ONCOLD,0)=^ONCO(160.16,ONC16016,"RULES",ONCOLD,0)_ONCRUDA G RULES
  1. S ^ONCO(160.16,ONC16016,"RULES",ONCOLD,0)=ONCRUDA
  1. G RULES
  1. ;
  1. 1655 ;update or add a new DD in Oncology Primary file, for future use.
  1. Q
  1. EXIT ;
  1. Q