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

Colaboración Paypal con ClubDelphi

Tema Cerrado
 
Herramientas Buscar en Tema Desplegado
  #1041  
Antiguo 04-01-2024
antoine0 antoine0 is offline
Miembro
 
Registrado: oct 2021
Posts: 238
Poder: 4
antoine0 Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
El periodo de imputación lo he visto en el esquema xsd pero no en el ejemplo.
Lo tengo marcado para quitarlo o dejarlo
Viene solo en la definición de complextipe name.
Está como único nodo del tipo RegistroSf; qué por lo visto, no sirve de nada... hasta ahora.
Supongo que servirá en la ¿futura expansión? de la interfaz con funciones de consultación (que de momento son demasiado pedir); hay un par de otros tipos que parecen ser del mismo índole.
  #1042  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Nivel corrección qr

Ojo con el nivel de corrección, y diréis, anda quien se va a dar cuenta?, pues cualquiera
Se ve a simple vista en el qr
Os subo una imagen que lo explica
https://www.google.com/search?client...i0PYF5ryKYjhLM
  #1043  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Más sobre el qr

Aconsejo que en los pdfs pongáis el enlace al pinchar, es un valor.añadido para los clientes que lo reciban por correo
  #1044  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Y más

No sabemos como van a construir el código qr, pero si metes algún signo en la serie o cif que no valga para web, por ej3mplo factura 3/33 el qr no va a hacer bien su función a no ser que escribas la cadena para generar el qr wn formato hexadecimal con el %20 antes de cada hexa
  #1045  
Antiguo 04-01-2024
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.595
Poder: 21
newtron Va camino a la fama
Me estoy estresando...
__________________
Be water my friend.
  #1046  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Me estoy estresando...
Todo se hace. Hay tiempo
  #1047  
Antiguo 04-01-2024
nincillo nincillo is offline
Miembro
 
Registrado: may 2017
Posts: 166
Poder: 8
nincillo Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Me estoy estresando...
Ya somos dos por lo menos...
  #1048  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Estas cosas que he puesto son fáciles de hacer. Ya se explicaran si hace falta.
Hay una cosa que me preocupa, los que usamos curl (EN API O EN CURL
EXE). Al par3cer tiene fexha de caducidad el certificado para usarlo, más concretamente en 2028, no he encontrado la renovación y al ser una herramienta gratuita no tengo ni idea de que harán, a ver si alguien me puede dar luz sobre este asunto.
Si usáis curl, probad a usarlo cambiando la fecha de vuestra máquina a 2029.
  #1049  
Antiguo 04-01-2024
antoine0 antoine0 is offline
Miembro
 
Registrado: oct 2021
Posts: 238
Poder: 4
antoine0 Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Hay una cosa que me preocupa, los que usamos curl (EN API O EN CURL
EXE). Al par3cer tiene fexha de caducidad el certificado para usarlo, más concretamente en 2028, no he encontrado la renovación y al ser una herramienta gratuita no tengo ni idea de que harán, a ver si alguien me puede dar luz sobre este asunto.
Si usáis curl, probad a usarlo cambiando la fecha de vuestra máquina a 2029.
Acabo de descargar curl para Win64, la versión mingw build 8.5.0_4 de https://curl.se/windows/. Se ha generado el 6/12/2023, con un certificado de firma con validez 17/1/21-17/1/24 (o siga caduca dentro de dos semanas) que depende de un certificado raíz de validez 2021-2026, sin marca de tiempo (para hacer programas reproducibles, es decir independiente de la hora de generación, ver último punto de esta lista).
No veo problemas en el horizonte 2028, pero sí veo problemas...
Problema 1º, depende de un certificado raíz que no está registrado en la mayoría de los ordenadores; solución: a la instalación hay que registrar este certificado raíz en los ordenadores del cliente (y ser consciente de las implicaciones a nivel de seguridad)
Problema 2º, ¿qué pasará cuando caducan los certificados? A no tener marca de tiempo, Windows se quejará del problema de seguridad (posiblemente sin dar posibilidad de forzar la ejecución, p.e. en Win11) solución: actualizar siempre cURL a la última versión...

También tengo otra versión 7.5 más antigua (2016) que no vienen directamente de curl.se pero de web.de (tiene opciones que me sirven para determindo proyecto). Esta está firmada con un certificado de validez 14/9/2016-14/9/2017, es decir caducado desde hace mucho tiempo; pero esta versión ¡tiene marca de tiempo! Por tanto allí no hay quejas, la firma de código sigue válida (si la raíz está autorizada) y no veo

Visto la fecha de caducidad del certificado de "curl-for-win Code Signing Authority", creo que vamos a oír hablar de este tema próximamente.

Sin embargo, posiblemente se puede usar el curl.exe del sistema si estas en una versión normal de Windows 10 o 11: este está generada y firmada por Microsoft, y no habrá problemas en 2028 o en ningún otro momento pero no hay la opción de usar libcurl.dll
  #1050  
Antiguo 04-01-2024
edari edari is offline
Miembro
 
Registrado: jun 2021
Posts: 229
Poder: 4
edari Va por buen camino
Cita:
Empezado por nincillo Ver Mensaje
Ya somos dos por lo menos...

Yo el tercero


El registro de transacciones me supera y todas las garantías que hay que dar de inalterabilidad, tres cuartos de lo mismo.

Por no hablar de las multas.

Última edición por edari fecha: 04-01-2024 a las 20:41:57.
  #1051  
Antiguo 04-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
solución

Cita:
Empezado por antoine0 Ver Mensaje
Acabo de descargar curl para Win64, la versión mingw build 8.5.0_4 de https://curl.se/windows/. Se ha generado el 6/12/2023, con un certificado de firma con validez 17/1/21-17/1/24 (o siga caduca dentro de dos semanas) que depende de un certificado raíz de validez 2021-2026, sin marca de tiempo (para hacer programas reproducibles, es decir independiente de la hora de generación, ver último punto de esta lista).
No veo problemas en el horizonte 2028, pero sí veo problemas...
Problema 1º, depende de un certificado raíz que no está registrado en la mayoría de los ordenadores; solución: a la instalación hay que registrar este certificado raíz en los ordenadores del cliente (y ser consciente de las implicaciones a nivel de seguridad)
Problema 2º, ¿qué pasará cuando caducan los certificados? A no tener marca de tiempo, Windows se quejará del problema de seguridad (posiblemente sin dar posibilidad de forzar la ejecución, p.e. en Win11) solución: actualizar siempre cURL a la última versión...

También tengo otra versión 7.5 más antigua (2016) que no vienen directamente de curl.se pero de web.de (tiene opciones que me sirven para determindo proyecto). Esta está firmada con un certificado de validez 14/9/2016-14/9/2017, es decir caducado desde hace mucho tiempo; pero esta versión ¡tiene marca de tiempo! Por tanto allí no hay quejas, la firma de código sigue válida (si la raíz está autorizada) y no veo

Visto la fecha de caducidad del certificado de "curl-for-win Code Signing Authority", creo que vamos a oír hablar de este tema próximamente.

Sin embargo, posiblemente se puede usar el curl.exe del sistema si estas en una versión normal de Windows 10 o 11: este está generada y firmada por Microsoft, y no habrá problemas en 2028 o en ningún otro momento pero no hay la opción de usar libcurl.dll

Jeje, creo que he encontrado la solución, mañana me aseguro y os cuento que teneis que hacer, espero que sirva igualmente para los envios a la Aeat.
Admito donaciones, yo pago los impuestos.
  #1052  
Antiguo 05-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Solución Caducidad Ceriticado Ssl De Curl

Buenas de nuevo, he realizado varias pruebas en curl.exe y funciona correctamente.
En curl.exe se puede desactivar la comprobación de certificados con el parametro:
-k --insecure
Las pruebas sin el parametro, en una fecha avanzada, da error por certificado ssl caducado.


En el manual de curl.exe dice esto:
-k --insecure
(TLS) By default, every SSL connection curl makes is verified to
be secure. This option allows curl to proceed and operate even
for server connections otherwise considered insecure.

The server connection is verified by making sure the server's
certificate contains the right name and verifies successfully
using the cert store.

See this online resource for further details:
https://curl.se/docs/sslcerts.html

See also --proxy-insecure and --cacert.


Para el curl de las las apis debe ser una opción parecida para poner a false la comprobación.


Saludos
  #1053  
Antiguo 05-01-2024
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 1.351
Poder: 5
ermendalenda Va por buen camino
Para comprobar fecha caducidad del curl teneios que buscar este fichero:

curl-ca-bundle.crt

Pulsais doble click y ala.
  #1054  
Antiguo 07-01-2024
djatila djatila is offline
Registrado
 
Registrado: nov 2022
Posts: 9
Poder: 0
djatila Va por buen camino
Buenas,
Estoy en visual basic studio , he referenciado el wsdl para generar las clases. Pero estoy atascado intentando asignar valores al nodo altaFactuSistemaFacturacion.RegistroAltaFacturas , me da error el valor de tipo FacturasEmitidasType no se puede convertir en FacturasEmitidasType(), altaFactuSistemaFacturacion.cabecera si se asigna y aparece despues al serializar la clase.
Gracias de antemano.
  #1055  
Antiguo 07-01-2024
Maska10 Maska10 is offline
Miembro
 
Registrado: abr 2020
Posts: 18
Poder: 0
Maska10 Va por buen camino
una duda chorra (o no)

Una duda chorra (o no),

En el fichero de estructura de los ficheros, para, por ejemplo, el fichero de alta hay 3 formatos en 3 pestañas:

- Alta.VERIFACTU
- Alta.Requerimiento
- Alta.C-E

Entiendo que el primero es el formato que debemos usar si nuestro software está conectado a VERIFCATU.

Entiendo, por lógica, que el segundo es el formato que debemos usar si nuestro software NO está conectado a VERIFACTU.

Como podréis adivinar .. ¿para que carajos es el tercero? ¿que significa C-E? ¿está puesto en algun lado y soy tan tonto que no lo veo?
  #1056  
Antiguo 07-01-2024
djatila djatila is offline
Registrado
 
Registrado: nov 2022
Posts: 9
Poder: 0
djatila Va por buen camino
Hola Maska10, no estoy muy seguro, pero puede estar relacionado con la alta de facturas en el sistema de Contabilidad Electrónica.
  #1057  
Antiguo 07-01-2024
Maska10 Maska10 is offline
Miembro
 
Registrado: abr 2020
Posts: 18
Poder: 0
Maska10 Va por buen camino
Cita:
Empezado por djatila Ver Mensaje
Hola Maska10, no estoy muy seguro, pero puede estar relacionado con la alta de facturas en el sistema de Contabilidad Electrónica.
O igual es el fichero individual de cada factura Con Envio .. yo que se
  #1058  
Antiguo 07-01-2024
nincillo nincillo is offline
Miembro
 
Registrado: may 2017
Posts: 166
Poder: 8
nincillo Va por buen camino
Cita:
Empezado por djatila Ver Mensaje
Buenas,
Estoy en visual basic studio , he referenciado el wsdl para generar las clases. Pero estoy atascado intentando asignar valores al nodo altaFactuSistemaFacturacion.RegistroAltaFacturas , me da error el valor de tipo FacturasEmitidasType no se puede convertir en FacturasEmitidasType(), altaFactuSistemaFacturacion.cabecera si se asigna y aparece despues al serializar la clase.
Gracias de antemano.
¿Podrías poner un trozo de código donde se pueda ver como "llegas" a poder meter datos al nodo cabecera mediante el wsdl?. Es que yo en Delphi soy incapaz. Quizás viéndolo en otro lenguaje se me ocurra como hacerlo. (Aprovechando, ¿podrías decirme como importar un wsdl en Visual Basic Studio aunque sea por privado para no "mezclar" en ese hilo?)

Sobre tu pregunta, sino me confundo, al menos en Delphi, RegistroAltaFacturas es del tipo Array_Of_FacturasEmitidasType. Con lo cual FacturasEmitidasType entiendo que se corresponde a cada de las facturas que vamos a enviar en el "lote", y todas ellas las tenemos que ir metiendo en un array que es lo que luego pasamos como parámetro a la llamada AltaFactuSistemaFacturacion.
  #1059  
Antiguo 07-01-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.586
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ramherfer Ver Mensaje
Compañero yo puse un codigo para calcular el hash de RegistroFacturacion metido en una librería de enlace dinámico (dll)
No se si está en la página 37 o 38 y me funciona está creada con delphi 10.2 y la llamo desde delphi 7 me crea el hash 256 que he comprobado en algunas web's y está perfecto.
Aqui está el código de la librería:

Lo añado al mensaje #2 de este hilo, donde iremos recopilando enlaces con diferentes códigos útiles.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
  #1060  
Antiguo 07-01-2024
djatila djatila is offline
Registrado
 
Registrado: nov 2022
Posts: 9
Poder: 0
djatila Va por buen camino
Cita:
Empezado por nincillo Ver Mensaje
¿Podrías poner un trozo de código donde se pueda ver como "llegas" a poder meter datos al nodo cabecera mediante el wsdl?. Es que yo en Delphi soy incapaz. Quizás viéndolo en otro lenguaje se me ocurra como hacerlo. (Aprovechando, ¿podrías decirme como importar un wsdl en Visual Basic Studio aunque sea por privado para no "mezclar" en ese hilo?)
Leí en un post anterior que aquí había gente también en visual basic, así que respondo por aquí, así espero que sirva a mas gente. (si molesta, avísenme)

Para importar el wsdl en visual basic studio
-Proyecto -Agregar referencia de servicio - botón avanzadas - botón agregar referencia web
-en direccion = SistemaFacturacion.wsdl
-botón flechita - cambiar el nombre de la clase si queréis yo puse MiSFI -y agregar referencia

También esta la opción con el comando xsd de generar las clases.vb con los ficheros xsd, pero esto no es necesario si se importo el wsdl.

Aqui te pongo como estoy haciendo para generar el xml , este codigo funciona hasta el cierre de la cabecera.

Código:
        Dim altaFactuSistemaFacturacion As New AltaFactuSistemaFacturacion
        'Cabecera
        Dim cabecera As New MiSFI.Cabecera
        Dim obligadoEmision As New MiSFI.PersonaFisicaJuridicaESType
        Dim tipoRegistroAEAT As New MiSFI.TipoRegistroAEATType
        '/Cabecera
        Dim registroAltaFacturas As New MiSFI.FacturasEmitidasType
        Dim RegistroFacturacion(2) As MiSFI.RegistroFacturacionType
        Dim datosControl As New MiSFI.DatosControlType
        'idFactura
        Dim idFactura As New MiSFI.IDFacturaExpedidaType 'MiSFI.IDFacturaARType
        Dim idEmisorFactura As New MiSFI.IDFacturaExpedidaTypeIDEmisorFactura
        '/idFactura
        Dim Destinatarios As New MiSFI.PersonaFisicaJuridicaType
        Dim idDestinatario As New MiSFI.PersonaFisicaJuridicaESType
        Dim detalleDesglose As New MiSFI.DetalleType ' DetalleDesglose
        Dim encadenamientoRegistroAnterior As New MiSFI.EncadenamientoFacturaAnteriorType '.EncadenamientoRegistroAnterior
        Dim idEmisorFacturaRegistroAnterior As New MiSFI.EncadenamientoFacturaAnteriorTypeIDEmisorFacturaRegistroAnterior  '.IDEmisorFacturaRegistroAnterior
        Dim sistemaInformatico As New MiSFI.SistemaInformaticoType
        'Cabecera
        cabecera.IDVersion = MiSFI.VersionType.Item10  '"1.0"
        obligadoEmision.NombreRazon = "XXXXX"
        obligadoEmision.NIF = "XXXXX"
        tipoRegistroAEAT = MiSFI.TipoRegistroAEATType.T0 ' "T0"
        cabecera.ObligadoEmision = obligadoEmision
        cabecera.TipoRegistroAEAT = tipoRegistroAEAT
        '/Cabecera
        'RegistroAltaFacturas
        'RegistroFacturacion
        'IDFactura
        idEmisorFactura.NIF = "XXXXX"
        idFactura.NumSerieFacturaEmisor = "12345"
        idFactura.FechaExpedicionFacturaEmisor = "13-11-2023"
        idFactura.IDEmisorFactura = idEmisorFactura
        '/IDfactura  

        'Estas dan error
        'RegistroFacturacion(0).IDFactura = idFactura
        'RegistroFacturacion(0).NombreRazonEmisor = "certificado uno telematicas"
        'RegistroFacturacion(0).TipoRegistroSIF = MiSFI.TipoRegistroSIFType.S0 ' "S0"
        'RegistroFacturacion(0).TipoFactura = MiSFI.ClaveTipoFacturaType.F1 '"F1"
        'RegistroFacturacion(0).DescripcionOperacion = "Descripc"

        idDestinatario.NombreRazon = "XXXXX"
        idDestinatario.NIF = "XXXXX"

        datosControl.Huella = "Huella"
        datosControl.TipoHash = "01"


        registroAltaFacturas.RegistroFacturacion = RegistroFacturacion(0)
        registroAltaFacturas.DatosControl = datosControl


        altaFactuSistemaFacturacion.Cabecera = cabecera
        'esta da error 
        'altaFactuSistemaFacturacion.RegistroAltaFacturas = registroAltaFacturas

        Dim ns As New XmlSerializerNamespaces()
        ns.Add("soapenv", ".......")
        ns.Add("sum", "........SuministroLR.xsd")
        ns.Add("sum1", ".......SuministroInformacion.xsd")

        'serializamos
        Dim serializer As New XmlSerializer(GetType(MiSFI.AltaFactuSistemaFacturacion))
        Using writer As New StreamWriter("C:\xml\archivo.xml")
            serializer.Serialize(writer, altaFactuSistemaFacturacion, ns)
        End Using
tuve que quitar las url porque no tengo permisos....

Cita:
Empezado por nincillo Ver Mensaje
Sobre tu pregunta, sino me confundo, al menos en Delphi, RegistroAltaFacturas es del tipo Array_Of_FacturasEmitidasType. Con lo cual FacturasEmitidasType entiendo que se corresponde a cada de las facturas que vamos a enviar en el "lote", y todas ellas las tenemos que ir metiendo en un array que es lo que luego pasamos como parámetro a la llamada AltaFactuSistemaFacturacion.
Gracias por responder. pero en esas estoy y no lo consigo, algo estoy haciendo mal......
Tema Cerrado



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
Hijo de Informáticos gluglu Humor 3 13-03-2007 12:05:35
Adictos informaticos ... Trigger Humor 2 11-10-2004 13:18:32
Nosotros los Informáticos Trigger Humor 1 10-10-2004 15:58:09
Patrón de los Informáticos. obiwuan Varios 20 10-09-2003 15:44:54
Chistes Informaticos jhonny Humor 2 11-08-2003 22:59:09


La franja horaria es GMT +2. Ahora son las 20:03:50.


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