Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-07-2017
lithium76 lithium76 is offline
Miembro
 
Registrado: ene 2015
Posts: 33
Poder: 0
lithium76 Va por buen camino
Buenas tardes,

¿hay alguna manera de capturar el xml que se genera que no sea antes del evento HTTPRIO1BeforeExecute y coger de allí el parámetro SoapRequest del TStream ?

Si no la hay.. ¿se puede cancelar el envío justo en el evento mismo con alguna instrucción?

básicamente, la idea es generar el xml pero no enviarlo

Muchas gracias por adelantado y siento si se ha respondido antes pero no lo he sabido ver
Responder Con Cita
  #2  
Antiguo 20-07-2017
pablog2k pablog2k is offline
Miembro
 
Registrado: may 2017
Posts: 86
Poder: 7
pablog2k Va por buen camino
Cita:
Empezado por lithium76 Ver Mensaje
Buenas tardes,

¿hay alguna manera de capturar el xml que se genera que no sea antes del evento HTTPRIO1BeforeExecute y coger de allí el parámetro SoapRequest del TStream ?

Si no la hay.. ¿se puede cancelar el envío justo en el evento mismo con alguna instrucción?

básicamente, la idea es generar el xml pero no enviarlo

Muchas gracias por adelantado y siento si se ha respondido antes pero no lo he sabido ver
en el before execute del httprio añades

SaveDialog.Title := 'Guardar el fichero XML';
if(SaveDialog.Execute) then
begin
ss:=TFileStream.Create(SaveDialog.FileName, fmCreate);
SOAPRequest.Position := 0;
ss.CopyFrom(SOAPRequest,SOAPRequest.Size);
ss.Free;
SOAPRequest.Position := 0;
end;
raise Exception.Create('BLA BLA');

y te creas una variable de control que cuando sea true por ejemplo entre por ahí (botón guardar xml por ejemplo) y cuando sea false pues haga lo que se hace siempre.
en negrita te pongo la clave para que el proceso 'pare' y no se envíe nada a hacienda.
no queda muy bonito/estetico pero funciona :P
Responder Con Cita
  #3  
Antiguo 20-07-2017
lithium76 lithium76 is offline
Miembro
 
Registrado: ene 2015
Posts: 33
Poder: 0
lithium76 Va por buen camino
Cita:
Empezado por pablog2k Ver Mensaje
en el before execute del httprio añades

SaveDialog.Title := 'Guardar el fichero XML';
if(SaveDialog.Execute) then
begin
ss:=TFileStream.Create(SaveDialog.FileName, fmCreate);
SOAPRequest.Position := 0;
ss.CopyFrom(SOAPRequest,SOAPRequest.Size);
ss.Free;
SOAPRequest.Position := 0;
end;
raise Exception.Create('BLA BLA');

y te creas una variable de control que cuando sea true por ejemplo entre por ahí (botón guardar xml por ejemplo) y cuando sea false pues haga lo que se hace siempre.
en negrita te pongo la clave para que el proceso 'pare' y no se envíe nada a hacienda.
no queda muy bonito/estetico pero funciona :P
Muchas gracias por responder tan rápido!
así lo haré pues .. pensaba que había alguna manera más limpia de hacerlo pero está bien visto lo de hacer saltar la excepción ( a falta de pan, buenas son tortas)
Responder Con Cita
  #4  
Antiguo 20-07-2017
pablog2k pablog2k is offline
Miembro
 
Registrado: may 2017
Posts: 86
Poder: 7
pablog2k Va por buen camino
Cita:
Empezado por lithium76 Ver Mensaje
Muchas gracias por responder tan rápido!
así lo haré pues .. pensaba que había alguna manera más limpia de hacerlo pero está bien visto lo de hacer saltar la excepción ( a falta de pan, buenas son tortas)
bueno igual hay alguna manera mejor / mas rápida, pero ya sabes, todo el mundo vamos de culo con el puñetero SII, asi que hay que programar rápido y que todo funcione
Responder Con Cita
  #5  
Antiguo 21-07-2017
Avatar de mrobles
mrobles mrobles is offline
Miembro
NULL
 
Registrado: may 2017
Posts: 115
Poder: 8
mrobles Va por buen camino
Alguien con un ejemplo de una rectificativa recibida a mano?
Responder Con Cita
  #6  
Antiguo 21-07-2017
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.471
Poder: 21
newtron Va camino a la fama
Cita:
Empezado por mrobles Ver Mensaje
Alguien con un ejemplo de una rectificativa recibida a mano?
Te he puesto una en el hilo de los ejemplos.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #7  
Antiguo 21-07-2017
Avatar de mrobles
mrobles mrobles is offline
Miembro
NULL
 
Registrado: may 2017
Posts: 115
Poder: 8
mrobles Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Te he puesto una en el hilo de los ejemplos.

Saludos
Gracias, ahora me paso

EDITO:
Y si alguien te emite 2 para rectificar como yo? la primera (la negativa) seria una emitida normal, y la segunda seria como tu lo pones no?
en recibidas si que hay que contemplar todas las posibilidades

Última edición por mrobles fecha: 21-07-2017 a las 09:20:28.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco keys Internet 4170 Hace 1 Semana 17:29:05
AEAT envio de datos vía Webservice problemas con WSDL CelsoO Internet 11 09-10-2019 20:03:41
webService Soap de la Administración Digital Española notific@ apicito Internet 3 31-01-2017 11:25:28
Error en Webservice funcion envio de sms webmasterplc Delphi para la web 5 25-07-2013 20:10:29
Problemas con envío de XML a un WebService davidvamo Internet 1 13-02-2007 15:49:20


La franja horaria es GMT +2. Ahora son las 01:24:42.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi