can I get the URL? Specific file?
- Log in to post comments
can I get the URL? Specific file?
Which version of Iris for HEalth?
Iris requirement for DTL GenAI
Resolved
I was setting .tStatus as second paramter in: Set tOBXText = pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX:5", .tStatus), which passed a one to anything that used the value. But I don't know why it created control characters because of it
It is happening again
It is happening again.
Any ideas?
Resolved
Again , thanks, Your help made a difference solving the issues.
You won't believe the solution !!
I needed to change the send instructions with the clone object, pOutput, and NOT the HL7 message object, pRequest.
Example:
ElseIf (tMessageType="ORM") {
//$$$ThrowOnError(..SendRequestAsync(..VistaTarget, pRequest, 1, "OutputCernerToVistaORM"))
// 03272025 Must make a new command that uses the clone object instead of the HL7 message object which is immutable
$$$ThrowOnError(..SendRequestAsync(..VistaTarget, pOutput, 1, "OutputCernerToVistaORM")) // Must use the object for the clone
This is resolved.
Now, I need to add the CR/LF
I also tried this outside the loop; Do pOutput.%Save()
I moved the $ConstructClone outside the loop but chnages are getting made still
Is there a way to check the contents of the clone?
Code:
Method FromCerner(pRequest As EnsLib.HL7.Message) As %Status
{
#dim tStatus As %Status = $$$OK
#dim eException As %Exception.AbstractException
#dim tOBXSegment As EnsLib.HL7.Segment
#dim tOBXText As %String
#dim tItemNumberCount As %Integer = 0
#dim tItemNumberProcessed As %Integer = 0
#dim tTotalCostSegment As %Integer = 0
#dim tOrderType As %String
#dim i As %Interger = 0
#dim tOBXKey As %Integer = 0
#dim tOBXTextChanged As %String
//
// Set the message
Set tMessageType = pRequest.GetValueAt("MSH:9.1")
Try {
// Message Subtype
// Message Subtype
Set tMessageSubType = pRequest.GetValueAt("ORCgrp(1).ORC:1")
//$$$LOGINFO(tMessageSubType_"----- tMessageSubType - = NW -- ")
//
// Check if OBR:19 contains "Implant Usage (PSAS)" OR "Issued in Clinic (PSAS)"
Set tOrderType = pRequest.GetValueAt("ORCgrp(1).OBRuniongrp.OBRunion.OBR:19(1).1")
//$$$LOGINFO(tOrderType_" ---- tOrderType Ordder Type = Implant Usage (PSAS) for first interation")
If ((tOrderType["Implant Usage (PSAS)") || (tOrderType["Issued in Clinic (PSAS)")) {
// First loop: Count occurrences of "Item Number:"
Set i = 1
Set tItemNumberCount = 0
Set pOutput = pRequest.%ConstructClone(1) // moved here because %ConstructClone() need only be done at the message object level.
$$$LOGINFO(pOutput_" ---- pOutput to see if clone is created****")
While (pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX")'="") {
Set tOBXText = pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX:5", .tStatus)
$$$LOGINFO(tOBXText_"**** "_i_" ---- tOBXText OBX 5 text and i value") // working
//
If (tOBXText [ "Item Number:") {
Set tItemNumberCount = tItemNumberCount + 1
}
//
If (tOBXText[ "Total Cost:") {
Set tTotalCostSegment = i
//$$$LOGINFO(tTotalCostSegment_" ------ tTotalCostSegment check Total Cost")
}
Set i = i + 1
}
// Second loop: Modify OBX segments if necessary
Set i = 1
//Set pOutput = pRequest.%ConstructClone(1) //%ConstructClone() need only be done at the message object level.
Set tItemNumberProcessed = 0
While (pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX")'="") {
Set tOBXText = pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX:5", .tStatus) // using pOutput instead of pRequest
//$$$LOGINFO(tOBXText_" ---- tOBXText get OBX 5 text")
If (tOBXText [ "Item Number:") {
Set tItemNumberProcessed = tItemNumberProcessed + 1
}
If (tItemNumberCount > 1) && (tOBXText [ "REASON FOR REQUEST:") {
set tOBXKey = i
Set tOBXText=$p(tOBXText,":",2,5) /// OBX 5 text parsed to replace in OBX 5 later
// Start replacement process
Do pOutput.SetValueAt(tOBXText,"ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX:5","set") // was a typo
//$$$LOGINFO(tOBXText_" ---- OBX 5 parsed to be saved in new OBX 5")
Set tOBXTextChanged = pOutput.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp("_i_").OBX:5") // typo
//$$$LOGINFO(i_" **** "_tOBXTextChanged_" --- i --- tOBXTextChanged, Is OBX 5 changed???") // OBX 5 is changed but not saved
}
Set i = i + 1
}
}
//Do pOutput.%Save()
Set tSave2 = pOutput.%Save()
$$$LOGINFO(tSave2_" ---- did it save")
//
The OBX 5 changes just aren't getting saved
sadly ,, same results
.png)
NA
Does the %ConstructClone()/GetSegmentAt()/SaveValeAt have to be done on every OBX segment object as it goes through the loop?
When do you put a number in ConstructClone(1) ?
NA
I really appreciate the help. I wish there were freelancers that I could pay to help.
It shows pRequest and pOutput to see what the differenece is,.I will commetn out pRequest
I think I am usng pOutput from the clone?
Set pOutput = pRequest.%ConstructClone(1)
Set tSC=tOBXSegmentpOutput.SetValueAt(pOutput, 5)
does this save the chnage?
Set tSC = tOBXSegmentpOutput.SaveData()
I'm using $$$LOGINFO to check the SetValueAt() value
The $ConstructClone works to change the OBX 5 values but how do I make the changes in the message permanent? I'm still working on the cr/lf
I'm real rusty on DTL
NA
Thanks. I'm rusty using DTL. I have to research that more but I agree.
I have the parsing and setting the OBX 5 segment working but it isn't saving the changes to the message
checking. OBX 5 shows it is immutable
Here is the Production process code.
Method FromCerner(pRequest As EnsLib.HL7.Message) As %Status
{
; for all messages coming from Cerner to VistA
#dim tStatus As %Status = $$$OK
#dim eException As %Exception.AbstractException
Set tMessageType = pRequest.GetValueAt("MSH:9.1")
Try {
Set tMessageSubType = pRequest.GetValueAt("ORCgrp(1).ORC:1")
If tMessageSubType = "RE"
{
// For disassociated documents (tResultType="D"), delete from EHRM Edge, remove all OBX lines and add the new OBX segment
Set tResultType = pRequest.GetValueAt("ORCgrp(1).OBRuniongrp.OBXgrp(1).OBX:11")
If tResultType = "D"
{
$$$ThrowOnError(..ProcessPurgeDocumentToVista(pRequest))
}
// For all other documents coming from Cerner, save OBX lines into EHRM Edge, then delete from message and add the new OBX segment
else
{
$$$ThrowOnError(..ProcessNewDocumentToVista(pRequest))
}
}
// otherwise, translate and send outbound to vista: Add OBX5, modify OBR16 and save off PID, OBR,& FIN
elseif (tMessageType="ORM")
{
$$$ThrowOnError(..SendRequestAsync(..VistaTarget,pRequest,1,"OutputCernerToVistaORM"))
}
elseif (tMessageType="ORR") || (tMessageType = "ACK")
{
$$$ThrowOnError(..SendRequestAsync(..VistaTarget,pRequest,1,"OutputCernerToVistaORR"))
}
else
{
$$$ThrowOnError($$$ERROR($$$GeneralError, "Error: unable to process message from Cerner. Message type " _ tMessageType _ " received."))
}
}
Catch eException {
set tStatus = eException.AsStatus()
set tStatus = $$$ADDSC(tStatus , ..CreateAndSendAlert(eException.DisplayString(), pRequest))
}
Quit tStatus
}
Would you do a project for me as a contractor? Not many hours. Need to remove text from an OBX segment and add some carriage return/line feeds
MSH|^~\&|GMRC IF CONSULT|757^B1930^DNS|GMRC IF CONSULT|757^^DNS|20250123175341+0000|CRNR|ORM^O01^ORM_O01|Q5808332894T6790522104|T|2.3|||AL|AL|USA
PID|1||1013570973V041977^^^ICN^VVVID~2110106796^^^EDIPI^EDIPI||PROSTEST^EHR||19760902|M||||||||||129256619|678235672
ORC|NW|15207778763^757^GMRCIFR|||||^^^20250123175300+0000^^R||20250123175331+0000|1578051652^PCP1^ZZ-Physician||1578051652^PCP1^ZZ-Physician|||20250123175341+0000||757
OBR|1|15207778763^757^GMRCIFR||757^PROSTHETICS IFC^757ZZ1235||20250123175300+0000||||||||||1578051652^PCP1^ZZ-Physician|||Implant Usage (PSAS)||||||||^^^20250123175300+0000
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|1|Implant Usage (PSAS)||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|2|Item Number: 00801741016608||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|3| Transaction Date/Time: 01/22/2025 17:45||||||O <<<< remove “REASON FOR REQUEST:” regardless of number of Item Numbers
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|4| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|5| Item Description: Plug Surgical 1.3in Groin Monofilament ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|6|Nonabsorbable Perfix Polypropylene Medium Taper 1.55in Sterile Hernia ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|7|Repair 0112760||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|8| Manufacturer: Davol Inc||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|9| Manufacturer Model Number: 0112760||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|10| HCPCS: C1781||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|11| Lot Number: 012220252||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|12| Expiration Date/Time: 05/22/2025 04:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|13| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|14| Source: 757-TrackCore Inv||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|15| Lot Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|16| Lot Waste Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|17| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|18| Total Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|19|Item Number: 00888867351288||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|20| Transaction Date/Time: 01/22/2025 17:45||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|21| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|22| Item Description: Anchor Suture 2 Swivelock C Closed Eyelet Twist in ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|23|Knotless 19.1mm Blue AR-2324KBCC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|24| Manufacturer: ARTHREX INC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|25| Manufacturer Model Number: AR-2324KBCC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|26| HCPCS: C1713||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|27| Lot Number: 012220253||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|28| Expiration Date/Time: 05/17/2025 04:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|29| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|30| Source: 757-TrackCore Inv||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|31| Lot Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|32| Lot Waste Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|33| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|34| Total Cost: 0.00 <<<<<<<< add carriage return after “Total Cost” if multiple Item Numbers. Note: ||||||O can be deleted
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|35|Item Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|36| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|37| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|38| Item Description: A female part which is inserted into the acrylic ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|39|overdenture and houses changeable nylon retention inserts.||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|40| Manufacturer: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|41| Manufacturer Model Number: MOR RC-1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|42| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|43| Lot Number: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|44| Expiration Date/Time:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|45| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|46| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|47| Lot Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|48| Lot Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|49| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|50| Total Cost: 0.00 CRLF
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|51|Item Number: 00889024015296||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|52| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|53| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|54| Item Description: Abutment Dental 4.5mm 3.5mm Indirect Transfer ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|55|Tapered Screw-vent Connection Trabecular Metal HLT3/4||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|56| Manufacturer: Zimvie Inc||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|57| Manufacturer Model Number: HLT3/4||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|58| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|59| Lot Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|60| Expiration Date/Time:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|61| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|62| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|63| Used Quantity: 4||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|64| Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|65| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|66| Total Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|67|Item Number: 00889024015340||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|68| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|69| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|70| Item Description: Abutment Dental Profile 6.5mm 5.7mm Screw-vent ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|71|Indirect Transfer Retaining Screw Orange HLT56||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|72| Manufacturer: Zimmer Biomet Inc||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|73| Manufacturer Model Number: HLT56||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|74| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|75| Lot Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|76| Expiration Date/Time:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|77| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|78| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|79| Used Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|80| Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|81| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|82| Total Cost: 0.00 CR/LF
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|83|Item Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|84| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|85| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|86| Item Description: Abutment, Gold, Engaging||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|87| Manufacturer: Zimmer Biomet Dental||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|88| Manufacturer Model Number: HLA4G||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|89| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|90| Lot Number: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|91| Expiration Date/Time:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|92| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|93| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|94| Lot Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|95| Lot Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|96| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|97| Total Cost: 0.00||||||O CR/LF
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|98|Item Number: TC024057||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|99| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|100| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|101| Item Description: Abutment, Gold, Engaging CEANP31||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|102| Manufacturer: Zimmer||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|103| Manufacturer Model Number: CEANP31||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|104| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|105| Lot Number: 2||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|106| Expiration Date/Time: 05/31/2025 05:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|107| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|108| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|109| Lot Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|110| Lot Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|111| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|112| Total Cost: 0.00 CR/LF
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|113|Item Number: TC024076||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|114| Transaction Date/Time: 01/23/2025 17:43||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|115| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|116| Item Description: Abutment, Gold, Engaging HLA3G||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|117| Manufacturer: Zimmer||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|118| Manufacturer Model Number: HLA3G||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|119| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|120| Lot Number: 3||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|121| Expiration Date/Time: 03/28/2025 05:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|122| Serial Number:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|123| Source: 757-C-DENTAL SEC||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|124| Lot Quantity: 1||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|125| Lot Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|126| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|127| Total Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|128|Item Number: 00380650697127||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|129| Transaction Date/Time: 01/23/2025 16:10||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|130| Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|131| Item Description: Lens SP PmmA 5.25x12.0mm (5) +13.0D||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|132| Manufacturer: ALCON||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|133| Manufacturer Model Number: LX10BD 13.0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|134| HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|135| Lot Number: 01232025||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|136| Expiration Date/Time: 02/28/2025 05:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|137| Serial Number: 01232025||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|138| Source: 757-TrackCore Inv||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|139| Used Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|140| Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|141| Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|142| Total Cost: 0.00||||||O <<< last “Total Cost”, DO NOT add CR/LF
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|143|Special Instructions: ||||||O
OBX|2|CE|^PROVISIONAL DIAGNOSIS|1|R52^Pain, unspecified^I10||||||O
NTE|P|UCID:757_15207778763
Ignore extra line feed between segments. It is a message formatting issue.
na
Ok, I regrouped my criteria.
Sub question: is there a website of consultants that I can hire. I used o use SourceForge.
Example message with requirements Note: If only one item, don't add carriage return after line with Total Cost:
Sample with multiple Items;
MSH|^~\&|GMRC IF CONSULT|XXX^XXXXX^DNS|GMRC IF CONSULT|YYY^^DNS|20250123175341+0000|CRNR|ORM^O01^ORM_O01|Q5808332894T6790522104|T|2.3|||State|State|USA
PID|1||1013570973V041977^^^ICN^ID~1110106796^^^EDIPI^EDIPI||PROSTEST^EHR||19760902|M||||||||||129256619|678235672
ORC|NW|15207778763^XXX^GMRCIFR|||||^^^20250123175300+0000^^R||20250123175331+0000|XXX8051652^PCP1^Physician||XXX8051652^PCP1^Physician|||20250123175341+0000||YYY
OBR|1|15207778763^XXX^GMRCIFR||YYY^PROSTHETICS IFC^757Office1235||20250123175300+0000||||||||||XXX8051652^PCP1^Physician|||Implant Usage (PSAS)||||||||^^^20250123175300+0000
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|1|Implant Usage (PSAS)||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|2|REASON FOR REQUEST: Item Number: 00801741016608||||||O <<<< Remove ALL instances of “REASON FOR REQUEST:”
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|3|REASON FOR REQUEST: Transaction Date/Time: 01/22/2025 17:45||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|4|REASON FOR REQUEST: Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|5|REASON FOR REQUEST: Item Description: Plug Surgical 1.3in Groin Monofilament ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|6|REASON FOR REQUEST: Nonabsorbable Perfix Polypropylene Medium Taper 1.55in Sterile Hernia ||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|7|REASON FOR REQUEST: Repair 0112760||||||O
………… continued
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|128|REASON FOR REQUEST: Item Number: 00380650697127||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|129|REASON FOR REQUEST: Transaction Date/Time: 01/23/2025 16:10||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|130|REASON FOR REQUEST: Station Number: 757||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|131|REASON FOR REQUEST: Item Description: Lens SP PmmA 5.25x12.0mm (5) +13.0D||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|132|REASON FOR REQUEST: Manufact urer: ALCON||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|133|REASON FOR REQUEST: Manufacturer Model Number: LX10BD 13.0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|134|REASON FOR REQUEST: HCPCS:||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|135|REASON FOR REQUEST: Lot Number: 01232025||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|136|REASON FOR REQUEST: Expiration Date/Time: 02/28/2025 05:00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|137|REASON FOR REQUEST: Serial Number: 01232025||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|138|REASON FOR REQUEST: Source: 757-TrackCore Inv||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|139|REASON FOR REQUEST: Used Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|140|REASON FOR REQUEST: Waste Quantity: 0||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|141|REASON FOR REQUEST: Unit Cost: 0.00||||||O
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|142|REASON FOR REQUEST: Total Cost: 0.00 <<<<<<||||||O Add a line break but only on messages with multiple “Item Number:”.
OBX|1|TX|2000.02^REASON FOR REQUEST^AS4|143|Special Instructions: ||||||O
OBX|2|CE|^PROVISIONAL DIAGNOSIS|1|R52^Pain, unspecified^I10||||||O
NTE|P|UCID:757_15207778763
Req 1
Add line breaks to OBX 5 segment with Prosthetics orders contains "Issued in Clinic (PSAS)" OR "Implant Usage (PSAS)" with multiple items but Not messages with only one Item
Example
Req 2
Remove repeating text "REASON FOR REQUEST:" in OBX 5, with Prosthetics orders contains "Issued in Clinic (PSAS)" OR "Implant Usage (PSAS)".
Description: If PSAS order type is "Implant Usage (PSAS)" OR PSAS Order type is "Issued in Clinic (PSAS)" then remove string "REASON FOR REQUEST:" from OBX-5 fields where string "REASON FOR REQUEST:" is found.
Clayton, great idea but I don't want to make it to comlicated for future support.