folio-org / folio-analytics

Community query repository for FOLIO analytics based on Metadb/LDP
Apache License 2.0
15 stars 30 forks source link

invoice_adjustments_ext script incompatible with LDP 1.X #822

Closed wafschneider closed 4 months ago

wafschneider commented 5 months ago

The JOIN clauses used to build this table are inconsistent in how ID columns are cast. This causes an incompatibility issue when using with LDP 1.X source tables:

    LEFT JOIN invoice_lines AS invl ON (invl.data #>> '{invoiceId}')::uuid = inv.id::uuid
    LEFT JOIN invoice_adjustments_in_addition_to AS invadj ON invadj.invoice_id = inv.id
    LEFT JOIN invl_total AS invltotal ON inv.id = invltotal.inv_id
    LEFT JOIN finance_transaction_invoices AS fintrainv ON fintrainv.invoice_id = inv.id AND fintrainv.invoice_line_id IS NULL
    LEFT JOIN finance_transaction_invoices AS fintrainvl ON fintrainvl.invoice_line_id = invl.id

The finance_transaction_invoices columns invoice_id and invoice_line_id are created in the finance_transaction_invoices script as type uuid, but the id columns for both invoice_invoices and invoice_lines are VARCHAR(36). Trying to build this table with LDP 1.X results in the error:

ERROR:  operator does not exist: uuid = character varying
LINE 53: ...ion_invoices AS fintrainv ON fintrainv.invoice_id = inv.id A...
                                                              ^
HINT:  No operator matches the given name and argument types. You might need to add explicit type casts.
nassibnassar commented 4 months ago

Fixed in commit 1d5d444

nassibnassar commented 4 months ago

Tag: https://github.com/folio-org/folio-analytics/releases/tag/v1.7.2