I need to receive a string that rounds 60 - 90 kb from a third party webservice.
Can't use the 30kb chunks approach that predates here on communities as third party can't change approved ways.
Need to receive in one shot.
DEFINE TEMP-TABLE quick_stamp NO-UNDO
NAMESPACE-URI "facturacion.finkok.com/stamp"
FIELD xml AS raw
FIELD username AS CHARACTER
FIELD password AS CHARACTER .
DEFINE DATASET quick_stampDset NAMESPACE-URI "facturacion.finkok.com/stamp"
XML-NODE-TYPE "HIDDEN"
FOR quick_stamp.
CREATE quick_stamp. COPY-LOB FROM FILE NomArchXMLTemp TO quick_stamp.xml. // 6oKB file with xml doc ASSIGN quick_stamp.username = wsUser quick_stamp.password = wsPassword. // this should get the same xml back with some extra fields (increased size: 1KB at most) RUN quick_Stamp IN hApplication (INPUT TABLE quick_stamp, OUTPUT memptrRawData ) NO-ERROR. // if using lcXMLcfdi as output parameter, it gets out of bounds as response is way above the 32 kb size limit of loingchar MESSAGE "get-SIZE: " GET-SIZE(memptrRawData). /* I got a 0 size*/ COPY-LOB OBJECT memptrRawData TO FILE (NomArchXMLTemp)
I changed the RAW datatype to clob, but webservice rejected it, and support asked the soap envelope, which I tryed to get with fiddler 4, just all info I could get for v4 is some v2 docs and win 8 setup instructions... (somehow someone managed to leave it to starv)
So I guess i'm facing two problems... How to send 60 BK in a (tt) to service, and get back 60+ KB string...
wonder where could be some solution...
(relevant information https://community.progress.com/community_groups/openedge_development/f/19/t/20414)