Ihre Datenvorlage für Kreditmanagement & Inkasso
Ihre Datenvorlage für Kreditmanagement & Inkasso
- Empfohlene Attribute für eine umfassende Analyse
- Schlüsselaktivitäten zur Verfolgung für die Prozesserkennung
- Schritt-für-Schritt-Anleitung zur Datenextraktion
Kreditmanagement- und Inkassoattribute
| Name | Beschreibung | ||
|---|---|---|---|
| Aktivitätsname ActivityName | Der Name des spezifischen Geschäftsereignisses oder der Aufgabe, die zu einem bestimmten Zeitpunkt innerhalb des Kreditmanagementprozesses stattfand. | ||
| Beschreibung Dieses Attribut beschreibt einen einzelnen Schritt im Rechnungslebenszyklus, wie 'Rechnung erstellt', 'Mahnverfahren eingeleitet' oder 'Zahlung erhalten'. Jede Aktivität stellt ein eigenständiges Event dar, das den Die Analyse der Sequenz und Häufigkeit von Aktivitäten ist der Kern des Process Mining. Sie hilft, den tatsächlichen Prozessfluss aufzudecken, Bedeutung Dieses Attribut definiert die Schritte in der Prozesslandkarte und ermöglicht die Visualisierung und Analyse des Rechnungslebenszyklus von Anfang bis Ende. Datenquelle Dies ist ein konzeptionelles Feld, das aus verschiedenen Geschäfts-Events innerhalb von Oracle Fusion Financials abgeleitet wird, oft durch die Zuordnung von Transaktionsstatus, Event-Daten oder spezifischen Aktionen aus Modulen wie Receivables (AR) und Advanced Collections erstellt. Beispiele Rechnung erstelltMahnverfahren eingeleitet`Zahlung erhalten`Streitfall registriert | |||
| Ereigniszeit EventTime | Das genaue Datum und die Uhrzeit des Ereignisses, das als Timestamp der Aktivität dient. | ||
| Beschreibung Die Event Time, oder der Timestamp, zeichnet den genauen Zeitpunkt auf, zu dem eine Aktivität stattfand. Sie ist unerlässlich, um Ereignisse chronologisch zu ordnen und einen präzisen Prozessfluss aufzubauen. Ohne genaue Timestamps kann die Abfolge der Ereignisse nicht korrekt bestimmt werden. In der Analyse wird dieses Attribut verwendet, um Dauern und Zykluszeiten zwischen Aktivitäten zu berechnen, was für die Leistungsmessung entscheidend ist. Zum Beispiel wird es zur Berechnung von KPIs wie der Bearbeitungszeit für Streitigkeiten ( Bedeutung Dieser Datenquelle Abgeleitet aus verschiedenen Datumsfeldern in Oracle Fusion Financials-Tabellen, wie z.B. TRX_DATE in RA_CUSTOMER_TRX_ALL für die Rechnungsstellung oder das Erstellungsdatum einer Inkassoaktion. Beispiele 2023-04-15T10:00:00Z2023-05-01T14:30:00Z2023-05-20T09:15:22Z | |||
| Rechnungsnummer InvoiceNumber | Der eindeutige Identifier für jede Kundenrechnung, der als primärer `Case` Identifier für den Kreditmanagementprozess dient. | ||
| Beschreibung Die Rechnungsnummer ist der zentrale Schlüssel, der alle Ereignisse und Aktivitäten im Zusammenhang mit einer einzelnen Forderung verbindet, von ihrer Erstellung bis zu ihrer endgültigen Begleichung oder Abschreibung. Sie ermöglicht eine vollständige End-to-End-Ansicht des Rechnungslebenszyklus. In der Process Mining-Analyse wird dieses Attribut verwendet, um den Weg jeder Rechnung zu rekonstruieren. Durch das Gruppieren aller zugehörigen Aktivitäten unter einer einzigen Rechnungsnummer können Analysten Prozessabläufe visualisieren, gängige und abweichende Pfade identifizieren und Zykluszeiten für den gesamten Prozess oder spezifische Phasen, wie Streitbeilegung oder Zahlungsbuchung, messen. Bedeutung Dies ist die essenzielle Datenquelle Dieser Identifier ist typischerweise in der RA_CUSTOMER_TRX_ALL Tabelle als TRX_NUMBER in Oracle Fusion Financials zu finden. Beispiele INV-1005679884321AR-2023-04-112 | |||
| Letzte Datenaktualisierung LastDataUpdate | Der `Timestamp`, der angibt, wann die `Data` für dieses `Event` zuletzt aktualisiert oder aus dem Quellsystem extrahiert wurde. | ||
| Beschreibung Dieses Attribut markiert Datum und Uhrzeit der jüngsten Datenextraktion. Es ist ein Metadatenfeld, das nicht Teil des Geschäftsprozesses selbst ist, aber entscheidend für das Verständnis der Aktualität der analysierten Daten. Analysten verwenden diesen Bedeutung Gibt die Aktualität der Daten an und stellt sicher, dass Analysten und Stakeholder über die Zeitgerechtheit und Relevanz der Daten informiert sind. Datenquelle Dieser Wert wird während des Datenextraktions- und Ladeprozesses (ETL) generiert und auf jeden Datensatz gestempelt. Beispiele 2023-10-27T02:00:00Z2023-10-28T02:00:00Z | |||
| Quellsystem SourceSystem | Das System, aus dem die Daten stammen. | ||
| Beschreibung Dieses Attribut identifiziert die Quellanwendung, in der die Event-Daten aufgezeichnet wurden. In einer komplexen IT-Landschaft können mehrere Systeme in einem einzigen End-to-End-Prozess involviert sein. Die Angabe des Quellsystems ist wichtig für Data Governance, Fehlerbehebung und das Verständnis des Datenkontextes. Sie hilft, Events aus verschiedenen Systemen zu differenzieren, wenn diese in einer einzigen Prozessansicht kombiniert werden, und stellt sicher, dass die Datenherkunft klar ist. Bedeutung Sorgt für Klarheit über die Datenherkunft, was entscheidend für Datenvalidierung, Governance und das Verständnis des technologischen Kontexts des Prozesses ist. Datenquelle Dies ist typischerweise ein statischer Wert, der während der Datenextraktion hinzugefügt wird, um den Ursprung der Datensätze zu identifizieren. Beispiele Oracle Fusion FinancialsOracle AROracle Collections | |||
| Benutzer User | Die Benutzer- oder System-ID, die die Aktivität ausgeführt hat. | ||
| Beschreibung Dieses Attribut identifiziert den spezifischen Mitarbeiter oder automatisierten Systembenutzer, der für die Ausführung einer Aktivität verantwortlich ist, wie z.B. die Genehmigung eines Kreditlimits, die Buchung einer Zahlung oder die Beilegung einer Streitigkeit. Die Analyse von Aktivitäten nach Benutzer ist unerlässlich, um die Arbeitslastverteilung, individuelle Leistung und Compliance zu verstehen. Bei automatisierten Aktivitäten hilft sie, die Beteiligung von Systemprozessen zu verfolgen. Sie kann auch verwendet werden, um Schulungsbedarfe oder potenzielle betrügerische Aktivitäten durch Überwachung des Benutzerverhaltens zu identifizieren. Bedeutung Weist Prozessaktivitäten bestimmten Personen oder automatisierten Systemen zu, was Leistungsverfolgung, Arbeitslastanalyse und Auditing ermöglicht. Datenquelle Stammt aus den Spalten 'CREATED_BY' oder 'LAST_UPDATED_BY' in verschiedenen Transaktions- und Historientabellen in Oracle Fusion Financials. Beispiele jsmithar_specialist_1SYSTEM_AUTOMATION | |||
| Fälligkeitsdatum DueDate | Das Datum, bis zu dem die Zahlung für die Rechnung fällig ist. | ||
| Beschreibung Das Fälligkeitsdatum ist ein entscheidendes, vertraglich vereinbartes Datum für die Zahlung. Es ist die Basis, an der die Pünktlichkeit der Zahlung gemessen wird. Dieses Attribut ist fundamental für die Identifizierung überfälliger Rechnungen und die Berechnung der Anzahl der Tage, die eine Rechnung überfällig ist. Es ist die primäre Eingabe zur Bestimmung, wann Mahnverfahren eingeleitet werden sollten, und wird zur Berechnung von KPIs wie Days Sales Outstanding (DSO) verwendet. Es ist auch unerlässlich für die Erstellung von Altersstrukturberichten, die ausstehende Schulden klassifizieren. Bedeutung Dient als Grundlage zur Feststellung, ob eine Rechnung überfällig ist, löst Inkassoaktivitäten aus und ermöglicht eine Altersanalyse. Datenquelle Verfügbar in der Tabelle AR_PAYMENT_SCHEDULES_ALL als DUE_DATE. Beispiele 2023-05-302023-06-152023-07-01 | |||
| Inkassobearbeiter Collector | Der Name oder die ID des Inkassobearbeiters, der der Rechnung zugewiesen ist. | ||
| Beschreibung Der Bearbeiter ist die Einzelperson oder das Team, das für die Verwaltung der Inkassoaktivitäten einer überfälligen Rechnung verantwortlich ist. Diese Zuweisung ist ein wichtiger Schritt im Inkasso-Workflow. Dieses Attribut ist entscheidend für die Leistungsverwaltung und Ressourcenallokation innerhalb der Inkassoabteilung. Durch die Analyse der Ergebnisse pro Bearbeiter können Manager die Effektivität des Bearbeiters bewerten, Schulungsbedarfe identifizieren und Arbeitslasten ausgleichen. Das Bedeutung Ermöglicht die Leistungsanalyse einzelner Inkassomitarbeiter oder -teams und hilft dabei, die Ressourcenzuteilung zu optimieren und die gesamte Inkassoeffizienz zu verbessern. Datenquelle Diese Information wird typischerweise im Oracle Advanced Collections Modul gespeichert, oft in Tabellen wie IEX_CASES_ALL_B oder verwandten Zuweisungstabellen. Beispiele John SmithJane DoeInkassoteam A | |||
| Kundennummer CustomerNumber | Ein eindeutiger Identifikator für den Kunden, der mit der Rechnung verknüpft ist. | ||
| Beschreibung Die Kundennummer verknüpft eine Rechnung mit einem spezifischen Kundenkonto. Dies ermöglicht die Segmentierung und Analyse des Kredit- und Inkassoprozesses basierend auf Kundenattributen. Durch die Einbeziehung der Kundennummer können Analysten untersuchen, ob bestimmte Kunden konstant verspätet zahlen, mehr Streitigkeiten verursachen oder höhere Inkassobemühungen erfordern. Diese Informationen sind entscheidend für die Erstellung kundenspezifischer Inkassostrategien, die Anpassung von Kreditbedingungen und die Identifizierung von Hochrisikokundensegmenten. Sie unterstützt direkt Analysen wie die Analyse der Rechnungsabschreibungsrate nach Kundensegment. Bedeutung Ermöglicht die Segmentierung des Prozesses nach Kunden, was hilft, Muster, Risiken und Chancen für maßgeschneiderte Inkassostrategien zu identifizieren. Datenquelle Typischerweise in der RA_CUSTOMER_TRX_ALL Tabelle als BILL_TO_CUSTOMER_ID zu finden, die mit HZ_CUST_ACCOUNTS verknüpft ist. Beispiele CUST-0012389455ACME-CORP-US | |||
| Kundensegment CustomerSegment | Die Klassifizierung des Kunden in eine definierte Gruppe, z.B. nach Größe, Branche oder strategischer Bedeutung. | ||
| Beschreibung Das Kundensegment ist ein kategorielles Attribut, das Kunden basierend auf gemeinsamen Merkmalen gruppiert. Segmente könnten durch Faktoren wie 'Strategisch', 'KMU', 'Großunternehmen' oder nach Branche wie 'Fertigung' oder 'Einzelhandel' definiert werden. Dieses Attribut ist leistungsstark für die vergleichende Analyse. Es ermöglicht Analysten, die Prozessleistung über verschiedene Segmente hinweg zu vergleichen, um beispielsweise festzustellen, ob ein Segment eine höhere Streitfallrate oder einen längeren Zahlungszyklus aufweist. Diese Einsicht hilft, Kreditrichtlinien und Inkassostrategien an die spezifischen Bedürfnisse und Risiken jedes Segments anzupassen und Dashboards wie die 'Analyse der Rechnungsabschreibungsrate' zu unterstützen. Bedeutung Ermöglicht eine leistungsstarke vergleichende Analyse, die aufzeigt, wie sich Prozessleistung und Risiken über verschiedene Kundengruppen hinweg unterscheiden. Datenquelle Wird oft in den Kundenstammdaten (HZ_CUST_ACCOUNTS oder verwandten Tabellen) verwaltet oder aus Kundenattributen wie Umsatz oder Branche abgeleitet. Beispiele GroßunternehmenKlein- & MittelunternehmenRegierungStrategischer Partner | |||
| Mahnstufe DunningLevel | Die Stufe oder das Niveau des Mahnverfahrens, das auf die Rechnung angewendet wurde. | ||
| Beschreibung Die Mahnstufe (Dunning Level) gibt die Intensität der Mahnung an, die typischerweise mit der Zeit eskaliert. Zum Beispiel könnte Stufe 1 eine sanfte E-Mail-Erinnerung sein, während Stufe 3 ein formelles Schreiben oder ein Telefonanruf sein könnte. Die Analyse des Prozesses nach Mahnstufe hilft, die Effektivität der Mahnstrategie zu bewerten. Das Dashboard zur Mahnverfahrenseffektivität (Dunning Effectiveness Dashboard) verwendet dieses Attribut, um die Konversionsraten von jedem Mahnschritt zur Zahlung zu visualisieren. Dies ermöglicht es dem Unternehmen, zu bestimmen, welche Mahnmaßnahmen am effektivsten sind, und das Timing sowie den Inhalt der Mahnungen zu optimieren, um den Zahlungseinzug zu maximieren. Bedeutung Verfolgt die Eskalationsstufe der Inkassobemühungen, was entscheidend für die Bewertung der Wirksamkeit der Mahnstrategie ist. Datenquelle Diese Beispiele Stufe 1: ErinnerungStufe 2: WarnungStufe 3: Letzte Mahnung | |||
| Rechnungsbetrag InvoiceAmount | Der monetäre Gesamtwert der Rechnung. | ||
| Beschreibung Der Rechnungsbetrag repräsentiert den Gesamtwert der dem Kunden in Rechnung gestellten Waren oder Dienstleistungen. Dies ist ein entscheidendes Finanzattribut, um die monetären Auswirkungen des Prozesses zu verstehen. In der Analyse wird der Rechnungsbetrag verwendet, um Inkassobemühungen zu priorisieren, wobei der Fokus auf hochvolumigen überfälligen Rechnungen liegt. Er wird auch zur Analyse des Zahlungsverhaltens basierend auf dem Transaktionswert und zur Berechnung der finanziellen Auswirkungen von Abschreibungen verwendet. Dashboards wie die Bedeutung Bietet finanziellen Kontext für den Prozess und ermöglicht die Priorisierung hochvolumiger Rechnungen sowie die Analyse der monetären Auswirkungen von Prozessineffizienzen. Datenquelle Diese Information kann aus der AR_PAYMENT_SCHEDULES_ALL Tabelle abgeleitet werden, die den fälligen Betrag einer Rechnung speichert. Beispiele 5000.001250.75250000.00 | |||
| Bearbeitungszeit ProcessingTime | Die Dauer der aktiven Bearbeitung einer Aktivität. | ||
| Beschreibung Die Bearbeitungszeit misst die aktive Arbeitszeit für eine spezifische Aufgabe, ausgenommen Warte- oder Leerlaufzeiten. Sie wird als Differenz zwischen der Endzeit und der Startzeit einer Aktivität berechnet. Diese Metrik ist von unschätzbarem Wert für die Performance-Analyse, da sie hilft, zwischen der Zeit, die aktiv an einem Case gearbeitet wurde, und der Zeit, die auf das Eintreten eines anderen Ereignisses gewartet wurde, zu unterscheiden. Sie kann beispielsweise Ineffizienzen in der Aktivität 'Dispute Resolution' selbst hervorheben, getrennt von der Zeit, in der der Streit auf Zuweisung wartete. Dies unterstützt Dashboards wie 'Collections Workflow Efficiency'. Bedeutung Misst die tatsächliche Arbeitsdauer von Aktivitäten und hilft, Ineffizienzen innerhalb spezifischer Aufgaben zu identifizieren, anstatt nur die Zeit zwischen ihnen. Datenquelle Dies ist eine berechnete Metrik, abgeleitet durch Subtraktion der StartTime von der EndTime (EndTime - StartTime). Beispiele 864003600604800 | |||
| Endzeit EndTime | Der Timestamp, der angibt, wann eine Aktivität mit einer bestimmten Dauer abgeschlossen wurde. | ||
| Beschreibung Für Aktivitäten, die einen klaren Start und ein klares Ende haben, erfasst dieses Attribut die Abschlusszeit. Während viele Events im Process Mining instantan sind, können einige, wie 'Streitfalluntersuchung', einen Zeitraum umfassen. Eine separate Endzeit ermöglicht die präzise Berechnung der Aktivitätsbearbeitungszeiten. Dies ist genauer als die Ableitung der Dauer aus der Startzeit der nächsten Aktivität, insbesondere wenn es Leerlaufzeiten gibt. Es ist entscheidend für die Analyse der Ressourcenauslastung und die Identifizierung, welche spezifischen Schritte die meiste Zeit innerhalb des Prozesses in Anspruch nehmen. Bedeutung Ermöglicht die genaue Berechnung der Dauer spezifischer Aktivitäten und bietet tiefere Einblicke in Engpässe und die Ressourcenauslastung. Datenquelle Dies ist oft ein konzeptionelles Attribut. Es kann von einem 'last updated' Beispiele 2023-04-15T11:30:00Z2023-05-02T09:00:00Z2023-05-21T16:45:00Z | |||
| Geschäftseinheit BusinessUnit | Die spezifische Geschäftseinheit oder Organisation, die die Rechnung ausgestellt hat. | ||
| Beschreibung In großen Organisationen sind die Operationen oft in mehrere Geschäftseinheiten unterteilt. Dieses Attribut identifiziert, welche Geschäftseinheit mit der Rechnung verknüpft ist. Die Analyse des Prozesses nach Geschäftseinheit ermöglicht den Leistungsvergleich zwischen verschiedenen Teilen der Organisation. Sie kann Inkonsistenzen bei der Anwendung von Kredit- und Inkassorichtlinien aufzeigen und offenbaren, welche Geschäftseinheiten ihre Forderungen effektiver verwalten. Dies hilft beim Austausch bewährter Verfahren und bei der Standardisierung von Prozessen, wo nötig. Bedeutung Ermöglicht den Leistungsvergleich zwischen verschiedenen Organisationseinheiten und hilft so, Best Practices und Verbesserungspotenziale zu identifizieren. Datenquelle Verfügbar in der Tabelle RA_CUSTOMER_TRX_ALL über das Feld ORG_ID, das mit der Organisationsstruktur verknüpft ist. Beispiele BU North AmericaBU EMEAGlobal Services Division | |||
| Ist abgeschrieben IsWrittenOff | Ein boolesches Flag, das anzeigt, ob die Rechnung als uneinbringliche Forderung abgeschrieben wurde. | ||
| Beschreibung Dies ist ein abgeleitetes Flag, das Rechnungen identifiziert, die das Unternehmen als uneinbringlich eingestuft und aus seinen aktiven Forderungen entfernt hat. Dies ist typischerweise das finale und unerwünschte Ergebnis für eine Rechnung. Dieses Attribut ist unerlässlich für die Berechnung des Bedeutung Identifiziert klar Fälle von Inkassofehlern, was für die Analyse der Ursachen von Forderungsausfällen und die Berechnung von Abschreibungsraten unerlässlich ist. Datenquelle Dies ist ein berechnetes Feld, abgeleitet durch die Prüfung, ob eine 'Rechnung abgeschrieben' Aktivität für den Beispiele truefalsch | |||
| Ist überfällig IsOverdue | Ein boolesches Flag, das anzeigt, ob die Rechnung ihr Zahlungszieldatum überschritten hat. | ||
| Beschreibung Dies ist ein abgeleitetes Attribut, das eine einfache True/False-Anzeige des Überfälligkeitsstatus einer Rechnung liefert. Es wird typischerweise durch den Vergleich des aktuellen Datums (oder des Zahlungsdatums) mit dem Fälligkeitsdatum der Rechnung berechnet. Dieses Flag ist äußerst nützlich für Filterung und Segmentierung in der Analyse. Es ermöglicht Analysten, die Gruppe der überfälligen Rechnungen schnell zu isolieren, um deren Prozesspfade, die Effektivität der Inkassoaktivitäten und andere Merkmale zu untersuchen. Es vereinfacht die Erstellung von Bedeutung Bietet ein einfaches, klares Kennzeichen zur Identifizierung und Analyse aller überfälligen Rechnungen, was der Hauptfokus des Inkassoprozesses ist. Datenquelle Dies ist ein berechnetes Feld. Die Logik ist: IF CurrentDate > DueDate AND Status != 'Paid' THEN True ELSE False. Beispiele truefalsch | |||
| Kreditlimitbetrag CreditLimitAmount | Der maximale Kreditbetrag, der für den Kunden genehmigt wurde. | ||
| Beschreibung Der Kreditlimit-Betrag ist das gesamte Kreditengagement, das ein Unternehmen bei einem bestimmten Kunden eingehen möchte. Dieser wird während des Kreditprüfungsprozesses festgelegt. Dieses Attribut ist unerlässlich für das Bedeutung Entscheidend für die Bewertung der Wirksamkeit von Kreditrisikorichtlinien durch Korrelation des genehmigten Kreditlimits mit Zahlungsergebnissen und Abschreibungen. Datenquelle Dies wird im Oracle Credit Management verwaltet und ist typischerweise in Tabellen gespeichert, die sich auf Kundenkreditprofile beziehen, wie HZ_CUST_PROFILE_AMTS. Beispiele 10000.0050000.00250000.00 | |||
| Rechnungsstatus InvoiceStatus | Der aktuelle Status der Rechnung in ihrem Lebenszyklus. | ||
| Beschreibung Der Rechnungsstatus gibt einen Überblick darüber, wo sich die Rechnung derzeit im Prozess befindet. Gängige Status sind 'Offen', 'Bezahlt', 'Bestritten', 'Überfällig' oder 'Abgeschrieben'. Dieses Attribut bietet einen Überblick über den Zustand der Forderungen. Im Process Mining ist dieses Attribut nützlich, um Fälle zu filtern und sich auf bestimmte Populationen zu konzentrieren, wie z.B. alle offenen überfälligen Rechnungen. Es ist eine Schlüsseldimension im Dashboard für überfällige Rechnungen und deren Status ('Overdue Invoice Aging & Status'), das sofortige Transparenz über den aktuellen Zustand des Rechnungsportfolios bietet und hilft, Inkassoaktivitäten zu priorisieren. Bedeutung Bietet einen schnellen Überblick über den aktuellen Status einer Rechnung und ermöglicht so eine einfache Filterung und Priorisierung von Inkassomaßnahmen. Datenquelle Typischerweise in der AR_PAYMENT_SCHEDULES_ALL Tabelle in einem Feld namens STATUS verfügbar. Beispiele OffenGeschlossenBestrittenIm Inkasso | |||
| Rechnungswährung InvoiceCurrency | Die Währung, in der der Rechnungsbetrag angegeben ist. | ||
| Beschreibung Dieses Attribut gibt die Währung der Rechnung an, z.B. USD, EUR oder GBP. In multinationalen Organisationen werden Rechnungen oft in verschiedenen Währungen ausgestellt. Die Analyse von Daten mit mehreren Währungen erfordert eine sorgfältige Handhabung. Dieses Attribut ermöglicht das Filtern der Prozessansicht nach Währung oder die Anwendung der korrekten Wechselkurse für die konsolidierte Finanzberichterstattung. Es stellt sicher, dass monetäre Werte korrekt interpretiert werden und dass Vergleiche von Beträgen auf einer vergleichbaren Basis erfolgen. Bedeutung Unerlässlich für die korrekte Interpretation von Finanzdaten in einer Mehrwährungsumgebung und die Sicherstellung einer präzisen Finanzanalyse. Datenquelle Typischerweise in der RA_CUSTOMER_TRX_ALL Tabelle als INVOICE_CURRENCY_CODE zu finden. Beispiele USDEURGBPJPY | |||
| Streitfallgrund DisputeReason | Der vom Kunden angegebene Grund für die Anfechtung einer Rechnung. | ||
| Beschreibung Wenn ein Kunde eine Rechnung beanstandet, gibt er typischerweise einen Grund an, wie z.B. 'Falsche Preisgestaltung', 'Beschädigte Ware' oder 'Doppelte Rechnung'. Dieses Attribut erfasst diesen Grund. Die Analyse von Beanstandungsgründen ist entscheidend für die Ursachenanalyse. Sie hilft, wiederkehrende Probleme in vorgelagerten Prozessen wie der Auftragsverwaltung oder Rechnungsstellung zu identifizieren, die zu Zahlungsverzögerungen führen. Durch die Kategorisierung und Verfolgung der Häufigkeit verschiedener Beanstandungsgründe kann ein Unternehmen gezielte Maßnahmen ergreifen, um diese Ursachen zu beheben, was das Ziel der Verkürzung der Streitbeilegungszeit ( Bedeutung Hilft, die Ursachen von Rechnungsstreitigkeiten zu identifizieren, was proaktive Verbesserungen der vorgelagerten Prozesse ermöglicht, um zukünftige Streitigkeiten zu verhindern. Datenquelle Diese Information wird typischerweise in den Oracle Advanced Collections oder Oracle Channel Revenue Management Modulen erfasst, falls das Streitfallmanagement formalisiert ist. Sie kann in Tabellen wie AR_DISPUTE_HISTORY gespeichert sein. Beispiele Falsche MengePreisabweichungBeschädigte WareLeistung nicht erbracht | |||
| Tage überfällig DaysOverdue | Die Anzahl der Tage, die eine Rechnung nach ihrem Fälligkeitsdatum überfällig ist. | ||
| Beschreibung Diese berechnete Metrik quantifiziert, wie verspätet eine unbezahlte Rechnung ist. Sie wird als Differenz zwischen dem aktuellen Datum (für offene Rechnungen) oder dem Zahlungsdatum (für geschlossene Rechnungen) und dem Fälligkeitsdatum berechnet.
Bedeutung Quantifiziert das Ausmaß der Zahlungsverzögerungen und dient als Schlüsselmetrik zur Priorisierung von Inkassomaßnahmen und zur Durchführung von Altersstrukturanalysen. Datenquelle Dies ist ein berechnetes Feld. Die Logik ist: CurrentDate - DueDate für offene Rechnungen, oder PaymentDate - DueDate für geschlossene Rechnungen. Beispiele 1545920 | |||
| Zahlungsbedingungen PaymentTerms | Die vereinbarten Bedingungen, die festlegen, wann die Zahlung fällig ist. | ||
| Beschreibung Zahlungsbedingungen definieren die Konditionen, unter denen ein Kunde zur Zahlung verpflichtet ist, z.B. 'Netto 30' oder 'Netto 60'. Diese Bedingungen werden zur Berechnung des Rechnungsfälligkeitsdatums verwendet. Die Analyse der Zahlungsleistung nach Zahlungsbedingungen kann interessante Muster aufdecken. So könnten Kunden mit kürzeren Zahlungsfristen eher dazu neigen, verspätet zu zahlen. Diese Informationen können genutzt werden, um Kreditrichtlinien zu überprüfen und zu optimieren sowie Kunden für unterschiedliche Inkassostrategien zu segmentieren. Sie liefern wertvollen Kontext, um zu verstehen, warum bestimmte Rechnungen überfällig werden. Bedeutung Liefert Kontext zum vereinbarten Zahlungsplan und ermöglicht die Analyse des Zahlungsverhaltens über verschiedene Kreditbedingungen hinweg. Datenquelle Dies wird in der RA_TERMS Tabelle gespeichert und mit der Rechnungs-Transaktion verknüpft. Beispiele Netto 30Netto 60Zahlbar bei Erhalt | |||
| Zahlungsversprechensdatum PromiseToPayDate | Das Datum, an dem ein Kunde versprochen hat, eine Zahlung zu leisten. | ||
| Beschreibung Im Rahmen von Inkassoaktivitäten kann ein Kunde eine Zahlung zu einem zukünftigen Datum zusagen. Dieses 'Zahlungsversprechensdatum' (Promise to Pay Date) wird erfasst, um diese Zusage zu verfolgen. Dieses Attribut ist wichtig für die Verwaltung von Inkasso-Workflows und die Bewertung der Zuverlässigkeit von Kundenzusagen. Durch den Vergleich des Zahlungsversprechensdatums mit dem tatsächlichen Zahlungsdatum können Inkassomitarbeiter die Erfolgsquote dieser Versprechen beurteilen. Es hilft bei der genaueren Prognose des Cashflows und bei der Entscheidung, wann Inkassobemühungen eskaliert werden müssen, wenn ein Versprechen gebrochen wird. Bedeutung Verfolgt Zahlungsverpflichtungen von Kunden, hilft bei der Prognose von Cash-Eingängen und der Steuerung der Effektivität von Inkassoverhandlungen. Datenquelle Gespeichert im Oracle Advanced Collections Modul, wahrscheinlich in Tabellen wie IEX_PROMISES_T. Beispiele 2023-06-102023-06-252023-07-05 | |||
Kreditmanagement- und Inkassoaktivitäten
| Aktivität | Beschreibung | ||
|---|---|---|---|
| `Zahlung erhalten` | Kennzeichnet den Geldeingang von einem Kunden, der möglicherweise noch keiner bestimmten Rechnung zugewiesen wurde. Dies wird erfasst, wenn eine Zahlungseingangstransaktion im System erstellt wird. | ||
| Bedeutung Dies ist ein wichtiger Meilenstein im Inkassoprozess, der anzeigt, dass Bargeld eingegangen ist. Die Zeit zwischen diesem und der Zahlungsverbuchung ist ein Maß für die interne Verarbeitungseffizienz. Datenquelle Explizit erfasst aus dem RECEIPT_DATE in der Tabelle AR_CASH_RECEIPTS_ALL. Der Beleg kann dann über AR_RECEIVABLE_APPLICATIONS_ALL mit der Rechnung verknüpft werden, auf die er angewendet wurde. Erfassen RECEIPT_DATE aus AR_CASH_RECEIPTS_ALL, verknüpft über Anwendungstabellen. Ereignistyp explicit | |||
| Fälligkeitsdatum der Zahlung überschritten | Ein berechnetes Event, das eintritt, wenn das aktuelle Datum das Fälligkeitsdatum der Rechnung überschreitet, ohne dass die Rechnung vollständig bezahlt wurde. Dieses Event markiert den Übergang einer Rechnung vom Status 'aktuell' zu 'überfällig'. | ||
| Bedeutung Dies ist ein wichtiger Meilenstein, der Inkasso- und Mahnprozesse auslöst. Die Analyse des Volumens und Werts von Rechnungen, die ihr Fälligkeitsdatum überschreiten, ist entscheidend für das Management des Working Capital und die Bewertung des Kreditrisikos. Datenquelle Dieses Event wird berechnet, indem das aktuelle Systemdatum mit dem DUE_DATE in der AR_PAYMENT_SCHEDULES_ALL Tabelle für Rechnungen mit dem STATUS 'OP' (Offen) verglichen wird. Erfassen Berechnetes Event: tritt ein, wenn SYSDATE > AR_PAYMENT_SCHEDULES_ALL.DUE_DATE. Ereignistyp calculated | |||
| Mahnverfahren eingeleitet | Stellt den formellen Beginn des Mahnprozesses für eine überfällige Rechnung dar, oft durch das Versenden des ersten offiziellen Mahnschreibens. Dies wird typischerweise erfasst, wenn ein Mahn-Batch-Prozess läuft und die Rechnung enthält. | ||
| Bedeutung Die Nachverfolgung dieser Aktivität ist entscheidend, um die Effektivität des Mahnwesens und die Einhaltung der Mahnrichtlinien zu messen. Sie liefert eine Grundlage, um zu messen, wie lange es dauert, bis Mahnungen zu einer Zahlung führen. Datenquelle Dieses Ereignis wird durch das Erstellungsdatum eines Mahndatensatzes in Tabellen wie IEX_DUNNINGS, verknüpft mit der Transaktions-ID, im Oracle Advanced Collections Modul erfasst. Erfassen Erstellungsdatum des Eintrags in der Tabelle IEX_DUNNINGS, der mit der Rechnung verknüpft ist. Ereignistyp explicit | |||
| Rechnung abgeschrieben | Stellt die formelle Entscheidung dar, Inkassobemühungen einzustellen und den Rechnungsbetrag als uneinbringliche Forderung zu verbuchen. Dies ist eine explizite Finanztransaktion, die den Rechnungsbetrag auf null setzt. | ||
| Bedeutung Dies ist ein kritischer Fehlerendpunkt für den Inkassoprozess. Die Analyse von Abschreibungen nach Kundensegment, Region oder Kreditlimit hilft, Kreditrichtlinien und Inkassostrategien zu verfeinern, um Verluste zu minimieren. Datenquelle Explizit erfasst aus der Erstellung einer Anpassung in der Tabelle AR_ADJUSTMENTS_ALL mit einer RECEIVABLES_TRX_ID, die auf eine uneinbringliche Forderung oder Abschreibungsaktivität verweist. Erfassen Erstellungsdatum eines Eintrags in AR_ADJUSTMENTS_ALL mit dem Aktivitätstyp Abschreibung. Ereignistyp explicit | |||
| Rechnung erstellt | Kennzeichnet die Erstellung des Rechnungsdatensatzes in Oracle Fusion Financials. Dies ist der offizielle Beginn des Rechnungslebenszyklus im Debitorenmodul und dient als primärer Startpunkt für die Analyse. | ||
| Bedeutung Dies ist das kritische Start- Datenquelle Dies ist ein explizites Erfassen Der Event-Timestamp ist das CREATION_DATE aus der Tabelle RA_CUSTOMER_TRX_ALL. Ereignistyp explicit | |||
| Zahlung verbucht | Stellt die Verrechnung eines eingegangenen Zahlungseingangs mit einer bestimmten Rechnung dar, wodurch der offene Rechnungsbetrag reduziert wird. Dies ist der Schritt, der eine Zahlung formal mit einer Rechnung verknüpft. | ||
| Bedeutung Diese Aktivität ist entscheidend, um zu erkennen, dass eine Rechnung bezahlt wurde. Sie ist der eigentliche Endpunkt für die Berechnung der Days Sales Outstanding (DSO) und den Zahlungsbuchungszyklus. Datenquelle Dies ist ein explizites Erfassen APPLY_DATE aus AR_RECEIVABLE_APPLICATIONS_ALL für die relevante Rechnung. Ereignistyp explicit | |||
| `Rechnung an Kunden gesendet` | Gibt an, dass die Rechnung formell an den Kunden zugestellt wurde, entweder elektronisch oder per Druck. Dieses Event kann explizit von einem Liefermodul protokolliert oder aus dem Rechnungsdruckdatum abgeleitet werden. | ||
| Bedeutung Diese Aktivität markiert den Beginn der Zahlungsfrist des Kunden. Deren Nachverfolgung hilft bei der genauen Berechnung der überfälligen Tage und der Analyse von Verzögerungen zwischen Rechnungsstellung und Kundenbenachrichtigung. Datenquelle Kann aus dem LAST_PRINTED_DATE in RA_CUSTOMER_TRX_ALL erfasst werden. Alternativ kann es aus Integrationsprotokollen mit E-Mail-Zustellungssystemen oder anderen Kommunikationsplattformen abgeleitet werden. Erfassen Verwenden Sie LAST_PRINTED_DATE aus RA_CUSTOMER_TRX_ALL oder den Status aus einem Lieferprotokoll. Ereignistyp inferred | |||
| Inkassostrategie zugewiesen | Tritt auf, wenn eine automatisierte Inkassostrategie der überfälligen Rechnung oder dem Kunden zugewiesen wird. Dies definiert die Abfolge von Schritten und Aktivitäten, die das System oder der Bearbeiter befolgen wird. | ||
| Bedeutung Dieses Datenquelle Im Oracle Advanced Collections Modul erfasst. Dies wird typischerweise über das Erstellungsdatum einer Strategiezuteilung in Tabellen wie IEX_STRATEGIES oder verwandten Objekten gefunden. Erfassen Erstellungsdatum des Strategiearbeitspakets in Inkassotabellen, verknüpft mit dem Kunden oder der Transaktion. Ereignistyp explicit | |||
| Kreditprüfung abgeschlossen | Stellt den Abschluss einer Kreditwürdigkeitsprüfung für den mit der Rechnung verbundenen Kunden dar. Dieses Ereignis wird typischerweise durch Verknüpfen des Rechnungsstellungsdatums mit dem letzten Abschlussdatum der Kreditprüfung für dieses Kundenkonto abgeleitet und bildet eine Grundlage für die kreditspezifische Analyse. | ||
| Bedeutung Die Analyse der Zeitspanne von der Kreditprüfung bis zur Auftragserteilung hilft, Verzögerungen in den Anfangsphasen des Order-to-Cash-Zyklus zu identifizieren. Sie ist grundlegend für die Messung des KPI „Credit Approval Cycle Time“ und das Verständnis der Auswirkungen von Kreditentscheidungen. Datenquelle Abgeleitet durch Abfrage von HZ_CREDIT_PROFILE.LAST_CREDIT_REVIEW_DATE für den Kunden auf der Rechnung (RA_CUSTOMER_TRX_ALL.BILL_TO_CUSTOMER_ID). Der Event-Timestamp ist das LAST_CREDIT_REVIEW_DATE, das dem CREATION_DATE der Rechnung vorausgeht. Erfassen Rechnung mit dem aktuellsten Kreditprüfungsdatum des Kunden vor der Rechnungsstellung verknüpfen. Ereignistyp inferred | |||
| Rechnung abgeschlossen | Tritt ein, wenn der offene Saldo der Rechnung auf null sinkt, sei es durch Zahlung, Gutschriftanwendung oder Anpassung. Dies kennzeichnet den erfolgreichen Abschluss des Rechnungslebenszyklus. | ||
| Bedeutung Dieses Datenquelle Abgeleitet von einer Statusänderung in der Tabelle AR_PAYMENT_SCHEDULES_ALL, bei der sich STATUS zu 'CL' (Geschlossen) ändert. Der Timestamp ist das LAST_UPDATE_DATE dieser Änderung. Erfassen Erkennen, wenn AR_PAYMENT_SCHEDULES_ALL.STATUS für die Rechnung 'CL' wird. Ereignistyp inferred | |||
| Sachbearbeiteraktion abgeschlossen | Stellt eine manuelle Aktion eines Bearbeiters dar, wie das Tätigen eines Telefonanrufs, das Senden einer E-Mail oder das Protokollieren einer Interaktionsnotiz. Diese werden als 'Aktivitäten' oder 'Interaktionen' innerhalb des Inkasso-Moduls protokolliert. | ||
| Bedeutung Die Überwachung der Bearbeiteraktionen hilft, die Effizienz und Effektivität des manuellen Inkasso-Workflows zu messen. Sie ermöglicht die Analyse der Aktivitätshäufigkeit und deren Korrelation mit dem Zahlungserfolg. Datenquelle Erfasst aus Interaktions- oder Aktivitätshistorientabellen in Oracle Advanced Collections, wie z.B. JTF_IH_ACTIVITIES, verknüpft mit dem Kunden und potenziell der spezifischen Rechnung. Erfassen Erstellungszeitstempel von Einträgen in JTF_IH_ACTIVITIES mit einem relevanten Ergebnis- oder Ursachencode. Ereignistyp explicit | |||
| Streitfall gelöst | Gibt an, dass ein registrierter Streitfall untersucht und eine Lösung gefunden wurde. Dies wird erfasst, wenn der strittige Status der Rechnung aufgehoben wird. | ||
| Bedeutung Dieses Datenquelle Abgeleitet, wenn sich der STATUS in AR_PAYMENT_SCHEDULES_ALL nach einer Gutschrift oder Anpassung von 'DS' (Bestritten) zurück zu 'OP' (Offen) oder zu 'CL' (Geschlossen) ändert. Erfassen Erkennen, wenn sich AR_PAYMENT_SCHEDULES_ALL.STATUS von 'DS' zu einem anderen Status ändert. Ereignistyp inferred | |||
| Streitfall registriert | Zeigt an, dass der Kunde die Rechnung ganz oder teilweise formell bestritten hat. Dies wird typischerweise durch eine Statusänderung im Zahlungsplan der Rechnung erfasst. | ||
| Bedeutung Diese Aktivität ist der Startpunkt für den Streitbeilegungsprozess. Die Analyse der Zeit von der Registrierung bis zur Beilegung ist entscheidend, um Datenquelle Abgeleitet von einer Statusänderung in der Tabelle AR_PAYMENT_SCHEDULES_ALL, bei der sich das STATUS-Feld zu 'DS' (Bestritten) ändert. Der Zeitstempel kann aus Audit-Tabellen oder dem Datum der letzten Aktualisierung stammen. Erfassen Erkennen, wenn sich AR_PAYMENT_SCHEDULES_ALL.STATUS für die Rechnung zu 'DS' ändert. Ereignistyp inferred | |||
| Zahlungsversprechen erstellt | Stellt eine formelle Vereinbarung dar, die im System erfasst wird, bei der ein Kunde versprochen hat, eine Zahlung zu einem bestimmten Datum zu leisten. Dies ist ein wichtiges Ergebnis von Inkassomaßnahmen. | ||
| Bedeutung Das Verfolgen von Zahlungsversprechen und deren Erfüllungsquoten ist ein wichtiger Leistungsindikator für Bearbeiter. Es hilft bei der Prognose des Cashflows aus überfälligen Forderungen und der Bewertung der Effektivität der Bearbeiter. Datenquelle Explizit in Oracle Advanced Collections erstellt. Das Erstellungsdatum wird aus der Tabelle IEX_PROMISE_DETAILS erfasst. Erfassen Erstellungsdatum aus der Tabelle IEX_PROMISE_DETAILS für die entsprechende Rechnung. Ereignistyp explicit | |||
Extraktionsleitfäden
Schritte
- Zugriff auf Oracle BI Publisher: Melden Sie sich in Ihrer Oracle Fusion Financials Umgebung an. Navigieren Sie zum Bereich „Reports and Analytics“, indem Sie auf das Navigator-Symbol klicken und dann „Tools > Reports and Analytics“ auswählen.
- Neues Datenmodell erstellen: Klicken Sie im Bereich „Reports and Analytics“ auf die Schaltfläche „Browse Catalog“. Klicken Sie im Katalog auf das Dropdown-Menü „New“ und wählen Sie „Data Model“.
- SQL-Abfragedatensatz definieren: Klicken Sie im Datenmodell-Editor auf das „+“-Symbol, um einen neuen Datensatz hinzuzufügen, und wählen Sie „SQL Query“.
- Datenquelle konfigurieren: Geben Sie im neuen Datensatzfenster Ihrem Datensatz einen aussagekräftigen Namen, zum Beispiel „CreditCollectionsEventLog“. Wählen Sie „FSCM“ oder die entsprechende Oracle Fusion-Anwendungsdatenbank als Datenquelle. Setzen Sie den SQL-Typ auf „Standard SQL“.
- SQL-Abfrage eingeben: Kopieren Sie die vollständige SQL-Abfrage, die im Abschnitt „query“ dieses Dokuments bereitgestellt wird, und fügen Sie sie in den Textbereich „SQL Query“ ein.
- Abfrageparameter definieren: Die Abfrage verwendet Parameter wie
:P_START_DATEund:P_END_DATEum den Datumsbereich zu filtern. BI Publisher erkennt diese automatisch. Sie können sie als Benutzereingaben konfigurieren und ihren Datentyp auf „Date“ setzen. - Datenmodell speichern und testen: Speichern Sie das Datenmodell in einem freigegebenen oder benutzerdefinierten Ordner. Um zu überprüfen, ob die Abfrage funktioniert, navigieren Sie zur Registerkarte „Data“, geben Sie Beispielparameterwerte ein (z. B. einen aktuellen Datumsbereich) und klicken Sie auf „View“, um eine Stichprobe der Ausgabedaten anzuzeigen. Stellen Sie sicher, dass alle Spalten korrekt angezeigt werden.
- Neuen Bericht erstellen: Navigieren Sie zurück zum Katalog, klicken Sie auf das Dropdown-Menü „New“ und wählen Sie „Report“. Wählen Sie im Dialogfeld „Create Report“ die Option „Use Data Model“ und suchen Sie das soeben gespeicherte Datenmodell.
- Berichtseigenschaften konfigurieren: Im Berichts-Editor ist ein einfaches Tabellenlayout für die Datenextraktion ausreichend. Legen Sie das Standardausgabeformat fest. Für Process Mining ist CSV das empfohlene Format. Klicken Sie dazu auf „View a List“, finden Sie „CSV“ in der Liste „Output Formats“ und aktivieren Sie das Kontrollkästchen. Sie können andere Formate deaktivieren, um die Benutzerfreundlichkeit zu vereinfachen.
- Bericht speichern: Speichern Sie den Bericht im selben Ordner wie Ihr Datenmodell.
- Extraktion planen: Um die Extraktion zu automatisieren, können Sie den Bericht planen. Öffnen Sie den Bericht, klicken Sie auf „Actions“ und wählen Sie „Schedule“. Konfigurieren Sie die Häufigkeit des Zeitplans (z. B. täglich), geben Sie das Ausgabeformat als CSV an und definieren Sie das Zustellungsziel, z. B. ein Inhaltsverzeichnisserver oder einen externen Server über FTP.
Konfiguration
- Voraussetzungen: Der Benutzer, der den Bericht erstellt und ausführt, muss über entsprechende BI-Rollen (z.B. 'BI Administrator' oder 'BI Author') und Datensicherheitsberechtigungen verfügen, um auf die zugrunde liegenden Finanztabellen (AR, IEX, HZ, JTF) zugreifen zu können.
- Datenquelle: Die Abfrage sollte gegen die Hauptanwendungsdatenbank ausgeführt werden, die typischerweise 'FSCM' genannt wird.
- Datumsbereichsparameter: Es ist entscheidend, die Parameter
:P_START_DATEund:P_END_DATEzu verwenden, um das Datenvolumen zu begrenzen. Für erste Tests verwenden Sie einen kleinen Bereich, z. B. einen Monat. Für produktive Läufe ist ein gleitender Zeitraum von 3 bis 6 Monaten üblich. - Filterung: Für große Organisationen sollten Sie erwägen, einen Parameter für
BU_NAME(Business Unit Name) zurWHERE-Klausel in der Common Table Expressioninvoices_basehinzuzufügen, um Daten für eine Geschäftseinheit gleichzeitig zu verarbeiten. - Leistungsüberlegungen: Die Abfrage verknüpft mehrere große Transaktionstabellen. Das Ausführen über einen weiten Datumsbereich ohne Filter kann zu langen Ausführungszeiten oder Timeouts in BI Publisher führen. Planen Sie den Bericht so, dass er außerhalb der Spitzenzeiten ausgeführt wird.
- Ausgabeformat: Stellen Sie sicher, dass das Standard- oder geplante Ausgabeformat CSV ist. Dies bietet eine saubere, durch Trennzeichen getrennte Datei, die von Process Mining-Tools leicht verarbeitet werden kann. Überprüfen Sie die CSV-Ausgabeeigenschaften, um sicherzustellen, dass das Trennzeichen und die Zeichenkodierung korrekt eingestellt sind.
a Beispielabfrage sql
WITH invoices_base AS (
SELECT
trx.customer_trx_id,
trx.trx_number AS InvoiceNumber,
hca.account_number AS CustomerNumber,
hcp.class_category || ':' || hcp.class_code AS CustomerSegment, -- Example of segment, may need adjustment
ps.amount_due_original AS InvoiceAmount,
coll.name AS Collector,
ps.due_date AS DueDate,
trx.creation_date AS InvoiceCreationDate,
trx.created_by AS InvoiceCreatedBy,
ps.payment_schedule_id
FROM
ra_customer_trx_all trx
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
JOIN hz_cust_accounts hca ON trx.bill_to_customer_id = hca.cust_account_id
JOIN hz_customer_profiles hcp ON hca.cust_account_id = hcp.cust_account_id AND hcp.site_use_id IS NULL
LEFT JOIN iex_delinquencies_all del ON ps.payment_schedule_id = del.payment_schedule_id
LEFT JOIN JTF_RS_RESOURCE_EXTNS_VL coll ON del.collector_id = coll.resource_id
WHERE
trx.creation_date BETWEEN TO_DATE(:P_START_DATE, 'YYYY-MM-DD') AND TO_DATE(:P_END_DATE, 'YYYY-MM-DD')
AND trx.complete_flag = 'Y'
AND ps.class = 'INV'
)
-- 1. Credit Review Completed
SELECT
ib.InvoiceNumber AS "InvoiceNumber",
'Credit Review Completed' AS "ActivityName",
cr.review_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber AS "CustomerNumber",
ib.CustomerSegment AS "CustomerSegment",
ib.InvoiceAmount AS "InvoiceAmount",
ib.Collector AS "Collector",
NULL AS "DunningLevel",
ib.DueDate AS "DueDate",
cr.created_by AS "User"
FROM
invoices_base ib
JOIN
hz_credit_reviews cr ON ib.CustomerNumber = (SELECT hca.account_number FROM hz_cust_accounts hca WHERE hca.cust_account_id = cr.cust_account_id)
WHERE cr.review_date = (SELECT MAX(cr_inner.review_date) FROM hz_credit_reviews cr_inner WHERE cr_inner.cust_account_id = cr.cust_account_id AND cr_inner.review_date < ib.InvoiceCreationDate)
UNION ALL
-- 2. Invoice Generated
SELECT
ib.InvoiceNumber,
'Invoice Generated' AS "ActivityName",
trx.creation_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
trx.created_by AS "User"
FROM
invoices_base ib
JOIN ra_customer_trx_all trx ON ib.customer_trx_id = trx.customer_trx_id
UNION ALL
-- 3. Invoice Sent To Customer
SELECT
ib.InvoiceNumber,
'Invoice Sent To Customer' AS "ActivityName",
trx.last_printed_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
trx.last_updated_by AS "User"
FROM
invoices_base ib
JOIN ra_customer_trx_all trx ON ib.customer_trx_id = trx.customer_trx_id
WHERE trx.last_printed_date IS NOT NULL
UNION ALL
-- 4. Payment Due Date Passed
SELECT
ib.InvoiceNumber,
'Payment Due Date Passed' AS "ActivityName",
ps.due_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
'SYSTEM' AS "User"
FROM
invoices_base ib
JOIN ar_payment_schedules_all ps ON ib.payment_schedule_id = ps.payment_schedule_id
WHERE ps.due_date < SYSDATE AND ps.status = 'OP'
UNION ALL
-- 5. Dunning Procedure Initiated
SELECT
ib.InvoiceNumber,
'Dunning Procedure Initiated' AS "ActivityName",
dunn.dunning_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
TO_CHAR(dunn.dunning_level) AS "DunningLevel",
ib.DueDate,
dunn.created_by AS "User"
FROM
invoices_base ib
JOIN iex_dunning_transactions dunt ON ib.customer_trx_id = dunt.transaction_id
JOIN iex_dunnings dunn ON dunt.dunning_id = dunn.dunning_id
UNION ALL
-- 6. Collection Strategy Assigned
SELECT
ib.InvoiceNumber,
'Collection Strategy Assigned' AS "ActivityName",
strat.creation_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
strat.created_by AS "User"
FROM
invoices_base ib
JOIN iex_strategy_work_items swi ON ib.payment_schedule_id = swi.payment_schedule_id
JOIN iex_strategies_vl strat ON swi.strategy_id = strat.strategy_id
UNION ALL
-- 7. Collector Action Completed
SELECT
ib.InvoiceNumber,
task_type.name AS "ActivityName",
task.actual_end_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
res.source_name AS "User"
FROM
invoices_base ib
JOIN jtf_task_references_b ref ON ib.customer_trx_id = ref.object_id AND ref.object_type_code = 'OKC_K_HEADER'
JOIN jtf_tasks_b task ON ref.task_id = task.task_id
JOIN jtf_task_types_vl task_type ON task.task_type_id = task_type.task_type_id
JOIN jtf_rs_resource_extns_vl res ON task.owner_id = res.resource_id
WHERE task.actual_end_date IS NOT NULL
UNION ALL
-- 8. Promise To Pay Created
SELECT
ib.InvoiceNumber,
'Promise To Pay Created' AS "ActivityName",
prom.creation_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
prom.created_by AS "User"
FROM
invoices_base ib
JOIN iex_promise_details prom ON ib.payment_schedule_id = prom.payment_schedule_id
UNION ALL
-- 9. Dispute Registered
SELECT
ib.InvoiceNumber,
'Dispute Registered' AS "ActivityName",
ps.dispute_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
ps.last_updated_by AS "User"
FROM
invoices_base ib
JOIN ar_payment_schedules_all ps ON ib.payment_schedule_id = ps.payment_schedule_id
WHERE ps.amount_in_dispute IS NOT NULL AND ps.dispute_date IS NOT NULL
UNION ALL
-- 10. Dispute Resolved
SELECT
ib.InvoiceNumber,
'Dispute Resolved' AS "ActivityName",
disp.resolution_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
disp.last_updated_by AS "User"
FROM
invoices_base ib
JOIN ar_disputes_all disp ON ib.payment_schedule_id = disp.payment_schedule_id
WHERE disp.status = 'CLOSED' AND disp.resolution_date IS NOT NULL
UNION ALL
-- 11. Payment Received
SELECT
ib.InvoiceNumber,
'Payment Received' AS "ActivityName",
cr.receipt_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
cr.created_by AS "User"
FROM
invoices_base ib
JOIN ar_receivable_applications_all app ON ib.payment_schedule_id = app.applied_payment_schedule_id
JOIN ar_cash_receipts_all cr ON app.cash_receipt_id = cr.cash_receipt_id
WHERE app.status = 'APP'
UNION ALL
-- 12. Payment Applied
SELECT
ib.InvoiceNumber,
'Payment Applied' AS "ActivityName",
app.apply_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
app.created_by AS "User"
FROM
invoices_base ib
JOIN ar_receivable_applications_all app ON ib.payment_schedule_id = app.applied_payment_schedule_id
WHERE app.status = 'APP'
UNION ALL
-- 13. Invoice Closed
SELECT
ib.InvoiceNumber,
'Invoice Closed' AS "ActivityName",
ps.gl_date_closed AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
ps.last_updated_by AS "User"
FROM
invoices_base ib
JOIN ar_payment_schedules_all ps ON ib.payment_schedule_id = ps.payment_schedule_id
WHERE ps.status = 'CL' AND ps.gl_date_closed IS NOT NULL
UNION ALL
-- 14. Invoice Written Off
SELECT
ib.InvoiceNumber,
'Invoice Written Off' AS "ActivityName",
adj.apply_date AS "EventTime",
'Oracle Fusion Financials' AS "SourceSystem",
SYSDATE AS "LastDataUpdate",
ib.CustomerNumber,
ib.CustomerSegment,
ib.InvoiceAmount,
ib.Collector,
NULL AS "DunningLevel",
ib.DueDate,
adj.created_by AS "User"
FROM
invoices_base ib
JOIN ar_adjustments_all adj ON ib.customer_trx_id = adj.customer_trx_id
JOIN ar_receivables_trx_all rt ON adj.receivables_trx_id = rt.receivables_trx_id
WHERE rt.name = '[Your Write-Off Activity Name]' -- Example: 'Bad Debt Write-off'