Keine Buchung ohne Beleg - Wie kann ich abfragen, ob bei einer Zahlung ein Rechnung mit hochgeladenem Dokument hinterlegt ist?

deutsch

#1

Hallo,

ich erfasse alle Rechnungen und lade dazu jeweils ein Beleg hoch.
Separat erfasse ich Zahlungen und ordne in diesen die Rechnungen zu.
Dabei können mir Fehler passieren, deshalb habe ich mir in Tableau / sinngemäß SQL einen Kontrollreport gebaut:

Auf Tabelle m_payment, in Verbindung mit BPartner, Doctype, c_invoice

  • Datetrx (Zahlungsdatum), DocumentNo (Zahlungsnummer), Companyname aus Geschäftspartner, Description aus der Zahlung, Documentno aus Invoice, Isallocated bei Payment um zu sehen ob eine Rechnung verbunden ist, Docstatus um Stornos auszublenden
  • Wert Payamt

Aus welcher Tabelle kann ich ableiten, das ein Dokument für eine Invoice_ID hinterlegt ist?

MfG
Marco


From new system to accounting / tax consultant
#2

Hi,

Hier mit kannst Du das sehen:

select i.documentno,att.filename, type,i.isactive from ad_attachmententry_referencedrecord_v att
left join c_invoice i on  i.c_invoice_id=att.record_id
where ad_table_id = ( select ad_table_id from ad_table where tablename = 'C_Invoice')

VG
norbert


#3

hier noch das DDL für die view damit ihr sehr wo die Daten eigentlich her kommen:

SELECT r.ad_table_id,
       r.record_id,
       r.ad_attachment_multiref_id    AS ad_attachmententry_referencedrecord_v_id,
       r.ad_client_id,
       r.ad_org_id,
       e.ad_attachmententry_id,
       e.binarydata,
       e.contenttype,
       LEAST(e.created, r.created)    AS created,
       CASE
           WHEN (e.createdby < r.createdby) THEN e.createdby
           ELSE r.createdby
           END                        AS createdby,
       e.description,
       e.filename,
       CASE
           WHEN ((e.isactive = 'Y'::bpchar) AND (r.isactive = 'Y'::bpchar)) THEN 'Y'::text
           ELSE 'N'::text
           END                        AS isactive,
       e.type,
       GREATEST(r.updated, e.updated) AS updated,
       CASE
           WHEN (e.updated > r.updated) THEN e.updatedby
           ELSE r.updatedby
           END                        AS updatedby,
       e.url
FROM (ad_attachment_multiref r
         JOIN ad_attachmententry e ON ((e.ad_attachmententry_id = r.ad_attachmententry_id)));