Problema TSmtp y comillas dobles en archivos atachados

Post Reply
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Problema TSmtp y comillas dobles en archivos atachados

Post by dbzap »

Al parecer cuando se envia un archivo con comillas dobles en su interior, el "SendChunk" ( desde la TSocket, a su vez desde TSmtp ) falla, enviando algo incomprensible.
Y particularmente para el XML el archivo esta firmado digitalmente, por lo tanto es inservible al llegar.
Les adjunto el archivo original y el enviado.
Agradeceré cualquier ayuda.
Saludos

Parte del archivo original... ( fijarse en "1.0" y luego otras de comillas )

Code: Select all

....
<?xml version="1.0" encoding="ISO-8859-1"?>
<EnvioDTE xmlns="http://www.sii.cl/SiiDte" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" xsi:schemaLocation="http://www.sii.cl/SiiDte EnvioDTE_v10.xsd">
<SetDTE ID="SetDoc">
 <Caratula version="1.0">
  <RutEmisor>96544490-4</RutEmisor>
  <RutEnvia>12455078-5</RutEnvia>
  <RutReceptor>96692790-9</RutReceptor>
  <FchResol>2005-12-29</FchResol>
  <NroResol>146</NroResol>
  <TmstFirmaEnv>2006-12-13T10:29:19</TmstFirmaEnv>
  <SubTotDTE>
    <TpoDTE>33</TpoDTE>
    <NroDTE>1</NroDTE>
  </SubTotDTE>
 </Caratula>
<DTE version="1.0">        <Documento ID="F12427T33">
            <Encabezado>
....    
codigo atachado resultado del envio...( aqui ya no existen las parejas de comillas )

Code: Select all

....
<?xml version=.0" encoding=SO-8859-1"?>
<EnvioDTE xmlns=ttp://www.sii.cl/SiiDte" xmlns:xsi=ttp://www.w3.org/2001/XMLSchema-instance" version=.0" xsi:schemaLocation=ttp://www.sii.cl/SiiDte EnvioDTE_v10.xsd">
<SetDTE ID=etDoc">
 <Caratula version=.0">
  <RutEmisor>96544490-4</RutEmisor>
  <RutEnvia>12455078-5</RutEnvia>
  <RutReceptor>96692790-9</RutReceptor>
  <FchResol>2005-12-29</FchResol>
  <NroResol>146</NroResol>
  <TmstFirmaEnv>2006-12-13T10:29:19</TmstFirmaEnv>
  <SubTotDTE>
    <TpoDTE>33</TpoDTE>
    <NroDTE>1</NroDTE>
  </SubTotDTE>
 </Caratula>
<DTE version=.0">        <Documento ID=12427T33">
            <Encabezado>
.....
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Julio,

Por lo visto desaparece la primera " y el siguiente caracter.

Quiza una solución rápida sería hacer:

cData = StrTran( cData, '="', '="."' )

de forma que desaparezca el ". extra y quede la " siguiente. Puedes probarlo ? gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Antonio.
Desafortunadamente es un documento firmado digitalmente, lo cual significa que no se puede cambiar absolutamente nada del contenido, ni siquiera un espacio.

Lo que he estado observando es que al parecer las funciones FMIMEENC() y ::SendFile() se estan comiendo parte de mi mensaje.

He intentado usar la funcion del maestro Luis Krause, pero tb marca el mismo error, asi es que presumo que esta entre estas dos funciones.

Aun estoy con el problema.

Gracias.
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Julio,

Esto funciona bien, por lo que podemos descartar fallo en ellas:

MsgInfo( CMIMEDEC( CMIMEENC( '="test"' ) ) )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Antonio.
La funcion contenida en TSMTP no es CMIMEENC,
es FMimeEnc( ::aFiles[ n ], "__temp" )
Desconozco cual es la diferencia entre ambas.
Saludos
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Julio,

Salvo error por mi parte (lo revisé temprano esta mañana), FMimeEnc() llama a CMIMEENC()
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Lo que encuentro extraño es que envio el mismo archivo pero cambiando la extension desde XML a TXT y lo envia perfecto.
Si revisas el codigo del TSmtp veras que existe la pasada via FMimeEnc() solo cuando no es TXT, por eso tiendo a pensar que existe algo malo por esa bifurcacion.
Seguire buscando y gracias por tu ayuda.
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Julio,

Puesto que el XML es ascii, podríamos modificar la clase para que haga la misma bifurcación para XML y TXT.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Post by dbzap »

Te suguiero algo, voy a terminar de hacer un par de cosas urgentes ( como si esta no lo fuera !! ) y probare modificando la clase y te comento que tal me fue.
Desde ya gracias por toda tu paciencia.
Saludos
Julio Gonzalez V.
RANDOM S.A.
SISTEMICA S.A.
elmoiquique
Posts: 257
Joined: Wed May 16, 2007 9:40 pm
Location: Iquique Chile

Re: Problema TSmtp y comillas dobles en archivos atachados

Post by elmoiquique »

Hola Julio

Una consulta, estoy trabajando en la firma digital, me gustaria saber como pudiste resolver el tema a travez de fivewin, y como lograste firmar digitalmeente el xml..

Desde ya gracias
Fivewin 11.07
User avatar
dbzap
Posts: 189
Joined: Mon Nov 07, 2005 7:36 pm
Location: Chile
Contact:

Re: Problema TSmtp y comillas dobles en archivos atachados

Post by dbzap »

Hola,
El módulo de firmado digital se fue a java y ahí no ha tenido nunca problemas
Con FW no pude así es que como la cosa había que hacerla y terminarla, se decidió por lo mas sano: Poner a trabajar a los multi-cerebrados de java en nuestra oficina ( jajaja )
Saludos
elmoiquique
Posts: 257
Joined: Wed May 16, 2007 9:40 pm
Location: Iquique Chile

Re: Problema TSmtp y comillas dobles en archivos atachados

Post by elmoiquique »

OK, me imagine que por ahi iba la cosa, bueno tendre que ponerme a trabajar y a entender java..
saludos
Fivewin 11.07
Post Reply