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

AGGPTTRG.m

Go to the documentation of this file.
  1. AGGPTTRG ;VNGT/HS/ALA-Patient Detail Triggers ; 27 May 2010 4:25 PM
  1. ;;1.0;PATIENT REGISTRATION GUI;;Nov 15, 2010
  1. ;
  1. ;
  1. INIT(DATA,DFN) ;EP -- AGG PERSONAL DETAIL TRIGGER
  1. ; Input
  1. ; DFN - Patient IEN
  1. ;
  1. NEW UID,II,VALUE,SOURCE,IEN,HELP,TYPE,ABLE,NOSAVE,AGGPTSSV,DOBE,SSNV
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("AGGTRPAT",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^AGGWTRIG D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. D HDR
  1. S @DATA@(II)=HDR_$C(30)
  1. ;
  1. S DOBE=$P($G(^AGFAC(DUZ(2),0)),U,13),SSNV=$P(^AUPNPAT(DFN,0),U,23)
  1. F SOURCE="AGGPTLNM","AGGPTFNM","AGGPTMNM","AGGPTSFX" S ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. I $D(^XUSEC("AGZMGR",DUZ)) D
  1. . S SOURCE="AGGPTHRN",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . I SSNV'="","XV"[$P(^AUTTSSN(SSNV,0),U) D Q
  1. .. S SOURCE="AGGPTDOB",ABLE="Y",VALUE="",TYPE="D",HELP="The NAME/SSN/DOB have been Verified by the SSA do not change the DOB unless you are certain that it is incorrect!" D UP
  1. . S SOURCE="AGGPTDOB",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. I '$D(^XUSEC("AGZMGR",DUZ)) D
  1. . S SOURCE="AGGPTHRN",ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . I SSNV'="","XV"[$P(^AUTTSSN(SSNV,0),U) D Q
  1. .. I DOBE="Y" S SOURCE="AGGPTDOB",ABLE="N",VALUE="",TYPE="D",HELP="DOB must be edited by a supervisor." D UP
  1. .. I DOBE="N" S SOURCE="AGGPTDOB",ABLE="Y",VALUE="",TYPE="D",HELP="The NAME/SSN/DOB have been Verified by the SSA do not change the DOB unless you are certain that it is incorrect!" D UP
  1. . I DOBE="Y" S SOURCE="AGGPTDOB",ABLE="N",VALUE="",TYPE="X",HELP="DOB must be edited by a supervisor.",CLEAR="",NOSAVE="N" D UP
  1. . I DOBE="N" S SOURCE="AGGPTDOB",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. ;
  1. S AGGPTSSV=$$GET1^DIQ(9000001,DFN_",",.23,"E")
  1. S AGGNOSSN=$$GET1^DIQ(9000001,DFN_",",.24,"E")
  1. S AGGPTSSN=$$GET1^DIQ(2,DFN_",",.09,"E")
  1. S SSN=$$GET1^DIQ(2,DFN_",",.09,"E")
  1. ;
  1. I AGGPTSSN'="",AGGNOSSN="" D
  1. . S SOURCE="AGGNOSSN",ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . I AGGPTSSV="P"!(AGGPTSSV="") S SOURCE="AGGPTSSN",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . I AGGPTSSV'="P",AGGPTSSV'="" S SOURCE="AGGPTSSN",ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="Y" D UP
  1. I AGGPTSSN="",AGGNOSSN'="" D
  1. . S SOURCE="AGGNOSSN",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . S SOURCE="AGGPTSSN",ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="Y" D UP
  1. I AGGPTSSN="",AGGNOSSN="" D
  1. . S SOURCE="AGGNOSSN",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. . S SOURCE="AGGPTSSN",ABLE="N",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. ;
  1. S HRN=$$HRN^AGGUL1(DFN)
  1. I $E(HRN,1,1)="T",$D(^XUSEC("AGZMGR",DUZ)) S SOURCE="AGGPTHRN",ABLE="Y",VALUE="",TYPE="X",HELP="",CLEAR="",NOSAVE="N" D UP
  1. S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. ERR ;
  1. D ^%ZTER
  1. NEW Y,ERRDTM
  1. S Y=$$NOW^XLFDT() X ^DD("DD") S ERRDTM=Y
  1. S BMXSEC="Recording that an error occurred at "_ERRDTM
  1. I $D(II),$D(DATA) S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. UP ;
  1. S II=II+1,@DATA@(II)=SOURCE_U_TYPE_U_VALUE_U_ABLE_U_NOSAVE_U_$G(CFLAG)_U_$G(CLEAR)_U_HELP_$C(30)
  1. Q
  1. ;
  1. HDR ;
  1. S HDR="T00008SOURCE^T00001CODE_TYPE^T01024PARMS^T00001ABLE_FLAG^T00001NOSAVE^T00001CLEAR_FLAG^T00100CLEAR_FIELDS^T00200HELP_TEXT"
  1. Q
  1. ;
  1. EMP(DATA,DFN,STATUS) ; EP -- AGG PAT EMPL STATUS TRIGGER
  1. NEW UID,II,VALUE,SOURCE,IEN,HELP,TYPE,ABLE,AGGEMSTS,PREVSTS,FLAG,AGGPTEPL
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("AGGTREMP",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^AGGWTRIG D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. D HDR
  1. S @DATA@(II)=HDR_$C(30)
  1. S FLAG=0
  1. S PREVSTS=$$GET1^DIQ(9000001,DFN_",",.21,"I")
  1. I $G(STATUS)'="",$G(PREVSTS)'=STATUS S FLAG=1
  1. S AGGEMSTS=STATUS
  1. S AGGPTEPL=$$GET1^DIQ(9000001,DFN_",",.19,"I") D
  1. . I 'FLAG S CLEAR="" Q
  1. . I AGGEMSTS'=3&(AGGEMSTS'=5)&(AGGEMSTS'=9)&(PREVSTS'=3)&(PREVSTS'=5)&(PREVSTS'=9) S CLEAR="" Q
  1. . S CLEAR="AGGPTEPL"
  1. I PREVSTS="" S CLEAR="AGGPTEPL"
  1. I AGGEMSTS'=3&(AGGEMSTS'=5)&(AGGEMSTS'=9) S SOURCE="AGGPTEPL",ABLE="Y",VALUE=AGGPTEPL,TYPE="T",HELP="",NOSAVE="N" D UP
  1. E S SOURCE="AGGPTEPL",ABLE="N",TYPE="T",HELP="",CLEAR="",NOSAVE="N" D
  1. . I AGGEMSTS=3 S VALUE=$O(^AUTNEMPL("B","UNEMPLOYED","")) D
  1. .. I VALUE="" S ABLE="Y" Q
  1. .. I VALUE'="" S VALUE=VALUE_$C(28)_"UNEMPLOYED"
  1. . I AGGEMSTS=5 S VALUE=$O(^AUTNEMPL("B","RETIRED","")) D
  1. .. I VALUE="" S ABLE="Y" Q
  1. .. I VALUE'="" S VALUE=VALUE_$C(28)_"RETIRED"
  1. . I AGGEMSTS=9 S VALUE=$O(^AUTNEMPL("B","UNKNOWN","")) D
  1. .. I VALUE="" S ABLE="Y" Q
  1. .. I VALUE'="" S VALUE=VALUE_$C(28)_"UNKNOWN"
  1. . D UP
  1. S II=II+1,@DATA@(II)=$C(31)
  1. Q
  1. ;
  1. SSN(DATA,SSN,NOSSN) ; EP -- AGG PAT SSN TRIGGER
  1. NEW UID,II,VALUE,SOURCE,IEN,HELP,TYPE,ABLE,AUPN,AUPIDS
  1. S UID=$S($G(ZTSK):"Z"_ZTSK,1:$J)
  1. S DATA=$NA(^TMP("AGGTRSSN",UID))
  1. K @DATA
  1. S II=0
  1. NEW $ESTACK,$ETRAP S $ETRAP="D ERR^AGGWTRIG D UNWIND^%ZTER" ; SAC 2006 2.2.3.3.2
  1. D HDR
  1. S @DATA@(II)=HDR_$C(30)
  1. ;
  1. I $G(SSN)="",$G(NOSSN)="" D
  1. . S SOURCE="AGGNOSSN",ABLE="Y",TYPE="T",HELP="",CLEAR="",NOSAVE="N",VALUE="" D UP
  1. . S SOURCE="AGGPTSSN",ABLE="Y",TYPE="X",HELP="",CLEAR="",NOSAVE="N",VALUE="" D UP
  1. I $G(SSN)'="",$G(NOSSN)="" D
  1. . S SOURCE="AGGNOSSN",ABLE="N",TYPE="T",HELP="",CLEAR="AGGNOSSN",NOSAVE="N",VALUE="" D UP
  1. I $G(SSN)="",$G(NOSSN)'="" D
  1. . S SOURCE="AGGNOSSN",ABLE="Y",TYPE="T",HELP="",CLEAR="",NOSAVE="N",VALUE="" D UP
  1. . S SOURCE="AGGPTSSN",ABLE="N",TYPE="X",HELP="",CLEAR="",NOSAVE="N",VALUE="" D UP
  1. S II=II+1,@DATA@(II)=$C(31)
  1. Q