Merged PR 4568: Adds flag to identify invoices/credit notes that are posted in Hyperline

# Description

Adds flag to identify invoices/credit notes that are posted in Hyperline.
For Invoices, these need to be ACCREC and follow a convention of 20XX-Y
For Credit Notes, these need to be ACCRECCREDIT and follow a convention of CN-20XX-Y

# Checklist

- [X] The edited models and dependants run properly with production data.
- [X] The edited models are sufficiently documented.
- [X] The edited models contain PK tests, and I've ran and passed them.
- [X] I have checked for DRY opportunities with other models and docs.
- [X] I've picked the right materialization for the affected models.

# Other

- [ ] Check if a full-refresh is required after this PR is merged.

Related work items: #28146
This commit is contained in:
Oriol Roqué Paniagua 2025-03-04 10:12:03 +00:00
parent 2a0172edd5
commit dcf0f205a2
8 changed files with 86 additions and 0 deletions

View file

@ -33,6 +33,17 @@ models:
data_type: character varying
description: ""
- name: is_invoice_posted_in_hyperline
data_type: boolean
description: |
Indicates whether the invoice has been posted in Hyperline.
An invoice is considered posted in Hyperline if it follows this logic:
- The invoice type equals to ACCREC and the document number follows the
naming convention 20XX-Y, where 20XX is the posting year and Y is
an autoincremental number.
data_tests:
- not_null
- name: invoice_issued_date_utc
data_type: timestamp with time zone
description: Date on which the invoice was issued.
@ -491,6 +502,17 @@ models:
data_type: character varying
description: ""
- name: is_credit_note_posted_in_hyperline
data_type: boolean
description: |
Indicates whether the credit note has been posted in Hyperline.
A credit note is considered posted in Hyperline if it follows this logic:
- The credit note type equals to ACCRECCREDIT and the document number
follows the naming convention CN-20XX-Y, where CN refers to Credit Note,
20XX is the posting year and Y is an autoincremental number.
data_tests:
- not_null
- name: credit_note_issued_at_utc
data_type: timestamp with time zone
description: Date on which the credit note was issued.
@ -1258,6 +1280,20 @@ models:
data_tests:
- not_null
- name: is_document_posted_in_hyperline
data_type: boolean
description: |
Indicates whether the document has been posted in Hyperline.
A document is considered posted in Hyperline if it follows this logic:
- For invoices, if the invoice type equals to ACCREC and the document number
follows the naming convention 20XX-Y, where 20XX is the posting year and Y is
an autoincremental number.
- For credit notes, if the credit note type equal to ACCRECCREDIT and the
document number follows the naming convention CN-20XX-Y, where CN refers to
Credit Note, 20XX is the posting year and Y is an autoincremental number.
data_tests:
- not_null
- name: reference
data_type: character varying
description: ""

View file

@ -5,6 +5,7 @@ select
id_contact as id_contact,
reference as reference,
credit_note_number as credit_note_number,
is_credit_note_posted_in_hyperline as is_credit_note_posted_in_hyperline,
credit_note_issued_at_utc as credit_note_issued_at_utc,
credit_note_issued_date_utc as credit_note_issued_date_utc,
credit_note_type as credit_note_type,

View file

@ -5,6 +5,7 @@ select
id_contact as id_contact,
reference as reference,
invoice_number as invoice_number,
is_invoice_posted_in_hyperline as is_invoice_posted_in_hyperline,
invoice_issued_at_utc as invoice_issued_at_utc,
invoice_issued_date_utc as invoice_issued_date_utc,
invoice_due_date_utc as invoice_due_date_utc,

View file

@ -20,6 +20,7 @@ select
sdm.tax_type as tax_type,
sdm.line_description as line_description,
sdm.id_document as id_document,
sdm.is_document_posted_in_hyperline as is_document_posted_in_hyperline,
sdm.reference as reference,
sdm.document_number as document_number,
sdm.document_issued_at_utc as document_issued_at_utc,