commit
957160755a
|
@ -34,4 +34,5 @@ credenciales.conf
|
||||||
*.orig
|
*.orig
|
||||||
rfc.db
|
rfc.db
|
||||||
Dockerfile
|
Dockerfile
|
||||||
|
chuletas/
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
v 2.0.9 [20-Dic-2023]
|
||||||
|
- Fix: Issue 98 y 107
|
||||||
|
|
||||||
|
|
||||||
v 2.0.8 [30-Oct-2023]
|
v 2.0.8 [30-Oct-2023]
|
||||||
---------------------
|
---------------------
|
||||||
- Fix: Permitir generar CFDI de egreso para facturas globales sin datos globales.
|
- Fix: Permitir generar CFDI de egreso para facturas globales sin datos globales.
|
||||||
|
|
|
@ -549,7 +549,7 @@ class AppDocumentos(object):
|
||||||
if not type_doc in ('pdf', 'pre', 'tpdf', 'pdfpago', 'html', 'nompdf'):
|
if not type_doc in ('pdf', 'pre', 'tpdf', 'pdfpago', 'html', 'nompdf'):
|
||||||
resp.append_header('Content-Disposition',
|
resp.append_header('Content-Disposition',
|
||||||
'attachment; filename={}'.format(file_name))
|
'attachment; filename={}'.format(file_name))
|
||||||
if type_doc in ('pdf', 'nompdf'):
|
if type_doc in ('pdf', 'nompdf', 'pdfpago'):
|
||||||
resp.append_header('Content-Disposition',
|
resp.append_header('Content-Disposition',
|
||||||
'inline; filename={}'.format(file_name))
|
'inline; filename={}'.format(file_name))
|
||||||
resp.content_type = content_type
|
resp.content_type = content_type
|
||||||
|
|
|
@ -9505,6 +9505,18 @@ class CfdiNomina(BaseModel):
|
||||||
if msg:
|
if msg:
|
||||||
return {}, msg
|
return {}, msg
|
||||||
|
|
||||||
|
if isinstance(row['fecha_pago'], str):
|
||||||
|
msg = f"La Fecha de Pago debe ser una fecha: {row['fecha_pago']}"
|
||||||
|
return {}, msg
|
||||||
|
|
||||||
|
if isinstance(row['fecha_inicial_pago'], str):
|
||||||
|
msg = f"La Fecha Inicial de Pago debe ser una fecha: {row['fecha_inicial_pago']}"
|
||||||
|
return {}, msg
|
||||||
|
|
||||||
|
if isinstance(row['fecha_final_pago'], str):
|
||||||
|
msg = f"La Fecha Final de Pago debe ser una fecha: {row['fecha_final_pago']}"
|
||||||
|
return {}, msg
|
||||||
|
|
||||||
data['serie'] = self._get_serie(self)
|
data['serie'] = self._get_serie(self)
|
||||||
data['folio'] = self._get_folio(self, data['serie'])
|
data['folio'] = self._get_folio(self, data['serie'])
|
||||||
data['forma_pago'] = DEFAULT_SAT_NOMINA['FORMA_PAGO']
|
data['forma_pago'] = DEFAULT_SAT_NOMINA['FORMA_PAGO']
|
||||||
|
|
|
@ -39,7 +39,7 @@ except ImportError:
|
||||||
|
|
||||||
|
|
||||||
DEBUG = DEBUG
|
DEBUG = DEBUG
|
||||||
VERSION = '2.0.8'
|
VERSION = '2.0.9'
|
||||||
|
|
||||||
EMAIL_SUPPORT = ('soporte@empresalibre.mx',)
|
EMAIL_SUPPORT = ('soporte@empresalibre.mx',)
|
||||||
TITLE_APP = '{} v{}'.format(TITLE_APP, VERSION)
|
TITLE_APP = '{} v{}'.format(TITLE_APP, VERSION)
|
||||||
|
|
|
@ -434,6 +434,14 @@ function validate_invoice(values){
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var metodo_pago = $$('lst_metodo_pago').getValue()
|
||||||
|
if(metodo_pago=='PPD' && forma_pago!='99'){
|
||||||
|
webix.UIManager.setFocus('lst_forma_pago')
|
||||||
|
msg = 'La Forma de pago debe ser: [99] Por definir'
|
||||||
|
msg_error(msg)
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
var tipo_cambio = $$('txt_tipo_cambio').getValue()
|
var tipo_cambio = $$('txt_tipo_cambio').getValue()
|
||||||
if(tipo_cambio.trim() == ""){
|
if(tipo_cambio.trim() == ""){
|
||||||
webix.UIManager.setFocus('txt_tipo_cambio')
|
webix.UIManager.setFocus('txt_tipo_cambio')
|
||||||
|
@ -466,8 +474,8 @@ function validate_invoice(values){
|
||||||
|
|
||||||
anticipo = $$('chk_cfdi_anticipo').getValue()
|
anticipo = $$('chk_cfdi_anticipo').getValue()
|
||||||
if(anticipo){
|
if(anticipo){
|
||||||
var mp = $$('lst_metodo_pago').getValue()
|
//~ var mp = $$('lst_metodo_pago').getValue()
|
||||||
if(mp != 'PUE'){
|
if(metodo_pago != 'PUE'){
|
||||||
msg = 'En anticipos, el método de pago debe ser: Pago en una sola exhibición'
|
msg = 'En anticipos, el método de pago debe ser: Pago en una sola exhibición'
|
||||||
msg_error(msg)
|
msg_error(msg)
|
||||||
return false
|
return false
|
||||||
|
@ -548,7 +556,7 @@ function validate_invoice(values){
|
||||||
if(is_global){
|
if(is_global){
|
||||||
var key_sat = rows[i]['clave_sat']
|
var key_sat = rows[i]['clave_sat']
|
||||||
if(key_sat!=KEY_SAT_01){
|
if(key_sat!=KEY_SAT_01){
|
||||||
var msg = 'Clave SAT inválida para Facturar Global en la línea: ' + (i + 1)
|
var msg = 'Clave SAT inválida para Factura Global en la línea: ' + (i + 1)
|
||||||
msg_error(msg)
|
msg_error(msg)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue