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

ABSP5B1C.m

Go to the documentation of this file.
  1. ABSP5B1C ; IHS/OIT/CASSevern/Pieran ran 1/19/2011 - Handling of outgoing NCPDP Billing "B1" Claims for 5.1 (COB and WORKERS COMP Segments)
  1. ;;1.0;PHARMACY POINT OF SALE;**42**;JUN 21, 2001;Build 38
  1. COB ;EP CALLED FROM ABSP5B1 to set up PRICING SEGMENT -- Segment not yet implemented We'll probably have to do something very similar to DURR and CLINIC segments
  1. Q:$D(SUPRESSG("COB"))
  1. N FIELD
  1. S RECORD=$G(RECORD)
  1. F FIELD="111",337,338,339,340,443,993,341,342,431,471,472 D
  1. . Q:$D(SUPRESF(FIELD))
  1. . I (ACTION["CLAIM"),(FIELD'=111) D
  1. . . D @(FIELD_"GET")
  1. . . D @(FIELD_"FMT")
  1. . . D @(FIELD_"SET")
  1. . ELSE D APPEND(FIELD)
  1. Q
  1. ;Segment identifier
  1. 111GET S ABSP("X")="05"
  1. Q
  1. 111FMT S ABSP("X")=$$ANFF^ABSPECFM(ABSP("X"),2)
  1. Q
  1. 111SET ;This isn't used for the 111 Field
  1. Q
  1. ;Other Payments Count
  1. 337GET I '$D(SPECIAL(337)) S ABSP("X")=""
  1. ELSE X SPECIAL(337)
  1. Q
  1. 337FMT S:ABSP("X")'="" ABSP("X")="4C"_$$NFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 337SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Coverage Type
  1. 338GET I '$D(SPECIAL(338)) S ABSP("X")=""
  1. ELSE X SPECIAL(338)
  1. Q
  1. 338FMT S:ABSP("X")'="" ABSP("X")="5C"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 338SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer ID Qualifer
  1. 339GET I '$D(SPECIAL(339)) S ABSP("X")=""
  1. ELSE X SPECIAL(339)
  1. Q
  1. 339FMT S:ABSP("X")'="" ABSP("X")="6C"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 339SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer ID
  1. 340GET I '$D(SPECIAL(340)) S ABSP("X")=""
  1. ELSE X SPECIAL(340)
  1. Q
  1. 340FMT S:ABSP("X")'="" ABSP("X")="7C"_$$ANFF^ABSPECFM($G(ABSP("X")),10)
  1. Q
  1. 340SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Date
  1. 443GET I '$D(SPECIAL(443)) S ABSP("X")=""
  1. ELSE X SPECIAL(443)
  1. Q
  1. 443FMT S:ABSP("X")'="" ABSP("X")="E8"_$$ANFF^ABSPECFM($G(ABSP("X")),8)
  1. Q
  1. 443SET ;Not Yet Implemented **
  1. Q
  1. ;Internal Control Number
  1. 993GET I '$D(SPECIAL(993)) S ABSP("X")=""
  1. ELSE X SPECIAL(993)
  1. Q
  1. 993FMT S:ABSP("X")'="" ABSP("X")="A7"_$$ANFF^ABSPECFM($G(ABSP("X")),30)
  1. Q
  1. 993SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Amount Paid Count
  1. 341GET I '$D(SPECIAL(341)) S ABSP("X")=""
  1. ELSE X SPECIAL(341)
  1. Q
  1. 341FMT S:ABSP("X")'="" ABSP("X")="HB"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 341SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Amount Paid Qualifier
  1. 342GET I '$D(SPECIAL(342)) S ABSP("X")=""
  1. ELSE X SPECIAL(342)
  1. Q
  1. 342FMT S:ABSP("X")'="" ABSP("X")="HC"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 342SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Amount Paid
  1. 431GET I '$D(SPECIAL(431)) S ABSP("X")=""
  1. ELSE X SPECIAL(431)
  1. Q
  1. 431FMT S:ABSP("X")'="" ABSP("X")="DV"_$$ANFF^ABSPECFM($G(ABSP("X")),6)
  1. Q
  1. 431SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Reject Count
  1. 471GET I '$D(SPECIAL(471)) S ABSP("X")=""
  1. ELSE X SPECIAL(471)
  1. Q
  1. 471FMT S:ABSP("X")'="" ABSP("X")="5E"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 471SET ;Not Yet Implemented **
  1. Q
  1. ;Other Payer Reject Code
  1. 472GET I '$D(SPECIAL(472)) S ABSP("X")=""
  1. ELSE X SPECIAL(472)
  1. Q
  1. 472FMT S:ABSP("X")'="" ABSP("X")="6E"_$$ANFF^ABSPECFM($G(ABSP("X")),3)
  1. Q
  1. 472SET ;Not Yet Implemented **
  1. Q
  1. WORKCOMP ;EP CALLED FROM ABSP5B1 to set up WORKERS COMP SEGMENT -- Entire segment not implemented yet
  1. Q:$D(SUPRESSG("Workers Comp"))
  1. N FIELD
  1. S RECORD=$G(RECORD)
  1. F FIELD="111A",434,315,316,317,318,319,320,321,327,435 D
  1. . Q:$D(SUPRESF(FIELD))
  1. . I (ACTION["CLAIM"),(FIELD'=111) D
  1. . . D @(FIELD_"GET")
  1. . . D @(FIELD_"FMT")
  1. . . D @(FIELD_"SET")
  1. . ELSE D APPEND(FIELD)
  1. Q
  1. ;Segment identifier
  1. 111AGET S ABSP("X")="06"
  1. Q
  1. 111AFMT S ABSP("X")=$$ANFF^ABSPECFM(ABSP("X"),2)
  1. Q
  1. 111ASET ;This isn't used for the 111 Field
  1. Q
  1. ;Date of Injury
  1. 434GET I '$D(SPECIAL(434)) S ABSP("X")=""
  1. ELSE X SPECIAL(434)
  1. Q
  1. 434FMT S:ABSP("X")'="" ABSP("X")="DY"_$$ANFF^ABSPECFM($G(ABSP("X")),8)
  1. Q
  1. 434SET ;Not Yet Implemented
  1. Q
  1. ;Employer Name
  1. 315GET I '$D(SPECIAL(315)) S ABSP("X")=""
  1. ELSE X SPECIAL(315)
  1. Q
  1. 315FMT S:ABSP("X")'="" ABSP("X")="CF"_$$ANFF^ABSPECFM($G(ABSP("X")),30)
  1. Q
  1. 315SET ;Not Yet Implemented
  1. Q
  1. ;Employer Street Address
  1. 316GET I '$D(SPECIAL(316)) S ABSP("X")=""
  1. ELSE X SPECIAL(316)
  1. Q
  1. 316FMT S:ABSP("X")'="" ABSP("X")="CG"_$$ANFF^ABSPECFM($G(ABSP("X")),30)
  1. Q
  1. 316SET ;Not Yet Implemented
  1. Q
  1. ;Employer City Address
  1. 317GET I '$D(SPECIAL(317)) S ABSP("X")=""
  1. ELSE X SPECIAL(317)
  1. Q
  1. 317FMT S:ABSP("X")'="" ABSP("X")="CH"_$$ANFF^ABSPECFM($G(ABSP("X")),20)
  1. Q
  1. 317SET ;Not Yet Implemented
  1. Q
  1. ;Employer State/Province Address
  1. 318GET I '$D(SPECIAL(318)) S ABSP("X")=""
  1. ELSE X SPECIAL(318)
  1. Q
  1. 318FMT S:ABSP("X")'="" ABSP("X")="CI"_$$ANFF^ABSPECFM($G(ABSP("X")),2)
  1. Q
  1. 318SET ;Not Yet Implemented
  1. Q
  1. ;Employer Zip
  1. 319GET I '$D(SPECIAL(319)) S ABSP("X")=""
  1. ELSE X SPECIAL(319)
  1. Q
  1. 319FMT S:ABSP("X")'="" ABSP("X")="CJ"_$$ANFF^ABSPECFM($G(ABSP("X")),15)
  1. Q
  1. 319SET ;Not Yet Implemented
  1. Q
  1. ;Employer Phone Number
  1. 320GET I '$D(SPECIAL(320)) S ABSP("X")=""
  1. ELSE X SPECIAL(320)
  1. Q
  1. 320FMT S:ABSP("X")'="" ABSP("X")="CK"_$$ANFF^ABSPECFM($G(ABSP("X")),10)
  1. Q
  1. 320SET ;Not Yet Implemented
  1. Q
  1. ;Employer Contact Name
  1. 321GET I '$D(SPECIAL(321)) S ABSP("X")=""
  1. ELSE X SPECIAL(321)
  1. Q
  1. 321FMT S:ABSP("X")'="" ABSP("X")="CL"_$$ANFF^ABSPECFM($G(ABSP("X")),30)
  1. Q
  1. 321SET ;Not Yet Implemented
  1. Q
  1. ;Carrier ID
  1. 327GET I '$D(SPECIAL(327)) S ABSP("X")=""
  1. ELSE X SPECIAL(327)
  1. Q
  1. 327FMT S:ABSP("X")'="" ABSP("X")="CR"_$$ANFF^ABSPECFM($G(ABSP("X")),10)
  1. Q
  1. 327SET ;Not Yet Implemented
  1. Q
  1. ;Claim/Reference ID
  1. 435GET I '$D(SPECIAL(435)) S ABSP("X")=""
  1. ELSE X SPECIAL(435)
  1. Q
  1. 435FMT S:ABSP("X")'="" ABSP("X")="DZ"_$$ANFF^ABSPECFM($G(ABSP("X")),30)
  1. Q
  1. 435SET ;Not Yet Implemented
  1. Q
  1. APPEND(FIELD) ;This is where outgoing record is built field by field
  1. I FIELD["111" D
  1. . D @(FIELD_"GET")
  1. . D @(FIELD_"FMT")
  1. . S RECORD=RECORD_$C(30,28)_"AM"_ABSP("X")
  1. ELSE D
  1. . I $G(ABSP(9002313.0201,IEN(9002313.01),FIELD,"I"))'="" S RECORD=RECORD_$C(28)_$G(ABSP(9002313.0201,IEN(9002313.01),FIELD,"I"))
  1. . ELSE I $D(SPECIAL(FIELD)) D
  1. . . X SPECIAL(FIELD)
  1. . . D @(FIELD_"FMT")
  1. . . S RECORD=RECORD_$C(28)_ABSP("X")
  1. Q