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

IBARXCQR.m

Go to the documentation of this file.
  1. IBARXCQR ;ALB/LEG-CERNER RXCOPAY SEND QRY REQUEST ; 23 Feb 2021
  1. ;;2.0;INTEGRATED BILLING;**676**;21-MAR-94;Build 34
  1. ;
  1. ;Build and send to cerner the IBARXC-QRY - QRY^R02 query requesting cerner seeding data
  1. ;
  1. EN(DFN,IBDT) ;start processing message
  1. ; DFN - IEN of Patient
  1. ; IBDT - date within the required billing period
  1. ;
  1. N %P1,ERROR,FIELD,ICN,MSG,SEG,VALUE,WHOTO,X,XDT,XXX,NAME
  1. N PARMS
  1. ;S FACID=$$SITE^VASITE
  1. D MSH
  1. D QRD
  1. D QRF
  1. D SEND
  1. Q
  1. ;
  1. MSH ;SET VARIABLES FOR THE MSH SEGMENT
  1. N PARMS K ^TMP("QRY")
  1. S PARMS("COUNTRY")="USA"
  1. S PARMS("MESSAGE TYPE")="QRY"
  1. S PARMS("EVENT")="R02"
  1. S PARMS("VERSION")="2.3"
  1. S PARMS("MESSAGE STRUCTURE")="QRY_R02"
  1. S MSG="^TMP("_"QRY"
  1. S X=$$NEWMSG^HLOAPI(.PARMS,.MSG,.ERROR)
  1. Q
  1. ;
  1. QRD ;BUILD THE QRD SEGMENT
  1. S VALUE="QRD",FIELD=0 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S %P1=$$NOW^XLFDT() S %P1=$$FMTHL7^XLFDT(%P1)
  1. S VALUE=%P1,FIELD=1 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S VALUE=1,FIELD=2 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S VALUE=1,FIELD=3 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. ;Need to speak with VDIF about this not being available
  1. ;S X=FACID_" A"
  1. ;S X=$O(^HLB("B",X),-1)
  1. ;S X=$O(^HLB("B",X,0))
  1. ;S QRYNUM=X+1
  1. ;S VALUE=$G(QRYNUM),FIELD=4 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S VALUE=1,FIELD=7 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S NAME=$$GET1^DIQ(2,DFN_",",.01)
  1. S VALUE=$P(NAME,",",1),FIELD=8 D SET^HLOAPI(.SEG,VALUE,FIELD,1)
  1. S VALUE=$P(NAME,",",2),FIELD=8 D SET^HLOAPI(.SEG,VALUE,FIELD,2)
  1. S ICN=$$ICN^IBARXMU(DFN)
  1. S VALUE=ICN,FIELD=9 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S VALUE="",FIELD=10 D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S FIELD=11
  1. S VALUE=$E(IBDT,4,5) D SET^HLOAPI(.SEG,VALUE,FIELD,1)
  1. S VALUE=($E(IBDT,1,3)+1700) D SET^HLOAPI(.SEG,VALUE,FIELD,2)
  1. S X=$$ADDSEG^HLOAPI(.MSG,.SEG,.ERROR)
  1. Q
  1. ;
  1. QRF ;
  1. S FIELD=0,VALUE="QRF" D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S FIELD=1,VALUE="IBARXC-TRANS" D SET^HLOAPI(.SEG,VALUE,FIELD)
  1. S FIELD=4,X=$$GET1^DIQ(2,DFN_",",.09),VALUE=$E(X,$L(X)-3,$L(X)) D SET^HLOAPI(.SEG,VALUE,FIELD) ;Last 4 of SSN
  1. S X=$$ADDSEG^HLOAPI(.MSG,.SEG,.ERROR)
  1. Q
  1. ;
  1. SEND ;SEND THE MESSAGE
  1. S PARMS("SENDING APPLICATION")="IBARXC-QRY"
  1. S WHOTO("RECEIVING APPLICATION")="IBARXC-QRYRESP"
  1. S WHOTO("STATION NUMBER")="200CRNR"
  1. S WHOTO("MIDDLEWARE LINK NAME")="IBARXCVDF"
  1. S XXX=$$SENDONE^HLOAPI1(.MSG,.PARMS,.WHOTO,.ERROR)
  1. H 20
  1. Q
  1. ;