Ihr Daten-Template für die Debitorenbuchhaltung
Ihr Daten-Template für die Debitorenbuchhaltung
- Umfassende Auswahl empfohlener Attribute für die Analyse der Debitorenbuchhaltung
- Zentrale Prozessaktivitäten und zu überwachende Meilensteine
- Systemspezifische Anleitung zur Datenextraktion aus Oracle Fusion Financials
Attribute der Debitorenbuchhaltung
| Name | Beschreibung | ||
|---|---|---|---|
| Aktivitätsname ActivityName | Das spezifische Ereignis oder die konkrete Aktion im Accounts-Receivable-Prozess. | ||
| Beschreibung Dieses Attribut beschreibt den ausgeführten Prozessschritt, etwa das Erstellen einer Rechnung, das Buchen einer Zahlung oder das Eröffnen eines Disputs. Es definiert den Ablauf der Prozessdarstellung und ermöglicht die Visualisierung der Ereignisfolge. Analysten verwenden dieses Feld, um Prozessvarianten, Schleifen und Engpässe zu erkennen. Es ist entscheidend, um die Einhaltung von Standardarbeitsanweisungen zu bestimmen und die Häufigkeit bestimmter Ereignisse wie Nachbearbeitungen oder manueller Eingriffe zu berechnen. Warum das wichtig ist Erforderlich, um den Prozessablauf zu definieren und die Ereignisfolge zu visualisieren. Bezugsquelle Abgeleitet aus Tabellen zur Transaktionshistorie, etwa AR_PAYMENT_SCHEDULES_ALL und RA_CUST_TRX_LINE_GL_DIST_ALL. Beispiele Rechnung erstelltZahlungserinnerung versendetTeilzahlung gebuchtStreitfall eröffnet | |||
| Ereignis-Timestamp EventStartDateTime | Das genaue Datum und die genaue Uhrzeit, zu denen eine Aktivität stattgefunden hat. | ||
| Beschreibung Dieses Attribut erfasst den genauen Zeitpunkt, zu dem eine Aktivität im System ausgeführt wurde. Es dient zur chronologischen Sortierung von Ereignissen und bildet die Grundlage für alle zeitbezogenen Berechnungen im Process Mining. Durch die Analyse von Timestamps kann das Unternehmen Durchlaufzeiten zwischen Aktivitäten berechnen, etwa die Dauer zwischen Rechnungserstellung und Versand. Der Timestamp ist entscheidend für die Messung von KPIs wie Days Sales Outstanding und für die Erkennung zeitlicher Muster im Zahlungsverhalten. Warum das wichtig ist Grundlage für die Berechnung von Dauer, Vorlauf- und Durchlaufzeiten. Bezugsquelle Oracle Fusion Financials: Spalten CREATION_DATE oder LAST_UPDATE_DATE in verschiedenen Transaktionstabellen. Beispiele 2023-10-15T08:30:00Z2023-10-16T14:45:12Z2023-11-01T09:00:00Z | |||
| Rechnungsnummer InvoiceNumber | Die eindeutige Kennung, die der Rechnungstransaktion in Oracle Fusion zugewiesen ist. | ||
| Beschreibung Dieses Attribut dient als eindeutiger Schlüssel zur Identifizierung finanzieller Verpflichtungen im Modul Accounts Receivable. Es verknüpft alle nachfolgenden Aktivitäten, etwa Anpassungen, Dispute und Zahlungen, mit der ursprünglichen Verkaufstransaktion. In der Process-Mining-Analyse fungiert dieses Attribut als Case ID. Es ermöglicht Analysten, den vollständigen Lebenszyklus einer Forderung von ihrer Erstellung bis zum vollständigen Ausgleich oder zur Ausbuchung nachzuverfolgen. Dadurch lassen sich Durchlaufzeiten und Prozessvarianten berechnen. Warum das wichtig ist Es ist die grundlegende Analyseeinheit zur Nachverfolgung des Credit-to-Cash-Lebenszyklus. Bezugsquelle Oracle Fusion Financials: RA_CUSTOMER_TRX_ALL.TRX_NUMBER Beispiele INV-2023-00110056789AR-99887755002211 | |||
| Letzte Datenaktualisierung LastDataUpdate | Der Timestamp der letzten Aktualisierung der Daten im Mining-Tool. | ||
| Beschreibung Dieses Attribut zeigt an, wann der Datensatz zuletzt mit dem Oracle-Quellsystem synchronisiert wurde. Es hilft Benutzern, die Aktualität der Analyse einzuschätzen und zu beurteilen, ob die Erkenntnisse den aktuellen Stand des Betriebs widerspiegeln. Die Überwachung dieses Feldes ist wichtig, damit Dashboards aktuelle Informationen anzeigen, insbesondere bei der operativen Überwachung offener Dispute oder nicht zugeordneter Zahlungseingänge. Warum das wichtig ist Liefert Kontext zur Aktualität und Zuverlässigkeit der Daten. Bezugsquelle Systemzeit zum Zeitpunkt der Extraktion. Beispiele 2023-11-15T23:59:59Z2023-11-16T00:00:00Z | |||
| Quellsystem SourceSystem | Das führende System, aus dem die Daten stammen. | ||
| Beschreibung Dieses Attribut identifiziert die Softwareumgebung, aus der die Prozessdaten extrahiert wurden. In diesem Kontext bestätigt es, dass die Daten aus der Oracle-Fusion-Financials-Umgebung stammen. Bei einer Extraktion aus nur einem System ist der Wert häufig statisch. Beim Zusammenführen von Daten aus mehreren ERP-Instanzen oder bei der Integration von Tools für das Forderungsmanagement wird er jedoch entscheidend. Er stellt Datenherkunft und Nachvollziehbarkeit in Prozesslandschaften mit mehreren Systemen sicher. Warum das wichtig ist Stellt die Datenherkunft sicher und unterscheidet zwischen verschiedenen ERP-Instanzen. Bezugsquelle Bei der Extraktion fest codiert oder in der Datenpipeline konfiguriert. Beispiele Oracle Fusion FinancialsOracle Cloud ERP - USAOracle Cloud ERP - EMEA | |||
| Automatisiert IsAutomated | Kennzeichen dafür, ob die Aktivität ohne menschliches Eingreifen ausgeführt wurde. | ||
| Beschreibung Dieses boolesche Attribut bestimmt, ob eine Aktivität von einem Systemprozess, etwa AutoInvoice oder AutoLockbox, oder von einem menschlichen Benutzer ausgeführt wurde. Es ist der zentrale Faktor für den KPI zur Automatisierungsquote der Zahlungszuordnung. Durch die zeitliche Nachverfolgung des Verhältnisses zwischen automatisierten und manuellen Aktivitäten kann die Organisation den Erfolg digitaler Transformationsinitiativen überprüfen und Prozessschritte identifizieren, die weiterhin manuell ausgeführt werden. Warum das wichtig ist Zentrale Kennzahl für digitale Transformation und Effizienzmessung. Bezugsquelle Berechnete Logik auf Grundlage von UserName, etwa: if User == 'BATCH_USER' then true. Beispiele truefalse | |||
| Benutzername UserName | Der Systembenutzer, der die Aktivität ausgeführt hat. | ||
| Beschreibung Dieses Attribut erfasst die Anmelde-ID oder den Namen der Person, die die konkrete Aktivität ausgeführt hat, etwa die Rechnung gebucht oder den Kontoauszug abgeglichen hat. Es entspricht dem generischen Feld 'User'. Diese Daten sind für Compliance-Prüfungen und für das Dashboard zum Durchsatz der Forderungsmanager von großer Bedeutung. Sie ermöglichen die Unterscheidung zwischen systemgesteuerten Aktionen, die häufig von einem 'System'-Benutzer ausgeführt werden, und manuellen Aktionen und unterstützen damit die Analyse der Automatisierung. Warum das wichtig ist Ermöglicht die Leistungsnachverfolgung auf Benutzerebene und die Analyse der Funktionstrennung. Bezugsquelle Oracle Fusion Financials: CREATED_BY- oder LAST_UPDATED_BY-Spalten, verknüpft mit Benutzertabellen. Beispiele sysadminjsmithfinance_batch_job | |||
| Fälligkeitsdatum DueDate | Das Datum, bis zu dem der Zahlungseingang erwartet wird. | ||
| Beschreibung Dieses Attribut bezeichnet die auf Grundlage von Rechnungsdatum und Zahlungsbedingungen berechnete Zahlungsfrist. Es dient als Bezugspunkt, um festzustellen, ob eine Zahlung verspätet eingegangen ist. Es wird im KPI zur Abweichung des Zeitpunkts von Zahlungserinnerungen verwendet, um zu messen, wie frühzeitig das Team im Verhältnis zur Frist handelt. Außerdem bildet es den Schwellenwert für die Einstufung von Forderungen als aktuell oder überfällig in Fälligkeitsberichten. Warum das wichtig ist Die zentrale Grundlage zur Bestimmung von Zahlungsverzug und termingerechter Zahlung. Bezugsquelle Oracle Fusion Financials: AR_PAYMENT_SCHEDULES_ALL.DUE_DATE Beispiele 2023-11-302023-12-152024-01-01 | |||
| Geschäftseinheit BusinessUnit | Die operative Einheit innerhalb der Organisation, die für die Rechnung verantwortlich ist. | ||
| Beschreibung Dieses Attribut entspricht der Organization ID in Oracle Fusion und bezeichnet die konkrete Geschäftseinheit oder Sparte, der die Forderung zugeordnet ist. Es ermöglicht die Segmentierung der Prozessleistung über verschiedene Unternehmensbereiche hinweg. Der Vergleich von KPIs wie Dispute-Bearbeitungszeit oder DSO zwischen Geschäftseinheiten hilft der Führung, leistungsstarke Teams zu erkennen und bewährte Vorgehensweisen zu standardisieren. Außerdem werden Einheiten sichtbar, die zusätzliche Ressourcen oder eine Neugestaltung des Prozesses benötigen könnten. Warum das wichtig ist Zentrale Dimension für organisatorisches Benchmarking und Leistungsvergleiche. Bezugsquelle Oracle Fusion Financials: HR_ORGANIZATION_UNITS.NAME, verknüpft über ORG_ID. Beispiele Vertrieb USA-OstEMEA-DienstleistungenAPAC-Fertigung | |||
| Kundenname CustomerName | Der Name der Einheit, der die Transaktion in Rechnung gestellt wird. | ||
| Beschreibung Dieses Attribut identifiziert den Kunden, der mit der Rechnung verbunden ist. Es ist grundlegend für die Analyse des Zahlungsverhaltens, der Disputhäufigkeit und der Effektivität des Forderungseinzugs auf Kundenebene. Analysten verwenden dieses Feld, um bestimmte Kunden zu erkennen, die häufig verspätet zahlen oder Dispute eröffnen. Diese Erkenntnis unterstützt das Dashboard zur Analyse des Zahlungsverhaltens von Kunden und hilft dabei, Kreditbedingungen und Inkassostrategien an einzelne Kundenprofile anzupassen. Warum das wichtig ist Unverzichtbar für kundenorientierte Analysen und Risikoprofile. Bezugsquelle Oracle Fusion Financials: HZ_PARTIES.PARTY_NAME, verknüpft über BILL_TO_CUSTOMER_ID. Beispiele Acme CorpGlobex CorporationSoylent Corp | |||
| Kundensegment CustomerSegment | Die Klassifizierung des Kunden anhand von Größe, Branche oder Risiko. | ||
| Beschreibung Dieses Attribut ordnet Kunden Gruppen wie Strategic, Enterprise, SME oder High Risk zu. Häufig wird es aus der Kundenklasse oder Profilklasse in Oracle Fusion abgeleitet. Mit diesem Attribut lassen sich Prozessvarianten in verschiedenen Marktsegmenten analysieren. So kann beispielsweise geprüft werden, ob Strategic-Kunden den vorgesehenen persönlichen Service erhalten oder ob High-Risk-Kunden im Hinblick auf die Einhaltung von Zahlungsbedingungen eng überwacht werden. Warum das wichtig ist Ermöglicht eine segmentierte Analyse von Inkassostrategien und Risiken. Bezugsquelle Oracle Fusion Financials: HZ_CUSTOMER_PROFILES.PROFILE_CLASS_ID. Beispiele GroßunternehmenKleinunternehmenÖffentlicher SektorHohes Risiko | |||
| Name des Forderungsmanagers CollectorName | Der Name des für die Rechnung zuständigen Mitarbeiters oder der zuständigen Ressource im Forderungseinzug. | ||
| Beschreibung Dieses Attribut identifiziert den konkreten Mitarbeiter oder das Teammitglied, das für den Zahlungseinzug zur Rechnung verantwortlich ist. Es ist die zentrale Dimension für das Dashboard zum Durchsatz der Forderungsmanager. Die Daten aus diesem Feld ermöglichen es der Organisation, die Produktivität je Mitarbeiter zu messen, Schulungsbedarf zu erkennen und Arbeitslasten auszugleichen. Sie fördern die Verantwortlichkeit und helfen, die Aktivitäten im Forderungseinzug im Finanzteam zu standardisieren. Warum das wichtig ist Zentral für die Analyse der Ressourcenleistung und den Ausgleich der Arbeitslast. Bezugsquelle Oracle Fusion Financials: AR_COLLECTORS.NAME, verknüpft mit dem Kundenprofil. Beispiele John SmithForderungsmanagement-Team AJane Doe | |||
| Rechnungsbetrag InvoiceAmount | Der gesamte Geldwert der Rechnung. | ||
| Beschreibung Dieses Attribut stellt den ursprünglichen fälligen Rechnungsbetrag dar. Es dient bei vielen Analysen als zentrale Gewichtungsgröße, damit das Unternehmen Transaktionen mit hohem Wert gegenüber Transaktionen mit geringem Wert priorisieren kann. Im Kontext der Ansicht zu nicht zugeordneten Gutschriften und Umsatzverlusten hilft dieses Feld, die finanziellen Auswirkungen ungelöster Positionen zu quantifizieren. Außerdem wird es zur Berechnung des gewichteten durchschnittlichen Days Sales Outstanding verwendet und ermöglicht damit eine stärker finanzwirtschaftlich ausgerichtete Betrachtung der Prozesseffizienz. Warum das wichtig ist Verleiht der Analyse finanzielles Gewicht und unterstützt eine wertbasierte Priorisierung. Bezugsquelle Oracle Fusion Financials: RA_CUSTOMER_TRX_ALL.AMOUNT_DUE_ORIGINAL Beispiele 1500.00250.5010000.00 | |||
| Transaktionstyp TransactionType | Die Klassifizierung des Forderungsdokuments (Rechnung, Gutschrift, Belastungsanzeige). | ||
| Beschreibung Dieses Attribut unterscheidet verschiedene Arten von Finanzdokumenten. Zu den häufigsten Werten gehören Rechnung, Gutschrift und Belastungsanzeige. Diese Unterscheidung ist entscheidend für das Dashboard zum Volumen und zur Nachbearbeitung von Gutschriften. Durch die Filterung nach diesem Attribut können Analysten Nachbearbeitungsschleifen durch Gutschriften isolieren oder sich gezielt auf den Hauptprozess der Rechnungsstellung konzentrieren. So wird die Zusammensetzung des Arbeitsaufkommens im Forderungsmanagement verständlicher. Warum das wichtig ist Unterscheidet Standardrechnungen von Anpassungen und Korrekturen. Bezugsquelle Oracle Fusion Financials: RA_CUST_TRX_TYPES_ALL.NAME Beispiele RechnungGutschriftLastschriftRückbelastung | |||
| Datum der Skontoberechtigung DiscountEligibilityDate | Das letzte Datum, an dem ein Kunde zahlen kann, um einen Skonto zu erhalten. | ||
| Beschreibung Dieses Attribut markiert die Frist, bis zu der der Kunde Bedingungen wie '2/10 Net 30' nutzen kann, also 2 % Skonto bei Zahlung innerhalb von 10 Tagen. Es wird für das Dashboard zur Analyse von Skontozahlungen benötigt. Der Vergleich von Zahlungen mit diesem Datum zeigt die Erfassungsquote von Frühzahlerskonten. Das Unternehmen erkennt dadurch, ob seine Skontostrategien den Cashflow tatsächlich beschleunigen oder von Kunden nicht genutzt werden. Warum das wichtig ist Unterstützt die Analyse der Wirksamkeit von Anreizen und der Beschleunigung des Cashflows. Bezugsquelle Oracle Fusion Financials: AR_PAYMENT_SCHEDULES_ALL.DISCOUNT_DATE Beispiele 2023-11-102023-12-05 | |||
| Disputgrund DisputeReason | Die Kategorie oder der Grundcode, der bei der Eröffnung eines Disputs zugewiesen wird. | ||
| Beschreibung Dieses Attribut erfasst die Begründung, die beim Ereignis 'Dispute Case Opened' angegeben wurde. Häufige Werte können 'Pricing Error', 'Quantity Mismatch' oder 'Damaged Goods' sein. Die Analyse dieses Attributs im Dashboard zum Lebenszyklus und zu Engpässen von Disputen hilft, die Ursachen von Zahlungsverzögerungen zu erkennen. Wenn 'Pricing Error' häufig auftritt, weiß das Unternehmen, dass es den vorgelagerten Prozess der Angebotserstellung und Preisfindung untersuchen sollte, statt nur den Forderungseinzug zu betrachten. Warum das wichtig ist Entscheidend für die Ursachenanalyse verspäteter Zahlungen und von Nachbearbeitungen. Bezugsquelle Oracle Fusion Financials: RA_CM_REQUESTS.REASON_CODE oder AR_DISPUTE_HISTORY. Beispiele PreisdifferenzSteuerfehlerWare nicht erhaltenDoppelte Abrechnung | |||
| Erstellungsquelle CreationSource | Die Herkunft der Rechnung, aus der hervorgeht, ob sie manuell erstellt oder importiert wurde. | ||
| Beschreibung Dieses Attribut zeigt, wie die Rechnung in das Oracle-System gelangt ist, etwa über 'Manual Entry', 'AutoInvoice' oder bestimmte externe Datenfeeds. Es dient als Näherungswert für die generische Zuordnung 'Channel'. Für den Monitor zur Automatisierung der Zahlungszuordnung ist dieses Attribut entscheidend. Es unterscheidet vollständig digitale Prozesse von Abläufen, die eine manuelle Einrichtung erfordern. Ein hohes Volumen an 'Manual Entry' kann auf fehlende vorgelagerte Integrationen oder Schwächen im System hinweisen. Warum das wichtig ist Zeigt den Grad der vorgelagerten Automatisierung und die Datenherkunft. Bezugsquelle Oracle Fusion Financials: RA_BATCH_SOURCES_ALL.NAME Beispiele AutoInvoiceManuellProjektimplementierungAuftragsmanagement | |||
| Nachbearbeitung IsRework | Kennzeichen dafür, ob die Rechnung Korrektur- oder Disputschleifen durchlaufen hat. | ||
| Beschreibung Dieses boolesche Attribut zeigt, ob bei einer Rechnung Aktivitäten im Zusammenhang mit Fehlerkorrekturen aufgetreten sind, etwa 'Credit Memo Issued' oder 'Invoice Adjusted'. Es unterstützt das Dashboard zum Volumen und zur Nachbearbeitung von Gutschriften. Die Identifizierung von Nachbearbeitungsfällen hilft, Standardprozesse von problematischen Abläufen zu trennen. Hohe Nachbearbeitungsquoten sind ein Frühindikator für vorgelagerte Probleme mit der Datenqualität in Stammdaten oder bei der Erfassung von Kundenaufträgen. Warum das wichtig ist Identifiziert Verschwendung und Ineffizienz im Prozessablauf. Bezugsquelle Berechnet: True, wenn der Case 'Credit Memo Issued' oder 'Dispute Case Opened' enthält. Beispiele truefalse | |||
| Region Region | Geografische Region, die der Geschäftseinheit oder dem Kunden zugeordnet ist. | ||
| Beschreibung Dieses Attribut ordnet die Transaktion einem größeren geografischen Gebiet wie Nordamerika, EMEA oder APAC zu. Es eignet sich für Berichte auf Führungsebene und für das Dashboard zu DSO- und Cash-Cycle-Trends. Die regionale Analyse berücksichtigt kulturelle Unterschiede im Zahlungsverhalten, etwa längere übliche Zahlungsfristen in Südeuropa im Vergleich zu den USA, und stellt sicher, dass globale KPIs im richtigen lokalen Kontext interpretiert werden. Warum das wichtig ist Liefert eine übergeordnete geografische Segmentierung für globale Berichte. Bezugsquelle Oracle Fusion Financials: Abgeleitet aus Geschäftseinheit oder Kundenadresse. Beispiele NordamerikaEMEAAPACLATAM | |||
| Währungscode CurrencyCode | Die Währung, auf die sich der Rechnungsbetrag bezieht. | ||
| Beschreibung Dieses Attribut gibt die Währung, etwa USD oder EUR, der Finanzbeträge an. Es ist erforderlich, um den Rechnungsbetrag korrekt zu interpretieren und bei Bedarf Währungsumrechnungen in eine globale Berichtswährung durchzuführen. Für global tätige Organisationen unterstützt dieses Attribut die Analyse der Inkassoleistung in verschiedenen Wirtschaftsregionen. Finanzteams können dadurch Wechselkurseffekte von der operativen Prozessleistung trennen. Warum das wichtig ist Ordnet Finanzwerte in Umgebungen mit mehreren Währungen ein. Bezugsquelle Oracle Fusion Financials: RA_CUSTOMER_TRX_ALL.INVOICE_CURRENCY_CODE Beispiele USDEURGBPJPY | |||
| Zahlungsbedingungen PaymentTerms | Die vereinbarten Bedingungen für den Zahlungszeitpunkt, etwa Net 30. | ||
| Beschreibung Dieses Attribut definiert den vertraglich vereinbarten Zeitraum für die Zahlung. Es wird zur Berechnung des Fälligkeitsdatums verwendet und ist für das Dashboard zur Effektivität der Inkassostrategie unerlässlich. Unterschiedliche Zahlungsbedingungen bei Kunden können Abweichungen beim DSO erklären. Mit diesem Attribut können Analysten Leistungsdaten normalisieren, sodass ein Kunde mit Net-60-Bedingungen nicht ungerechtfertigt als langsamer Zahler eingestuft wird als ein Kunde mit Net-30-Bedingungen. Warum das wichtig ist Setzt die Zahlungsgeschwindigkeit in den Kontext vertraglicher Vereinbarungen. Bezugsquelle Oracle Fusion Financials: RA_TERMS.NAME Beispiele Netto 30Sofort2 % bei Zahlung innerhalb von 10 Tagen, netto 30Netto 60 | |||
Aktivitäten der Debitorenbuchhaltung
| Aktivität | Beschreibung | ||
|---|---|---|---|
| Rechnung abgeschlossen | Zeigt an, dass die Rechnungserstellung abgeschlossen und die Rechnung zur Verarbeitung, zum Druck und zur Buchung bereit ist. Dies geschieht, wenn sich der Transaktionsstatus von unvollständig zu vollständig ändert. | ||
| Warum das wichtig ist Trennt die Zeit für die Erstellung des Entwurfs von der Verarbeitungszeit. Verzögerungen an dieser Stelle weisen auf Engpässe bei der internen Rechnungserstellung hin. Bezugsquelle Erkannt, wenn COMPLETE_FLAG in RA_CUSTOMER_TRX_ALL auf „Y“ wechselt. Erfassen Statusfeld vorher und nachher vergleichen Ereignistyp inferred | |||
| Rechnung ausgeglichen | Der Endstatus, in dem die Rechnung im System geschlossen ist, üblicherweise weil der Saldo durch eine Zahlung, Gutschrift oder Anpassung null beträgt. | ||
| Warum das wichtig ist Der Timestamp dieses Ereignisses wird zur Berechnung des Days Sales Outstanding (DSO) verwendet. Er markiert das Ende der Prozessinstanz. Bezugsquelle Erkannt, wenn sich STATUS in AR_PAYMENT_SCHEDULES_ALL zu 'CL' (Closed) ändert. Erfassen Statusfeld vorher und nachher vergleichen Ereignistyp inferred | |||
| Rechnung erstellt | Diese Aktivität kennzeichnet die erstmalige Erstellung des Rechnungssatzes im System. Sie erfasst den Timestamp, zu dem der Transaktionskopf erstmals in den Oracle-Receivables-Tabellen gespeichert wird. | ||
| Warum das wichtig ist Sie markiert den Beginn des Prozesslebenszyklus und bildet die Grundlage für Fälligkeitsberechnungen. Das ist entscheidend für die Berechnung der gesamten Zykluszeit und der Durchlaufzeit bis zum Versand. Bezugsquelle Abgeleitet aus der Tabelle RA_CUSTOMER_TRX_ALL anhand der Spalte CREATION_DATE oder TRX_DATE. Erfassen Wird protokolliert, wenn die Transaktionszeile eingefügt wird Ereignistyp explicit | |||
| Rechnung versendet | Bezeichnet die Übermittlung der Rechnung an den Kunden per Druck, E-Mail oder XML. Damit erfolgt die Übergabe vom Unternehmen an den Kunden. | ||
| Warum das wichtig ist Entscheidend für die Messung der Leistung beim Rechnungsversand. Die Zeitspanne zwischen Erstellung und Versand verzögert den Forderungseinzug direkt. Bezugsquelle Abgeleitet aus PRINTING_ORIGINAL_DATE in RA_CUSTOMER_TRX_ALL oder aus spezifischen Protokollen im Oracle Collaboration Messaging Framework bei Verwendung von XML. Erfassen Statusfeld vorher und nachher vergleichen Ereignistyp inferred | |||
| Teilzahlung gebucht | Tritt auf, wenn ein Zahlungseingang auf die Rechnung angewendet wird, der Betrag jedoch unter dem gesamten offenen Saldo liegt. Die Rechnung bleibt dadurch mit einem reduzierten Saldo offen. | ||
| Warum das wichtig ist Eine hohe Häufigkeit weist auf fragmentiertes Zahlungsverhalten hin (KPI zur Häufigkeit von Teilzahlungen), wodurch der Abstimmungsaufwand steigt. Bezugsquelle Stammt aus AR_RECEIVABLE_APPLICATIONS_ALL, wobei STATUS = 'APP' und AMOUNT_APPLIED < AMOUNT_DUE_REMAINING gilt. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Vollständige Zahlung eingegangen | Tritt auf, wenn die Anwendung eines Zahlungseingangs den Rechnungssaldo auf null reduziert. Dies ist das zentrale Erfolgsergebnis des Inkassoprozesses. | ||
| Warum das wichtig ist Entscheidend für die Analyse von Skontozahlungen. Der Zeitpunkt dieses Ereignisses bestimmt, ob der Zahlungseingang innerhalb der Skontofrist erfolgte. Bezugsquelle Stammt aus AR_RECEIVABLE_APPLICATIONS_ALL, wobei STATUS = 'APP' gilt und der resultierende AMOUNT_DUE_REMAINING 0 ist. Erfassen Abgeleitet aus dem Vergleich von Feld X mit Y Ereignistyp calculated | |||
| Gutschrift ausgestellt | Erfasst die Erstellung einer Gutschrift, die auf die Rechnung angewendet wird. Dadurch verringert sich der offene Betrag, häufig infolge eines Disputs oder einer Retoure. | ||
| Warum das wichtig ist Erfasst die Nachbearbeitungsquote von Gutschriften und Umsatzverluste. Häufige Gutschriften weisen auf systematische Fehler in der Rechnungsstellung hin. Bezugsquelle Stammt aus RA_CUSTOMER_TRX_ALL, wobei TRX_TYPE den Wert Credit Memo hat und RELATED_CUSTOMER_TRX_ID mit der Rechnung übereinstimmt. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Kontoauszug abgeglichen | Zeigt an, dass der auf die Rechnung angewendete Zahlungseingang mit einer Zeile des Kontoauszugs abgeglichen wurde. Damit ist bestätigt, dass der Zahlungseingang tatsächlich auf dem Bankkonto eingegangen ist. | ||
| Warum das wichtig ist Misst die Automatisierung der Zahlungszuordnung. Die Zeitspanne zwischen Zahlungsbuchung und Bankabgleich stellt nicht bestätigte Zahlungseingänge dar. Bezugsquelle Über die Abstimmungsreferenz aus AR_CASH_RECEIPTS_ALL mit CE_STATEMENT_LINES (Cash Management) verknüpft. Erfassen Statusfeld vorher und nachher vergleichen Ereignistyp inferred | |||
| Rechnung angepasst | Erfasst manuelle Anpassungen des Rechnungssaldos, etwa geringfügige Ausbuchungen oder Währungsanpassungen, die von Gutschriften zu unterscheiden sind. | ||
| Warum das wichtig ist Hilft, Umsatzverluste und nicht standardisierte Prozesspfade zu erkennen, bei denen Salden ohne Zahlung ausgeglichen werden. Bezugsquelle Stammt aus der mit der Rechnung verknüpften Tabelle AR_ADJUSTMENTS_ALL. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Rechnung ausgebucht | Eine bestimmte Art der Anpassung, bei der der verbleibende Saldo als uneinbringlich eingestuft und als Forderungsausfall ausgebucht wird. Dies ist ein negativer Endstatus. | ||
| Warum das wichtig ist Entscheidend für die Überwachung der finanziellen Gesundheit. Trennt die operative Effizienz, also die Zahlungsgeschwindigkeit, von Problemen der Kreditqualität. Bezugsquelle Stammt aus AR_ADJUSTMENTS_ALL, wobei die Anpassungsart als 'Write-off' klassifiziert oder mit einem Bad-Debt-Konto verknüpft ist. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Rechnung im Hauptbuch gebucht | Erfasst das Ereignis, bei dem die Buchungen der Rechnung finalisiert und an das General Ledger übertragen werden. Dadurch werden finanzielle Compliance und die Bereitschaft für den Periodenabschluss sichergestellt. | ||
| Warum das wichtig ist Auch wenn dies die Sicht des Kunden nicht beeinflusst, wirken sich Verzögerungen an dieser Stelle auf den Finanzabschluss und die Aktualität der Berichterstattung aus. Bezugsquelle Abgeleitet aus GL_DATE in der Tabelle RA_CUST_TRX_LINE_GL_DIST_ALL. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Streitfall eröffnet | Kennzeichnet den Beginn eines formellen Streitfalls zu einer Rechnung. Während der Untersuchung des Problems werden die regulären Mahnaktivitäten angehalten. | ||
| Warum das wichtig ist Wichtiger Indikator für Engpässe. Hohe Streitfallquoten weisen auf vorgelagerte Probleme bei der Auftragsabwicklung oder Rechnungsgenauigkeit hin. Bezugsquelle Erkannt anhand von Datensätzen in RA_CM_REQUESTS_ALL oder spezifischen Workflows für Gutschriftsanträge, die mit der Rechnung verknüpft sind. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Streitfall gelöst | Kennzeichnet den Abschluss der Untersuchung eines Disputs. Das Ergebnis kann die Genehmigung einer Gutschrift (berechtigter Disput) oder eine Ablehnung (unberechtigter Disput) sein. | ||
| Warum das wichtig ist Erforderlich zur Berechnung der durchschnittlichen Bearbeitungszeit von Disputen. Lange Bearbeitungszeiten beeinträchtigen die Kundenzufriedenheit und den DSO. Bezugsquelle Abgeleitet aus der Statusänderung zu 'APPROVED' oder 'REJECTED' in RA_CM_REQUESTS_ALL. Erfassen Statusfeld vorher und nachher vergleichen Ereignistyp inferred | |||
| Zahlungserinnerung versendet | Erfasst den Versand eines Mahnschreibens oder einer Zahlungserinnerung an den Kunden. Dieses Ereignis wird vom Modul Advanced Collections erzeugt. | ||
| Warum das wichtig ist Entscheidend für die Analyse der Wirksamkeit von Mahnstrategien. Der Abgleich mit Zahlungen zeigt, welche Erinnerungsstrategien die schnellste Rückgewinnung von Liquidität ermöglichen. Bezugsquelle Zu finden in den Tabellen IEX_DUNNING oder IEX_STRATEGY_WORK_ITEMS, die mit dem Kundenkonto verknüpft sind. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
| Zahlungszusage eingegangen | Erfasst die Zusage des Kunden, einen bestimmten Betrag bis zu einem bestimmten Datum zu zahlen. Diese Zusage wird während eines Kundengesprächs üblicherweise manuell von einem Mitarbeitenden im Forderungsmanagement eingetragen. | ||
| Warum das wichtig ist Wichtig für die Analyse des Zahlungsverhaltens von Kunden. Nicht eingehaltene Zusagen weisen auf ein hohes Kreditrisiko und mögliche künftige Forderungsausfälle hin. Bezugsquelle Quelle ist die Tabelle IEX_PROMISE_DETAILS im Collections-Modul. Erfassen Wird protokolliert, wenn Transaktion X ausgeführt wird Ereignistyp explicit | |||
Anleitungen zur Datenextraktion
Schritte
Öffnen Sie die Oracle-BI-Cloud-Connector-Konsole (BICC). Navigieren Sie zum Bereich Manage Offerings and Data Stores.
Konfigurieren Sie die Speicherverbindung. Stellen Sie sicher, dass eine gültige Verbindung zu Oracle Universal Content Management (UCM) oder einem externen Object Storage, etwa OCI Object Storage, besteht. Dort werden die extrahierten CSV- oder Parquet-Dateien abgelegt.
Wählen Sie das Financials Offering aus. Öffnen Sie das Financials Offering, um auf die View Objects für Accounts Receivable zuzugreifen.
Wählen und konfigurieren Sie View Objects (VOs). Wählen Sie die spezifischen Public View Objects (PVOs) aus, die zum Aufbau des Event Logs erforderlich sind. Zu den wesentlichen PVOs gehören:
- FscmTopModelAM.FinExtractAM.ArBiccExtractAM.TransactionHeaderExtractPVO (Invoice Headers)
- FscmTopModelAM.FinExtractAM.ArBiccExtractAM.TransactionLineExtractPVO (Invoice Lines)
- FscmTopModelAM.FinExtractAM.ArBiccExtractAM.ReceiptApplicationExtractPVO (Payments and CM Applications)
- FscmTopModelAM.FinExtractAM.ArBiccExtractAM.AdjustmentExtractPVO (Adjustments and Write-offs)
- FscmTopModelAM.FinExtractAM.IexBiccExtractAM.PromiseDetailExtractPVO (Promises to Pay)
- FscmTopModelAM.FinExtractAM.IexBiccExtractAM.StrategyWorkItemExtractPVO (Dunning/Reminders)
Definieren Sie Filterkriterien (Pruning). Legen Sie unter Manage Extract Schedules oder in der PVO-Konfiguration einen Filter für CreationDate oder LastUpdateDate fest, um Daten für den Analysezeitraum zu extrahieren, zum Beispiel für die letzten zwölf Monate.
Planen Sie die Extraktion. Erstellen Sie einen täglichen Zeitplan für diese Extraktionen. Wählen Sie Incremental Load, damit nach dem ersten Full Load nur geänderte Daten abgerufen werden.
Download und Übernahme: Verwenden Sie ein automatisiertes Skript oder ein Integrationstool, um die Dateien aus UCM oder Object Storage abzurufen und in die Staging-Tabellen Ihres Data Warehouse zu laden, zum Beispiel STG_AR_TRX_HEADER und STG_AR_APPLICATIONS.
Wenden Sie die Transformationslogik an. Führen Sie das im Query-Abschnitt bereitgestellte SQL-Skript für Ihre Staging-Tabellen aus, um die relationalen Daten in das Event-Log-Format von ProcessMind zu überführen.
Validieren Sie die Datentypen. Stellen Sie sicher, dass Datumsfelder in datetime-Objekte umgewandelt werden und numerische Beträge bei der Transformation Dezimalstellen korrekt verarbeiten.
Exportieren Sie die Daten als CSV oder Parquet. Exportieren Sie das fertige Ergebnis aus Ihrem Data Warehouse als eine einzelne Datei.
Laden Sie die Datei in ProcessMind hoch. Importieren Sie die Datei und ordnen Sie InvoiceNumber der Case ID, ActivityName der Activity und EventStartDateTime dem Timestamp zu.
Konfiguration
- Extraktionshäufigkeit: Täglich, inkrementell, empfohlen zur Erfassung der neuesten Statusänderungen.
- Erster Ladevorgang: Wählen Sie beim ersten Lauf „Full Extract“ und wechseln Sie anschließend auf „Incremental“, basierend auf dem Datum der letzten Aktualisierung.
- Zentrale PVOs: TransactionHeaderExtractPVO, ReceiptApplicationExtractPVO, AdjustmentExtractPVO, StrategyWorkItemExtractPVO.
- Datumsfilter: Wenden Sie Filter wie CreationDate >= '202X-01-01' an, um das Datenvolumen zu begrenzen.
- Abrufgröße: Der Standardwert beträgt in der Regel 50000 Zeilen. Passen Sie ihn bei einem UCM-Download an die verfügbare Netzwerkbandbreite an.
- Primärschlüssel: Stellen Sie sicher, dass Ihr nachgelagertes Data Warehouse Upserts anhand der PVO-Primärschlüssel verarbeitet, in der Regel CustomerTrxId, ReceivableApplicationId usw., damit keine doppelten Zeilen entstehen.
- Audit-Historie: Standard-BICC-PVOs erfassen den aktuellen Status. Für eine exakte historische Zeitstempelung von Statusänderungen, etwa „Dispute Opened“, müssen Sie möglicherweise Audit Policies in Fusion aktivieren und Audit View Objects extrahieren, wenn die Transaktionstabellen die Historie nicht speichern.
a Beispielabfrage sql
/*
Transformation Script for Oracle BICC Data
Assumes raw BICC PVO CSVs are loaded into a SQL Staging Area with tables named:
- STG_AR_TRX_HEADER (TransactionHeaderExtractPVO)
- STG_AR_APPLICATIONS (ReceiptApplicationExtractPVO)
- STG_AR_ADJUSTMENTS (AdjustmentExtractPVO)
- STG_IEX_PROMISES (PromiseDetailExtractPVO)
- STG_IEX_STRATEGY (StrategyWorkItemExtractPVO)
- STG_CE_STMTS (BankStatementLineExtractPVO - Optional/Advanced)
*/
WITH Base_Log AS (
/* 1. Invoice Created */
SELECT
TrxNumber AS InvoiceNumber,
'Invoice Created' AS ActivityName,
CreationDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
(Quantity * UnitSellingPrice) AS InvoiceAmount,
TrxClass AS TransactionType,
CreatedBy AS UserName,
'Yes' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE TrxClass IN ('INV', 'DM')
UNION ALL
/* 2. Invoice Completed */
SELECT
TrxNumber AS InvoiceNumber,
'Invoice Completed' AS ActivityName,
TrxDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
LastUpdatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE CompleteFlag = 'Y'
AND TrxClass IN ('INV', 'DM')
UNION ALL
/* 3. Invoice Dispatched */
/* Using PrintingOriginalDate as proxy for dispatch */
SELECT
TrxNumber AS InvoiceNumber,
'Invoice Dispatched' AS ActivityName,
PrintingOriginalDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
LastUpdatedBy AS UserName,
'Yes' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE PrintingOriginalDate IS NOT NULL
AND TrxClass IN ('INV', 'DM')
UNION ALL
/* 4. Invoice Posted to GL */
SELECT
TrxNumber AS InvoiceNumber,
'Invoice Posted to GL' AS ActivityName,
GlDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
'System' AS UserName,
'Yes' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE GlDate IS NOT NULL
AND TrxClass IN ('INV', 'DM')
UNION ALL
/* 5. Payment Reminder Sent */
/* Links via Customer or Account, mapped back to Trx via Collections Strategy logic */
/* Simplified join assumption based on Trx Id availability in Work Item */
SELECT
H.TrxNumber AS InvoiceNumber,
'Payment Reminder Sent' AS ActivityName,
W.CreationDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
H.TrxClass AS TransactionType,
W.CreatedBy AS UserName,
'Yes' AS IsAutomated
FROM STG_IEX_STRATEGY W
JOIN STG_AR_TRX_HEADER H ON W.ObjectPk1 = H.CustomerTrxId
WHERE W.WorkItemTemplateName LIKE '%Reminder%'
UNION ALL
/* 6. Promise to Pay Received */
SELECT
H.TrxNumber AS InvoiceNumber,
'Promise to Pay Received' AS ActivityName,
P.CreationDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
P.PromiseAmount AS InvoiceAmount,
H.TrxClass AS TransactionType,
P.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_IEX_PROMISES P
JOIN STG_AR_TRX_HEADER H ON P.CustTrxId = H.CustomerTrxId
UNION ALL
/* 7. Dispute Case Opened */
/* Triggered when dispute amount is updated/created */
SELECT
TrxNumber AS InvoiceNumber,
'Dispute Case Opened' AS ActivityName,
DisputeDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
LastUpdatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE DisputeDate IS NOT NULL
UNION ALL
/* 8. Dispute Resolved */
/* Approximated by update date when dispute amount returns to 0 after being positive */
/* Note: Accurate dispute history requires Audit Trail extraction. This is a best-effort proxy based on header state. */
SELECT
TrxNumber AS InvoiceNumber,
'Dispute Resolved' AS ActivityName,
LastUpdateDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
LastUpdatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE DisputeDate IS NOT NULL AND DisputeAmount = 0
UNION ALL
/* 9. Credit Memo Issued (Applied) */
SELECT
H.TrxNumber AS InvoiceNumber,
'Credit Memo Issued' AS ActivityName,
APP.ApplyDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
APP.AmountApplied AS InvoiceAmount,
H.TrxClass AS TransactionType,
APP.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_APPLICATIONS APP
JOIN STG_AR_TRX_HEADER H ON APP.AppliedCustomerTrxId = H.CustomerTrxId
WHERE APP.ApplicationType = 'CM' -- Credit Memo application
UNION ALL
/* 10. Partial Payment Posted */
SELECT
H.TrxNumber AS InvoiceNumber,
'Partial Payment Posted' AS ActivityName,
APP.ApplyDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
APP.AmountApplied AS InvoiceAmount,
H.TrxClass AS TransactionType,
APP.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_APPLICATIONS APP
JOIN STG_AR_TRX_HEADER H ON APP.AppliedCustomerTrxId = H.CustomerTrxId
WHERE APP.ApplicationType = 'CASH'
AND APP.Status = 'APP'
AND (H.AmountDueRemaining > 0) -- Invoice still has balance
UNION ALL
/* 11. Full Payment Received */
SELECT
H.TrxNumber AS InvoiceNumber,
'Full Payment Received' AS ActivityName,
APP.ApplyDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
APP.AmountApplied AS InvoiceAmount,
H.TrxClass AS TransactionType,
APP.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_APPLICATIONS APP
JOIN STG_AR_TRX_HEADER H ON APP.AppliedCustomerTrxId = H.CustomerTrxId
WHERE APP.ApplicationType = 'CASH'
AND APP.Status = 'APP'
AND H.AmountDueRemaining = 0 -- Invoice fully paid
UNION ALL
/* 12. Bank Statement Matched */
/* Requires joining Receipt Application -> Cash Receipt -> Bank Statement Line */
/* Placeholder logic assuming availability of Bank Statement PVO data */
SELECT
H.TrxNumber AS InvoiceNumber,
'Bank Statement Matched' AS ActivityName,
BSL.StatementDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
BSL.Amount AS InvoiceAmount,
H.TrxClass AS TransactionType,
BSL.CreatedBy AS UserName,
'Yes' AS IsAutomated
FROM STG_AR_APPLICATIONS APP
JOIN STG_AR_TRX_HEADER H ON APP.AppliedCustomerTrxId = H.CustomerTrxId
-- Join to Receipt then to Bank Stmt would happen here
JOIN STG_CE_STMTS BSL ON APP.CashReceiptId = BSL.ReferenceId -- Simplified Join
WHERE APP.ApplicationType = 'CASH'
UNION ALL
/* 13. Invoice Adjusted */
SELECT
H.TrxNumber AS InvoiceNumber,
'Invoice Adjusted' AS ActivityName,
ADJ.ApplyDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
ADJ.Amount AS InvoiceAmount,
H.TrxClass AS TransactionType,
ADJ.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_ADJUSTMENTS ADJ
JOIN STG_AR_TRX_HEADER H ON ADJ.CustomerTrxId = H.CustomerTrxId
WHERE ADJ.AdjustmentType != 'WRITE_OFF'
UNION ALL
/* 14. Invoice Written Off */
SELECT
H.TrxNumber AS InvoiceNumber,
'Invoice Written Off' AS ActivityName,
ADJ.ApplyDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
H.BusinessUnitName AS BusinessUnit,
H.BillToCustomerName AS CustomerName,
H.InvoiceCurrencyCode AS Currency,
ADJ.Amount AS InvoiceAmount,
H.TrxClass AS TransactionType,
ADJ.CreatedBy AS UserName,
'No' AS IsAutomated
FROM STG_AR_ADJUSTMENTS ADJ
JOIN STG_AR_TRX_HEADER H ON ADJ.CustomerTrxId = H.CustomerTrxId
WHERE ADJ.AdjustmentType = 'WRITE_OFF'
UNION ALL
/* 15. Invoice Cleared */
/* The moment the invoice balance hits 0 */
SELECT
TrxNumber AS InvoiceNumber,
'Invoice Cleared' AS ActivityName,
LastUpdateDate AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
BusinessUnitName AS BusinessUnit,
BillToCustomerName AS CustomerName,
InvoiceCurrencyCode AS Currency,
NULL AS InvoiceAmount,
TrxClass AS TransactionType,
LastUpdatedBy AS UserName,
'Yes' AS IsAutomated
FROM STG_AR_TRX_HEADER
WHERE AmountDueRemaining = 0
)
SELECT
InvoiceNumber,
ActivityName,
EventStartDateTime,
SourceSystem,
GETDATE() AS LastDataUpdate,
BusinessUnit,
CustomerName,
Currency,
InvoiceAmount,
TransactionType,
UserName,
IsAutomated
FROM Base_Log
WHERE EventStartDateTime IS NOT NULL
ORDER BY InvoiceNumber, EventStartDateTime Schritte
Melden Sie sich bei Oracle Fusion Applications an: Öffnen Sie Tools > Reports and Analytics. Klicken Sie auf Browse Catalog, um die Oracle-BI-Publisher-Oberfläche zu öffnen.
Erstellen Sie ein Data Model: Klicken Sie oben links auf New und wählen Sie Data Model. Dieses Objekt enthält Ihre SQL-Logik für die Extraktion.
Definieren Sie ein SQL-Dataset: Klicken Sie im Baum Data Model links auf Data Sets und wählen Sie anschließend New Data Set > SQL Query.
Konfigurieren Sie die Datenquelle: Benennen Sie das Dataset, zum Beispiel
ProcessMining_AR. Wählen SieApplicationDB_FSCM(Financials Supply Chain Management) als Datenquelle. Dadurch erhalten Sie Zugriff auf die erforderlichen AR- und RA-Tabellen.Fügen Sie die Abfrage ein: Kopieren Sie das vollständige SQL-Skript aus dem folgenden Abschnitt „Query“ und fügen Sie es in das Textfeld SQL Query ein. Ändern Sie die Kernlogik nur, wenn Sie bestimmte Flexfields (DFFs) umbenennen müssen.
Legen Sie Parameter fest: Die Abfrage enthält den Platzhalter
:p_start_date, um nach dem Erstellungsdatum der Transaktion zu filtern. Erstellen Sie im Tab Parameters des Data Models einen neuen Parameter namensp_start_date, Datentyp: Date, und legen Sie einen Standardwert fest, zum Beispiel01-01-2023.Zeigen Sie die Daten an: Klicken Sie auf den Tab Data, geben Sie ein gültiges Datum für den Parameter ein und klicken Sie auf View. Prüfen Sie, ob die Ausgabe Spalten wie
InvoiceNumber,ActivityNameundEventStartDateTimeenthält.Speichern Sie das Data Model: Speichern Sie das Objekt unter Shared Folders > Custom, zum Beispiel
/Shared Folders/Custom/ProcessMining/AR_Extract_DM.Planen Sie den Export: Klicken Sie für große Datenmengen auf Create Report und verwenden Sie dieses Data Model. Prüfen Sie im Report-Editor, ob das Layout als einfache Tabelle angelegt ist. Speichern Sie den Report. Verwenden Sie anschließend den Scheduler, um den Report auszuführen und die Daten als CSV oder XML auszugeben.
Formatieren Sie die Ausgabe: Laden Sie die Ausgabedatei herunter. Stellen Sie bei CSV sicher, dass das Datumsformat einheitlich ist, vorzugsweise ISO 8601. Laden Sie die Datei in ProcessMind hoch und ordnen Sie
InvoiceNumberder Case ID,ActivityNameder Activity undEventStartDateTimedem Timestamp zu.
Konfiguration
- Datenquelle: Verwenden Sie
ApplicationDB_FSCM, um auf die Financials-Tabellen zuzugreifen. - Datumsfilter: Die Abfrage verwendet
ra_customer_trx_all.creation_date >= :p_start_date. Konfigurieren Sie den Filter für ein rollierendes Zeitfenster, zum Beispiel die letzten 12 Monate. - Leistung: Bei Datensätzen mit mehr als 100.000 Rechnungen sollten Sie beim Testen ein
ROWNUM-Limit ergänzen oder die Extraktion monatsweise aufteilen. - Filterung nach Geschäftseinheit: Wenn Ihre Organisation mehrere Geschäftseinheiten umfasst und Sie nur eine benötigen, entfernen Sie in den
Where-Klauseln den Kommentar vor der ZeileAND trx.org_id = .... - Benutzernamen: Die Abfrage löst
CREATED_BY-Benutzer-IDs überFND_USERin Benutzernamen auf. Stellen Sie sicher, dass der Extraktionsbenutzer Leseberechtigungen fürFND_USERbesitzt. - Advanced Collections: Die Aktivitäten „Payment Reminder Sent“ und „Promise to Pay Received“ greifen auf Tabellen des Moduls IEX (Advanced Collections) zu. Wenn Sie dieses Modul nicht verwenden, liefern diese Abschnitte einfach keine Zeilen.
a Beispielabfrage sql
/* 1. Invoice Created */
SELECT
trx.trx_number AS InvoiceNumber,
'Invoice Created' AS ActivityName,
trx.creation_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ra_customer_trx_all trx
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON trx.created_by = u.user_id
WHERE
trx.creation_date >= :p_start_date
UNION ALL
/* 2. Invoice Completed */
SELECT
trx.trx_number AS InvoiceNumber,
'Invoice Completed' AS ActivityName,
trx.trx_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'Y' AS IsAutomated
FROM
ra_customer_trx_all trx
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON trx.last_updated_by = u.user_id
WHERE
trx.complete_flag = 'Y'
AND trx.creation_date >= :p_start_date
UNION ALL
/* 3. Invoice Dispatched */
SELECT
trx.trx_number AS InvoiceNumber,
'Invoice Dispatched' AS ActivityName,
COALESCE(trx.printing_original_date, trx.printing_last_printed, trx.last_update_date) AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'Y' AS IsAutomated
FROM
ra_customer_trx_all trx
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON trx.last_updated_by = u.user_id
WHERE
(trx.printing_original_date IS NOT NULL OR trx.printing_count > 0)
AND trx.creation_date >= :p_start_date
UNION ALL
/* 4. Invoice Posted to GL */
SELECT
trx.trx_number AS InvoiceNumber,
'Invoice Posted to GL' AS ActivityName,
MAX(dist.gl_date) AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
'System' AS UserName,
'Y' AS IsAutomated
FROM
ra_customer_trx_all trx
JOIN ra_cust_trx_line_gl_dist_all dist ON trx.customer_trx_id = dist.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
WHERE
dist.account_class = 'REC'
AND dist.posting_control_id != -3
AND trx.creation_date >= :p_start_date
GROUP BY
trx.trx_number,
hou.name,
party.party_name,
trx.invoice_currency_code,
ps.amount_due_original,
type.name
UNION ALL
/* 5. Payment Reminder Sent (Advanced Collections) */
SELECT
trx.trx_number AS InvoiceNumber,
'Payment Reminder Sent' AS ActivityName,
dun.creation_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'Y' AS IsAutomated
FROM
iex_dunning_transactions dun
JOIN ar_payment_schedules_all ps ON dun.payment_schedule_id = ps.payment_schedule_id
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
LEFT JOIN fnd_user u ON dun.created_by = u.user_id
WHERE
trx.creation_date >= :p_start_date
UNION ALL
/* 6. Promise to Pay Received */
SELECT
trx.trx_number AS InvoiceNumber,
'Promise to Pay Received' AS ActivityName,
pp.creation_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
iex_promise_details pp
JOIN ar_payment_schedules_all ps ON pp.payment_schedule_id = ps.payment_schedule_id
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
LEFT JOIN fnd_user u ON pp.created_by = u.user_id
WHERE
trx.creation_date >= :p_start_date
UNION ALL
/* 7. Dispute Case Opened */
SELECT
trx.trx_number AS InvoiceNumber,
'Dispute Case Opened' AS ActivityName,
req.creation_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ra_cm_requests req
JOIN ra_customer_trx_all trx ON req.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON req.created_by = u.user_id
WHERE
trx.creation_date >= :p_start_date
UNION ALL
/* 8. Dispute Resolved */
SELECT
trx.trx_number AS InvoiceNumber,
'Dispute Resolved' AS ActivityName,
req.last_update_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ra_cm_requests req
JOIN ra_customer_trx_all trx ON req.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON req.last_updated_by = u.user_id
WHERE
req.status_code IN ('APPROVED', 'REJECTED')
AND trx.creation_date >= :p_start_date
UNION ALL
/* 9. Credit Memo Issued */
SELECT
trx.trx_number AS InvoiceNumber,
'Credit Memo Issued' AS ActivityName,
cm.trx_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ra_customer_trx_all cm
JOIN ra_customer_trx_all trx ON cm.previous_customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
JOIN ar_payment_schedules_all ps ON trx.customer_trx_id = ps.customer_trx_id
LEFT JOIN fnd_user u ON cm.created_by = u.user_id
WHERE
trx.creation_date >= :p_start_date
UNION ALL
/* 10 & 11. Partial and Full Payment */
SELECT
trx.trx_number AS InvoiceNumber,
CASE
WHEN ps.status = 'CL' AND app.amount_applied = app.amount_applied_from THEN 'Full Payment Received'
WHEN ps.status = 'CL' AND ps.amount_due_remaining = 0 AND app.application_rule = '60' THEN 'Full Payment Received'
ELSE 'Partial Payment Posted'
END AS ActivityName,
app.apply_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ar_receivable_applications_all app
JOIN ar_payment_schedules_all ps ON app.applied_payment_schedule_id = ps.payment_schedule_id
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
LEFT JOIN fnd_user u ON app.created_by = u.user_id
WHERE
app.status = 'APP'
AND app.application_type = 'CASH'
AND trx.creation_date >= :p_start_date
UNION ALL
/* 12. Bank Statement Matched */
SELECT
trx.trx_number AS InvoiceNumber,
'Bank Statement Matched' AS ActivityName,
recon.creation_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'Y' AS IsAutomated
FROM
ce_statement_reconcils_all recon
JOIN ar_cash_receipt_history_all crh ON recon.reference_id = crh.cash_receipt_history_id
JOIN ar_cash_receipts_all cr ON crh.cash_receipt_id = cr.cash_receipt_id
JOIN ar_receivable_applications_all app ON cr.cash_receipt_id = app.cash_receipt_id
JOIN ar_payment_schedules_all ps ON app.applied_payment_schedule_id = ps.payment_schedule_id
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
LEFT JOIN fnd_user u ON recon.created_by = u.user_id
WHERE
recon.status_flag = 'M'
AND trx.creation_date >= :p_start_date
UNION ALL
/* 13 & 14. Invoice Adjusted and Written Off */
SELECT
trx.trx_number AS InvoiceNumber,
CASE
WHEN adj.adjustment_type = 'W' THEN 'Invoice Written Off'
ELSE 'Invoice Adjusted'
END AS ActivityName,
adj.apply_date AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
u.user_name AS UserName,
'N' AS IsAutomated
FROM
ar_adjustments_all adj
JOIN ar_payment_schedules_all ps ON adj.payment_schedule_id = ps.payment_schedule_id
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
LEFT JOIN fnd_user u ON adj.created_by = u.user_id
WHERE
adj.status = 'A'
AND trx.creation_date >= :p_start_date
UNION ALL
/* 15. Invoice Cleared (Final Close) */
SELECT
trx.trx_number AS InvoiceNumber,
'Invoice Cleared' AS ActivityName,
ps.gl_date_closed AS EventStartDateTime,
'Oracle Fusion' AS SourceSystem,
SYSDATE AS LastDataUpdate,
hou.name AS BusinessUnit,
party.party_name AS CustomerName,
trx.invoice_currency_code AS Currency,
ps.amount_due_original AS InvoiceAmount,
type.name AS TransactionType,
'System' AS UserName,
'Y' AS IsAutomated
FROM
ar_payment_schedules_all ps
JOIN ra_customer_trx_all trx ON ps.customer_trx_id = trx.customer_trx_id
JOIN ra_cust_trx_types_all type ON trx.cust_trx_type_id = type.cust_trx_type_id
JOIN hr_operating_units hou ON trx.org_id = hou.organization_id
JOIN hz_cust_accounts cust ON trx.bill_to_customer_id = cust.cust_account_id
JOIN hz_parties party ON cust.party_id = party.party_id
WHERE
ps.status = 'CL'
AND ps.gl_date_closed IS NOT NULL
AND trx.creation_date >= :p_start_date Bereit für den Start?
Wandeln Sie Ihre Finanzdaten in umsetzbare Erkenntnisse um, indem Sie dieses Template auf Ihre Oracle-Fusion-Umgebung anwenden. Unser Team unterstützt Sie dabei, Ihre spezifische Geschäftslogik an diese Standards anzupassen.
Beschleunigen Sie den Forderungseinzug noch heute
Reduzieren Sie den DSO um 15 bis 20 Tage und schließen Sie Liquiditätslücken jetzt.
Keine Kreditkarte erforderlich. Einrichtung in 5 Minuten.