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

DVB460P.m

Go to the documentation of this file.
  1. DVB460P ;ALB/TCK POST-INSTALL FOR PATCH DVB*4*60 ; 2/21/2008
  1. ;;4.0;HINQ;**60**;03/25/92;Build 6
  1. Q
  1. ;
  1. PS ; post-install entry point
  1. ; create KIDS checkpoints with call backs
  1. N FBX
  1. F FBX="ICD" D
  1. . S Y=$$NEWCP^XPDUTL(FBX,FBX_"^DVB460P")
  1. . I 'Y D BMES^XPDUTL("ERROR Creating "_FBX_" Checkpoint.")
  1. Q
  1. ;
  1. ICD ;
  1. ; Map the ICD diagnosis code, 295.90 to disability condition 9204
  1. D BMES^XPDUTL(" Mapping diagnosis code 295.90 to Disability condition, 9204.")
  1. ;Locate the IEN of file (#80) that contains the 295.90 diagnosis code
  1. N PTR,ICD,RD
  1. S PTR="",ICD=295.90,RD=9204
  1. I '$D(^ICD9("BA")) D Q
  1. .D BMES^XPDUTL("Error mapping diagnosis code "_ICD_" to rated disability "_RD_". Cross reference is missing.")
  1. S PTR=$O(^ICD9("BA",ICD,PTR))
  1. I PTR'>0 D Q
  1. .D BMES^XPDUTL("Error. Diagnosis code "_ICD_" is missing from ICD Diagnosis file, #80. Mapping was not successful.")
  1. D MAP(PTR,RD,ICD)
  1. Q
  1. ;
  1. MAP(PTR,RD,ICD) ;
  1. N RDARY,RPTR,DD,DO,DA,DIE,DR,X,Y
  1. S (RDARY,RPTR)=""
  1. I '$D(^DIC(31,"C")) D Q
  1. .D BMES^XPDUTL("Error mapping diagnosis code "_ICD_" to rated disability "_RD_". Cross reference is missing.")
  1. F S RPTR=$O(^DIC(31,"C",RD,RPTR)) Q:RPTR="" D
  1. .Q:RPTR'>0
  1. .S RDARY(RD,RPTR)=""
  1. I '$D(RDARY) D Q
  1. .D BMES^XPDUTL(" Error. Rated Disability "_RD_" is missing from Disability Condition file, #31.")
  1. F S RPTR=$O(RDARY(RD,RPTR)) Q:RPTR="" D
  1. .Q:RPTR=""
  1. .I $D(^DIC(31,RPTR,"ICD","B",PTR)) D Q
  1. ..D BMES^XPDUTL(" Diagnosis code "_ICD_" is already mapped to Rated disability "_RD_".")
  1. .S DA(1)=RPTR
  1. .S DA=$O(^DIC(31,DA(1),"ICD","B",PTR,0))
  1. .I DA'>0 D Q:DA'>0
  1. ..S DIC="^DIC(31,"_DA(1)_",""ICD"",",DIC(0)="L",DIC("P")="31.01PA",DLAYGO=31.01
  1. ..S X=PTR
  1. ..K DD,DO D FILE^DICN
  1. ..K DIC,DLAYGO
  1. ..S DA=+Y
  1. .;
  1. .S DIE="^DIC(31,"_DA(1)_",""ICD"","
  1. .S DR=".02///0"
  1. .D ^DIE
  1. Q
  1. ;
  1. ;DVB460P