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

BPCNOTEC.m

Go to the documentation of this file.
  1. BPCNOTEC ; IHS/OIT/MJL - FHL-6/14/96 - ADD,DELETE OR EDIT PROBLEM NOTE ;
  1. ;;1.5;BPC;;MAY 26, 2005
  1. ;
  1. NOTEDIT(RESULT,BPCFLAG,BPCPARAM) ;EP CALL FROM REMOTE PROC: BPC EDITNOTE
  1. EN ;
  1. S U="^",XWBWRAP=1 K RESULT
  1. S BPCFLAG=$G(BPCFLAG),BPCPARAM=$G(BPCPARAM)
  1. I BPCFLAG="" S RESULT(1)=-1,RESULT(2)="NO EDIT FLAG RECEIVED!" D KILL Q
  1. I BPCPARAM="" S RESULT(1)=-1,RESULT(2)="NO PARAMETERS RECEIVED!" D KILL Q
  1. I $L(BPCPARAM,";")'=8 S RESULT(1)=-1,RESULT(2)="WRONG NUMBER OF DATA ITEMS SENT ("_$L(BPCPARAM,";")_"). 8 ITEMS EXPECTED!" D KILL Q
  1. I "AED"'[BPCFLAG S RESULT(1)=-1,RESULT(2)="PROPER EDIT FLAG NOT SENT!" D KILL Q
  1. D:BPCFLAG="A" ADD D:BPCFLAG="E" EDIT D:BPCFLAG="D" DELETE D KILL
  1. Q
  1. KILL ;
  1. K BPCPRIEN,BPCLOCN,BPCNARR,BPCSTAT,BPCDENT,BPCLIEN,BPCNIEN,BPCCTR,BPCERR,BPCIENS,BPCX,BPCPLIEN,BPCNBR,BPCPRID,BPCNOTID,BPCNOTN
  1. Q
  1. ADD ;
  1. S BPCPRIEN=$P(BPCPARAM,";",1,1),BPCLOCN=$P(BPCPARAM,";",3,3),BPCNARR=$P(BPCPARAM,";",5,5),BPCSTAT=$P(BPCPARAM,";",6,6)
  1. I BPCLOCN="" S RESULT(1)=-1,RESULT(2)="NO LOCATION SENT!" Q
  1. S BPCDENT=DT,BPCLIEN=$O(^DIC(4,"B",BPCLOCN,"")),BPCNIEN=""
  1. I BPCPRIEN="" S RESULT(1)=-1,RESULT(2)="NO PROBLEM IEN SENT!" Q
  1. I '$D(^AUPNPROB(BPCPRIEN,0)) S RESULT(1)=-1,RESULT(2)="PROBLEM IEN SENT IS NOT DEFINED!" Q
  1. I BPCLIEN="" S RESULT(1)=-1,RESULT(2)="UNKNOWN LOCATION SENT!" Q
  1. I $D(^AUPNPROB(BPCPRIEN,11,"B",BPCLIEN)) S BPCNIEN=$O(^AUPNPROB(BPCPRIEN,11,"B",BPCLIEN,""))
  1. E D GETNIEN
  1. I BPCNIEN="" S RESULT(1)=-1,RESULT(2)="UNABLE TO GET NOTE IEN!" Q
  1. S BPCCTR=$P($G(^AUPNPROB(BPCPRIEN,11,BPCNIEN,11,0)),U,3)+1
  1. S BPCERR=0 D ADDNOTE
  1. I BPCERR S RESULT(1)=-1,RESULT(2)="UNABLE TO ADD NOTE!" Q
  1. D SETRES
  1. Q
  1. ADDNOTE ;
  1. L +^AUPNPROB(BPCPRIEN,0):10 I '$T Q
  1. K BPCFDA,BPCEMSG S BPCFDR="BPCFDA(1)"
  1. S BPCFDA(1,"9000011.11","?1,"_BPCPRIEN_",",.01)=BPCLIEN
  1. S BPCIENS="+2,?1,"_BPCPRIEN_","
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.01)=BPCCTR
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.03)=BPCNARR
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.04)=BPCSTAT
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.05)=BPCDENT
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.06)=DUZ
  1. D UPDATE^DIE("",BPCFDR,"","BPCEMSG")
  1. I $D(BPCEMSG("DIERR")) S BPCERR=1
  1. L -^AUPNPROB(BPCPRIEN,0)
  1. Q
  1. EDNOTE ;
  1. L +^AUPNPROB(BPCPRIEN,0):10 I '$T Q
  1. K BPCFDA,BPCEMSG S BPCFDR="BPCFDA(1)"
  1. S BPCIENS=BPCNOTN_","_BPCNIEN_","_BPCPRIEN_","
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.01)=BPCNOTN
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.03)=BPCNARR
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.04)=BPCSTAT
  1. ;S BPCFDA(1,"9000011.1111",BPCIENS,.05)=BPCDENT
  1. S BPCFDA(1,"9000011.1111",BPCIENS,.06)=DUZ
  1. D FILE^DIE("",BPCFDR,"BPCEMSG")
  1. I $D(BPCEMSG("DIERR")) S BPCERR=1
  1. S BPCCTR=BPCNOTN
  1. L -^AUPNPROB(BPCPRIEN,0)
  1. Q
  1. SETRES ;
  1. S BPCX=^AUPNPROB(BPCPRIEN,0),BPCPLIEN=$P(BPCX,U,6),BPCNBR=$P(BPCX,U,7)
  1. S BPCPRID=$P(^AUTTLOC(BPCPLIEN,0),U,7),BPCPRID=$S(BPCPRID="":"UK",1:BPCPRID)_BPCNBR
  1. S BPCNOTID=$P(^AUTTLOC(BPCLIEN,0),U,7)_BPCCTR
  1. S BPCX=BPCNIEN_U_BPCNOTID_U_BPCLIEN_U_BPCCTR_U_U_BPCNARR_U_BPCSTAT_U_BPCDENT_U_DUZ
  1. S RESULT(1)=1,RESULT(2)=BPCX
  1. Q
  1. GETNIEN ;GET NOTE IEN
  1. L +^AUPNPROB(BPCPRIEN,0):10 I '$T Q
  1. K BPCFDA,BPCEMSG S BPCFDR="BPCFDA(1)"
  1. S BPCIENS="+1,"_BPCPRIEN_","
  1. S BPCFDA(1,"9000011.11",BPCIENS,.01)=BPCLIEN
  1. D UPDATE^DIE("",BPCFDR,"","BPCEMSG")
  1. I '$D(BPCEMSG("DIERR")) D GNIEN1
  1. L -^AUPNPROB(BPCPRIEN,0)
  1. Q
  1. GNIEN1 ;
  1. S BPCNIEN=$P(^AUPNPROB(BPCPRIEN,11,0),U,3)
  1. Q
  1. EDIT ;
  1. S BPCPRIEN=$P(BPCPARAM,";",1),BPCNIEN=$P(BPCPARAM,";",2),BPCNOTN=$P(BPCPARAM,";",4),BPCNARR=$P(BPCPARAM,";",5),BPCSTAT=$P(BPCPARAM,";",6)
  1. S BPCLOCN=$P(BPCPARAM,";",3)
  1. S BPCLIEN=$S(BPCLOCN'="":$O(^DIC(4,"B",BPCLOCN,"")),1:DUZ(2))
  1. I BPCPRIEN="" S RESULT(1)=-1,RESULT(2)="NO PROBLEM IEN SENT!" Q
  1. I BPCNIEN="" S RESULT(1)=-1,RESULT(2)="NO NOTE IEN SENT!" Q
  1. I BPCNOTN="" S RESULT(1)=-1,RESULT(2)="NO NOTE NUMBER SENT!" Q
  1. I '$D(^AUPNPROB(BPCPRIEN,11,BPCNIEN,11,BPCNOTN,0)) S RESULT(1)=-1,RESULT(2)="NOTE DOES NOT EXIST!" Q
  1. S BPCDENT=$P(^AUPNPROB(BPCPRIEN,11,BPCNIEN,11,BPCNOTN,0),U,5)
  1. S BPCERR=0 D EDNOTE
  1. I BPCERR S RESULT(1)=-1,RESULT(2)="NOTE UNABLE TO BE EDITED!" Q
  1. D SETRES
  1. Q
  1. DELETE ;
  1. S BPCPRIEN=$P(BPCPARAM,";",1,1),BPCNIEN=$P(BPCPARAM,";",2,2),BPCNOTN=$P(BPCPARAM,";",4,4),BPCNOTID=$P(BPCPARAM,";",8,8)
  1. I BPCPRIEN="" S RESULT(1)=-1,RESULT(2)="NO PROBLEM IEN SENT!" Q
  1. I BPCNIEN="" S RESULT(1)=-1,RESULT(2)="NO NOTE IEN SENT!" Q
  1. I BPCNOTN="" S RESULT(1)=-1,RESULT(2)="NO NOTE NUMBER SENT!" Q
  1. I BPCNOTID="" S RESULT(1)=-1,RESULT(2)="NO NOTE ID SENT!" Q
  1. S DA=BPCNOTN,DA(1)=BPCNIEN,DA(2)=BPCPRIEN,DIK="^AUPNPROB("_DA(2)_",11,"_DA(1)_",11,"
  1. D ^DIK S RESULT(1)=1,RESULT(2)="NOTE "_BPCNOTID_" DELETED!"
  1. Q