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 03-07-2017
didou didou is offline
Miembro
 
Registrado: may 2017
Posts: 59
Poder: 8
didou Va por buen camino
envío primer semestre

buenos días, alguien sabe si una vez enviado el primer semestre hay opciones de bajas y/o modificaciones de estas facturas del primer semestre? además por lo que estoy viendo hay que hacer 6 envios (uno por cada mes) de las facturas del 1er. semestre, no se puede hacer un solo envio agrupando todas las facturas del primer semestre?

Gracias y buen SII para todos.
Responder Con Cita
  #2  
Antiguo 03-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
Ya empezamos....

Tengo un cliente que ya ha enviado datos, se le ha quedado colgado por problemas en el webservice y ha cerrado el programa "a lo bruto". Consultamos y resulta que parte de las facturas constan como enviadas y otra parte no y, logicamente, mi programa no se ha enterado de cuales han quedado subidas porque se ha colgado antes.

¿Alguna idea de si es posible preveer esto?

Saludos
__________________
Be water my friend.
Responder Con Cita
  #3  
Antiguo 03-07-2017
marine marine is offline
Miembro
 
Registrado: may 2017
Posts: 31
Poder: 0
marine Va por buen camino
Error con certificado

Buenas , aparte de los problemas sufridos con la caida del portal de pruebas me encuentro ahora con problemas de certificados donde antes no los tenia. Ha cambiado algo ?
Responder Con Cita
  #4  
Antiguo 03-07-2017
dgcapel dgcapel is offline
Registrado
NULL
 
Registrado: may 2017
Posts: 4
Poder: 0
dgcapel Va por buen camino
Buenas tardes,
alguno de vosotros ha conseguido deserializar una respuesta del servidor en formato texto, una vez que la tienes guardada como un fichero, ¿mediante las clases del SII Service? Uso C#, pero cualquier sugerencia en delphi es bienvenida. Es un problema con los Namespaces, pero no consigo dar con la tecla.

Código Delphi [-]
                
// File : Open
                XmlSerializer serializer = new XmlSerializer(typeof(RespuestaLRFRecibidasType));
                fs = new FileStream(xmlReponseUri, FileMode.Open);
                XmlReader reader = XmlReader.Create(fs);

                // Deserialize
                RespuestaLRFRecibidasType facturaRecibida = (RespuestaLRFRecibidasType)serializer.Deserialize(reader);

                // File : Close
                fs.Close();

                // Response
                Console.WriteLine("CSV: " + facturaRecibida.CSV);
Responder Con Cita
  #5  
Antiguo 03-07-2017
jcapilla jcapilla is offline
Miembro
NULL
 
Registrado: feb 2017
Posts: 29
Poder: 0
jcapilla Va por buen camino
Cita:
Empezado por dgcapel Ver Mensaje
Buenas tardes,
alguno de vosotros ha conseguido deserializar una respuesta del servidor en formato texto, una vez que la tienes guardada como un fichero, ¿mediante las clases del SII Service? Uso C#, pero cualquier sugerencia en delphi es bienvenida. Es un problema con los Namespaces, pero no consigo dar con la tecla.

Código Delphi [-]
                
// File : Open
                XmlSerializer serializer = new XmlSerializer(typeof(RespuestaLRFRecibidasType));
                fs = new FileStream(xmlReponseUri, FileMode.Open);
                XmlReader reader = XmlReader.Create(fs);

                // Deserialize
                RespuestaLRFRecibidasType facturaRecibida = (RespuestaLRFRecibidasType)serializer.Deserialize(reader);

                // File : Close
                fs.Close();

                // Response
                Console.WriteLine("CSV: " + facturaRecibida.CSV);
Si cambias en el xml de respuesta RespuestaLRFacturasRecibidas por RespuestaLRFRecibidasType y quitas los tags de env: debe funcionar.
Responder Con Cita
  #6  
Antiguo 04-07-2017
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Cita:
Empezado por jcapilla Ver Mensaje
Si cambias en el xml de respuesta RespuestaLRFacturasRecibidas por RespuestaLRFRecibidasType y quitas los tags de env: debe funcionar.
Hola,
Para convertir en xml la respuesta yo uso
Código:
        public  bool GetXMLFromObject(object o)
        {
            StringWriter sw = new StringWriter();
            XmlTextWriter tw = null;
            try
            {
                XmlSerializer serializer = new XmlSerializer(o.GetType());
                tw = new XmlTextWriter(sw);
                serializer.Serialize(tw, o);
            }
            catch (Exception ex)
            {
                //Handle Exception Code
                return false;
            }
            finally
            {
                sw.Close();
                if (tw != null)
                {
                    tw.Close();
                }
            }

            using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\tmp\" + o.ToString() + ".xml"))
            {
                file.WriteLine(sw.ToString());

            }
            return true;
        }
Responder Con Cita
  #7  
Antiguo 04-07-2017
jcapilla jcapilla is offline
Miembro
NULL
 
Registrado: feb 2017
Posts: 29
Poder: 0
jcapilla Va por buen camino
Cita:
Empezado por batuzail Ver Mensaje
Hola,
Para convertir en xml la respuesta yo uso
Código:
        public  bool GetXMLFromObject(object o)
        {
            StringWriter sw = new StringWriter();
            XmlTextWriter tw = null;
            try
            {
                XmlSerializer serializer = new XmlSerializer(o.GetType());
                tw = new XmlTextWriter(sw);
                serializer.Serialize(tw, o);
            }
            catch (Exception ex)
            {
                //Handle Exception Code
                return false;
            }
            finally
            {
                sw.Close();
                if (tw != null)
                {
                    tw.Close();
                }
            }

            using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\tmp\" + o.ToString() + ".xml"))
            {
                file.WriteLine(sw.ToString());

            }
            return true;
        }
Creo que el problema es que el xml que devuelve AEAT (fichero) al deserializarlo con el objeto falla. Yo me encontre con el problema hace tiempo e incluso creo recordar que consulte por aqui. Si haces el replace digamos que el xml tiene el formato que espera la deserializacion.
Responder Con Cita
  #8  
Antiguo 03-07-2017
xamminf xamminf is offline
Miembro
 
Registrado: ene 2017
Posts: 149
Poder: 8
xamminf Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Ya empezamos....

Tengo un cliente que ya ha enviado datos, se le ha quedado colgado por problemas en el webservice y ha cerrado el programa "a lo bruto". Consultamos y resulta que parte de las facturas constan como enviadas y otra parte no y, logicamente, mi programa no se ha enterado de cuales han quedado subidas porque se ha colgado antes.

¿Alguna idea de si es posible preveer esto?

Saludos
Newtron Jimmy,

Esa es el peor de los escenarios posibles.. y no es para tanto porque lo que tiene que hacer tu usuario es regularizar la situacion:

Entrar al portal, ver las que si estan enviadas y marcarlas en tu programa como enviadas para que no entren en el próximo envio.

¿ ok ?

Hay que aplicar mucha lógica informática de tolerancia a fallos para evitar que estos fallos nos amarguen el verano.
Responder Con Cita
  #9  
Antiguo 03-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 xamminf Ver Mensaje
Newtron Jimmy,

Esa es el peor de los escenarios posibles.. y no es para tanto porque lo que tiene que hacer tu usuario es regularizar la situacion:

Entrar al portal, ver las que si estan enviadas y marcarlas en tu programa como enviadas para que no entren en el próximo envio.

¿ ok ?

Hay que aplicar mucha lógica informática de tolerancia a fallos para evitar que estos fallos nos amarguen el verano.
Hasta ahí llego compañero, yo preguntaba si había alguna manera de que, al enviar los datos hubiera alguna especie de transacción o algo que nosotros pudiéramos tocar para que no ocurra esto, porque me da la impresión de que está fuera de nuestra mano. Pregunto porque, con lo listos que deben de ser los que han montado ese chiringuito, deberían de tener esta posibilidad contemplada.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #10  
Antiguo 03-07-2017
xamminf xamminf is offline
Miembro
 
Registrado: ene 2017
Posts: 149
Poder: 8
xamminf Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Hasta ahí llego compañero, yo preguntaba si había alguna manera de que, al enviar los datos hubiera alguna especie de transacción o algo que nosotros pudiéramos tocar para que no ocurra esto, porque me da la impresión de que está fuera de nuestra mano. Pregunto porque, con lo listos que deben de ser los que han montado ese chiringuito, deberían de tener esta posibilidad contemplada.

Saludos

El sistema es síncrono, es decir: petición y respuesta en el mismo viaje.

¿ No habría sido mejor montar un sistema asíncrono de manera que envias ahora y puedes tener la repuesta más tarde ?
Así el asunto sólo se trataría de enviar el .xml y ellos lo procesarían cuando pudieran y cuando lo hicieran colocarían un .xml que podríamos leer cuando conectasemos.

Es verdad que tiene alguna desventaja, pero tiene algunas otras, como este tema de los cortes.

En fin, pura informática ficción.
Responder Con Cita
  #11  
Antiguo 03-07-2017
figo21 figo21 is offline
Miembro
 
Registrado: dic 2012
Posts: 104
Poder: 12
figo21 Va por buen camino
Cita:
Empezado por xamminf Ver Mensaje
El sistema es síncrono, es decir: petición y respuesta en el mismo viaje.

¿ No habría sido mejor montar un sistema asíncrono de manera que envias ahora y puedes tener la repuesta más tarde ?
Así el asunto sólo se trataría de enviar el .xml y ellos lo procesarían cuando pudieran y cuando lo hicieran colocarían un .xml que podríamos leer cuando conectasemos.

Es verdad que tiene alguna desventaja, pero tiene algunas otras, como este tema de los cortes.

En fin, pura informática ficción.
Buenos días, a ver este problema que comentáis lo tenéis solucionado con las consultas.
Podéis implementar un sistema que haga una consulta y las facturas que te devuelva la consulta y no tengáis marcadas en vuestro sistema, las marcáis.
De hecho, si mal no recuerdo la consulta te devuelve todos los datos que se envían en el alta de la factura, más los propios de la consulta (contraste).


Un saludo.
Responder Con Cita
  #12  
Antiguo 03-07-2017
erojo erojo is offline
Registrado
NULL
 
Registrado: jun 2017
Posts: 2
Poder: 0
erojo Va por buen camino
sii aeat cobros facturas expedidas

Hola,

No consigo suministrar al SII la información de un cobro asociado a una factura expedida. El mensaje que me devuelve el Web Service de la AEAT es el siguiente:
Codigo[4124].Error La direccion no se corresponde con el fichero de entrada.
Pero no soy capaz de detectar dónde está el problema. ¿Sería alguien tan amable de adjuntar un ejemplo de suministro de cobro que funcione? Mi código está en VB .NET y es el siguiente:

Gracias,

Dim blnReturn As Boolean = True
Dim objCobroEmitido As New SuministroCobrosEmitidas.SuministroLRCobrosEmitidas

Try
Dim objCabecera As New SuministroCobrosEmitidas.CabeceraSiiCobrosPagos
objCabecera.IDVersionSii = SuministroCobrosEmitidas.VersionSiiType.Item10
Dim objTitular As New SuministroCobrosEmitidas.PersonaFisicaJuridicaESType
objTitular.NIF = "AAAAAAAAA"
objTitular.NombreRazon = "XXXXXXXXX XXXXXX"
objCabecera.Titular = objTitular
objCobroEmitido.Cabecera = objCabecera

Dim objRegistrosCobro As SuministroCobrosEmitidas.LRCobrosEmitidasType()
ReDim Preserve objRegistrosCobro(0)

Dim objRegistroCobro As New SuministroCobrosEmitidas.LRCobrosEmitidasType
Dim objIdFactura As New SuministroCobrosEmitidas.IDFacturaExpedidaBCType
Dim objIdEmisor As New SuministroCobrosEmitidas.IDFacturaExpedidaBCTypeIDEmisorFactura
objIdEmisor.NIF = "AAAAAAAAA"

objIdFactura.IDEmisorFactura = objIdEmisor
objIdFactura.NumSerieFacturaEmisor = "FA1700002"
objIdFactura.FechaExpedicionFacturaEmisor = Now.ToString("dd-MM-yyyy") '"21-06-2017"
objRegistroCobro.IDFactura = objIdFactura

Dim objDatosPago As SuministroCobrosEmitidas.DatosPagoCobroType()
ReDim Preserve objDatosPago(0)

Dim objDatoPago As New SuministroCobrosEmitidas.DatosPagoCobroType
objDatoPago.Fecha = Now.ToString("dd-MM-yyyy") '"21-06-2017"
objDatoPago.Importe = "100"
objDatoPago.Medio = SuministroCobrosEmitidas.MedioPagoType.Item04
'objDatoPago.Cuenta_O_Medio = "Al contado"

objDatosPago.ToList.Add(objDatoPago)
objRegistroCobro.Cobros = objDatosPago

objRegistrosCobro.ToList.Add(objRegistroCobro)

objCobroEmitido.RegistroLRCobros = objRegistrosCobro

Dim objSIIService As New SuministroCobrosEmitidas.siiService
objSIIService.ClientCertificates.Add(obtenerCertificadoSIIAEAT)
objSIIService.Url = "https://www7.aeat.es/wlpl/SSII-FACT/ws/fe/SiiFactFEV1SOAP"
objSIIService.Timeout = 10000

Dim objRespCobrosEmitidos As New SuministroCobrosEmitidas.RespuestaLRCobrosEmitidasType
objRespCobrosEmitidos = objSIIService.SuministroLRCobrosEmitidas(objCobroEmitido)

Select Case objRespCobrosEmitidos.EstadoEnvio
Case SuministroCobrosEmitidas.EstadoEnvioType.Correcto
MsgBox("Correcto")
Case SuministroCobrosEmitidas.EstadoEnvioType.Incorrecto
MsgBox("Incorrecto")
Case SuministroCobrosEmitidas.EstadoEnvioType.ParcialmenteCorrecto
MsgBox("Parcialmente Correcto")
End Select



Catch ex As Exception
blnReturn = False
Finally
If Not objCobroEmitido Is Nothing Then
objCobroEmitido = Nothing
End If
End Try
Responder Con Cita
  #13  
Antiguo 03-07-2017
CMB CMB is offline
Miembro
 
Registrado: ene 2017
Posts: 349
Poder: 8
CMB Va por buen camino
Cita:
Empezado por figo21 Ver Mensaje
Buenos días, a ver este problema que comentáis lo tenéis solucionado con las consultas.
Podéis implementar un sistema que haga una consulta y las facturas que te devuelva la consulta y no tengáis marcadas en vuestro sistema, las marcáis.
De hecho, si mal no recuerdo la consulta te devuelve todos los datos que se envían en el alta de la factura, más los propios de la consulta (contraste).Un saludo.
Dado que se trata de situaciones excepcionales, cuando la transmisión se corte (sea por culpa de la AEAT, o de la conexión a internet, o un bug del programa) y no se sepa qué facturas han sido enviadas y cuáles no, no merece la pena desarrollar rutinas tan complejas.

El usuario debe enviar de nuevo todas las facturas no marcadas. Una parte de ellas será rechazada por "duplicada". ¿Y qué hacer ahora con esas? Pues muy sencillo, se mandan como cambios, y el servidor suministrará un nuevo CSV. No importa que no haya habido cambios reales, por lo menos en el servidor de prueba las acepta igualmente.

Saludos,
Responder Con Cita
  #14  
Antiguo 03-07-2017
RafaSerMed RafaSerMed is offline
Miembro
NULL
 
Registrado: ene 2017
Posts: 24
Poder: 0
RafaSerMed Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Ya empezamos....

Tengo un cliente que ya ha enviado datos, se le ha quedado colgado por problemas en el webservice y ha cerrado el programa "a lo bruto". Consultamos y resulta que parte de las facturas constan como enviadas y otra parte no y, logicamente, mi programa no se ha enterado de cuales han quedado subidas porque se ha colgado antes.

¿Alguna idea de si es posible preveer esto?

Saludos
Eso se debe de prever siempre. No solo por los posibles errores de cuelgue del programa al enviar o lo que sea. También porque si enviamos mucha información, por ejemplo enviamos 3000 facturas a la vez y el servicio tarda y no llega la respuesta o se corta a mitad del envío, con lo que tenemos la mitad por ejemplo de facturas procesadas cuando hemos enviado todas....

Pues bien, la AEAT, comento en alguna que otra reunion que esto puede pasar. En ese caso al volver a enviar toda la información de nuevas (por ejemplo en tu caso), tenemos que procesar la respuesta de aquellas que nos indica que están duplicadas. Eso significa que dichas facturas ya han sido presentadas. Por esa razón en las ultimas versiones añadieron el CSV en la respuesta del error de factura duplicada.

A mi no me parece una solución muy viable, ya que el resultado de factura duplicada puede ser un resultado correcto en muchos casos y no tiene porque ser el caso de que se hayan enviado previamente y no se haya procesado la respuesta. Sinceramente me parece una chapuza.

La solución medianamente viable es que al intentar enviar los registros de alta, previamente realicemos una consulta con el filtro de la factura que queremos añadir. En ese caso si nos devuelve que existe un registro con esos criterios en el filtro, nos indicará la fecha de presentación. Con esa fecha podemos "deducir" si se ha presentado anteriormente pero no se ha registrado la respuesta....

Vamos sencillo.
Responder Con Cita
  #15  
Antiguo 03-07-2017
RafaSerMed RafaSerMed is offline
Miembro
NULL
 
Registrado: ene 2017
Posts: 24
Poder: 0
RafaSerMed Va por buen camino
Fallo en la recepcion de facturas emitidas o recibidas por Nif no declarado

Ahora mismo estamos teniendo problemas en el envío de facturas, ya sean recibidas o emitidas, con el código de error de vuelta 1117, la contraparte no está censada...

Pues bien son NIF totalmente correctos, con su nombre perfectamente introducido y son NIFs utilizados hace 10m y que NO daban ningún tipo de error....

Pasados 5m, esas mismas facturas, sin tocar nada, ya se procesan perfectamente.......

Bufffff que miedo me está dando todo esto....
Responder Con Cita
  #16  
Antiguo 03-07-2017
seccion_31 seccion_31 is offline
Miembro
 
Registrado: ene 2017
Posts: 112
Poder: 8
seccion_31 Va por buen camino
nosotros estamos enviando sin problemas. tal cual días anteriores, sin mas inconvenientes.

Lo que no tengo es la dirección del menú de opciones en la web de la AEAT de la nueva versión 7
¿alguien la sabe?

Saludos y muchas gracias a todos por vuestras aportaciones y comentarios. Es una distinción especial pertenecer a los programadores Delphi.
Responder Con Cita
  #17  
Antiguo 03-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 seccion_31 Ver Mensaje
nosotros estamos enviando sin problemas. tal cual días anteriores, sin mas inconvenientes.

Lo que no tengo es la dirección del menú de opciones en la web de la AEAT de la nueva versión 7
¿alguien la sabe?

Saludos y muchas gracias a todos por vuestras aportaciones y comentarios. Es una distinción especial pertenecer a los programadores Delphi.
¿Nueva versión 7? No sé a qué te refieres, si preguntas por la página donde se seleccionan los formularios de altas, consultas, etc de producción ya la puso alguien por aquí...

https://www.agenciatributaria.gob.es...ini/G417.shtml

Saludos
__________________
Be water my friend.
Responder Con Cita
  #18  
Antiguo 03-07-2017
barnarasta barnarasta is offline
Miembro
NULL
 
Registrado: abr 2017
Posts: 20
Poder: 0
barnarasta Va por buen camino
Buenas tardes compañeros, tengo una duda sobre Consulta Facturas Emitidas que segun repase la documentacion parece imposible, pero igual se me paso algun detalle y alguien esta en identica situacion.

Supongamos una pequeña cadena de supermercados con 18 establecimientos en la provincia (por suerte no es canarias), cada centro tiene su propia numeracion de Facturas tipos F1, F2, F4.

La numeracion de las facturas tienen el formato [letra]-[ocho numeros] ---> A-00000000

Y el motivo de la consulta es:
se puede realizar una consulta en la que se reciba respuesta unicamente de un establecimiento?, es decir,
una consulta de un periodo de todas las factura que empiecen por A-.

Cualquier orientacion/idea sera bien recibida.
Gracias
Responder Con Cita
  #19  
Antiguo 04-07-2017
seccion_31 seccion_31 is offline
Miembro
 
Registrado: ene 2017
Posts: 112
Poder: 8
seccion_31 Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
¿Nueva versión 7? No sé a qué te refieres, si preguntas por la página donde se seleccionan los formularios de altas, consultas, etc de producción ya la puso alguien por aquí...

https://www.agenciatributaria.gob.es...ini/G417.shtml

Saludos


perdón me referia la nueva versión 1.

gracias x el enlace.
Responder Con Cita
  #20  
Antiguo 03-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 didou Ver Mensaje
buenos días, alguien sabe si una vez enviado el primer semestre hay opciones de bajas y/o modificaciones de estas facturas del primer semestre? además por lo que estoy viendo hay que hacer 6 envios (uno por cada mes) de las facturas del 1er. semestre, no se puede hacer un solo envio agrupando todas las facturas del primer semestre?

Gracias y buen SII para todos.
Yo no he leido por ningún sitio que haya que enviar por meses los datos del primer semestre de 2016 y, por otro lado, imagino que el tratamiento para bajas y modificaciones será exactamente igual que el resto de periodos.

Saludos
__________________
Be water my friend.
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 21:05:15.


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