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

ABMFECNV.m

Go to the documentation of this file.
  1. ABMFECNV ; IHS/SD/SDR - 3P Fee Table Conversion
  1. ;;2.6;IHS THIRD PARTY BILLING SYSTEM;**2**;NOV 12, 2009
  1. ;
  1. Q
  1. CONVERT ;
  1. S X=$$PATCH^XPDUTL("ABM*2.6*2")
  1. I $P(X,U)=1 Q ;patch 2 already installed
  1. ;11=SURGICAL
  1. ;13=HCPCS
  1. ;15=RADIOLOGY
  1. ;17=LABORATORY
  1. ;19=MEDICAL
  1. ;23=ANESTHESIA
  1. S ABMTBL=0
  1. F S ABMTBL=$O(^ABMDFEE(ABMTBL)) Q:(+$G(ABMTBL)=0) D
  1. .D BMES^XPDUTL("Fee Schedule "_ABMTBL_" ...")
  1. .D MES^XPDUTL(" Schd Cat Code EffDt Fee")
  1. .S ABMEFFDT=$P($G(^ABMDFEE(ABMTBL,0)),U,5)
  1. .F ABMM=11,13,15,17,19,23 D
  1. ..S ABMMI=0
  1. ..F S ABMMI=$O(^ABMDFEE(ABMTBL,ABMM,ABMMI)) Q:(+$G(ABMMI)=0) D
  1. ...S ABMCODE=$P($G(^ABMDFEE(ABMTBL,ABMM,ABMMI,0)),U)
  1. ...S ABMCHRG=$P($G(^ABMDFEE(ABMTBL,ABMM,ABMMI,0)),U,2)
  1. ...D ^XBFMK
  1. ...S DA(2)=ABMTBL
  1. ...S DA(1)=ABMCODE
  1. ...S DIC="^ABMDFEE("_DA(2)_","_ABMM_","_DA(1)_",1,"
  1. ...S DIC(0)="L"
  1. ...S DIC("P")=$P(^DD(9002274.01_ABMM,1,0),U,2)
  1. ...S X=ABMEFFDT
  1. ...S DIC("DR")=".02////"_ABMCHRG
  1. ...D ^DIC
  1. ...D MES^XPDUTL(" "_ABMTBL_" "_ABMM_" "_$S($G(^ICPT(ABMCODE,0))'="":$P($G(^ICPT(ABMCODE,0)),U),1:ABMCODE)_" "_$$SDT^ABMDUTL(ABMEFFDT)_" "_$J($FN(ABMCHRG,",",2),"10R"))
  1. .;21=DENTAL
  1. .S ABMMI=0
  1. .F S ABMMI=$O(^ABMDFEE(ABMTBL,21,ABMMI)) Q:(+$G(ABMMI)=0) D
  1. ..S ABMCODE=$P($G(^AUTTADA($P($G(^ABMDFEE(ABMTBL,21,ABMMI,0)),U),0)),U)
  1. ..S ABMCHRG=+$P($G(^ABMDFEE(ABMTBL,21,ABMMI,0)),U,2)
  1. ..D ^XBFMK
  1. ..S DA(2)=ABMTBL
  1. ..S DA(1)=ABMMI
  1. ..S DIC="^ABMDFEE("_DA(2)_",21,"_DA(1)_",1,"
  1. ..S DIC(0)="L"
  1. ..S DIC("P")=$P(^DD(9002274.0121,1,0),U,2)
  1. ..S X=ABMEFFDT
  1. ..S DIC("DR")=".02////"_ABMCHRG
  1. ..D ^DIC
  1. ..D MES^XPDUTL(" "_ABMTBL_" 21 "_ABMCODE_" "_$$SDT^ABMDUTL(ABMEFFDT)_" "_$J($FN(ABMCHRG,",",2),"10R"))
  1. .;25=DRUG
  1. .S ABMMI=0
  1. .F S ABMMI=$O(^ABMDFEE(ABMTBL,25,ABMMI)) Q:(+$G(ABMMI)=0) D
  1. ..S ABMCODE=$P($G(^PSDRUG($P($G(^ABMDFEE(ABMTBL,25,ABMMI,0)),U),0)),U)
  1. ..S ABMCHRG=+$P($G(^ABMDFEE(ABMTBL,25,ABMMI,0)),U,2)
  1. ..D ^XBFMK
  1. ..S DA(2)=ABMTBL
  1. ..S DA(1)=ABMMI
  1. ..S DIC="^ABMDFEE("_DA(2)_",25,"_DA(1)_",1,"
  1. ..S DIC(0)="L"
  1. ..S DIC("P")=$P(^DD(9002274.0125,1,0),U,2)
  1. ..S X=ABMEFFDT
  1. ..S DIC("DR")=".02////"_ABMCHRG
  1. ..D ^DIC
  1. ..D MES^XPDUTL(" "_ABMTBL_" 25 "_$$FMT^ABMERUTL(ABMCODE,"30L")_" "_$$SDT^ABMDUTL(ABMEFFDT)_" "_$J($FN(ABMCHRG,",",2),"10R"))
  1. .;31=REVENUE CODES
  1. .S ABMMI=0
  1. .F S ABMMI=$O(^ABMDFEE(ABMTBL,31,ABMMI)) Q:(+$G(ABMMI)=0) D
  1. ..S ABMCODE=$P($G(^AUTTREVN($P($G(^ABMDFEE(ABMTBL,31,ABMMI,0)),U),0)),U)
  1. ..S ABMCHRG=+$P($G(^ABMDFEE(ABMTBL,31,ABMMI,0)),U,2)
  1. ..D ^XBFMK
  1. ..S DA(2)=ABMTBL
  1. ..S DA(1)=ABMMI
  1. ..S DIC="^ABMDFEE("_DA(2)_",31,"_DA(1)_",1,"
  1. ..S DIC(0)="L"
  1. ..S DIC("P")=$P(^DD(9002274.0131,1,0),U,2)
  1. ..S X=ABMEFFDT
  1. ..S DIC("DR")=".02////"_ABMCHRG
  1. ..D ^DIC
  1. ..D MES^XPDUTL(" "_ABMTBL_" 31 "_ABMCODE_"-"_$$FMT^ABMERUTL($P($G(^AUTTREVN($P($G(^ABMDFEE(ABMTBL,31,ABMMI,0)),U),0)),U,2),"25L")_" "_$$SDT^ABMDUTL(ABMEFFDT)_" "_$J($FN(ABMCHRG,",",2),"10R"))
  1. .;32=CHARGE MASTER
  1. .S ABMMI=0
  1. .F S ABMMI=$O(^ABMDFEE(ABMTBL,32,ABMMI)) Q:(+$G(ABMMI)=0) D
  1. ..S ABMCODE=$P($G(^ABMCM($P($G(^ABMDFEE(ABMTBL,32,ABMMI,0)),U),0)),U)
  1. ..S ABMCHRG=+$P($G(^ABMDFEE(ABMTBL,32,ABMMI,0)),U,2)
  1. ..D ^XBFMK
  1. ..S DA(2)=ABMTBL
  1. ..S DA(1)=ABMMI
  1. ..S DIC="^ABMDFEE("_DA(2)_",32,"_DA(1)_",1,"
  1. ..S DIC(0)="L"
  1. ..S DIC("P")=$P(^DD(9002274.0132,1,0),U,2)
  1. ..S X=ABMEFFDT
  1. ..S DIC("DR")=".02////"_ABMCHRG
  1. ..D ^DIC
  1. ..D MES^XPDUTL(" "_ABMTBL_" 32 "_ABMCODE_" "_$$SDT^ABMDUTL(ABMEFFDT)_" "_$J($FN(ABMCHRG,",",2),"10R"))
  1. Q