XML, CON ARCHIVO ADJUNTO PDF

XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Thu Sep 28, 2023 10:01 pm

Estoy tratando de recuperar un archivo PDF, que se encuentra dentro de un XML,,, pero no he podido , ya que al visualizarlo en Adobe me lo muestra en blanco, donde el XML trae una marca donde empieza el PDF y Finaliza,, estas son

%PDF-1.4 dfhaskfhhuiahakjabv,cxzngiajfmknvjsfjgsdlnl %%EOF

TRY
oHttp := CreateObject( 'MSXML2.XMLHTTP.6.0' )
CATCH
oHttp := CreateObject( 'Microsoft.XMLHTTP' )
END
doc = CreateObject("MSXML2.DOMDocument.6.0")
oHttp:Open( "POST" , ts_servidor , .F. )
oHttp:SetRequestHeader( "SOAPAction" , "token" )
oHttp:SetRequestHeader("Content-Type", "text/xml; charset=UTF-8" )
oHttp:SetRequestHeader( "Connection:", "Keep-Alive" )
doc:LoadXML( cXmlbody )
TRY
ohttp:Send( doc:xml ) //ENVIO XML
CATCH
cErrorMsg:='No Se Pudo Enviar Documento XML...'+CRLF+CRLF+;
'Sin Conexion a Internet o Servidor Con Problemas'
msginfo(cErrorMsg,"Intente Nuevamente")
return .t.
END

response = ohttp:responseText //RESPUESTA DEL WS
//BUSCAR PRINCIPIO Y FINAL
pdfin:=at("%PDF-1.4",response)
pdfend:=At("%EOF",response)
largo:=pdfend-pdfin
resp:=substr(response,pdfin,largo+4)

cFilename:="texto.pdf"
* Grabo el Archivo PDF
ferase(cfilename)
oText:= TTxtFile():New( cfilename )
if oText:Open()
oText:add(alltrim(resp))
endif
oText:close()
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Thu Sep 28, 2023 10:35 pm

Hola buenas tardes como estas?

Creo que el problema tiene que ver con los caracteres especiales en los que se codifican los archivos pdf, generan error, normalmente la data del archivo pdf debe venir encriptada en base64 dentro del xml, luego que descargues el xml, recuperas el nodo en donde viene el pdf y grabas el archivo en el disco local.

Eso nos sucedió alguna vez, y fue la forma de solucionarlo. Cabe aclarar que teníamos el control del lado del servidor y fue fácil encriptar el archivo en base64, antes de descargarlo.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Fri Sep 29, 2023 2:50 pm

leandro wrote:Hola buenas tardes como estas?

Creo que el problema tiene que ver con los caracteres especiales en los que se codifican los archivos pdf, generan error, normalmente la data del archivo pdf debe venir encriptada en base64 dentro del xml, luego que descargues el xml, recuperas el nodo en donde viene el pdf y grabas el archivo en el disco local.

Eso nos sucedió alguna vez, y fue la forma de solucionarlo. Cabe aclarar que teníamos el control del lado del servidor y fue fácil encriptar el archivo en base64, antes de descargarlo.


Hola,, lo intente de esa forma grabar completo el XML en el disco y luego extraer el pdf,, pero no igual me lo muestra en blanco,,, lo he grabado de diferentes formas y me sigue mostrando el pdf en blanco, algo debo estar haciendo mal y no se que es ????, aca dejo el XML de respuesta,, se supone que el PDF empieza don esta el %PDF-1.4 y termina en %%EOF...
Code: Select all  Expand view
------=_Part_2_792699545.1695998776732
Content-Type: application/xop+xml; charset=utf-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <soapPart>

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header xmlns:work="http://bea.com/2004/06/soap/workarea/"><cl:token xmlns:cl="cl.zofri.sve">ba2f0d062320c0362--9a10b889-74-5-a214-9b4d dd61-2219-b:b494c076087:7e31a-a1fad2623008026b-39-1-b580-2495ea-10-2b5d9dc6 -c219bb1be9:c0740f76793:a</cl:token><cl:respuesta xmlns:cl="cl.zofri.sve"><java:resCodigo xmlns:java="java:cl.zofri.sve.utl.bo">0</java:resCodigo><java:resMensaje xmlns:java="java:cl.zofri.sve.utl.bo">Se ejecutó correctamente el servicio. </java:resMensaje><java:resSeveridad xmlns:java="java:cl.zofri.sve.utl.bo">O</java:resSeveridad></cl:respuesta><work:WorkContext xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:work="http://bea.com/2004/06/soap/workarea/"><java class="java.beans.XMLDecoder">
 <string>weblogic.app.svePerfilacionEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.2</string>
 <string>weblogic.app.sveProcDocEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.2</string>
 <string>weblogic.app.knaEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveAplicacionEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveAuditoriaEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string/>
</java></work:WorkContext></env:Header><env:Body><m:emisionBorradoresResponse xmlns:m="http://cl/zofri/sve/prd/wsn"><m:return><Include xmlns="http://www.w3.org/2004/08/xop/include" href="cid:return=850b77a9-a0da-422b-9cc7-eb2dfbc87be8@http://cl/zofri/sve/prd/wsn"/></m:return></m:emisionBorradoresResponse></env:Body></env:Envelope>
------=_Part_2_792699545.1695998776732
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
Content-ID: <return=850b77a9-a0da-422b-9cc7-eb2dfbc87be8@http://cl/zofri/sve/prd/wsn>

%PDF-1.4
%??5 0 obj
<</Length 1808/Filter/FlateDecode>>stream
x?????@???Q??;?%?CI???'??`????????8vT?t?????Tu
?#3?:???????/;??????~?{?wqYe
dUdUy+?\??T??????????W??0?b2u?I??3?j???@????u0h|t??z?g?F?j???ux??? <??Z?w?i?X?????+EVCU??]$??D?/?Q??aF??x??g]?????3?a??R%
>8e
_,?    '
?{;?X?-?4/?? I,?[-??Z­???^?[?!)??5?X?@?#??d??$1BP?O?]??t??Qf??W?3?E?\Yd??2??C??f????t?E?7?????^7e?M???S???%;a?????K?????c!??r]??p'??py???0!?????J??^??P??i:??????7X???????????9E????Z????
?]?Ns?ax??a?]?????7???????+  ???.???8?????????3?^ %??,E?l?5v R?a ?2?1??J0?eE??4?"(y
?m??? ?Bu?ZK]n???????na??u>?? ??~}Ns [??C;????_?Q?_JY\A??)??<h?Vz}??crs??Z'
???h^?g?)??Q?i???2???R^?? ?OA?4yK????I??`z\?????~?A%?*?y7????PN?A??D??KA??{???iJ??66?m?v?E?????L+G??m¾d????M-?S.?r?^?q?Zk????i?x???Nz?????I?NX?h??Va??)??? pE??????SR?!??\?=\Z?c???$?EJq????Wc?VL?y??????y???C???Xe??{?}cc??B??
??b?>/???<??????????????Qfz?O?UP?J?q?klo?????z??*??;?????~t'??
ez;:??? ???????$????I?????L???n????'
???']E???????i??&0??o:3-{G?f?RX??&?^Il???P*??7Lf0??=?8\??6h?;?r?
6f#T???+  ?:Sl????? ?~???a??????????^?5?r?lC?'
?y???'jYG?N?????b+#??????s>????o?z?D_2??????? t??4?A?a???Z????)??????8'R*.?;??,'?QL6???%?4OD?B`?4?R   Ln?????v8z??=&?S??(RS
endstream
endobj
1 0 obj
<</Group<</Type/Group/CS/DeviceRGB/S/Transparency>>/Parent 6 0 R/Contents 5 0 R/Type/Page/Resources<</ProcSet [/PDF /Text /ImageB /ImageC /ImageI]/ColorSpace<</CS/DeviceRGB>>/Font<</F1 2 0 R/F2 3 0 R/F3 4 0 R>>>>/MediaBox[0 0 612 935]>>
endobj
7 0 obj
[1 0 R/XYZ 0 945 0]
endobj
2 0 obj
<</BaseFont/Helvetica/Type/Font/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
3 0 obj
<</BaseFont/Courier/Type/Font/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
4 0 obj
<</BaseFont/Courier-Bold/Type/Font/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
6 0 obj
<</ITXT(2.1.7)/Type/Pages/Count 1/Kids[1 0 R]>>
endobj
8 0 obj
<</Names[(JR_PAGE_ANCHOR_0_1) 7 0 R]>>
endobj
9 0 obj
<</Dests 8 0 R>>
endobj
10 0 obj
<</Names 9 0 R/Type/Catalog/ViewerPreferences<</PrintScaling/AppDefault>>/Pages 6 0 R>>
endobj
11 0 obj
<</Creator(JasperReports \(docIngreso_Borrador\))/Producer(iText 2.1.7 by 1T3XT)/ModDate(D:20230929114616-03'
00')/CreationDate(D:20230929114616-03'00')>>
endobj
xref
0 12
0000000000 65535 f
0000001891 00000 n
0000002178 00000 n
0000002266 00000 n
0000002352 00000 n
0000000015 00000 n
0000002443 00000 n
0000002143 00000 n
0000002506 00000 n
0000002560 00000 n
0000002592 00000 n
0000002696 00000 n
trailer
<</Root 10 0 R/ID [<ab932da16982b1c3acd6ccb3e9409e1b><953cfe49375ad41fbbe6bab7a3bbb99a>]/Info 11 0 R/Size 12>>
startxref
2866
%%EOF

------=_Part_2_792699545.1695998776732--
Last edited by elmoiquique on Fri Sep 29, 2023 3:35 pm, edited 1 time in total.
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Fri Sep 29, 2023 2:53 pm

Si quieres enviame el xml a mi correo e intentamos ayudarte.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Fri Sep 29, 2023 8:34 pm

leandro wrote:Si quieres enviame el xml a mi correo e intentamos ayudarte.

Enviado a tu email,,,, envie el XML de salida donde se encuentra el PDF y el programa que hace el llamado al ws ,,, agradeceria tu ayuda

de principio se ve bien,, pero no se donde esta el problema, si en el archivo de respuesta o en la programacion

saludos
Elmo
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Sat Sep 30, 2023 6:11 pm

Publico el codigo, para ver si alguien encuentra un error, ya que se me fueron todas las ideas,,,, el tema es que cuando me entrega la respuesta el WS,,. el XML no viene completo, como debiera ser,,, en soapui lo probe y funciona,,,, otro programador en Windev lo probo y le funciona

aca dejo el codigo fuente
Code: Select all  Expand view
#include "Fivewin.ch"
#include "Xml.ch"
#include "hbxml.ch"
#include "common.ch"
#Include "winapi.ch"
#Include "objects.ch"

///----------------------------------------------------------------------------
///----------------------------------------------------------------------------
///RECUPERA DOCUMENTO ADJUNTO A IMPRIMIR
///----------------------------------------------------------------------------
FUNCTION RDOCLPT()
 LOCAL oHttp,Doc,cxmLbody,oIni,nHandle
 LOCAL ts_token:="",ts_exit:=.t.,tw_servidor:='',ts_mj1:='',ts_modulo:=.f.
 LOCAL ts_servidor:="http://sve.zofri.cl/sveProcDocWSN/Emision?WSDL"
 LOCAL ts_etapa:="101"


 if .NOT.FILE("\QASVE\config\config.ini")
  msgstop('No Existe Token Valido, Obtenga uno Valido','Verifique')
  return .f.
 else
  INI oIni File "\QASVE\config\config.ini"
  GET ts_modulo SECTION "WEBSERVICE" ENTRY "Modulo "+ts_etapa OF oIni
  if ts_modulo
   GET ts_token SECTION "TOKEN SESION QA "+e_rutemp ENTRY "Token" OF oIni
   GET tw_servidor SECTION "WEBSERVICE" ENTRY "Serverqa" OF oIni
  else
   GET ts_token SECTION "TOKEN SESION "+e_rutemp ENTRY "Token" OF oIni
   GET tw_servidor SECTION "WEBSERVICE" ENTRY "Servidor" OF oIni
  endif
 endif
 if empty(ts_token)
  msginfo('Debe Obtener un Token de Inicio para Autentificarse en Web Service','Token de Sesion')
  return .f.
 endif
 ts_servidor:=tw_servidor+ts_servidor

 cXmlBody:= '' +;
  '<?xml version="1.0" encoding="utf-8"?>' + ;
  '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cl="cl.zofri.sve" xmlns:wsn="http://cl/zofri/sve/prd/wsn">'+;
  ' <soapenv:Header>'+;
  '  <cl:token>'+ts_token+'</cl:token>'+;
  ' </soapenv:Header>'+;
  ' <soapenv:Body>'+;
  '  <wsn:emisionDocumento>'+;
  '   <wsn:codigoAduaneroDoc>101-23-042489</wsn:codigoAduaneroDoc>'+;
  '  <wsn:tipoEmision>E</wsn:tipoEmision>'+;
  '  </wsn:emisionDocumento>'+;
  ' </soapenv:Body>'+;
  '</soapenv:Envelope>'


   ?cxmlbody
 TRY
  oHttp := CreateObject( 'MSXML2.XMLHTTP' )
 CATCH
  oHttp := CreateObject( 'Microsoft.XMLHTTP' )
 END
 doc = CreateObject("MSXML2.DOMDocument.6.0")

 oHttp:Open( "POST" , ts_servidor+' HTTP/1.1' , .F. )
 oHttp:SetRequestHeader( "Accept-Encoding","gzip,deflate" )
 oHttp:SetRequestHeader( "Content-Type", "text/xml;charset=UTF-8" )
 oHttp:SetRequestHeader( "SOAPAction" , "" )
 oHttp:SetRequestHeader( "Content-Length", "622")
 ohttp:setrequestHeader( "Host", "sve.zofri.cl:80" )
 oHttp:SetRequestHeader( "Connection:", "Keep-Alive" )
 oHttp:SetReQuestHeader( "User-Agent" , "Apache-HttpClient/4.5.5 (java 16.0.1)")

 doc:LoadXML( cXmlbody )

 TRY
  // ohttp:Send( doc:xml )
  ohttp:send(cxmlbody)
 CATCH
  cErrorMsg:='No Se Pudo Enviar Documento XML...'+CRLF+CRLF+;
             'Sin Conexion a Internet o Servidor Con Problemas'
  msginfo(cErrorMsg,"Intente Nuevamente")
  return .t.
 END

 response = ohttp:responseText

 //crear un archivo para leer tag
 cFilename:="texto.xml"
  MEMOWRIT( cfilename, response, .F. )

 //leer archivo para extraer el factura pdf
  CTXT:=MEMOREAD(CFILENAME)

  pdfin:=at("%PDF-1.4",CTXT)
  pdfend:=At("%EOF",CTXT)
  largo:=pdfend-pdfin
  Cresp:=substr(CTXT,pdfin,largo+4)

  CPDF:="TEXTO.PDF"
  MEMOWRIT( cPdf, CRESP, .F. )

RETURN .T.
 


XML CON ERROR FIVEWIN
Code: Select all  Expand view
------=_Part_2382_1164276092.1696025213279
Content-Type: application/xop+xml; charset=utf-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <soapPart>

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header xmlns:work="http://bea.com/2004/06/soap/workarea/"><cl:token xmlns:cl="cl.zofri.sve">c72599064c208f3f2--48404ce9-44-c-9211-9973 f851-2793-4:94608e6670d:3765b-72589267c002f2f0-34-4-4ce0-a49cf9-13-29439fc5 -a713d49986:8b6076d63d6:b</cl:token><cl:respuesta xmlns:cl="cl.zofri.sve"><java:resCodigo xmlns:java="java:cl.zofri.sve.utl.bo">0</java:resCodigo><java:resMensaje xmlns:java="java:cl.zofri.sve.utl.bo">Se ejecutó correctamente el servicio. </java:resMensaje><java:resSeveridad xmlns:java="java:cl.zofri.sve.utl.bo">O</java:resSeveridad></cl:respuesta><work:WorkContext xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:work="http://bea.com/2004/06/soap/workarea/"><java class="java.beans.XMLDecoder">
 <string>weblogic.app.sveParametrosEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveCoexistenciaEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.svePerfilacionEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveProcDocEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.1</string>
 <string>weblogic.app.knaEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveAplicacionEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveReglasEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string>weblogic.app.sveAuditoriaEAR</string>
 <int>214</int>
 <string>weblogic.workarea.StringWorkContext</string>
 <string>1.61.0</string>
 <string/>
</java></work:WorkContext></env:Header><env:Body><m:emisionDocumentoResponse xmlns:m="http://cl/zofri/sve/prd/wsn"><m:return><Include xmlns="http://www.w3.org/2004/08/xop/include" href="cid:return=aa27c5a6-f005-40d4-a43b-f901af0d963e@http://cl/zofri/sve/prd/wsn"/></m:return></m:emisionDocumentoResponse></env:Body></env:Envelope>
------=_Part_2382_1164276092.1696025213279
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
Content-ID: <return=aa27c5a6-f005-40d4-a43b-f901af0d963e@http://cl/zofri/sve/prd/wsn>

%PDF-1.4
%??4 0 obj
<</Type/XObject/ColorSpace[/Indexed/DeviceRGB 255(
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Sat Sep 30, 2023 6:22 pm

XML CORRECTO WINDEV,, ASI DEBIERA SALIR O VERSE

------=_Part_214_1180907984.1695820569260
Content-Type: application/xop+xml; charset=utf-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-ID: <soapPart>

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header xmlns:work="http://bea.com/2004/06/soap/workarea/"><cl:token xmlns:cl="cl.zofri.sve">ab279406842379312--60005329-b4-7-1209-780e 2111-db0e-f:043161169f4:e2301-b87842684036921c-36-0-5c20-e497e1-0c-281e72c1 -4b1e5f00e3:63119046e83:1</cl:token><cl:respuesta xmlns:cl="cl.zofri.sve"><java:resCodigo xmlns:java="java:cl.zofri.sve.utl.bo">0</java:resCodigo><java:resMensaje xmlns:java="java:cl.zofri.sve.utl.bo">Se ejecutó correctamente el servicio. </java:resMensaje><java:resSeveridad xmlns:java="java:cl.zofri.sve.utl.bo">O</java:resSeveridad></cl:respuesta><work:WorkContext xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" xmlns:work="http://bea.com/2004/06/soap/workarea/"><java class="java.beans.XMLDecoder">
<string>weblogic.app.sveParametrosEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.sveCoexistenciaEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.svePerfilacionEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.sveProcDocEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.1</string>
<string>weblogic.app.knaEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.sveAplicacionEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.sveReglasEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string>weblogic.app.sveAuditoriaEAR</string>
<int>214</int>
<string>weblogic.workarea.StringWorkContext</string>
<string>1.61.0</string>
<string/>
</java></work:WorkContext></env:Header><env:Body><m:emisionDocumentoResponse xmlns:m="http://cl/zofri/sve/prd/wsn"><m:return><Include xmlns="http://www.w3.org/2004/08/xop/include" href="cid:return=a6a6877f-9091-400a-9ea7-e096b9307ca7@http://cl/zofri/sve/prd/wsn"/></m:return></m:emisionDocumentoResponse></env:Body></env:Envelope>
------=_Part_214_1180907984.1695820569260
Content-Type: application/octet-stream
Content-Transfer-Encoding: binary
Content-ID: <return=a6a6877f-9091-400a-9ea7-e096b9307ca7@http://cl/zofri/sve/prd/wsn>

%PDF-1.4
%âãÏÓ
5 0 obj
<</Type/XObject/ColorSpace[/Indexed/DeviceRGB 255( € € €€ €€ € €€€€€ü ÀÀÀÿ ÿ ÿÿ ÿÿ ÿ ÿÿÿÿÿ)]/Subtype/Image/BitsPerComponent 8/Width 1/Length 9/Height 1/Filter/FlateDecode/Mask [8 8 ]>>stream
xϋ
endstream
endobj
6 0 obj
<</Length 950/Filter/FlateDecode>>stream
xœ½˜]nã6€ßuŠAŸ¶€Í ÿ)剖å­It$9»I§´@P¤'ëz†^¨#9Ùl²‘܆naò…á|œáüÉɪO¤—¦Ðß&EŸœ'Ά»^Ãg*5ô÷ÉɆGè¿$~ìdŸE~¾ÿv‘œipJ1©ökÅãZ%~¿K>”ç;zƒ.„»7ô]ßÐõvÜÏ4IZq„6¢” FL®‹Ïý
}¶¾9+Úk•<h”KL—…n3‘DgG Ó9¢Fgx¬eüe$ÂàaSb¤ÚjËŒŒîzÚž"b¼4p 5t[¬˜dn}çÏ
¨Ê&—6ÀPÑ‘?:SΙz}µi)ø¯BãaCñŸÇ[9@-…äLN§K”cøGÂD* ¸2::^äP­Ö3k™¢ÍcqÈÁâìšËX‡Ê·°ëbLq²M‘¿Æˆ{IËCÓ3XÛЕ}€M‘ÿä3@¾DqŒ3ùFþc~óG©M•&º5 hë¦ÑÔ(ï» ´È}½*mv«2÷yùWs ~*¦ùUÈ}U®ýš¨]_6!ƒãt^=&)&ådµ~hR¨Ä
Ô¾¹òT!0…¾Ú’3èöâiOJSGJM:ÏzÚ"/:7_ïZ_U~Û_•ãægÓ>–aÿk'o¥àœaú¹8ó‰ð£˜«‹6§ò\ú.¶fêá”L:e ÆÚfÍ@âck$çv±‹M1Z0süŠ <‚J‹ ®Žá.…„qlzâé‹:ãCS¦šÎQ-Å)Õ¼Ìiá4çüt,{,{õ£n§Ð¼Ìû§šA5î©f _À÷åàôMJ3%^jlB½j‹¬/ªâ¢ìB Jþp
uXUÈòvÙ_(™êOËUÿ¶JÌ­}½IÊ*Z>5dlX³mÖ¯tAÙlØ›
…`\¾Tè׃º“a
i,7°kÊžeÂâBk¡ŽÖ¶Ç
 cj2 š‹ ´Ò Xíª>t
 Ø5A± éWQ×þ-Ëtj˜{UÇ·mYй­ŠjxNbGÈ0ÎÝÌdú/3lxѲÇ{3~s)õj¢ãrÅŒ±Œ;=lj!·§I=lúKðíÙ®ïjŠïu|ªþ¿K'gý.™£IH8³Œ(•™#…Ž³veGÅ­½xWN >$€Œ[¤‘nD>~çN‘£%IÃÉç/Ö¿ÁyrNÂÜìwF{þVæ—û;Ü ½ݽ Ùµ_Öß&˯ßfÿÓÓMíØÿ8½×
endstream
endobj
1 0 obj
<</Group<</Type/Group/CS/DeviceRGB/S/Transparency>>/Parent 7 0 R/Contents 6 0 R/Type/Page/Resources<</XObject<</img0 5 0 R/Xf1 4 0 R>>/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]/ColorSpace<</CS/DeviceRGB>>/Font<</F1 2 0 R/F2 3 0 R>>>>/MediaBox[0 0 612 935]>>
endobj
8 0 obj
[1 0 R/XYZ 0 945 0]
endobj
2 0 obj
<</BaseFont/Helvetica/Type/Font/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
3 0 obj
<</BaseFont/Courier/Type/Font/Encoding/WinAnsiEncoding/Subtype/Type1>>
endobj
4 0 obj
<</Type/XObject/Resources<</ProcSet [/PDF /Text /ImageB /ImageC /ImageI]>>/Subtype/Form/BBox[0 0 725 270]/Matrix [1 0 0 1 0 0]/Length 2367/FormType 1/Filter/FlateDecode>>stream
xœ½šËŽäÖD÷õý>«êþ‚/´ÒBÐN°¡Ó€¼ñï›ÍŒ|D
0 Ì¢y†‘gØ=
Æ%ëþù˜>–×ôaÇ×éãóñZöüúõ÷Ÿß??þõ˜?þóX>þv¤þxÌÓÇß¿ü:}üöøóøó
þ·ñ¿èŸ‰ÔkÙ~Œ§ ӏi]ç×ñóüןÿó¸†åù>DûëÇçñg¯_ñ¥¾žç~üãñÜ"{\À\s8>óÈô㜽kþ½×9Ÿ3ÈôãœK͏Qçp|Πӏs~^¦Ìûñ¯¾q6à‹AIžKÌ’çh€Ï!FP’׳IÞk“ |1‚’Œ©$Ër|/œ
ð9ÄR²¬#æɾ6 À
#(Ésj’ç«I >‡AI^[“¼ç&øb)Yçã‡ô„d]§€Ï„s.b%ÙßMò<~–{H >‡AIÆsöئWI|1‚”lóÖ$k»’€s.b%ُïo Ék
øLð9ÄJòz•dŸö:àsˆ¤dŸ—&™G“ ιˆ”d9.m
ɺ|&øb%Ù¦&y¾›àsˆ”d´+ynǏ!î–>7ú• ¹’ç¾ÄÜ!ÙG“ ü^ŠAIÞS“¼_g7¸àsˆ”dl1wÜߧ¹$>‡AÝãç½I–¥I ~kGŒ nç £Bòãù¸§OóÙKíЭ¢Îé^K~œ#,K•Q9ùqŽyL°,UEÆ5hÌc‚eimdÒS9‰¤rSU'™¶Õ`•'•›ªšÉ¤³jÔ“ÊM5^¥Zæ~«w¨QO*—ªµ”ÝEýÎxR¹©ªs¾Ú¨Ýé5ú櫤¶:Ucé£N¦¥•†CzR¹T­·LÍ!G‘Tnªj¯CõZZ 9ÔèÎß0õ^¯ºSµMSë"‡õ¤r©Z7štœCŽ"©ÜT[¶ˆÝ–[zR¹©ªÕŒûP£žT.Uë6ÓÖ4Š¤rSUÙtŸCzR¹©¶WSí[S9Ô¨'•›j´«¢Ô萫rU­óLÛp
I妪æ3íÄjÔ“ÊMUýgÜŒ€õ¤rë™jA“~t¨nñ¤r»ÉÄ9Ó¦ÿQœí0B՝©‘ÊÆ,‚]GíhڝÀ˜GX°ë¨&íR¢ƒæì:.ˣö™»ŠÈ+“s{7‡] œä•ÉIMl7M=؁¼29©’¿J÷Í
NòÊÝÉ…jñxWNpþî!¯LNx,§–88È+““*Ö®½ NòÊݹ®/vn;Áሼ29©tíÒ¤Áé@^¹;¹2-žË Gä•É¹¼Ùyߥå@^™œÏµ9ò™µ•êÄNä•ÉIÅ|8ÇÌNp:W&çx“SÁé@^¹;¹õífU0ÈyerÒr ŸwË NòÊä¤ò¶K¹§ye* jq»iùAÎÈ+““êÜnêÞ9È+““zÝ.½œä•©-©àíº gC"¯L÷º8mº ÏÓ⠁v¡¶&,€1‹°`×QÍ›.€1°`×QÍÛe0haÁ®ãŽ?ºvݸ÷À¡ˆ¼29iaßv~:W&'­#òù»œàt ¯LN<[‡sYégçt ¯ÜÜñùz¹œàüÝC^™œ´Ž°o;?È+““Öùò¹œàt ¯Üë4Zk‚eå~‡#òÊ䤎·|šN'8È+w'¯#ìº ‡#òÊä\fv~Óùé@^™œ´Ž°ë œä•ÉI8ß;Áé@^™œ´Ž°o;?È+w'¯#ìÛ~Gä•É‰çø*ˆàt ¯LNêx»¬‚Ӂ¼2u¼Ý¬9#¯LNêx»Y8§yerRÇÛe
œä•©-©ãíº gC"¯L÷º8mºp<Zë€:ÊH[„D– Ž1êY&’QÅ›. cܳL$£‚·Ký>îY&’q·ÛµûÃ€¸ ©Ùí¦ùßdô¸ ©×-ŸËÓèœ
 ²‘ZýhÂIšÎ9$#wºÝôó«dã»·šåySáqA2Æ»ò0^ºÙ9ˆ ²OôiÄ€4:§Âã‚lÜù»Æ'ÑetNÅNßµ®N#^ó‡ñÒôΩ𸠹Çí¦çß]¸ םÛV?9+ýxš;?o‚÷]™
 ’1ž¸Ó8ó5‚C¸ —Þ‹ö]÷¦Âã‚l|Îl|/ltN…ÇÙ8øµÛÁ©|ãzÜÜvÓì£d#õ¶Ýôúɩ𸠩µíÒêàTx\:Û®îœµçqA¾?â¬I£;m_;ÃÎV¯£HT½‡ëÜ)æ<ÉÔM½¯MºÜ)f=ÉÔM½¬M‹|ôYO2uÕ´]+÷ÄGXt½Q-Þµ§Î1ç=,H:—ŸºÛvÍy v•u~´žE蘿$]¯æC·=Iç˜ó$?ü§îë»×ô‰9ïaAÒõš·Ë"À1ç=,ØuTùù)AôÔç$ÝNW§eí˜ó;]TyûÀ=txÏ’rÌy vÞë§î¶—caAÒõÎ'õªÐs~¥ï]¼5vÞÔ¸ 9ïaÁ®£þµk;>° ézùægç©sÌy ’Î_Å×|'cÎ{Xtƒ®NJ˜óƒ¯n\®Ž:×®<ºaAÒõµkŸ˜ó$]o[Ó.漇©¿zÕÚ¥ˆ³´<,H7(œ4)bìq‹.΃8_¥ó\ÃØåÖ[˜ {zÑš”0ö¹õ&èž^³¦<Ú¨ º‡6?ƒÏJs\¨~™HÖÛÛ¾©Û÷,Éz»Zl›NvQSõ2‘¬7w¾Z¯n<1Ʊ§¨Ë¨Yí›fŒß"ìj»íäö6=eþ0ž2lÞš®ÔeØÍ2¼ÁÎÞq\‚–+‘ÌŸªS&‹­o Ï2‘¬7ª]ú›º©n™Hö5mßÔkŒ{–©Ëð²û6Äxlì&"™ïkK™4-6{ƒ°!Žˆd½Ióóò”9Æ8v¹Ývpû¤<ï€\Ú±£.Ôï+uu´Å¶ì”a—v4öh2i÷ö¼îÍÜ°Ž1Ž½nD$ë
jÚ¯±Žê•‰nú½?íÚ®£Éb¿Ûmó¶ªM™v«oˆ£je"YïNÓf-qT¬LÔI½9íÒ«ØGµÊÔe?µ?ÿV!—
endstream
endobj
7 0 obj
<</ITXT(2.1.7)/Type/Pages/Count 1/Kids[1 0 R]>>
endobj
9 0 obj
<</Names[(JR_PAGE_ANCHOR_0_1) 8 0 R]>>
endobj
10 0 obj
<</Dests 9 0 R>>
endobj
11 0 obj
<</Names 10 0 R/Type/Catalog/ViewerPreferences<</PrintScaling/AppDefault>>/Pages 7 0 R>>
endobj
12 0 obj
<</Creator(JasperReports \(docTraspasoVendedor_Electronico\))/Producer(iText 2.1.7 by 1T3XT)/ModDate(D:20230925094216-03'00')/CreationDate(D:20230925094216-03'00')>>
endobj
xref
0 13
0000000000 65535 f
0000001986 00000 n
0000002297 00000 n
0000002385 00000 n
0000002471 00000 n
0000000015 00000 n
0000000969 00000 n
0000005041 00000 n
0000002262 00000 n
0000005104 00000 n
0000005158 00000 n
0000005191 00000 n
0000005296 00000 n
trailer
<</Root 11 0 R/ID [<c180ff39daf302e10978e630dd222557><5b79c04840413d755743e0c67d00611c>]/Info 12 0 R/Size 13>>
startxref
5478
%%EOF

------=_Part_214_1180907984.1695820569260--
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Sun Oct 01, 2023 11:05 pm

Amigo como vas?

Pues intente al menos de manera manual revisar el pdf que viene en el xml, pero ni siquiera así se puede mirar de manera correcta.

Creo que tambien se hace difícil leer el xml que publicaste, parece no tener la estructura correcta.

Image
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Tue Oct 03, 2023 1:08 pm

leandro wrote:Amigo como vas?

Pues intente al menos de manera manual revisar el pdf que viene en el xml, pero ni siquiera así se puede mirar de manera correcta.

Creo que tambien se hace difícil leer el xml que publicaste, parece no tener la estructura correcta.

Image


Hola Leandro,, gracias por contestar,,, puede ser que al ser copiado a foro no lleve algun caracter de control oculto dentro del archivo,,, te envio el original que si funciona que es de un colega que trabaja en otro lenguaje,,, y veras que si se puede.... a mi no me funciona para nada,,, mas encima no lo trae completo.... te lo envio a tu email,,, ambos xml para que veas la diferencia

agradeceria tu ayuda

Salduos
Elmo
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Tue Oct 03, 2023 2:54 pm

Creo que de esta manera lo puedes solucionar, aunque primero debes descargar el xml en el disco local

Image

Image

Code: Select all  Expand view

#include "fivewin.ch"

function main()
Local oHandle
Local cIni := "%PDF-1.4"
Local cFin := "%%EOF"
Local cRuta := "c:\ayuda\elarchivo.pdf"
Local cText := MemoRead("c:\ayuda\textoWinDev.xml")

Local cResu := extract(cText, cIni, cFin )

cResu := cIni+CRLF+cResu+CRLF+cFin

oHandle := FCreate(cRuta)
FWrite(oHandle,cResu,Len(cResu))
FClose(oHandle)

Return nil


Function extract(cToSearch, cBeginDelim, cEndDelim )
LOCAL cValue, nPos
cValue = cToSearch

nPos = AT(cBeginDelim, cValue)
IF nPos = 0
    RETURN ""
ENDIF

cValue = SUBS(cValue, nPos + LEN(cBeginDelim))
nPos = AT(cEndDelim,cValue)
IF nPos = 0
    RETURN ""
ENDIF

cValue = LEFT(cValue,nPos - 1)

RETURN cValue
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Tue Oct 03, 2023 3:39 pm

leandro wrote:Creo que de esta manera lo puedes solucionar, aunque primero debes descargar el xml en el disco local

Image

Image

Code: Select all  Expand view

#include "fivewin.ch"

function main()
Local oHandle
Local cIni := "%PDF-1.4"
Local cFin := "%%EOF"
Local cRuta := "c:\ayuda\elarchivo.pdf"
Local cText := MemoRead("c:\ayuda\textoWinDev.xml")

Local cResu := extract(cText, cIni, cFin )

cResu := cIni+CRLF+cResu+CRLF+cFin

oHandle := FCreate(cRuta)
FWrite(oHandle,cResu,Len(cResu))
FClose(oHandle)

Return nil


Function extract(cToSearch, cBeginDelim, cEndDelim )
LOCAL cValue, nPos
cValue = cToSearch

nPos = AT(cBeginDelim, cValue)
IF nPos = 0
    RETURN ""
ENDIF

cValue = SUBS(cValue, nPos + LEN(cBeginDelim))
nPos = AT(cEndDelim,cValue)
IF nPos = 0
    RETURN ""
ENDIF

cValue = LEFT(cValue,nPos - 1)

RETURN cValue
 


Hola Leandro

Si efectivamente es asi como tu dices, pero el xml que me muestras no es el que yo recupero,, ese es uno de muestra que me envio otro programador,, el mio es el TEXTOFW, es es que no logro recuperarlo completo, solo una parte,,, viene incompleto,,, te envio el ejecutable y los programas fuentes por email,,, a ver si tu le encuentras un error,,, de antemano gracias
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Tue Oct 03, 2023 3:52 pm

No te puedo enviar un adjunto por email,,,se devuelve por el attach,,, aca coloco el fuente que trabaja hace lallamda ,,se comunica y recibe la respuesta iincompleta



Code: Select all  Expand view
#include "Fivewin.ch"
#include "Xml.ch"
#include "hbxml.ch"
#include "common.ch"
#Include "winapi.ch"
#Include "objects.ch"

FUNCTION OTWS()  //Obtener Token Web Service
 LOCAL oHttp,Doc,cxmLbody,oIni,oDlg2,oSay,oText,response,res
 LOCAL ts_token:="",cErrormsg:=""
 LOCAL ts_exit:=.f.,tw_servidor:='',ts_mente:=.t.
 LOCAL ts_servidor:="http://sve.zofri.cl/svePerfilacionWSN/Sesion?WSDL"
 LOCAL ts_usuario:="nilce.navarrete"
 LOCAL ts_clave:="5700masa"
 LOCAL ts_nro:="99511570"
 LOCAL ts_dig:="0"

 if !isinternet()
  msgalert('Computador Sin Conexion a Internet','Verifique')
  return .f.
 endif

 //CONSTRUYE XML, PARA SOLICITAR TOKEN DE SESION
 cXmlBody := '' + ;
 '<?xml version="1.0" encoding="utf-8"?>' + ;
 '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cl="cl.zofri.sve" xmlns:wsn="http://cl/zofri/sve/prf/wsn" xmlns:java="java:cl.zofri.sve.app.eo">'+;
 ' <soapenv:Header>'+;
 ' <cl:token></cl:token>'+;
 ' </soapenv:Header>'+;
 ' <soapenv:Body>'+;
 ' <wsn:login>'+;
 ' <wsn:usuario>'+alltrim(ts_usuario)+'</wsn:usuario>'+;
 ' <wsn:clave>'+alltrim(ts_clave)+'</wsn:clave>'+;
 ' <wsn:rutEmpresa>'+;
 ' <java:Dv>'+ts_dig+'</java:Dv>'+;
 ' <java:Nro>'+ts_nro+'</java:Nro>'+;
 ' </wsn:rutEmpresa>'+;
 ' <wsn:rutAgencia></wsn:rutAgencia>'+;
 ' </wsn:login>'+;
 ' </soapenv:Body>'+;
 '</soapenv:Envelope>'


 ohttp:=tipclienthttp():new(ts_servidor)
 if .not. ohttp:open()
  msgstop('Servidor Web '+ts_servidor,'Fuera de Servicio')
  return .f.
 endif

 doc   = CreateObject( "MSXML2.DOMDocument" )
 ohttp = CreateObject( "MSXML2.XMLHTTP" )
 ohttp:Open( "POST" , ts_servidor , .F. )
 ohttp:SetRequestHeader( "SOAPAction" , "token" )
 ohttp:SetRequestHeader( "Content-Type" , "text/xml; charset=utf-8" )

 doc:LoadXML( cXmlBody )

 TRY
  ohttp:Send( doc:xml )
 CATCH
  cErrorMsg:='No Se Pudo Enviar Documento XML...'+CRLF+CRLF+;
             'Sin Conexion a Internet o Servidor Con Problemas'
  msginfo(cErrorMsg,"Intente Nuevamente")
  return .t.
 END
 response = ohttp:responseText

 If .Not. Empty( Alltrim( response ) )
  res = CreateObject( "MSXML2.DOMDocument" )
  res:LoadXML( ohttp:responseText )
  txt = res:selectSingleNode( "//cl:token" )
  if txt != NIL
   ts_token := txt:Text
   txt = res:selectSingleNode( "//java:resMensaje" )
   cRetorno := txt:Text
  else
   ts_token:=""
   cRetorno = "### Hubo un Problema Con El Servidor, Mensaje No Pudo Ser Entregado ###"
  endif
  if empty(alltrim(ts_token))
   cRetorno = "### No Fue Posible Generar Proceso ###"
  Endif
 endif
 msginfo(cretorno,'Resultado del Proceso')
 Release doc
 Release ohttp
 Release res
 Release response
 RDOCLPT(TS_TOKEN)
RETURN .T.
//-----------------------------------------------------------------------------


///----------------------------------------------------------------------------
///----------------------------------------------------------------------------
///RECUPERA DOCUMENTO ADJUNTO A IMPRIMIR
///----------------------------------------------------------------------------
FUNCTION RDOCLPT(TS_TOKEN)
 LOCAL oHttp,Doc,cxmLbody,oIni,nHandle
 LOCAL ts_exit:=.t.,tw_servidor:='',ts_mj1:='',ts_modulo:=.f.
 LOCAL ts_servidor:="http://sve.zofri.cl/sveProcDocWSN/Emision?WSDL"


 if empty(ts_token)
  msginfo('Debe Obtener un Token de Inicio para Autentificarse en Web Service','Token de Sesion')
  return .f.
 endif

 cXmlBody:= '' +;
  '<?xml version="1.0" encoding="utf-8"?>' + ;
  '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cl="cl.zofri.sve" xmlns:wsn="http://cl/zofri/sve/prd/wsn">'+;
  ' <soapenv:Header>'+;
  '  <cl:token>'+ts_token+'</cl:token>'+;
  ' </soapenv:Header>'+;
  ' <soapenv:Body>'+;
  '  <wsn:emisionDocumento>'+;
  '   <wsn:codigoAduaneroDoc>101-23-042489</wsn:codigoAduaneroDoc>'+;
  '  <wsn:tipoEmision>E</wsn:tipoEmision>'+;
  '  </wsn:emisionDocumento>'+;
  ' </soapenv:Body>'+;
  '</soapenv:Envelope>'

 TRY
  oHttp := CreateObject( 'MSXML2.XMLHTTP' )
 CATCH
  oHttp := CreateObject( 'Microsoft.XMLHTTP' )
 END
 doc = CreateObject("MSXML2.DOMDocument.6.0")

 oHttp:Open( "POST" , ts_servidor+' HTTP/1.1' , .F. )
 oHttp:SetRequestHeader( "Accept-Encoding","gzip,deflate" )
 oHttp:SetRequestHeader( "Content-Type", "text/xml;charset=UTF-8" )
 oHttp:SetRequestHeader( "SOAPAction" , "" )
 oHttp:SetRequestHeader( "Content-Length", "622")
 ohttp:setrequestHeader( "Host", "sve.zofri.cl:80" )
 oHttp:SetRequestHeader( "Connection:", "Keep-Alive" )
 oHttp:SetReQuestHeader( "User-Agent" , "Apache-HttpClient/4.5.5 (java 16.0.1)")

 doc:LoadXML( cXmlbody )

 TRY
  // ohttp:Send( doc:xml )
  ohttp:send(cxmlbody)
 CATCH
  cErrorMsg:='No Se Pudo Enviar Documento XML...'+CRLF+CRLF+;
             'Sin Conexion a Internet o Servidor Con Problemas'
  msginfo(cErrorMsg,"Intente Nuevamente")
  return .t.
 END

 response = ohttp:responseText

 //crear un archivo para leer tag
 cFilename:="texto.xml"
  MEMOWRIT( cfilename, response, .F. )
 ?'PAUSA'
 //leer archivo para extraer el factura pdf
  CTXT:=MEMOREAD(CFILENAME)

  pdfin:=at("%PDF-1.4",CTXT)
  pdfend:=At("%EOF",CTXT)
  largo:=pdfend-pdfin
  Cresp:=substr(CTXT,pdfin,largo+4)

  //SE CREA EL ARCHIVO PDF
  CPDF:="TEXTO.PDF"
  MEMOWRIT( cPdf, CRESP, .F. )

RETURN .T.


 
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Tue Oct 03, 2023 3:56 pm

En ese caso nos tocaría mirar la forma como recuperas el xml, por que realmente no viene completo, y creo que eso tiene que ver con los caracteres especiales que componen el archivo pdf

Image
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby elmoiquique » Tue Oct 03, 2023 4:01 pm

leandro wrote:En ese caso nos tocaría mirar la forma como recuperas el xml, por que realmente no viene completo, y creo que eso tiene que ver con los caracteres especiales que componen el archivo pdf

Image


Envie el programa fuente,,, con el cual recupero ese XML,,, pero como le dije a antonio,,, no se si es por version antigua o error de programacion,,, no se si puedes compilar el fuente enviado y probarlo a ver que resultado te da,,, si el mismo mio o diferente

gracias por tu tiempo
Fivewin-Xharbour 11.07, Iquique, Chile
elmoiquique
 
Posts: 309
Joined: Wed May 16, 2007 9:40 pm
Location: Region de Ñuble, Chile

Re: XML, CON ARCHIVO ADJUNTO PDF

Postby leandro » Tue Oct 03, 2023 4:19 pm

Ok vale, en la tarde le pego la revisada al código que enviaste.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1669
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 53 guests