Question
· Sep 24, 2023

QuickStream issues in FHIR Interoperability production

I have created a FHIR endpoint and send the FHIR resource to FHIR Interoperability production class which is HS.FHIRServer.Interop.Service through the the created endpoint(/r4). I can able to see/get the HS.SDA3.QuickStream(It use CacheTemp.HS.Stream temporary globalon the fly(In between the process). I'm unable to get the FHIR resource from the QuickStream once the process completed. Is this HS.SDA3.QuickStream is wiped out from the system once process completed?

Executed the below code. Even tried with zwrite of  ^CacheTemp.HS.Stream is also empty. Tried with IRSITMEP database as well.

How to get the FHIR resource for the processed InteropRequest class.

ClassMethod GetQuickStreamVal()
{
    set key= $$$AppKeyFromApp("/csp/healthshare/irismydev/fhir/r4")
    set obj=##Class(HS.FHIRServer.Interop.Request).%OpenId(64) ;tested with already processed id
    set quickStreamIn = ##class(HS.SDA3.QuickStream).%OpenId(obj.QuickStreamId, .tSC)
    zw quickStreamIn.Read()
    do quickStreamIn.Rewind()
    #dim fhirService as HS.FHIRServer.API.Service = ##class(HS.FHIRServer.Service).EnsureInstance(key)
    set resource= fhirService.StreamToJSON(quickStreamIn, "JSON")
    zw resource
}
IRISMYDEV>zwrite ^CacheTemp.HS.Stream
^CacheTemp.HS.Stream=8
 
IRISMYDEV>zw ^CacheTemp.HS.Stream("T8")
IRISMYDEV>                              
Product version: IRIS 2023.1
$ZV: IRIS for Windows (x86-64) 2023.1 (Build 229) Fri Apr 14 2023 17:36:18 EDT
Discussion (1)1
Log in or sign up to continue