Cita:
Empezado por ermendalenda
Tienes que tener el control de envios en segundo plano, revisando el control de flujo mientras se generan dichas facturas ya que es probable que mientras estes generando pueda salir de ese tiempo de envio, con lo cual, como te digo, tiene que haber un proceso en segundo plano que revise si hay algo pendiente de enviar, tanto en tiempo como en numero de registros, por que si se ha llegado a mil facturas generadas igualmente tienes que enviar, el numero de envios te lo marca el control de flujos.
Segun el tipo de error hay varias formas de subsanarla, si el error está contemplado en el reglamento de facturación, en ese reglamento te indica como subsanarlo, unas veces como anulación, otras como abono, otras como rectificativa. Por otro lado la rectificativa es un tipo de factura con una serie distinta a las normales, y no basta con indicar el signo contrario, tambien tienes que indicar a que factura/s rectifica/s, no así el abono, que es otro tipo de factura para otras casos, que si es el signo contrario. Por otro lado te aconsejo que aprendas bien el tema de rectificativas ya que tiene mucho que estudiar y segun el caso y como decidas debe contemplar muchas variables,
Puedes usar el nodo refexterna para que te la devuelvan junto con el resultado y asi puedes cruzarla.
|
Todas las facturas enviadas en el paquete comparten el mismo CSV.
En el objeto SOAP del resultado se incluye un array con un elemento por factura, que incluye el numserie de cada una y su estado (aceptado, aceptado con errores o no aceptado). Discriminas por estado y vas colocando el csv y dandolas por OK, o no.
Si tienes mas dudas, consulta la demo (que encapsula el SOAP en un componente) que he publicado en:
https://www.clubdelphi.com/foros/sho...=97004&page=13
Creo que ahi dentro esta todo el codigo que necesitas.
Saludos !