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

DG53683P.m

Go to the documentation of this file.
  1. DG53683P ;ALB/DHH - Add NURSING HOME TREATING SPECIALTIES ; 11/01/05
  1. ;;5.3;Registration;**683**;Nov 1, 2005
  1. ;base program: DG53176P
  1. ;
  1. EN ;Add Treating Specialties to the SPECIALITY file (#42.4)
  1. N DGI,DGERR,DGSPEC,DGIFN,DGQUES
  1. S DGIFN=0
  1. F DGI=1:1 S DGSPEC=$P($T(TRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
  1. .D TSPEC
  1. .S DGQUES=$P(DGSPEC,U,9)
  1. .D FAC
  1. .Q
  1. D EDIT
  1. D INACT80,INACT
  1. Q
  1. TSPEC ;Add treating specialty to SPECIALTY File (#42.4)
  1. D BMES^XPDUTL(">>>"_$P(DGSPEC,U,2)_">>>")
  1. N DA,DGFILE,DGMULT,DIC,DIE,DGDA1,DINUM,DLAYGO,DR,X,Y
  1. S DGERR=0
  1. S DIC="^DIC(42.4,"
  1. S DIC(0)="LX"
  1. S DINUM=$P(DGSPEC,U)
  1. S X=$P(DGSPEC,U,2)
  1. S DLAYGO=42.4
  1. D ^DIC
  1. S (DGIFN,DGDA1)=Y
  1. I +DGIFN=-1 D Q
  1. .D MES^XPDUTL(" Entry not added to SPECIALTY File (#42.4). No further updating will occur.")
  1. .D MES^XPDUTL(" Please contact Customer Service for assistance.")
  1. .Q
  1. I $P(DGIFN,U,3)'=1&(+DGIFN'=$P(DGSPEC,U)) D Q
  1. .D MES^XPDUTL(" Entry exists in SPECIALTY File (#42.4), but with a different PTF Code #.")
  1. .D MES^XPDUTL(" No further updating will occur. Please review entry.")
  1. .S DGERR=1
  1. .Q
  1. D MES^XPDUTL(" Entry "_$S($P(DGIFN,U,3)=1:"added to",1:"exists in")_" SPECIALTY File (#42.4).")
  1. D MES^XPDUTL(" Updating SPECIALTY File fields.")
  1. S DIE=DIC
  1. S DR="1///"_$P(DGSPEC,U,3)_";3///"_$P(DGSPEC,U,4)_";4///"_$P(DGSPEC,U,5)_";5///"_$P(DGSPEC,U,6)_";6///"_$P(DGSPEC,U,7)
  1. S DA=+DGIFN
  1. D ^DIE
  1. S DGFILE=42.4
  1. S DGMULT=10
  1. S DIC="^DIC(42.4,"_+DGIFN_",""E"","
  1. D MULT
  1. Q
  1. FAC ;Add treating specialty to Facility Treating Specialty file (#45.7)
  1. N DA,DGFILE,DGMULT,DIC,DIE,DLAYGO,DR,X,Y
  1. S DIC="^DIC(45.7,"
  1. S DIC(0)="LXZ"
  1. S DLAYGO=45.7
  1. S X=$P(DGSPEC,U,2)
  1. D ^DIC
  1. S DGDA1=Y
  1. I +DGDA1=-1 D BMES^XPDUTL(" Entry not added to FACILITY TREATING SPECIALTY File(#45.7).") Q
  1. I $P(DGDA1,U,3)'=1&($P(Y(0),U,2)'=$P(DGSPEC,U)) D Q
  1. .D BMES^XPDUTL(" Entry exists in FACILITY TREATING SPECIALTY File (#45.7), but with")
  1. .D MES^XPDUTL(" a different PTF Code #. No further updating will occur.")
  1. .D MES^XPDUTL(" Please review entry.")
  1. .Q
  1. D BMES^XPDUTL(" Entry "_$S($P(DGDA1,U,3)=1:"added to",1:"exists in")_" FACILITY TREATING SPECIALTY File (#45.7).")
  1. D MES^XPDUTL(" Updating SPECIALTY field...")
  1. S DIE=DIC
  1. S DA=+DGDA1
  1. S DR="1////"_$P(DGSPEC,U)
  1. D ^DIE
  1. S DGFILE=45.7
  1. S DGMULT=100
  1. S DIC="^DIC(45.7,"_+DGDA1_",""E"","
  1. D MULT
  1. Q
  1. MULT ;Add Effective Date
  1. N DA,DIE,DR
  1. S DA(1)=+DGDA1
  1. S DIC(0)="LX"
  1. S DIC("P")=$P(^DD(DGFILE,DGMULT,0),"^",2)
  1. S X=3060701
  1. D ^DIC
  1. S DA=+Y
  1. I +Y=-1 D MES^XPDUTL(" Effective date not added.") Q
  1. D MES^XPDUTL(" Effective date added.")
  1. S DIE=DIC
  1. S DR=".02///Y"
  1. D ^DIE
  1. Q
  1. INACT80 ;inactivate code 80
  1. N DA,DIE,DR,X
  1. S DIC="^DIC(42.4,80,""E"","
  1. S DA(1)=80
  1. S DIC(0)="LX"
  1. S DIC("P")=$P(^DD(42.4,10,0),"^",2)
  1. S X=3060802
  1. D ^DIC
  1. S DA=+Y
  1. D BMES^XPDUTL(" ")
  1. D BMES^XPDUTL(" ")
  1. D BMES^XPDUTL(" ")
  1. I +Y=-1 D BMES^XPDUTL(">>>Inactive date not added to 80-NHCU in the Specialty file.") Q
  1. D BMES^XPDUTL(">>>Inactive date added to 80-NHCU in the Specialty file.<<<")
  1. S DIE=DIC
  1. S DR=".02///N"
  1. D ^DIE
  1. ;
  1. ; -- check for NHCU 80 in the Facility Treating Specialty File (45.7
  1. ; add inactivation date of 8/2/2006
  1. ;
  1. D BMES^XPDUTL(" ")
  1. D MES^XPDUTL(" FACILITY TREATING SPECIALTY FILE being checked to see if any entries are")
  1. D MES^XPDUTL(" pointing to 80-NHCU. If so, they will be inactivated.>>>")
  1. N DAA F DAA=0:0 S DAA=$O(^DIC(45.7,"ASPEC",80,DAA)) Q:'DAA D
  1. . N DIE,DR,TS,X S TS=""
  1. .S TS=$P($G(^DIC(45.7,DAA,0)),"^")
  1. .S DIC="^DIC(45.7,"_DAA_",""E"","
  1. .S DA(1)=DAA
  1. .S DIC(0)="LX"
  1. .S X=3060802
  1. .D ^DIC
  1. .S DA=+Y
  1. .I +Y=-1 D BMES^XPDUTL(" Inactive date not added to "_TS_" in the Facility Treating Specialty file.") Q
  1. . D BMES^XPDUTL(" Inactive date added to "_TS_" in the Facility Treating Specialty file.")
  1. .S DIE=DIC
  1. .S DR=".02///N"
  1. .D ^DIE
  1. Q
  1. INACT ;inactivate mental health codes
  1. N DA,DIE,DR,X,MHCD
  1. F MHCD=70,71,76,77,75,90,84 D
  1. . S DIC="^DIC(42.4,"_MHCD_",""E"","
  1. . S DA(1)=MHCD
  1. . S DIC(0)="LX"
  1. . S DIC("P")=$P(^DD(42.4,10,0),"^",2)
  1. . S X=3060701
  1. . D ^DIC
  1. . S DA=+Y
  1. . I +Y=-1 D BMES^XPDUTL(">>>Inactive date not added to MH code "_MHCD_" in the Specialty file.") Q
  1. . D BMES^XPDUTL(">>>Inactive date added to MH code "_MHCD_" in the Specialty file.<<<")
  1. . S DIE=DIC
  1. . S DR=".02///N"
  1. . D ^DIE
  1. . ;
  1. . ;check for MH CODES in the Facility Treating Specialty File (45.7
  1. . ;add inactivation date of 7/1/2006
  1. . ;
  1. . D BMES^XPDUTL(" ")
  1. . D MES^XPDUTL(" FACILITY TREATING SPECIALTY FILE being checked to see if any entries are")
  1. . D MES^XPDUTL(" pointing to "_MHCD_". If so, they will be inactivated.>>>")
  1. .N DAA F DAA=0:0 S DAA=$O(^DIC(45.7,"ASPEC",MHCD,DAA)) Q:'DAA D
  1. .. N DIE,DR,TS,X S TS=""
  1. ..S TS=$P($G(^DIC(45.7,DAA,0)),"^")
  1. ..S DIC="^DIC(45.7,"_DAA_",""E"","
  1. ..S DA(1)=DAA
  1. ..S DIC(0)="LX"
  1. ..S X=3060701
  1. ..D ^DIC
  1. ..S DA=+Y
  1. ..I +Y=-1 D BMES^XPDUTL(" Inactive date not added to "_TS_"in the Facility Treating Specialty file.") Q
  1. ..D BMES^XPDUTL(" Inactive date added to "_TS_" in the Facility Treating Specialty file.<<<")
  1. ..S DIE=DIC
  1. ..S DR=".02///N"
  1. ..D ^DIE
  1. Q
  1. EDIT ;Edit treating specialties
  1. ;
  1. N DS,DIE,DR,DGI
  1. S DIE="^DIC(42.4,"
  1. S DIC(0)="LX"
  1. F DGI=1:1 S DGSPEC=$P($T(ETRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
  1. . S DGERR=0
  1. . S DA=$P(DGSPEC,U)
  1. . S DR=".01///"_$P(DGSPEC,U,2)_";1///"_$P(DGSPEC,U,3)_";3///"_$P(DGSPEC,U,4)_";4///"_$P(DGSPEC,U,5)_";5///"_$P(DGSPEC,U,6)_";6///"_$P(DGSPEC,U,7)
  1. . D ^DIE
  1. . D BMES^XPDUTL(" ")
  1. . D BMES^XPDUTL(" ")
  1. . D BMES^XPDUTL(">>>"_$P(DGSPEC,U)_" code updated to "_$P(DGSPEC,U,2)_" in the Specialty file.>>>")
  1. N DS,DIE,DR,DGI,DGII,DGSP,CNT,DGSPEC,DGSPEC1
  1. S DIE="^DIC(45.7,"
  1. S DIC(0)="LX"
  1. F DGI=1:1 S DGSPEC=$P($T(ETRSP+DGI),";;",2) Q:DGSPEC="QUIT" D
  1. . S DGERR=0
  1. . S DGSP=$P(DGSPEC,U)
  1. . S CNT=0,DGSPEC1=0 F DGII=0:0 S DGSPEC1=$O(^DIC(45.7,"ASPEC",DGSP,DGSPEC1)) Q:'DGSPEC1 S CNT=CNT+1 D
  1. .. I CNT=1 D
  1. ... I $$ACTIVE^DGACT(45.7,DGSPEC1)'=1 S CNT=0 Q
  1. ... S DA=DGSPEC1,DR=".01///"_$P(DGSPEC,U,2)_";99///@"
  1. ... D BMES^XPDUTL(" "_$P(^DIC(45.7,DGSPEC1,0),U)_" name has been changed to "_$P(DGSPEC,U,2)_" in the Facility Treating Specialty file.")
  1. ... D ^DIE
  1. .. E D
  1. ... S TS=""
  1. ... S TS=$P($G(^DIC(45.7,DGSPEC1,0)),"^")
  1. ... D BMES^XPDUTL(" Please review Facility Treating Specialty "_TS_". The entry name may need changing or entry may need inactivating since more than one entry points to "_$P(DGSPEC,U,2)_" in the Specialty file.<<<")
  1. Q
  1. TRSP ;PTF code^Speciality^Print Name^Service^Ask Psych^Billing Bedsection^CDR^^Ques#
  1. ;;64^NH SHORT STAY REHABILITATION^NH SS REHAB^NH^N^NURSING HOME CARE^1430^^
  1. ;;66^NH SHORT STAY RESTORATIVE^NH SS RESTOR^NH^N^NURSING HOME CARE^1430^^
  1. ;;67^NH SHORT STAY MAINTENANCE^NH SS MAINT^NH^N^NURSING HOME CARE^1430^^
  1. ;;68^NH SHORT STAY PSYCHIATRIC CARE^NH SS PSYCH^NH^N^NURSING HOME CARE^1430^^
  1. ;;69^NH SHORT STAY DEMENTIA CARE^NH SS DEMENTIA^NH^N^NURSING HOME CARE^1430^^
  1. ;;42^NH LONG STAY DEMENTIA CARE^NH LS DEMENTIA^NH^N^NURSING HOME CARE^1410^^
  1. ;;43^NH LONG STAY SKILLED NURSING^NH LS SKILL NUR^NH^N^NURSING HOME CARE^1410^^
  1. ;;44^NH LONG STAY MAINTENANCE CARE^NH LS MAINT^NH^N^NURSING HOME CARE^1410^^
  1. ;;45^NH LONG STAY PSYCHIATRIC CARE^NH LS PSYCH^NH^N^NURSING HOME CARE^1410^^
  1. ;;46^NH LONG STAY SPINAL CORD INJ^NH LS SPINAL^NH^N^NURSING HOME CARE^1410^^
  1. ;;47^NH RESPITE CARE (NHCU)^NH RC-NHCU^NH^N^^1430^^
  1. ;;QUIT
  1. ;
  1. ETRSP ;;PTF code^Speciality^Print Name^Service^Ask Psych^Billing Bedsection^CDR
  1. ;;83^RESPITE CARE (MEDICINE)^RC-MEDICINE^RESPITE CARE^N^^1110^^
  1. ;;95^NH SHORT STAY SKILLED NURSING^NH SS SKILL^NH^N^NURSING HOME CARE^1430^^
  1. ;;96^NH HOSPICE^NH HOSPICE^NH^N^NURSING HOME CARE^1425^^
  1. ;;81^NH GEM NURSING HOME CARE^NH GEM NHC^NH^N^NURSING HOME CARE^1420^^
  1. ;;QUIT
  1. Q