Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Envío de registros y sus respuestas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #27  
Antiguo 05-04-2025
Avatar de seccion_31
seccion_31 seccion_31 is offline
Miembro
 
Registrado: ene 2017
Posts: 472
Poder: 10
seccion_31 Va por buen camino
donde si tiene un error es en la anulacion (DLL)


en la 3.0 estara corregido


pero si quereis corregirlo ya:


uverifactuFuncs.pas (D10):


reemplazar esta funcion:


Código:
function anulacionfactura_verifactu(sesion:integer; cabecera:TVeriFactuInicio; indice:integer):RegistroFacturaType;
var
    Factura             : RegistroFacturaType;
    Destinatario        : PersonaFisicaJuridicaType;
    ListaDestinatarios  : Destinatarios;
    ListaDesglose       : DesgloseType;
    DetalleDesglose     : DetalleType;
    XSDatetime          : TXSDatetime;

    j:integer;
    _huellaAnterior     : string;
    facturaRegistro     : TRegistrofactura;
begin
    facturaRegistro:=sesiones[sesion].facturas[indice];

    Factura := RegistroFacturaType.Create;

    Factura.RegistroAnulacion             := RegistroAnulacion.Create;
    Factura.RegistroAnulacion.IDVersion   := VersionType._1_0;

    Factura.RegistroAnulacion.IDFactura                               := IDFacturaExpedidaBajaType.Create;
    Factura.RegistroAnulacion.IDFactura.IDEmisorFacturaAnulada        := cabecera.emisor.nifEmisor;
    Factura.RegistroAnulacion.IDFactura.NumSerieFacturaAnulada        := facturaRegistro.numSerieFactura;
    Factura.RegistroAnulacion.IDFactura.FechaExpedicionFacturaAnulada := verifactuFecha( facturaRegistro.fechafactura ) ; // (dd-mm-yyyy)


    // Encadenamiento
    Factura.RegistroAnulacion.Encadenamiento := Encadenamiento2.Create;

    // ¿ es el primer registro ?
    if sesiones[sesion].facturas[indice-1].huella='' then Factura.RegistroAnulacion.Encadenamiento.PrimerRegistro:=PrimerRegistroCadenaType(0) // S
    else
    begin
           Factura.RegistroAnulacion.Encadenamiento.RegistroAnterior:=EncadenamientoFacturaAnteriorType.Create;

           Factura.RegistroAnulacion.Encadenamiento.RegistroAnterior.IDEmisorFactura         :=cabecera.emisor.nifEmisor;
           Factura.RegistroAnulacion.Encadenamiento.RegistroAnterior.NumSerieFactura         :=sesiones[sesion].facturas[indice-1].numSerieFactura;
           Factura.RegistroAnulacion.Encadenamiento.RegistroAnterior.FechaExpedicionFactura  :=sesiones[sesion].facturas[indice-1].fechaFactura;
           Factura.RegistroAnulacion.Encadenamiento.RegistroAnterior.Huella                  :=sesiones[sesion].facturas[indice-1].huella;
    end;

    // Sin registro previo: (anulacion de facturas fuera de verifactu)
    if sesiones[sesion].facturas[indice].sinregistroPrevio then
          Factura.RegistroAnulacion.SinRegistroPrevio:=SinRegistroPrevioType.S;

    // sistemaInformatico
    sistemaInformatico( cabecera, Factura );

    //XSDatetime
    XSDatetime := TXSDatetime.Create;
    XSDatetime.UseZeroMilliseconds := False;
    XSDatetime.AsDateTime := Now;
    XSDatetime.Millisecond := 0;
    XSDatetime.UseZeroMilliseconds := False;
    XSDatetime.FractionalSeconds := 0;
    Factura.RegistroAnulacion.FechaHoraHusoGenRegistro := XSDatetime; // Formato: YYYY-MM-DDThh:mm:ssTZD (ej: 2024-01-01T19:20:30+01:00) (ISO 8601)

    // Huella
    facturaRegistro.Huella  := GenerarHuella_anulacion_RegistroVerifactu( Factura.RegistroAnulacion );
    sesiones[sesion].facturas[indice].huella:=facturaRegistro.Huella;

    Factura.RegistroAnulacion.TipoHuella := TipoHuellaType._01;
    Factura.RegistroAnulacion.Huella     := facturaRegistro.Huella;

    // fin, devolver el objeto  RegistroFacturacionAnulacionType  creado desde la informacion contenida en el record TRegistroFactura (ver utiles.pas)
    result:=factura;
end;
 



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
Verifactu o por requerimiento (no-verifactu) ¿decisión del usuario? Maska10 Temas legales 2 07-12-2024 12:34:47
Demo de una applicación para una estación de enfermera con RAD Studio AgustinOrtu La Taberna 1 21-07-2015 17:41:35
Demo Delphi, EMail Caral Internet 1 19-12-2006 00:37:56
Demo de delphi 2005 mazinger Varios 2 18-12-2004 09:23:09
El Rave que viene con Delphi es una Demo? apicito Impresión 0 04-06-2003 11:33:36


La franja horaria es GMT +2. Ahora son las 21:25:05.


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