Issues (158)

satcfdi/create/contabilidad/AuxiliarCtas11.py (2 issues)

1
"""AuxiliarCtas www.sat.gob.mx/esquemas/ContabilidadE/1_1/AuxiliarCtas"""
2
from decimal import Decimal
3
from datetime import datetime, date, time
4
from collections.abc import Sequence
5
from ...cfdi import CFDI
6
from ...xelement import XElement
7
from ...utils import ScalarMap
8
9
10
class DetalleAux(ScalarMap):
11
    """
12
    Nodo obligatorio para expresar el detalle de los movimientos del periodo de cada uno de los auxiliares
13
    
14
    :param fecha: Atributo requerido para expresar la fecha de registro de la transacción que afecta la cuenta o subcuenta que integra el auxiliar.
15
    :param num_un_iden_pol: Atributo requerido para expresar el número único de identificación de la póliza. El campo deberá contener la clave o nombre utilizado por el contribuyente para diferenciar, el tipo de póliza y el número correspondiente. En un mes ordinario no debe repetirse un mismo número de póliza con la clave o nombre asignado por el contribuyente.
16
    :param concepto: Atributo requerido para expresar el concepto de la transacción que integra el auxiliar.
17
    :param debe: Atributo requerido para expresar el monto del cargo de la cuenta o subcuenta de la transacción que integra el auxiliar. En caso de no existir dato, colocar cero (0)
18
    :param haber: Atributo requerido para expresar el monto del abono de la cuenta o subcuenta de la transacción que integra el auxiliar. En caso de no existir dato, colocar cero (0)
19
    """
20
    
21
    def __init__(
22
            self,
23
            fecha: date,
24
            num_un_iden_pol: str,
25
            concepto: str,
26
            debe: Decimal | int,
27
            haber: Decimal | int,
28
    ): 
29
        super().__init__({
30
            'Fecha': fecha,
31
            'NumUnIdenPol': num_un_iden_pol,
32
            'Concepto': concepto,
33
            'Debe': debe,
34
            'Haber': haber,
35
        })
36
        
37
38 View Code Duplication
class Cuenta(ScalarMap):
0 ignored issues
show
This code seems to be duplicated in your project.
Loading history...
39
    """
40
    Nodo obligatorio para expresar los movimientos del periodo de cada uno de los auxiliares de la cuenta y/o subcuenta.
41
    
42
    :param num_cta: Atributo requerido para expresar la clave con que se distingue la cuenta o subcuenta que se afecta por la transacción que integra el auxiliar.
43
    :param des_cta: Atributo requerido para expresar el concepto de la cuenta o subcuenta que se afecta por la transacción que integra el auxiliar.
44
    :param saldo_ini: Atributo requerido para expresar el monto del saldo inicial de la cuenta o subcuenta del periodo del auxiliar. En caso de no existir dato, colocar cero (0)
45
    :param saldo_fin: Atributo requerido para expresar el monto del saldo final de la cuenta o subcuenta del periodo del auxiliar. En caso de no existir dato, colocar cero (0)
46
    :param detalle_aux: Nodo obligatorio para expresar el detalle de los movimientos del periodo de cada uno de los auxiliares
47
    """
48
    
49
    def __init__(
50
            self,
51
            num_cta: str,
52
            des_cta: str,
53
            saldo_ini: Decimal | int,
54
            saldo_fin: Decimal | int,
55
            detalle_aux: DetalleAux | dict | Sequence[DetalleAux | dict],
56
    ): 
57
        super().__init__({
58
            'NumCta': num_cta,
59
            'DesCta': des_cta,
60
            'SaldoIni': saldo_ini,
61
            'SaldoFin': saldo_fin,
62
            'DetalleAux': detalle_aux,
63
        })
64
        
65
66 View Code Duplication
class AuxiliarCtas(CFDI):
0 ignored issues
show
This code seems to be duplicated in your project.
Loading history...
67
    """
68
    Estándar de auxiliar de la cuenta o subcuenta del periodo que se entrega como parte de la contabilidad electrónica
69
    
70
    :param rfc: Atributo requerido para expresar el RFC del contribuyente que envía los datos.
71
    :param mes: Atributo requerido para expresar el mes en que inicia la vigencia del auxiliar de la cuenta o subcuenta.
72
    :param anio: Atributo requerido para expresar el año al que inicia la vigencia del auxiliar de la cuenta o subcuenta.
73
    :param tipo_solicitud: Atributo requerido para expresar el tipo de envío del auxiliar de la cuenta o subcuenta ( AF - Acto de Fiscalización; FC - Fiscalización Compulsa; DE - Devolución; CO - Compensación )
74
    :param cuenta: Nodo obligatorio para expresar los movimientos del periodo de cada uno de los auxiliares de la cuenta y/o subcuenta.
75
    :param num_orden: Atributo opcional para expresar el número de orden asignado al acto de fiscalización al que hace referencia la solicitud del auxiliar de la cuenta o subcuenta. Requerido para tipo de solicitud = AF y FC. Se convierte en requerido cuando se cuente con la información.
76
    :param num_tramite: Atributo opcional para expresar el número de trámite asignado a la solicitud de devolución o compensación al que hace referencia el auxiliar de la cuenta o subcuenta. Requerido para tipo de solicitud = DE o CO. Se convierte en requerido cuando se cuente con la información.
77
    :param sello: Atributo opcional para contener el sello digital del archivo de contabilidad electrónica. El sello deberá ser expresado cómo una cadena de texto en formato Base 64
78
    :param no_certificado: Atributo opcional para expresar el número de serie del certificado de sello digital que ampara el archivo de contabilidad electrónica, de acuerdo al acuse correspondiente a 20 posiciones otorgado por el sistema del SAT.
79
    :param certificado: Atributo opcional que sirve para expresar el certificado de sello digital que ampara al archivo de contabilidad electrónica como texto, en formato base 64.
80
    """
81
    
82
    tag = '{www.sat.gob.mx/esquemas/ContabilidadE/1_1/AuxiliarCtas}AuxiliarCtas'
83
    version = '1.1'
84
    
85
    def __init__(
86
            self,
87
            rfc: str,
88
            mes: str,
89
            anio: int,
90
            tipo_solicitud: str,
91
            cuenta: Cuenta | dict | Sequence[Cuenta | dict],
92
            num_orden: str = None,
93
            num_tramite: str = None,
94
            sello: str = None,
95
            no_certificado: str = None,
96
            certificado: str = None,
97
    ): 
98
        super().__init__({
99
            'Version': self.version,
100
            'RFC': rfc,
101
            'Mes': mes,
102
            'Anio': anio,
103
            'TipoSolicitud': tipo_solicitud,
104
            'Cuenta': cuenta,
105
            'NumOrden': num_orden,
106
            'NumTramite': num_tramite,
107
            'Sello': sello,
108
            'NoCertificado': no_certificado,
109
            'Certificado': certificado,
110
        })
111
        
112
113