29 lines
821 B
MySQL
29 lines
821 B
MySQL
|
|
SELECT
|
||
|
|
p.id,
|
||
|
|
p.proforma_reference,
|
||
|
|
p.tax_mode,
|
||
|
|
p.default_iva_code,
|
||
|
|
p.uses_equivalence_surcharge,
|
||
|
|
p.default_rec_code,
|
||
|
|
p.uses_retention,
|
||
|
|
p.default_retention_code
|
||
|
|
FROM proformas p
|
||
|
|
WHERE p.tax_mode NOT IN ('single', 'per_line')
|
||
|
|
OR (p.uses_equivalence_surcharge = 1 AND p.default_iva_code IS NULL)
|
||
|
|
OR (p.uses_equivalence_surcharge = 0 AND p.default_rec_code IS NOT NULL)
|
||
|
|
OR (p.uses_retention = 0 AND p.default_retention_code IS NOT NULL);
|
||
|
|
|
||
|
|
SELECT
|
||
|
|
p.id,
|
||
|
|
p.proforma_reference,
|
||
|
|
COUNT(DISTINCT pi.item_id) AS item_rows,
|
||
|
|
COUNT(DISTINCT pt.tax_id) AS tax_rows
|
||
|
|
FROM proformas p
|
||
|
|
LEFT JOIN proforma_items pi
|
||
|
|
ON pi.proforma_id = p.id
|
||
|
|
LEFT JOIN proforma_taxes pt
|
||
|
|
ON pt.proforma_id = p.id
|
||
|
|
GROUP BY p.id, p.proforma_reference
|
||
|
|
HAVING COUNT(DISTINCT pi.item_id) = 0
|
||
|
|
AND COUNT(DISTINCT pt.tax_id) > 0;
|