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

ENXSIPS.m

Go to the documentation of this file.
  1. ENXSIPS ;WIRMFO/DH-Patch Post-init (EN*7*37) ;10.9.96
  1. ;;7.0;ENGINEERING;**37**;Aug 17, 1993
  1. AOCHK ;Repeat a check first attempted in EN*7*33
  1. ;Check for incorrect AO CODES (CMR 69x) - Ambulatory Care
  1. N AMBC,ENX,ENI,X,ENDA,COUNT,DIFROM
  1. K ^TMP($J)
  1. S (COUNT("TOT"),COUNT("FAP"),COUNT("EXP"))=0
  1. S ENI=0 F S ENI=$O(^ENG(6914.1,ENI)) Q:ENI'>0 I $E($P(^(ENI,0),U),1,2)=69 S AMBC(ENI)=""
  1. I $D(AMBC) D
  1. . D BMES^XPDUTL("You may have some Equipment Records with an incorrect AO CODE and") D MES^XPDUTL("incorrect EQUITY ACCOUNT. Checking further...")
  1. . S ENI=0 F S ENI=$O(AMBC(ENI)) Q:ENI'>0 D
  1. .. S ENDA=0 F S ENDA=$O(^ENG(6914,"AD",ENI,ENDA)) Q:ENDA'>0 D
  1. ... I $$GET1^DIQ(6914,ENDA,63,"I")=4 D
  1. ....S ENX=$$CHKFA^ENFAUTL(ENDA),$P(^ENG(6914,ENDA,9),U,8)=3 S:$P(^(9),U,9)'=3402 $P(^(9),U,9)=3299
  1. .... S COUNT("TOT")=COUNT("TOT")+1
  1. .... S:$P(ENX,U) ^TMP($J,"CMR69",ENDA)=$$GET1^DIQ(6915.2,$P(ENX,U,4),24)_U_$E($$GET1^DIQ(6914,ENDA,3),1,30)_U_$$GET1^DIQ(6914,ENDA,12),COUNT("FAP")=COUNT("FAP")+1
  1. .... I '$P(ENX,U) S COUNT("EXP")=COUNT("EXP")+1
  1. . I COUNT("TOT")=0 D MES^XPDUTL(" ... no problems found.") Q
  1. . ;Report the problems
  1. . D BMES^XPDUTL(COUNT("TOT")_" defective records were found and corrected in AEMS-MERS.") D MES^XPDUTL(COUNT("FAP")_" of these have been reported to the Fixed Assets Package (FAP).")
  1. . D MES^XPDUTL(COUNT("EXP")_" are not in FAP and are presumably expensed.")
  1. . D BMES^XPDUTL("The FAP database will be corrected centrally and all AEMS-MERS records have") D MES^XPDUTL("just been fixed. You will now see a list of the defective records that were")
  1. . D MES^XPDUTL("sent to FAP from Ambulatory Care CMRs, but no corrective action is required") D MES^XPDUTL("of your site.")
  1. . D BMES^XPDUTL(" FIXED ASSET NUMBER MANUFACTURER EQUIPMENT NAME TOTAL ASSET VALUE")
  1. . D MES^XPDUTL(" ================== =========================== =================")
  1. . S ENDA=0 F S ENDA=$O(^TMP($J,"CMR69",ENDA)) Q:ENDA'>0 K X D
  1. .. S X(1)=$P(^TMP($J,"CMR69",ENDA),U),X(2)=$P(^(ENDA),U,2),X(3)=$P(^(ENDA),U,3)
  1. .. F Q:$L(X(1))>14 S X(1)=X(1)_" "
  1. .. F Q:$L(X(2))>29 S X(2)=X(2)_" "
  1. .. F Q:$L(X(3))>9 S X(3)=" "_X(3)
  1. .. D MES^XPDUTL(" "_X(1)_" "_X(2)_" "_X(3))
  1. MSG1 ;Mail message to developers
  1. ;Data may be made available to FMS
  1. S (ENX,X)=0 F S X=$O(^TMP($J,"CMR69",X)) Q:X'>0 S ENX=ENX+$P(^(X),U,3)
  1. I COUNT("FAP")=0 S ^TMP($J,"CMR69",1)="No FAs transmitted.",^TMP($J,"CMR69",2)=^ENG(6914,0) D PS
  1. E S ENI=$O(^TMP($J,"CMR69",9999999999),-1),^TMP($J,"CMR69",ENI+1)="FAP Records from CMRs 69x Total $"_ENX,^TMP($J,"CMR69",ENI+2)=^ENG(6914,0) D PS
  1. S XMY("HEIBY,D@DOMAIN.EXT")="",XMY(DUZ)="",XMDUZ=.5
  1. S XMSUB="FAP Records in EIL 69",XMTEXT="^TMP($J,""CMR69"","
  1. D ^XMD
  1. K XMY,XMDUZ,XMSUB,XMTEXT
  1. ;
  1. PAT33 ;Clean up EQUITY ACCOUNTS set by 8.16.96 version of ENLIB3
  1. ;Start with EXPENSED NX
  1. D BMES^XPDUTL("Looping thru Equipment File to correct AO CODE vs EQUITY mismatches.")
  1. D MES^XPDUTL("This will take a few minutes.")
  1. N DA,FADATE,AO,EQUITY,STATION,XMCHAN
  1. S DA("EQ")=0,XMCHAN=1
  1. ;Clean errors in entries other than CAPITALIZED NX
  1. F S DA("EQ")=$O(^ENG(6914,DA("EQ"))) Q:'DA("EQ") D:'(DA("EQ")#500) MES^XPDUTL("ENTRY # "_DA("EQ")) S EQUITY=$P($G(^ENG(6914,DA("EQ"),9)),U,9) I EQUITY]"",EQUITY'=3402 D
  1. . I $P($G(^ENG(6914,DA("EQ"),8)),U,2),$P($$CHKFA^ENFAUTL(DA("EQ")),U) Q ;Will check these entries in FA segment
  1. . S AO=$P(^ENG(6914,DA("EQ"),9),U,8) Q:'AO ;Wasn't set via ENLIB3
  1. . I AO=3,EQUITY=3210 S $P(^ENG(6914,DA("EQ"),9),U,9)=3299
  1. . I "4^5"[AO,EQUITY=3299 S $P(^ENG(6914,DA("EQ"),9),U,9)=3210
  1. FA ;Now we'll look at the FAP stuff
  1. S FADATE=2960801 ;Earlest possible date for install of EN*7*33
  1. K ^TMP($J) D BMES^XPDUTL("Checking for FAP Equipment Records in need of correction. Corrections (if")
  1. D MES^XPDUTL("needed) will be made centrally. Site action is not required.")
  1. F S FADATE=$O(^ENG(6915.2,"D",FADATE)) Q:'FADATE D
  1. . S DA("FA")=$O(^ENG(6915.2,"D",FADATE,0)) Q:'DA("FA")
  1. . S DA("EQ")=$P(^ENG(6915.2,DA("FA"),0),U) Q:'DA("EQ")
  1. . Q:'$D(^ENG(6914,DA("EQ"),9))
  1. . S PO("E")=$P($G(^ENG(6914,DA("EQ"),2)),U,2) Q:PO("E")']""
  1. . S PO("I")=$$FIND1^DIC(442,"","X",PO("E"),"C^B") Q:'PO("I")
  1. . S STATION=$P($$GET1^DIQ(442,PO("I"),.01),"-")
  1. . I $L(STATION)<5 S STATION=$E(STATION_" ",1,5)
  1. . I $P(^ENG(6914,DA("EQ"),9),U,8)=3,$P(^(9),U,9)=3210 D
  1. .. S ^TMP($J,1,DA("EQ"))="FAP Equip Record '"_STATION_DA("EQ")_"' should have EQUITY of 3299 (MEDICAL).",$P(^ENG(6914,DA("EQ"),9),U,9)=3299
  1. .. D MES^XPDUTL(^TMP($J,1,DA("EQ")))
  1. . I ($E(STATION)=3!("4^5"[$P(^ENG(6914,DA("EQ"),9),U,8))),$P(^(9),U,9)=3299 D
  1. .. S ^TMP($J,1,DA("EQ"))="FAP Equip Record '"_STATION_DA("EQ")_"' should have EQUITY of 3210 (NON-MEDICAL).",$P(^ENG(6914,DA("EQ"),9),U,9)=3210
  1. .. D MES^XPDUTL(^TMP($J,1,DA("EQ")))
  1. MSG2 ;Feedback to developers
  1. ;Information may be shared with FMS
  1. I $D(^TMP($J)) D
  1. . S ^TMP($J,1,.1)="The following Equipment Records were given an incorrect EQUITY ACCOUNT when"
  1. . S ^TMP($J,1,.2)="they were added to AEMS/MERS. The AEMS/MERS Equipment Record has been"
  1. . S ^TMP($J,1,.3)="corrected, and the FAP file in Austin will be corrected centrally."
  1. . S ^TMP($J,1,.4)=" "
  1. . S ^TMP($J,1,.5)="NOTE TO INSTALLER OF EN*7.0*37:"
  1. . S ^TMP($J,1,.6)=" This message is a courtesy copy only. No site action is required."
  1. . S ^TMP($J,1,.7)=" "
  1. . S XMY("HEIBY,D@DOMAIN.EXT")="",XMY(DUZ)="",XMDUZ=.5
  1. . S XMSUB="INCORRECT EQUITY (EN*7*33)",XMTEXT="^TMP($J,1,"
  1. . D ^XMD
  1. . K XMY,XMDUZ,XMSUB,XMTXT
  1. K ^TMP($J)
  1. Q ;Design EXIT
  1. ;
  1. PS ;Note to installer
  1. S ENI=$O(^TMP($J,"CMR69",9999999999),-1)
  1. S ^TMP($J,"CMR69",ENI+1)="",^(ENI+2)="NOTE TO INSTALLER OF EN*7.0*37:",^(ENI+3)="This message is a courtesy copy only. No action is required of your site."
  1. Q
  1. ;ENXSIPS