fix: enviar linea_scaii_551 en partidas desde campo LOTE

Las partidas (registro551) no incluian linea_scaii_551. Se agrega el
campo al payload de ambos generadores (SCAII y SCAF) tomando su valor
del campo LOTE de las tablas de partidas, y se selecciona LOTE en los
querys de partidas para impo/expo, definitiva y temporal.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-09 14:15:06 -05:00
parent 10dc063cf1
commit e9152a8cd1
3 changed files with 8 additions and 6 deletions

View File

@@ -174,8 +174,8 @@ class GestorBaseDatos:
col_fac = "FACCMIMPODEF" if regimen == "IMD" else "FACTURAIMPO" col_fac = "FACCMIMPODEF" if regimen == "IMD" else "FACTURAIMPO"
query = f""" query = f"""
SELECT p.Consecutivo AS Consecutivo, p.{col_linea} AS Linea, p.NumParte AS NumParte, SELECT p.Consecutivo AS Consecutivo, p.{col_linea} AS Linea, p.LOTE AS Lote, p.NumParte AS NumParte,
p.CantImpo AS Cantidad, p.ValorImpoMC AS ValorComercial, p.UniMed AS UnidadMedida, p.CantImpo AS Cantidad, p.ValorImpoMC AS ValorComercial, p.UniMed AS UnidadMedida,
p.FraccionImpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccImpo AS TipoFracc, p.FraccionImpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccImpo AS TipoFracc,
p.CostoUnitarioME AS CostoUnitarioME, p.ValorImpoME AS ValorDolares, p.CostoUnitarioME AS CostoUnitarioME, p.ValorImpoME AS ValorDolares,
p.ValorImpoMN AS ValorPesos, p.PaisOrigen AS PaisOrigen, p.Sector AS Sector, p.ValorImpoMN AS ValorPesos, p.PaisOrigen AS PaisOrigen, p.Sector AS Sector,
@@ -196,7 +196,7 @@ class GestorBaseDatos:
""" """
else: # EXPO SCAII else: # EXPO SCAII
query = f""" query = f"""
SELECT p.FacturaExpo AS Consecutivo, p.Linea AS Linea, p.NumParte AS NumParte, SELECT p.FacturaExpo AS Consecutivo, p.Linea AS Linea, p.LOTE AS Lote, p.NumParte AS NumParte,
p.CantExpo AS Cantidad, p.ValorTotalMN AS ValorComercial, p.UniMed AS UnidadMedida, p.CantExpo AS Cantidad, p.ValorTotalMN AS ValorComercial, p.UniMed AS UnidadMedida,
p.FraccionExpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFracExpo AS TipoFracc, p.FraccionExpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFracExpo AS TipoFracc,
p.CostoUnitarioME AS CostoUnitarioME, p.ValorTotalME AS ValorDolares, p.CostoUnitarioME AS CostoUnitarioME, p.ValorTotalME AS ValorDolares,
@@ -224,8 +224,8 @@ class GestorBaseDatos:
col_vmn = "ValorMN" if regimen == "IMD" else "ValorImpoMN" col_vmn = "ValorMN" if regimen == "IMD" else "ValorImpoMN"
query = f""" query = f"""
SELECT p.Consecutivo AS Consecutivo, p.{col_linea} AS Linea, p.NumParte AS NumParte, SELECT p.Consecutivo AS Consecutivo, p.{col_linea} AS Linea, p.LOTE AS Lote, p.NumParte AS NumParte,
p.{col_cant} AS Cantidad, p.ValorImpoMC AS ValorComercial, p.UnidadMedida AS UnidadMedida, p.{col_cant} AS Cantidad, p.ValorImpoMC AS ValorComercial, p.UnidadMedida AS UnidadMedida,
p.Fraccion AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccion AS TipoFracc, p.Fraccion AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccion AS TipoFracc,
p.CostoUnitarioDlls AS CostoUnitarioME, p.{col_vme} AS ValorDolares, p.CostoUnitarioDlls AS CostoUnitarioME, p.{col_vme} AS ValorDolares,
p.{col_vmn} AS ValorPesos, p.PaisOrigen AS PaisOrigen, p.Sector AS Sector, p.{col_vmn} AS ValorPesos, p.PaisOrigen AS PaisOrigen, p.Sector AS Sector,
@@ -245,7 +245,7 @@ class GestorBaseDatos:
""" """
else: # EXPO SCAF else: # EXPO SCAF
query = """ query = """
SELECT p.Consecutivo AS Consecutivo, p.LineaExpo AS Linea, p.FacturaImpo AS NumParte, SELECT p.Consecutivo AS Consecutivo, p.LineaExpo AS Linea, p.LOTE AS Lote, p.FacturaImpo AS NumParte,
p.CantExpo AS Cantidad, 0 AS ValorComercial, p.UnidadMedida AS UnidadMedida, p.CantExpo AS Cantidad, 0 AS ValorComercial, p.UnidadMedida AS UnidadMedida,
p.FraccionExpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccion AS TipoFracc, p.FraccionExpo AS Fraccion, p.PesoNetoKGS AS PesoNeto, p.TipoFraccion AS TipoFracc,
p.CostoUnitarioDlls AS CostoUnitarioME, p.ValorExpoME AS ValorDolares, p.CostoUnitarioDlls AS CostoUnitarioME, p.ValorExpoME AS ValorDolares,

View File

@@ -82,6 +82,7 @@ class Generador551SCAF:
"numero_remesa_551": str(num_remesa or " "), "numero_remesa_551": str(num_remesa or " "),
"numero_partida_remesa_551": str(num_partida_remesa), "numero_partida_remesa_551": str(num_partida_remesa),
"linea_scaii_551": str(par.get("Lote") or " "), # Lote de la tabla de partidas (impo/expo/def/temp)
"cantidad_alterna_551": float(par.get("CantidadAlterna") or 0), "cantidad_alterna_551": float(par.get("CantidadAlterna") or 0),
"unidad_medida_alterna_551": str(par.get("UnidadAlterna", " ")), "unidad_medida_alterna_551": str(par.get("UnidadAlterna", " ")),
"descripcion_ingles_551": " ", "descripcion_ingles_551": " ",

View File

@@ -125,6 +125,7 @@ class Generador551SCAII:
"numero_remesa_551": str(num_remesa or " "), "numero_remesa_551": str(num_remesa or " "),
"numero_partida_remesa_551": str(par.get("Linea") or num_partida_remesa), "numero_partida_remesa_551": str(par.get("Linea") or num_partida_remesa),
"linea_scaii_551": str(par.get("Lote") or " "), # Lote de la tabla de partidas (impo/expo/def/temp)
"cantidad_alterna_551": float(par.get("CantidadAlterna") or 0), "cantidad_alterna_551": float(par.get("CantidadAlterna") or 0),
"unidad_medida_alterna_551": str(par.get("UnidadAlterna") or " "), "unidad_medida_alterna_551": str(par.get("UnidadAlterna") or " "),
"descripcion_ingles_551": str(par.get("DescripcionIngles") or " ").strip()[:80], "descripcion_ingles_551": str(par.get("DescripcionIngles") or " ").strip()[:80],