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 27-03-2017
jcaceres121 jcaceres121 is offline
Registrado
NULL
 
Registrado: mar 2017
Posts: 1
Poder: 0
jcaceres121 Va por buen camino
Hola.
Aunque se que este club es de Delphi, estoy intentando crear una solución en Java para el problema. Tengo alguna experiencia con Java y ninguna con webservices.
He visto tu código .NET, que es quizá lo más parecido a Java que he encontrado por ahí, pero me surgen dudas.
Lamento no haber encontrado ningún foro de Java y por eso me veo obligado a preguntar aquí.
Os comento mi situación.
Tengo ya creado una objeto SuministroLRFacturasEmitidas (supongo que correctamente) que contiene una factura de ejemplo, y también tengo un objeto X509Certificate con un certificado obtenido a partir de un fichero .PFX.
Entiendo que sólo me quedaría invocar a los métodos necesarios para enviar el objeto y recibir la respuesta, pero no se como.
Si alguien pudiera ayudarme, estaría muy agradecido. levo muchas horas con esto y no avanzo.
Gracias
Responder Con Cita
  #2  
Antiguo 27-03-2017
CMB CMB is offline
Miembro
 
Registrado: ene 2017
Posts: 349
Poder: 8
CMB Va por buen camino
Cita:
Empezado por jcaceres121 Ver Mensaje
Hola.
Aunque se que este club es de Delphi
Efectivamente, el foro es sólo de Delphi pero en este hilo están participando programadores de otros varios lenguajes. Bienvenidos, creo que nadie estorba. Pero no sólo existe esta división. También está el grupo que prefiere crear primero su propio XML y luego enviarlo por los varios medios que existen, y otro sector, que parece mayoritario, que manda la información creándola sobre la marcha mediante el uso de las funciones de los WSDL. Quizás por este motivo seguir el hilo sea algo complicado y en algunos momentos desorienta.

Pero lo importante es que todos hemos aprendido bastante.

Muchas gracias a los que habeis aportado ideas y código.

Saludos,
Responder Con Cita
  #3  
Antiguo 29-03-2017
vboloradito vboloradito is offline
Miembro
NULL
 
Registrado: mar 2017
Posts: 107
Poder: 8
vboloradito Va por buen camino
Sii vs modulo 340

Hola:
Soy nuevo en el foro.
Tenemos que empezar con sii y todavia no sabemos en que lo vamos a hacer.
no se si llegamos tarde.
La pregunta es.
- ¿La información para el SII la estais encontrando en la que ya teneis para el modulo 340?.
- Habeis pensado en implementar alguna validación contra SII.
ejemplo. cuento cuanta facutaras tengo en mi sistema el dia 1/03/2017 (y me dice 3454 por 1.345 Euros)
lanzar consultar al SII para ver si realmente tengo 345 facturas por un total de 1.345 euros)
O simplemente os vais a fiar de que el SII os ha dicho que la factura esta correctamente enviada.
Responder Con Cita
  #4  
Antiguo 29-03-2017
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.473
Poder: 21
newtron Va camino a la fama
Cita:
Empezado por vboloradito Ver Mensaje
Hola:
Soy nuevo en el foro.
Tenemos que empezar con sii y todavia no sabemos en que lo vamos a hacer.
no se si llegamos tarde.
La pregunta es.
- ¿La información para el SII la estais encontrando en la que ya teneis para el modulo 340?.
- Habeis pensado en implementar alguna validación contra SII.
ejemplo. cuento cuanta facutaras tengo en mi sistema el dia 1/03/2017 (y me dice 3454 por 1.345 Euros)
lanzar consultar al SII para ver si realmente tengo 345 facturas por un total de 1.345 euros)
O simplemente os vais a fiar de que el SII os ha dicho que la factura esta correctamente enviada.
El SII te da un resultado por cada uno de los documentos que envías indicando si se ha enviado correctamente, enviado con errores o no enviado. Para mi si el SII te ha dicho que un documento está enviado de forma correcta y te da un identificador ya me vale. Yo lo que hago es marcar el resultado en cada uno de los documentos y así controlo los que están pendientes de envío totalmente o enviado con errores para poder corregirlos y volverlos a enviar. Los ya enviados los ignoro "for ever".

Saludos
__________________
Be water my friend.
Responder Con Cita
  #5  
Antiguo 29-03-2017
vboloradito vboloradito is offline
Miembro
NULL
 
Registrado: mar 2017
Posts: 107
Poder: 8
vboloradito Va por buen camino
Cobros en metálico recibido end_point

Hola:

Estoy validando todos los ejemplos de xml de SII usando directamente la web de aeat.

Me funcionan todos excepto los de cobros : (8.1.5. Alta de Cobros en metálico)
uso el end_point : /wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP

y recibo el error.
<faultstring>Codigo[4124].Error La direccion no se corresponde con el fichero de entrada.</faultstring>

aunque en otras ocasiones el error devuelto era:
<faultstring>403.No autorizado</faultstring>

¿alquien tiene un xml correcto con su correspondiente end_point?
gracias

Código:
<soapenv:Envelope>
 <soapenv:Header/>
<soapenv:Body>
<!-- Alta de Cobros en metálico recibido
 -->
<!-- /wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP
 -->
<siiLR:SuministroLRCobrosMetalico>
<sii:Cabecera>
 <sii:IDVersionSii>0.6</sii:IDVersionSii>
<sii:Titular>
 <sii:NombreRazon>Mi_nombrel</sii:NombreRazon>
 <sii:NIF>MI_numero_NIF</sii:NIF>
 </sii:Titular>
 <sii:TipoComunicacion>A0</sii:TipoComunicacion>
 </sii:Cabecera>
<siiLR:RegistroLRCobrosMetalico>
<sii:PeriodoImpositivo>
 <sii:Ejercicio>2017</sii:Ejercicio>
 <sii:Periodo>0A</sii:Periodo>
 </sii:PeriodoImpositivo>
<siiLR:Contraparte>
 <sii:NombreRazon>LA_OTRA_EMPRESA</sii:NombreRazon>
 <sii:NIF>NIF_OTRA_EMPRESA</sii:NIF>
 </siiLR:Contraparte>
 <siiLR:ImporteTotal>6130.56</siiLR:ImporteTotal>
 </siiLR:RegistroLRCobrosMetalico>
 </siiLR:SuministroLRCobrosMetalico>
 </soapenv:Body>
 </soapenv:Envelope>
Responder Con Cita
  #6  
Antiguo 29-03-2017
PepCat PepCat is offline
Miembro
 
Registrado: mar 2017
Posts: 96
Poder: 8
PepCat Va por buen camino
Cita:
Empezado por vboloradito Ver Mensaje
Hola:

Estoy validando todos los ejemplos de xml de SII usando directamente la web de aeat.

Me funcionan todos excepto los de cobros : (8.1.5. Alta de Cobros en metálico)
uso el end_point : /wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP
yo para las pruebas "https://www7.aeat.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP" y funciona correctamente.
Responder Con Cita
  #7  
Antiguo 29-03-2017
vboloradito vboloradito is offline
Miembro
NULL
 
Registrado: mar 2017
Posts: 107
Poder: 8
vboloradito Va por buen camino
Cita:
Empezado por PepCat Ver Mensaje
yo para las pruebas "https://www7.aeat.es/wlpl/SSII-FACT/ws/pm/SiiFactCMV1SOAP" y funciona correctamente.
Ok me funciona. pero.....

y para <siiLR:SuministroLRCobrosEmitidas>
8.1.11. alta cobros de fact dada de alta en Libro de Facturas Expedidas.xml
¿que endpoint se usa.?
En que documento se recogen los endpoint, para cada tipo de petición no lo veo en la web.
Responder Con Cita
  #8  
Antiguo 29-03-2017
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Poder: 16
espinete Va camino a la fama
Por si hay alguien utilizando los componentes de SecureBlackBox para gestionar certificados, aquí va mi granito de arena...

Para asignar el certificado al HTTPRIO, necesitamos el SerialNumber del mismo.
Partiendo de que tenemos todos los certificados del sistema en un ComboBox (más abajo pongo cómo rellenarlo):

Código Delphi [-]
var CERTIFICADO : string

    SetLength(CERTIFICADO, WinCertStorage.Certificates[comboCertificate.ItemIndex].CertHandle.pCertInfo.SerialNumber.cbData * 2);

    BinToHex(WinCertStorage.Certificates[comboCertificate.ItemIndex].CertHandle.pCertInfo.SerialNumber.pbData,
             PChar(CERTIFICADO),
             WinCertStorage.Certificates[comboCertificate.ItemIndex].CertHandle.pCertInfo.SerialNumber.cbData);

    HTTPRIO1.HTTPWebNode.ClientCertificate.SerialNum := certificado;

Y aquí cómo rellenar el ComboBox (comboCertificate) con los certificados:

Código Delphi [-]
  for i := 0 to WinCertStorage.Count - 1 do
  begin
    Cert := WinCertStorage.Certificates[i];

    ComboCertificate.Items.Add(Cert.SubjectName.CommonName + ' de ' + Cert.IssuerName.CommonName+' (Hasta: '+formatdatetime('dd/mm/yyyy',Cert.ValidTo)+')');
  end;
Responder Con Cita
  #9  
Antiguo 30-03-2017
robinsondemantu robinsondemantu is offline
Miembro
NULL
 
Registrado: mar 2017
Posts: 10
Poder: 0
robinsondemantu Va por buen camino
Endpoint incorrecto

Cita:
Empezado por vboloradito Ver Mensaje
Hola:

Estoy validando todos los ejemplos de xml de SII usando directamente la web de aeat.

Me funcionan todos excepto los de cobros : (8.1.5. Alta de Cobros en metálico)
uso el end_point : /wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP

y recibo el error.
<faultstring>Codigo[4124].Error La direccion no se corresponde con el fichero de entrada.</faultstring>

aunque en otras ocasiones el error devuelto era:
<faultstring>403.No autorizado</faultstring>

¿alquien tiene un xml correcto con su correspondiente end_point?
gracias

Código:
<soapenv:Envelope>
 <soapenv:Header/>
<soapenv:Body>
<!-- Alta de Cobros en metálico recibido
 -->
<!-- /wlpl/SSII-FACT/ws/fr/SiiFactPAGV1SOAP
 -->
<siiLR:SuministroLRCobrosMetalico>
<sii:Cabecera>
 <sii:IDVersionSii>0.6</sii:IDVersionSii>
<sii:Titular>
 <sii:NombreRazon>Mi_nombrel</sii:NombreRazon>
 <sii:NIF>MI_numero_NIF</sii:NIF>
 </sii:Titular>
 <sii:TipoComunicacion>A0</sii:TipoComunicacion>
 </sii:Cabecera>
<siiLR:RegistroLRCobrosMetalico>
<sii:PeriodoImpositivo>
 <sii:Ejercicio>2017</sii:Ejercicio>
 <sii:Periodo>0A</sii:Periodo>
 </sii:PeriodoImpositivo>
<siiLR:Contraparte>
 <sii:NombreRazon>LA_OTRA_EMPRESA</sii:NombreRazon>
 <sii:NIF>NIF_OTRA_EMPRESA</sii:NIF>
 </siiLR:Contraparte>
 <siiLR:ImporteTotal>6130.56</siiLR:ImporteTotal>
 </siiLR:RegistroLRCobrosMetalico>
 </siiLR:SuministroLRCobrosMetalico>
 </soapenv:Body>
 </soapenv:Envelope>

Estás enviado un cobro a los pagos. La URL correcta del enpoint de cobros es: https://www7.aeat.es/wlpl/SSII-FACT/...iFactCOBV1SOAP
Responder Con Cita
  #10  
Antiguo 29-03-2017
Guinfly Guinfly is offline
Registrado
NULL
 
Registrado: nov 2012
Posts: 1
Poder: 0
Guinfly Va por buen camino
Selecccionar un Valor de la lista SuministroFactEmitidas.CountryType2

Tengo la siguiente duda, a ver si alguien me puede echar un cable.
En mi BD dispongo del código ISO de todos los paises, es decir, de todos los pases cuyo código corresponde con la lista SuministroFactEmitidas.CountryType2.
El problema es que no soy capaz de indicar en el registro FacturaExpedida.Contraparte.IDOtro.CodigoPais el código de pais, me explico.
No puedo indicar lo siguiente V_FACEMI_SII[i].FacturaExpedida.Contraparte.IDOtro.CodigoPais := 'DE'
Para hacerlo correctamente debo indicarlo así V_FACEMI_SII[i].FacturaExpedida.Contraparte.IDOtro.CodigoPais := SuministroFactEmitidas.CountryType2(2).
Pero para esto necesito saber que posición ocupa el pais del cliente en la lista de constantes SuministroFactEmitidas.CountryType2.
Como habéis resuelto este tema?
Existe alguna forma de indicarle SuministroFactEmitidas.CountryType2("La posición que ocupe el pais DE")?

Quedo a la espera de vuestras noticias.
Muchisimas Gracias por adelantado.
Responder Con Cita
  #11  
Antiguo 09-05-2017
josecarrillo josecarrillo is offline
Miembro
 
Registrado: may 2014
Posts: 13
Poder: 0
josecarrillo Va por buen camino
Cita:
Empezado por Guinfly Ver Mensaje
Tengo la siguiente duda, a ver si alguien me puede echar un cable.
En mi BD dispongo del código ISO de todos los paises, es decir, de todos los pases cuyo código corresponde con la lista SuministroFactEmitidas.CountryType2.
El problema es que no soy capaz de indicar en el registro FacturaExpedida.Contraparte.IDOtro.CodigoPais el código de pais, me explico.
No puedo indicar lo siguiente V_FACEMI_SII[i].FacturaExpedida.Contraparte.IDOtro.CodigoPais := 'DE'
Para hacerlo correctamente debo indicarlo así V_FACEMI_SII[i].FacturaExpedida.Contraparte.IDOtro.CodigoPais := SuministroFactEmitidas.CountryType2(2).
Pero para esto necesito saber que posición ocupa el pais del cliente en la lista de constantes SuministroFactEmitidas.CountryType2.
Como habéis resuelto este tema?
Existe alguna forma de indicarle SuministroFactEmitidas.CountryType2("La posición que ocupe el pais DE")?

Quedo a la espera de vuestras noticias.
Muchisimas Gracias por adelantado.
Yo tengo este mismo problema alguien lo ha resuelto.
Responder Con Cita
  #12  
Antiguo 09-05-2017
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.035
Poder: 22
keys Va por buen camino
La unica forma que creo que existe es hacerte una función de retorne el numero que ocupa cada pais. Igual que para el resto de listas que hay que sumistrar, tipo facturas, etcc ya que no quieren un dato sino un índice de una tabla.

Código Delphi [-]
if CODPAIS = 'AF' then
   result := 0
 else if CODPAIS = 'AX' then result := 1
  else if CODPAIS = 'AL' then result := 2
   else if CODPAIS = 'DZ' then result := 3
    else if CODPAIS = 'AS' then result := 4
     else if CODPAIS = 'AD' then result := 5
      else if CODPAIS = 'AO' then result := 6
 etccc.

Por cierto esperate a la version 7 por que han cambiado la lista de paises.
Responder Con Cita
  #13  
Antiguo 16-05-2017
APO APO is offline
Miembro
 
Registrado: feb 2008
Posts: 121
Poder: 17
APO Va por buen camino
Cita:
Empezado por keys Ver Mensaje
La unica forma que creo que existe es hacerte una función de retorne el numero que ocupa cada pais. Igual que para el resto de listas que hay que sumistrar, tipo facturas, etcc ya que no quieren un dato sino un índice de una tabla.

Código Delphi [-]
if CODPAIS = 'AF' then
   result := 0
 else if CODPAIS = 'AX' then result := 1
  else if CODPAIS = 'AL' then result := 2
   else if CODPAIS = 'DZ' then result := 3
    else if CODPAIS = 'AS' then result := 4
     else if CODPAIS = 'AD' then result := 5
      else if CODPAIS = 'AO' then result := 6
 etccc.

Por cierto esperate a la version 7 por que han cambiado la lista de paises.

Se puede hacer de manera directa, sin tener que preocuparnos por si cambian sus códigos internos de países o lo que sea. Por ejemplo, si quisiéramos asignar el país Francia, teniendo el código ISO (FR), sería de esta manera:

Código Delphi [-]
ARegistroLRFacturasEmitidas[ContadorFra].FacturaExpedida.Contraparte.IDOtro.CodigoPais:=SuministroFactEmitidas.CountryType2(GetEnumValue(Typ  eInfo(CountryType2),'ES'));

Si el GetEnumValue lo podemos utilizar en todos los otros tipos de campo
Responder Con Cita
  #14  
Antiguo 28-06-2017
kaly999 kaly999 is offline
Registrado
 
Registrado: ene 2009
Posts: 5
Poder: 0
kaly999 Va por buen camino
CountryType2

Cita:
Empezado por APO Ver Mensaje
Se puede hacer de manera directa, sin tener que preocuparnos por si cambian sus códigos internos de países o lo que sea. Por ejemplo, si quisiéramos asignar el país Francia, teniendo el código ISO (FR), sería de esta manera:

Código Delphi [-]
ARegistroLRFacturasEmitidas[ContadorFra].FacturaExpedida.Contraparte.IDOtro.CodigoPais:=SuministroFactEmitidas.CountryType2(GetEnumValue(Typ  eInfo(CountryType2),'ES'));

Si el GetEnumValue lo podemos utilizar en todos los otros tipos de campo


Hola a todos,

Estoy tratando de seleccionar el código de país en mi aplicación de C#. Mi problema es que estoy tratando de asignar un país sin tener que crear una función con un "if" para cada código de país. He visto que en Delphi parece que lo habéis solucionado. ¿Sabéis como se podría hacer en C#?

Muchas gracias.
Responder Con Cita
  #15  
Antiguo 09-05-2017
PepCat PepCat is offline
Miembro
 
Registrado: mar 2017
Posts: 96
Poder: 8
PepCat Va por buen camino
Cita:
Empezado por josecarrillo Ver Mensaje
Yo tengo este mismo problema alguien lo ha resuelto.
Mira el post #721 y #725
Responder Con Cita
  #16  
Antiguo 09-05-2017
smiron smiron is offline
Registrado
NULL
 
Registrado: may 2017
Posts: 4
Poder: 0
smiron Va por buen camino
Yo uso el nif/cif intracomunitario, los 2 primeros digitos coinciden con el codigo pais...
Responder Con Cita
  #17  
Antiguo 09-05-2017
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.035
Poder: 22
keys Va por buen camino
Cita:
Empezado por PepCat Ver Mensaje
Mira el post #721 y #725
Más elegante, pero en el fondo lo mismo. Hay que coger el orden de los paises de las clases que se generan con los xsd de hacienda. y como ya he dicho ojo que van a cambiar en la siguiente versión.
Responder Con Cita
  #18  
Antiguo 09-05-2017
Avatar de mrobles
mrobles mrobles is offline
Miembro
NULL
 
Registrado: may 2017
Posts: 115
Poder: 8
mrobles Va por buen camino
Esta tarde voy a una reunión que dan los del SII, si alguien quiere que les pregunte algo que me diga y lo posteare aquí mañana temprano o incluso cuando salga de allí
Responder Con Cita
  #19  
Antiguo 09-05-2017
vboloradito vboloradito is offline
Miembro
NULL
 
Registrado: mar 2017
Posts: 107
Poder: 8
vboloradito Va por buen camino
Cita:
Empezado por mrobles Ver Mensaje
Esta tarde voy a una reunión que dan los del SII, si alguien quiere que les pregunte algo que me diga y lo posteare aquí mañana temprano o incluso cuando salga de allí
Un cliente emite factura de anticipo de 6.000 Euros.
En marzo emito factura de 1.000 Euros , pero le pongo una nota diciendole que no tiene que pagarla que la cubre el anticipo.
Contablemente hago un ajusute de -1.000 Euros Para que cuadre el libro de IVA.

+6.000 Factura
+1.000 Factura
-1.000 Ajuste contable

¿Que le tengo que enviar a hacienda?. porque si le envio las facturas son 7.000 Euros en total.
No puedo convertir el ajuste contable en factura porque no se lo he enviado al cliente.

Esto esta mal en realidad la factura de marzo tenia que ir a cero, Pero como ya esta mal hecho ¿que le envio?
muy larga la pregunta
Responder Con Cita
  #20  
Antiguo 09-05-2017
CMB CMB is offline
Miembro
 
Registrado: ene 2017
Posts: 349
Poder: 8
CMB Va por buen camino
Cita:
Empezado por mrobles Ver Mensaje
Esta tarde voy a una reunión que dan los del SII, si alguien quiere que les pregunte algo que me diga y lo posteare aquí mañana temprano o incluso cuando salga de allí
Pues si te parece bien, consulta lo del campo DescripcionOperacion, ¿qué hay que poner ahí? Ya lo hemos discutido ampliamente, pero sería interesante tener una opinión oficial.

Saludos,
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 3 Semanas 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 04:27:46.


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