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

ABMDSPLT.m

Go to the documentation of this file.
  1. ABMDSPLT ; IHS/ASDST/DMJ - SPLIT CLAIM IN TWO ;
  1. ;;2.6;IHS Third Party Billing;**1,3,9,10,21**;NOV 12, 2009;Build 379
  1. ;
  1. ; IHS/SD/SDR - v2.5 p12 - UFMS
  1. ; Added check to see if user is logged in before splitting
  1. ; claims allowed
  1. ; IHS/SD/SDR - abm*2.6*1 - HEAT4480 - Added ARE YOU SURE prior to split
  1. ; IHS/SD/SDR - abm*2.6*3 - HEAT11948 - fix for <UNDEF>START+3^AUPNPAT
  1. ;IHS/SD/SDR - 2.6*21 - HEAT190661 - If user types '^' at section prompt they will be exited out of option without split.
  1. ; Also rearranged code so claim wouldn't get created until sections to be copied/moved were selected.
  1. ;
  1. ; *********************************************************************
  1. ;
  1. START ;START
  1. W !
  1. ;start new code abm*2.6*9 NOHEAT - ensure UFMS is setup
  1. I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)="" D Q
  1. .W !!,"* * UFMS SETUP MUST BE DONE BEFORE ANY BILLING FUNCTIONS CAN BE USED! * *",!
  1. .S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. ;end new code
  1. I $P($G(^ABMDPARM(DUZ(2),1,4)),U,15)=1 D Q:+$G(ABMUOPNS)=0
  1. .S ABMUOPNS=$$FINDOPEN^ABMUCUTL(DUZ)
  1. .I +$G(ABMUOPNS)=0 D Q
  1. ..W !!,"* * YOU MUST SIGN IN TO BE ABLE TO PERFORM BILLING FUNCTIONS! * *",!
  1. ..S DIR(0)="E",DIR("A")="Enter RETURN to Continue" D ^DIR K DIR
  1. D ^ABMDEDIC
  1. Q:'$G(ABMP("CDFN"))
  1. S DIC="^ABMDCLM(DUZ(2),",DIC(0)="L"
  1. S X=$P(^ABMDCLM(DUZ(2),ABMP("CDFN"),0),U)
  1. ;start new code abm*2.6*1 HEAT4480
  1. W !!
  1. S DIR(0)="Y",DIR("A")="You are about to split a claim. Are you sure?"
  1. S DIR("B")="NO"
  1. D ^DIR K DIR
  1. G:Y=0 START
  1. ;S X=$P(^ABMDCLM(DUZ(2),ABMP("CDFN"),0),U) ;abm*2.6*3 HEAT11948 ;abm*2.6*21 IHS/SD/SDR 190661
  1. ;end new code HEAT4480
  1. ;start old abm*2.6*21 IHS/SD/SDR HEAT190661
  1. ;S DINUM=$$NXNM^ABMDUTL
  1. ;I DINUM="" D Q
  1. ;.W !!,"ERROR: Claim not created - check global ^ABMDCLM(0)"
  1. ;.S DIR(0)="E" D ^DIR K DIR
  1. ;K DD,DO D FILE^DICN Q:+Y<0 S ABMC2=+Y
  1. ;M ^ABMDCLM(DUZ(2),ABMC2)=^ABMDCLM(DUZ(2),ABMP("CDFN"))
  1. ;S DIE="^ABMDCLM(DUZ(2),"
  1. ;S DA=ABMC2
  1. ;S DR=".1////"_DT_";.04///E"
  1. ;S DR=DR_";.17////"_DT
  1. ;S DR=DR_";.022////S" ;abm*2.6*10 ICD10 008
  1. ;D ^DIE
  1. ;;start new code ;abm*2.6*10 ICD10 008
  1. ;S DIE="^ABMDCLM(DUZ(2),"
  1. ;S DA=ABMP("CDFN")
  1. ;S DR=".022////O" ;abm*2.6*10 ICD10 008
  1. ;D ^DIE
  1. ;end new code 008
  1. ;end old abm*2.6*21 IHS/SD/SDR HEAT190661
  1. MLI ;MOVE LINE ITEMS
  1. S ABMSTRG=""
  1. S DIR(0)="SO^8A:MEDICAL;8B:SURGICAL;8C:REVENUE CODE;8D:RX;8E:LAB;8F:RADIOLOGY;8G:ANESTHESIA;8H:HCPCS;8I:INPATIENT DENTAL;8J:CHARGE MASTER;8Z:ALL"
  1. S DIR("A")="Move Which Section(s)? "
  1. F D Q:'Y
  1. .D ^DIR
  1. .Q:'Y
  1. .S:ABMSTRG'[Y ABMSTRG=ABMSTRG_Y_"^"
  1. .W !!,"Selected: ",$TR(ABMSTRG,"^"," ")
  1. ;start new abm*2.6*21 IHS/SD/SDR HEAT190661
  1. I $D(DTOUT)!$D(DUOUT)!$D(DIROUT) W !!,"Split will not occur..." H 1 Q
  1. S X=$P(^ABMDCLM(DUZ(2),ABMP("CDFN"),0),U)
  1. S DINUM=$$NXNM^ABMDUTL
  1. I DINUM="" D Q
  1. .W !!,"ERROR: Claim not created - check global ^ABMDCLM(0)"
  1. .S DIR(0)="E" D ^DIR K DIR
  1. K DD,DO D FILE^DICN Q:+Y<0 S ABMC2=+Y
  1. M ^ABMDCLM(DUZ(2),ABMC2)=^ABMDCLM(DUZ(2),ABMP("CDFN"))
  1. S DIE="^ABMDCLM(DUZ(2),"
  1. S DA=ABMC2
  1. S DR=".1////"_DT_";.04///E"
  1. S DR=DR_";.17////"_DT
  1. S DR=DR_";.022////S"
  1. D ^DIE
  1. S DIE="^ABMDCLM(DUZ(2),"
  1. S DA=ABMP("CDFN")
  1. S DR=".022////O"
  1. D ^DIE
  1. ;end new abm*2.6*21 IHS/SD/SDR HEAT190661
  1. K DIR
  1. W !
  1. I ABMSTRG'["8Z" D
  1. .S DIR(0)="Y",DIR("A")="Delete sections from original claim after move"
  1. .S DIR("B")="NO"
  1. .D ^DIR K DIR
  1. .S:Y=1 ABMDLT=1
  1. D DEL
  1. S DIK="^ABMDCLM(DUZ(2),"
  1. F DA=ABMC2,ABMP("CDFN") D
  1. .K ^ABMDCLM(DUZ(2),DA,"ASRC")
  1. .D IX1^DIK
  1. W !!,"Claim # ",ABMC2," created.",!
  1. K ABMSTRG,ABMDLT,ABMC2,ABMPG,ABMSEC
  1. S DIR(0)="E" D ^DIR K DIR
  1. Q
  1. DEL ;DELETE SECTIONS
  1. K ^ABMDCLM(DUZ(2),ABMC2,13)
  1. F I=1:1:10 D
  1. .S ABMPG=$P("8A^8B^8C^8D^8E^8F^8G^8H^8I^8J","^",I)
  1. .S ABMSEC=$P("27^21^25^23^37^35^39^43^33^45","^",I)
  1. .I $G(ABMDLT),ABMSTRG[ABMPG K ^ABMDCLM(DUZ(2),ABMP("CDFN"),ABMSEC)
  1. .Q:ABMSTRG["8Z"
  1. .I '(ABMSTRG[ABMPG) K ^ABMDCLM(DUZ(2),ABMC2,ABMSEC)
  1. Q