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

IBCE837ACCU3.m

Go to the documentation of this file.
IBCE837ACCU3 ;EDE/JWS - DSS claim scrubber for ACC claims;
 ;;2.0;INTEGRATED BILLING;**770**;23-MAY-18;Build 119
 ;;Per VA Directive 6402, this routine should not be modified.
 ;;SAC Exemption ID: 202411120708-06
 ;
 ; Reference to ENCODE^XLFJSON in ICR #6682
 Q
 ;
CS(IBIFN) ;setup and call DSS claim scrubber
 S $ZTRAP="ERR^IBCE837ACCU3"
 N FT,AXY,IBTEMP,RESULT,IBSERVER,IBSERVICE,IBRESTOBJ,IBJSON,IBHEADER,IBRESPONSE,IBRESPERR,IBOUT,IBERRCD
 N IBERRARR,IBRESP,IBHTTPRSP,IBOUTJSON,I,IBTOKEN,X
 S FT=$$FT^IBCEF(IBIFN)
 I FT=3 D EN^VEJDIBPY(.AXY,IBIFN)
 I FT'=3 D EN^VEJDIBPX(.AXY,IBIFN)
 ;AXY="^TMP(""VEJDIBPI"",39469)"
 ;^TMP("VEJDIBPI",39469,2)="BGN ^~"
 ;^TMP("VEJDIBPI",39469,3)="GEN ^1^20240522^1^681^ENVOYP^759.0 D~"
 ;^TMP("VEJDIBPI",39469,4)="PRV ^^CHEYENNE VAMC^2360 E PERSHING BLVD^CHEYENNE^WY^"
 ;^TMP("VEJDIBPI",39469,5)="PRV1^87^2^^^^3819 Franklin,PO Box 2010^^Leavenworth^K"
 ;^TMP("VEJDIBPI",39469,6)="CI1 ^CIGNAZZZ^PO BOX 5905^SCRANTON^PA^185051234^^^^SU"
 ;^TMP("VEJDIBPI",39469,7)="CI1A^G5^0000^EI^830168494^G2^830168494^EI^DD67867886~"
 ;CONVERT TO JSON
 M IBTEMP("ACC837",$J,"data")=^TMP("VEJDIBPI",$J)
 S IBTEMP("ACC837",$J,"billIen")=""""_IBIFN_""""
 D ENCODE^XLFJSON("IBTEMP(""ACC837"",$J)","RESULT")   ;ICR #6682 (Supported)
 ;NOW SEND THIS BLOB TO WEB SERVICE
 ;PUT BLOB IN TMEP GOLBLA THEN PARSE LINE BU LINE AND WRITE IT TO THE OBJECT USING .WRITE METHOD
 ;EXAMPLE SNIPPET FROM ^DGAUDIT
 S IBSERVER="IBACC VIRR SERVER"
 S IBSERVICE="IBACC VIRR WEB SERVICE"
 ; get instance of client REST request object
 S IBRESTOBJ=$$GETREST^XOBWLIB(IBSERVICE,IBSERVER)  ;ICR #5421 (Supported)
 S IBRESTOBJ.SSLCheckServerIdentity=0
 ;D IBDGRESTOBJ.EntityBody.Write("[")
 F I=1:1 Q:'$D(RESULT(I))  S IBJSON=$G(IBJSON)_RESULT(I)
 D IBRESTOBJ.EntityBody.Write(IBJSON)
 ;D IBDGRESTOBJ.EntityBody.Write("]")
 S IBTOKEN=$$FIND1^DIC(364.991,,"X","ACCVIRRKEY")
 ;I IBTOKEN S IBTOKEN=$$GET1^DIQ(364.991,IBTOKEN_",",1)
 I IBTOKEN S IBTOKEN=$$GET1^DIQ(364.991,IBTOKEN_",",.1)   ;WCJ;V20;this needs to be field .1 not field 1
 ;
 S IBHEADER="Authorization" D IBRESTOBJ.SetHeader(IBHEADER,IBTOKEN)
 S IBHEADER="ContentType" D IBRESTOBJ.SetHeader(IBHEADER,"application/json")
 ;I $G(DOIT) S IBHEADER="Accept" D IBRESTOBJ.SetHeader(IBHEADER,"application/json")
 S IBRESPONSE=$$POST^XOBWLIB(IBRESTOBJ,"",.IBRESPERR,0)   ;ICR #5421 (Supported)
 ;I 'IBDGRESPONSE D  Q IBDGOUT
 ;. S IBDGOUT=IBDGRESPONSE
 ;. S IBDGERRCD=$$ERRSPMSG^DGAUDIT1(IBDGRESPERR,.IBDGERRARR)
 ;. S IBDGOUT=0_"^"_$S($L(IBDGERRCD)>1:IBDGERRCD,1:$P(IBDGRESP,"^",2))
 S IBHTTPRSP=IBRESTOBJ.HttpResponse
 S IBOUTJSON=IBHTTPRSP.Data.ReadLine() ; reads json string response from the data stream.
 ; Decode json string DGOUTJSON and return by reference via DGOUT and quit
 D DECODE^XLFJSON("IBOUTJSON","IBOUT")   ;ICR #6682 (Supported)
 ;S IBDGOUT=1
 ;JWS;10/16/25;pass-failure flag in different location
 S IBRESPONSE=$S($G(IBOUT("item","pass"))="true":1,1:0)
 Q IBRESPONSE
 ;
ERR ;
 Q 0
 ;