Correcion para restarle cantidad a la version mas actualiazda de la factrua de importacion

This commit is contained in:
2026-03-19 15:58:14 -05:00
parent 264188e112
commit 0d3b29ef00

View File

@@ -202,12 +202,12 @@ BASE_SELECT = """
REPLACE(REPLACE(COALESCE(ild.description_spanish,''),CHR(10),''),CHR(13),' ') AS "C14",
REPLACE(REPLACE(COALESCE(ild.description_english,''),CHR(10),''),CHR(13),' ') AS "C15",
COALESCE(ilc.origin_country,'') AS "C16",
COALESCE(bal.qty_impo, 0) AS "C17",
COALESCE(ent.qty_impo, 0) AS "C17",
COALESCE(bal.qty_used, 0) AS "C18",
COALESCE(uom.code,'') AS "C19",
COALESCE(bal.val_mn_impo, 0) AS "C20",
COALESCE(ent.val_mn_impo, 0) AS "C20",
COALESCE(bal.val_mn_used, 0) AS "C21",
COALESCE(bal.val_me_impo, 0) AS "C22",
COALESCE(ent.val_me_impo, 0) AS "C22",
COALESCE(bal.val_me_used, 0) AS "C23",
COALESCE(ilq.net_weight, 0) AS "C24",
COALESCE(ilc.fraction,'') AS "C26",
@@ -253,17 +253,24 @@ BASE_JOINS = """
LEFT JOIN a76.item_line_descriptions ild ON ild.item_line_id = il.id
LEFT JOIN a76.parts p ON p.id = il.part_number_id
LEFT JOIN a76.units_of_measure uom ON uom.id = il.unit_of_measure
LEFT JOIN (
SELECT DISTINCT ON (import_item_line_id)
import_item_line_id,
quantity AS qty_impo,
value_me AS val_me_impo,
value_mn AS val_mn_impo
FROM a24.balance_movement
WHERE movement_type = 'entry' AND tenant_id = :tenant_id
ORDER BY import_item_line_id, id DESC
) ent ON ent.import_item_line_id = il.id
LEFT JOIN (
SELECT
import_item_line_id,
SUM(CASE WHEN movement_type = 'entry' THEN quantity ELSE 0 END) as qty_impo,
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction') THEN quantity ELSE 0 END) as qty_used,
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction', 'neg_adj', 'transfer_out', 'expiration', 'regime_chg_out', 'entry_void')
THEN -1 * quantity ELSE quantity END) as qty_balance,
SUM(CASE WHEN movement_type = 'entry' THEN value_me ELSE 0 END) as val_me_impo,
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction') THEN value_me ELSE 0 END) as val_me_used,
SUM(CASE WHEN movement_type = 'entry' THEN value_mn ELSE 0 END) as val_mn_impo,
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction') THEN value_mn ELSE 0 END) as val_mn_used
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction') THEN value_mn ELSE 0 END) as val_mn_used,
SUM(CASE WHEN movement_type IN ('consumption', 'waste', 'scrap', 'destruction', 'neg_adj', 'transfer_out', 'expiration', 'regime_chg_out', 'entry_void')
THEN -1 * quantity ELSE quantity END) as qty_balance
FROM a24.balance_movement
WHERE tenant_id = :tenant_id
GROUP BY import_item_line_id