Uw Record to Report - Periodeafsluiting & Afstemming Data Template
Uw Record to Report - Periodeafsluiting & Afstemming Data Template
- Aanbevolen attributen om vast te leggen
- Belangrijke activiteiten om te volgen voor procesanalyse
- Stapsgewijze begeleiding bij data-extractie
Record to Report - Periodesluiting & Afstemmingsattributen
| Naam | Omschrijving | ||
|---|---|---|---|
| Financiële Periode FinancialPeriod | Een unieke identificator voor de financiële rapportagecyclus, zoals '2023-12' voor december 2023, die dient als de `case` voor het afsluitingsproces aan het einde van de periode. | ||
| Omschrijving De Financiële Periode is de kern case identifier die alle activiteiten groepeert die gerelateerd zijn aan het afsluiten van de boeken voor een specifieke tijdsperiode, typisch een kalendermaand of fiscaal periode. Elke financiële periode vertegenwoordigt één complete run van het periode-einde proces. In process mining analyse maakt dit attribuut het mogelijk om de gehele levenscyclus van een periodeafsluiting te volgen van initiatie tot definitieve rapportage. Het wordt gebruikt om cyclustijden over verschillende perioden te vergelijken, gemeenschappelijke procespaden te identificeren en variaties tussen maandelijkse, kwartaal- en jaarlijkse afsluitingsprocedures te analyseren. Door elke periode als een case te behandelen, kunnen analisten de prestaties in de loop der tijd meten en systemische knelpunten traceren. Het belang Dit is de essential case identifier dat frames the analysis, enabling comparison of periodeafsluitingsprestaties in de loop der tijd en de identificatie van trends of recurring issues. Vindplaats Afgeleid door de velden Fiscaal Jaar (GJAHR) en Boekingsperiode (MONAT) uit financiële documentkoppen te combineren, meestal uit tabellen zoals BKPF. Voorbeelden 2023-122024-032024-Q1 | |||
| Activiteit ActivityName | De naam van een specifieke bedrijfsstap of taak die wordt uitgevoerd binnen het periodeafsluitingsproces, zoals 'Corrigerende journaalpost geboekt' of 'Periode afgesloten voor boeking'. | ||
| Omschrijving Dit attribuut vertegenwoordigt één event of taak in het end-to-end periodeafsluitings- en afstemmingsproces. Activiteiten zijn de bouwstenen van de proceskaart, die de sequentie van uitgevoerd werk weergeven. Ze worden vaak afgeleid van een combinatie van transactiecodes, documenttypen of statuswijzigingen binnen SAP S/4HANA. Het analyseren van activiteiten is fundamenteel voor process mining. Het helpt de procesflow te visualiseren, afwijkingen van de standaardprocedure te identificeren, knelpunten te ontdekken waar activiteiten te lang duren, en de frequentie en volgorde van taken te begrijpen. Dit is cruciaal voor dashboards zoals de 'Period Close Variant Analysis' en 'Current Period Close Status'. Het belang Definieert de stappen in het proces, vormt de basis van de proceskaart en maakt analyse van procesflow, afwijkingen en knelpunten mogelijk. Vindplaats Afgeleid uit verschillende bronnen, zoals transactiecodes (TCODE), documenttypen (BLART), of statusvelden in tabellen gerelateerd aan financiële afsluitingstaken (bijv. vanuit SAP Financial Closing cockpit). Voorbeelden Periode geopend voor boekingAccount Reconciliation GestartFinanciële Overzichten GecreëerdIntercompany Reconciliatie gestart | |||
| Starttijd EventTime | De timestamp die aangeeft wanneer een specifieke activiteit is gestart of in het systeem is vastgelegd. | ||
| Omschrijving
Dit Het belang Deze mandatory timestamp enables the chronological ordering of events and is the basis for all duration and performance calculations. Vindplaats Afkomstig van timestamp velden zoals Creation Date (CPUDT) en Creation Time (CPUTM) in tabellen zoals BKPF, of van wijzigingsdatumvelden in diverse status tabellen (bijv. CDHDR, CDPOS). Voorbeelden 2023-12-28T09:15:30Z2024-01-02T14:00:12Z2024-01-05T11:21:00Z | |||
| Afstemmingsstatus ReconciliationStatus | De status van een rekeningafstemmingsactiviteit, zoals 'Open', 'In uitvoering' of 'Goedgekeurd'. | ||
| Omschrijving Dit attribuut volgt de status van een afstemmingsproces voor een gegeven rekening of taak. Het geeft aan of een afstemming is gestart, ingediend ter beoordeling, goedgekeurd of afgewezen. De statuswijzigingen zijn key events in het proces. Dit is fundamenteel voor het 'Reconciliation Rework Analysis' dashboard. Door de sequentie van statussen te analyseren, is het mogelijk om te identificeren wanneer een 'Goedgekeurd' status wordt gevolgd door verdere aanpassingen, wat duidt op herwerk. Het ondersteunt ook de 'First-Pass Reconciliation Rate' KPI door te laten zien welke afstemmingen worden goedgekeurd zonder enige voorafgaande afwijzing of heropening. Het belang Tracks the progress and outcome of afstemmingstaken, making it possible to identify herwerk, measure approval rates, and analyze knelpunten. Vindplaats Deze informatie wordt typisch opgeslagen in tabellen gerelateerd aan de specifieke afstemmingstool die wordt gebruikt, zoals de SAP Financial Closing cockpit of SAP Account Substantiation en Automation by BlackLine. Voorbeelden Niet gestartIn voorbereidingGoedgekeurdAfgewezen | |||
| Bedrijfscode CompanyCode | Een unieke identificator voor een juridische entiteit of bedrijf binnen de SAP-organisatie. | ||
| Omschrijving De Company Code vertegenwoordigt een onafhankelijke boekhoudkundige eenheid binnen een onderneming, waarvoor een complete, zelfstandige set van rekeningen kan worden aangemaakt. Alle periode-einde afsluitingsactiviteiten worden uitgevoerd op Company Code niveau. Dit is een fundamentele organisatorische dimensie voor financiële analyse. In process mining maakt het vergelijkingen mogelijk van het periodeafsluitingsproces over verschillende juridische entiteiten. Het 'Period Close Variant Analysis' dashboard gebruikt Company Code om inconsistenties te identificeren en de standaardisatie van afsluitingsprocedures te bevorderen. Het belang Biedt een kritieke organisatorische context, waardoor processen tussen verschillende juridische entiteiten kunnen worden vergeleken om variaties en Vindplaats Te vinden in vrijwel alle financiële tabellen in SAP, met name in de kopteksttabel BKPF (veld BUKRS). Voorbeelden 10001710US01DE01 | |||
| Beoogde Afrondingsdatum TargetCompletionDate | De geplande of deadline datum voor het voltooien van een belangrijke activiteit, zoals het genereren van financiële overzichten. | ||
| Omschrijving De Target Completion Date vertegenwoordigt de interne of externe deadline voor een specifieke mijlpaal in het periodeafsluitingsproces. Het is de datum waarop een taak naar verwachting is afgerond. Dit attribuut is essentieel voor het meten van naleving van de planning en prestaties tegen deadlines. Het is de basis voor het 'Reporting Deadline Adherence' dashboard en de 'Financial Statement On-Time Rate' KPI, die deze doeldatum vergelijken met de Het belang Maakt analyse van prestaties ten opzichte van deadlines mogelijk, wat helpt bij het meten en verbeteren van de 'on-time completion rates' voor kritieke afsluitingsactiviteiten. Vindplaats Deze data bevindt zich vaak in een taakbeheer- of planningssysteem, zoals de SAP Financial Closing cockpit, waar afsluitingstaaklijsten zijn gedefinieerd met geplande einddatums. Voorbeelden 2024-01-05T23:59:59Z2024-04-04T23:59:59Z2024-07-05T23:59:59Z | |||
| Bewerkingstijd ProcessingTime | De duur van een individuele activiteit, berekend als het verschil tussen de Eindtijd en Starttijd. | ||
| Omschrijving
Deze berekende metric is fundamenteel voor prestatieanalyse. Het helpt knelpunten op activiteitsniveau aan te wijzen en is de primaire maatstaf die wordt gebruikt in de Het belang Meet de duur van individuele taken, waarbij knelpunten direct worden benadrukt en de basis wordt gevormd voor efficiëntieanalyse. Vindplaats Calculated field: Voorbeelden PT1M30SPT8HP2D | |||
| Documentnummer DocumentNumber | De unieke identificatie voor een financieel document, zoals een journaalpost. | ||
| Omschrijving Het documentnummer is een unieke sleutel die door SAP wordt toegewezen aan elke financiële boeking. Het dient als de primaire referentie voor het traceren en auditen van individuele transacties die de activiteiten in het afsluitingsproces vormen. Hoewel het zelf geen case ID is, biedt het een cruciale link terug naar het bronsysteem. Analisten kunnen het documentnummer gebruiken om vanuit een process mining view in te zoomen op de specifieke transactiedetails in SAP S/4HANA voor oorzakenanalyse. Het is bijzonder nuttig bij het onderzoeken van specifieke corrigerende journaalboekingen of afstemmingsboekingen. Het belang Biedt een directe referentie naar de onderliggende transactie in SAP, waardoor gemakkelijke Vindplaats Bevindt zich in de financiële documentkop tabel BKPF (veld BELNR) en regelitem tabellen zoals BSEG of ACDOCA. Voorbeelden 100000045190000001300000023 | |||
| Eindtijd EndTime | De timestamp waarop een activiteit is afgerond. | ||
| Omschrijving De End Time markeert de voltooiing van een taak. In sommige gevallen kan deze gelijk zijn aan de Start Time voor instantane events die in het systeem zijn gelogd. Voor activiteiten met een meetbare duur vertegenwoordigt het de finalisatie-timestamp. Gecombineerd met Start Time, is dit attribuut essentieel voor het berekenen van de Het belang Maakt de berekening van activiteitsduren (Processing Time) mogelijk, wat cruciaal is voor het identificeren van prestatieknelpunten en het analyseren van efficiëntie. Vindplaats Net als Voorbeelden 2023-12-28T09:16:10Z2024-01-02T17:30:00Z2024-01-05T11:21:00Z | |||
| Grootboekrekeningnummer GlAccountNumber | De identificatie voor een specifieke rekening in het Grootboek. | ||
| Omschrijving Het Grootboekrekeningnummer (GL) identificeert individuele rekeningen die worden gebruikt om financiële transacties vast te leggen, zoals contanten, crediteuren of opbrengsten. Veel periode-einde activiteiten, zoals afstemmingen en corrigerende boekingen, zijn direct gerelateerd aan specifieke GL-rekeningen. Dit attribuut is essentieel voor gedetailleerde financiële procesanalyse. Het 'Adjusting Journal Entry Analysis' dashboard gebruikt het om het volume van aanpassingen per rekening weer te geven, wat helpt bij het identificeren van problematische gebieden. De 'Avg GL Account Reconciliation Time' KPI is hier ook van afhankelijk om vertragingen met betrekking tot specifieke rekeningen te traceren. Het belang Koppelt procesactiviteiten aan specifieke financiële rekeningen, wat gedetailleerde analyse van reconciliaties en journaalboekingen mogelijk maakt om hoofdoorzaken van problemen te vinden. Vindplaats Te vinden in financiële documentregel item tabellen, voornamelijk BSEG (veld HKONT) of de S/4HANA universele journaaltabel ACDOCA. Voorbeelden 113100004000000073000000 | |||
| Verantwoordelijke Gebruiker ResponsibleUser | De gebruikers-ID van de persoon die de activiteit heeft uitgevoerd of verantwoordelijk is voor de taak. | ||
| Omschrijving Dit attribuut identificeert de medewerker die een bepaalde taak heeft uitgevoerd, zoals het boeken van een journaalpost of het goedkeuren van een afstemming. Het wordt typisch vastgelegd als een user ID in systeemlogs en documentheaders. Het analyseren van het proces per gebruiker is cruciaal voor het begrijpen van de werkdrukverdeling, individuele prestaties en trainingsbehoeften. Het Resource Allocation Efficiency dashboard gebruikt dit attribuut direct om activiteitsverwerkingstijden per gebruiker te visualiseren. Het kan ook helpen bij het identificeren van automatiseringskandidaten door zeer repetitieve taken te belichten die door veel gebruikers worden uitgevoerd. Het belang Verbindt procesactiviteiten met de individuen die ze hebben uitgevoerd, waardoor Vindplaats Vaak te vinden in documentkop tabellen zoals BKPF (veld USNAM - gebruikersnaam) of in wijzigingsdocument tabellen zoals CDHDR (veld USERNAME). Voorbeelden ABROWNCSMITHDJOHNSON | |||
| Bronsysteem SourceSystemId | Identificator voor de specifieke SAP S/4HANA `instance` of `client` waaruit de `data` werd geëxtraheerd. | ||
| Omschrijving Dit attribuut specificeert het bronsysteem van de data. In omgevingen met meerdere SAP-instanties (bijv. voor verschillende regio's of business units) is dit veld cruciaal voor het onderscheiden van databronnen. Het wordt primair gebruikt voor data governance, auditing en het waarborgen van data-integriteit. In analyse kan het worden gebruikt als een filter om processen tussen verschillende source systemen te vergelijken indien deze zijn gecombineerd in een enkel process mining model. Het belang Biedt essentiële Vindplaats Dit is typically metadata added during the data extraction process, often sourced from the system ID (SY-SYSID) or client (SY-MANDT) in SAP. Voorbeelden S4H_PROD_100S4H_QAS_200ECC_LEGACY_001 | |||
| Documentbedrag DocumentAmount | De totale waarde van de financiële boeking in de documentvaluta. | ||
| Omschrijving Dit attribuut vertegenwoordigt de monetaire waarde geassocieerd met een financieel document. Voor periode-einde aanpassingen kan dit het bedrag van de overlapping of correctie zijn die wordt geboekt. Het analyseren van het bedrag is nuttig voor materialiteitsbeoordelingen. Het stelt analisten in staat om het onderzoek naar hoogwaardige corrigerende boekingen te prioriteren, die een groter financieel risico kunnen vormen. Het kan worden gebruikt om de proceskaart te filteren en zich alleen te richten op transacties boven een bepaalde drempelwaarde, waardoor de weergave wordt vereenvoudigd tot de meest significante activiteiten. Het belang Voegt een financiële dimensie toe aan de analyse, waardoor problemen kunnen worden geprioriteerd op basis van monetaire impact en materialiteit. Vindplaats Deze value typically needs to be aggregated from line item tables like BSEG or ACDOCA (field WRBTR - Amount in document currency). Voorbeelden 15000.00250.75-500.00 | |||
| Documentvaluta DocumentCurrency | De valutacode voor de bedragen in het financiële document. | ||
| Omschrijving Dit attribuut specificeert de valuta waarin de transactie is vastgelegd, zoals USD, EUR of JPY. Het biedt essentiële context voor het In multinationale organisaties kan analyse per valuta belangrijk zijn. Het zorgt ervoor dat monetaire waarden correct worden geïnterpreteerd en is noodzakelijk voor elke conversie naar een enkele rapportagevaluta voor geaggregeerde analyse. Zonder deze context kunnen Het belang Biedt noodzakelijke context voor monetaire waarden, waardoor bedragen correct worden geïnterpreteerd, vooral in een multi-valuta omgeving. Vindplaats Bevindt zich in de financiële documentkop tabel BKPF (veld WAERS). Voorbeelden USDEURJPY | |||
| Is Geautomatiseerd IsAutomated | Een booleaanse vlag die aangeeft of de activiteit werd uitgevoerd door een systeemgebruiker of een geautomatiseerd proces. | ||
| Omschrijving Deze vlag onderscheidt taken die handmatig door een menselijke gebruiker worden uitgevoerd en taken die automatisch door het systeem worden uitgevoerd, zoals een geplande batchjob voor valutawaardering of geautomatiseerde vereffeningsruns. Het wordt typisch afgeleid op basis van de Dit attribuut is cruciaal voor het begrijpen van het niveau van automation in het afsluitingsproces. Het helpt kansen voor verdere automation te identificeren door handmatige taken met een hoog volume te benadrukken. Het wordt ook gebruikt in oorzakenanalyse om te zien of knelpunten optreden in handmatige of automated stappen. Het belang Onderscheidt menselijke en systeemactiviteiten, wat cruciaal is voor het identificeren van automatiseringskansen en het analyseren van de efficiëntie van beide. Vindplaats Dit is een afgeleid attribuut, vaak gebaseerd op een regel toegepast op het 'ResponsibleUser' field (bijv. controleren op systeem- of batch user IDs zoals 'BATCHUSER') of de Transaction Code. Voorbeelden truefalse | |||
| Is Op Tijd IsOnTime | Een booleaanse vlag die 'waar' is als een mijlpaal op of vóór de streefdatum is voltooid. | ||
| Omschrijving Dit attribuut biedt een eenvoudige binaire uitkomst voor schema-naleving. Het wordt berekend door de Dit is de kernberekening achter de 'Financial Statement On-Time Rate' KPI. Het vereenvoudigt performance tracking door datumvergelijkingen om te zetten in een duidelijke 'op tijd' of 'te laat' status, die gemakkelijk kan worden gevisualiseerd in dashboards en rapporten. Het helpt de effectiviteit te meten van initiatieven gericht op het versnellen van de afsluiting. Het belang Vereenvoudigt de analyse van deadline-naleving tot een duidelijke succes- of faaluitkomst, waardoor het gemakkelijk is om de tijdige prestaties te volgen en te rapporteren. Vindplaats Calculated field: Voorbeelden truefalse | |||
| Is Reconciliatie Herstelwerk IsReconciliationRework | Een booleaanse vlag die 'waar' is als een reconciliatieactiviteit wordt gevolgd door een afwijzing of verdere aanpassingen. | ||
| Omschrijving Dit berekende attribuut identificeert gevallen van herwerk binnen het afstemmingssubproces. De logica vlagt activiteiten of cases waarbij een afstemming wordt afgewezen, opnieuw wordt geopend nadat deze was ingediend, of waarbij corrigerende boekingen worden geboekt nadat een afstemming zogenaamd was voltooid voor een GL-rekening. Deze vlag is specifiek ontworpen om het 'Reconciliation Rework Analysis' dashboard en de 'Reconciliation Rework Rate' KPI aan te drijven. Het transformeert complexe processequenties in een eenvoudig, meetbaar attribuut dat de omvang van herwerk kwantificeert, waardoor teams zich kunnen richten op het verbeteren van first-time quality. Het belang Kwantificeert direct herstelwerk, een belangrijke vorm van procesinefficiëntie, waardoor gerichte analyse en verbeteringsinspanningen voor reconciliatiekwaliteit mogelijk zijn. Vindplaats Berekend op basis van de opeenvolging van activiteiten. Bijvoorbeeld, een vlag wordt op 'waar' gezet als de sequentie 'Reconciliatie Goedgekeurd' wordt gevolgd door 'Correctiejournaalboeking geboekt' voor dezelfde grootboekrekening binnen dezelfde periode. Voorbeelden truefalse | |||
| Journaalpost Type JournalEntryType | Het type financieel document dat wordt geboekt, waarbij standaard boekingen, overlappingen en aanpassingen worden onderscheiden. | ||
| Omschrijving Het journaalposttype, of documenttype in SAP-terminologie, is een sleutel die boekhoudkundige documenten classificeert. Het bepaalt naar welke rekeningtypen een document kan worden geboekt en wordt gebruikt om verschillende zakelijke transacties te onderscheiden, zoals een leveranciersfactuur (KR), een grootboekboeking (SA) of een klantbetaling (DZ). In de context van de periodeafsluiting is dit attribuut cruciaal voor het isoleren van specifieke typen activiteiten. Het stelt analisten bijvoorbeeld in staat zich te richten op corrigerende journaalboekingen ter ondersteuning van het 'Adjusting Journal Entry Analysis' dashboard en de 'Adjusting Journal Entries Count' KPI. Het helpt ook bij het berekenen van de 'Manual Postings Ratio'. Het belang Categoriseert financiële transacties, waardoor analyse zich kan richten op specifieke soorten boekingen, zoals handmatige correcties, die cruciaal zijn voor een soepele periodieke afsluiting. Vindplaats Dit is een standaard field in de financiële documentheader tabel BKPF (field BLART). Voorbeelden SAKRAB | |||
| Laatste data-update LastDataUpdate | De timestamp die aangeeft wanneer de data voor het laatst is ververst of uit het bronsysteem is geëxtraheerd. | ||
| Omschrijving Dit attribuut registreert de datum en tijd van de meest recente data-extractie. Het biedt context over de actualiteit van de data die wordt geanalyseerd in de process mining tool. Het primaire doel ervan is voor data governance en gebruikersbewustzijn. Dashboard-kijkers kunnen zien hoe actueel de analyse is, wat vooral belangrijk is voor near-real-time monitoring dashboards zoals het 'Current Period Close Status' dashboard. Het helpt gebruikers te begrijpen of ze naar data van vandaag, gisteren of vorige week kijken. Het belang Informeert gebruikers over de actualiteit van de Vindplaats Dit zijn metadata gegenereerd en gestempeld op de dataset door de data-extractie- of ETL tool op het moment van execution. Voorbeelden 2024-06-10T08:00:00Z2024-06-09T08:00:00Z | |||
| Period Close Cycle Time PeriodCloseCycleTime | De totale tijd die nodig is voor een financiële periode, van de eerste activiteit tot de laatste. | ||
| Omschrijving Deze metric represents de end-to-end duration of the periodeafsluitingsproces for a single case (Financial Period). It is calculated as the difference between the timestamp of the very last activity and the very first activity within that period. Dit is a primary key performance indicator, directly supporting the 'Period Close Cycle Time Overview' dashboard and the 'Average Period Close Cycle Time' KPI. Het provides a high-level measure of the overall efficiency and speed of the afsluitingsproces, allowing for comparisons in de loop der tijd and benchmarking between different company codes. Het belang Vertegenwoordigt de primaire KPI voor de totale procesduur, waardoor efficiëntieverbeteringen in de loop der tijd op high-level gevolgd kunnen worden. Vindplaats Berekend op Voorbeelden P5D10H30MP7D2HP6D | |||
| Transactiecode TransactionCode | De SAP transactiecode (T-code) die wordt gebruikt om de activiteit uit te voeren. | ||
| Omschrijving Een transactiecode is een snelkoppeling voor het starten van een specifieke functie of programma in SAP. Bijvoorbeeld, FB01 wordt gebruikt voor het boeken van een document, en FAGLB03 voor het weergeven van grootboekrekeningsaldi. De T-code biedt vaak een duidelijke technische indicator van de uitgevoerde activiteit. Dit attribuut helpt bij het creëren van de activiteitsdefinities voor het procesmodel. Het is een betrouwbare manier om onderscheid te maken tussen geautomatiseerde en handmatige activiteiten en om precies te begrijpen hoe een taak in het systeem werd uitgevoerd. Het analyseren van T-codes kan niet-standaard of inefficiënte methoden onthullen die door medewerkers worden gebruikt. Het belang Biedt een technisch, systeemniveau overzicht van hoe een activiteit werd uitgevoerd, wat nuttig is voor het identificeren van handmatige versus geautomatiseerde stappen en niet-standaard procedures. Vindplaats Te vinden in de financiële documentkop tabel BKPF (veld TCODE) of in Voorbeelden FB01FAGL_FCVF.13 | |||
| Werkelijke voltooiingsdatum ActualCompletionDate | De feitelijke datum waarop een belangrijke activiteit of de gehele periodeafsluiting werd voltooid. | ||
| Omschrijving Dit attribuut legt de feitelijke voltooiingsdatum van een belangrijke mijlpaal vast. Het is de timestamp van de definitieve goedkeuring voor financiële overzichten of het afsluiten van de boekingsperiode. Het is de tegenhanger van Het belang Biedt de feitelijke timing van mijlpalen, wat nodig is om prestaties te meten tegen geplande deadlines en vertragingen te analyseren. Vindplaats Afkomstig van de EventTime van de laatste activiteit in een reeks, zoals 'Financiële overzichten goedgekeurd' of 'Periode afgesloten voor boeking'. Voorbeelden 2024-01-06T10:00:00Z2024-04-05T17:00:00Z2024-07-04T11:00:00Z | |||
Record to Report - Periodesluiting & Afstemmingsactiviteiten
| Activiteit | Omschrijving | ||
|---|---|---|---|
| Account Reconciliation Gestart | Markeert het begin van het handmatige of semi-geautomatiseerde proces van het onderbouwen van grootboekrekeningsaldi. Dit wordt afgeleid wanneer de status van een reconciliatie verandert van 'Nieuw' naar 'In Progress' of wanneer de eerste actie van de opsteller wordt gelogd. | ||
| Het belang Dit is een key milestone voor het begrijpen van de duur en inspanning die gepaard gaat met balanssubstantiëring. Het helpt identificeren welke accounts of departments hun afstemmingen laat starten. Vindplaats Dit event wordt typisch vastgelegd vanuit een specifieke afstemmingstool zoals SAP Account Substantiation en Automation by BlackLine of andere third-party systemen. Het wordt afgeleid uit statuswijzigings-timestamps. Vastleggen Track the timestamp of the first status change from a 'Not Started' state for a given GL account afstemming. Gebeurtenistype inferred | |||
| Corrigerende Journaalpost Geboekt | Vertegenwoordigt een correctiejournaalboeking die is gemaakt nadat de initiële reconciliaties zijn uitgevoerd, meestal om discrepanties op te lossen die tijdens het reviewproces zijn gevonden. Dit is een expliciete transactie die in het grootboek is geboekt. | ||
| Het belang Een hoge frequentie van correctieboekingen duidt op een slechte 'first-time quality' in upstream-processen of reconciliaties. Het analyseren van deze boekingen is essentieel voor het identificeren van hoofdoorzaken van fouten en het verminderen van herstelwerk. Vindplaats Vastgelegd als expliciete documenten in tabellen ACDOCA en BKPF. Ze kunnen worden geïdentificeerd aan de hand van specifieke documenttypen, boekingsdatums laat in de afsluitingscyclus, of specifieke tekstbeschrijvingen. Vastleggen Filter journaalboekingen in BKPF op basis van een combinatie van documenttype en boekingsdatum ten opzichte van reconciliatieactiviteiten. Gebeurtenistype explicit | |||
| Financiële Overzichten Gecreëerd | Deze activiteit markeert de creatie van de officiële financiële overzichten, zoals de Balans en Winst- en Verliesrekening. Het vertegenwoordigt de culminatie van de periode-einde boekhoud- en consolidatieprocessen. | ||
| Het belang Dit is een major milestone in de Van Registratie tot Rapportage cyclus. De timing ervan is critical voor het meeting reporting deadlines en providing timely information to stakeholders. Vindplaats Wordt het beste vastgelegd via een financiële afsluitingsbeheertool zoals SAP Financial Closing Cockpit, waar het een expliciete taak is. Anders moet het worden afgeleid uit Vastleggen Track the completion status of the 'Generate Financial Statements' task in a closing tool of analyze report execution logs. Gebeurtenistype inferred | |||
| Intercompany Reconciliatie gestart | Deze activiteit markeert het begin van het proces om transacties tussen verschillende company codes binnen dezelfde bedrijfsgroep te matchen en af te stemmen. Dit wordt vaak geïnitieerd door een afstemmingsjob uit te voeren of een nieuwe afstemmingscase aan te maken in SAP's ICMR tool. | ||
| Het belang Intercompany-reconciliatie is vaak complex en tijdrovend. Het analyseren van de duur en flow is cruciaal voor het stroomlijnen van de groepsafsluiting en het waarborgen van nauwkeurige geconsolideerde financiën. Vindplaats Afgeleid uit statuswijzigingen binnen de SAP Intercompany Matching and Reconciliation (ICMR) module of uit het aanmaken van de eerste reconciliatiedocumenten voor de periode. Vastleggen Track the creation date or status change timestamp for afstemmingseenheden within the ICMR tool for the given period. Gebeurtenistype inferred | |||
| Periode afgesloten voor boeking | Dit is de final activiteit in de cycle, where de posting period is formally closed to prevent any further transactions. Deze action ensures the integrity of the data for de finalized financial reports. | ||
| Het belang Deze activiteit dient als de definitieve eind-event voor het proces. Het is essentieel voor het berekenen van de totale periodeafsluitingscyclustijd en het analyseren van procesvoltooiingstrends. Vindplaats Vergelijkbaar met het openen van een periode, wordt dit event vastgelegd uit wijzigingsdocumenten (tabellen CDHDR en CDPOS) die updates naar de boekingsperiode controletabel T001B loggen via transactie OB52. Vastleggen Filter Gebeurtenistype explicit | |||
| Periode geopend voor boeking | Dit marks the start of de financial period, where posting periods are opened for transaction recording. Dit is an explicit, logged configuration change performed by a finance administrator in SAP, allowing journal entries for de new period. | ||
| Het belang Deze activiteit dient als de primaire start-event voor het periode-einde afsluitingsproces. Het maakt de accurate meting van de totale cyclustijd mogelijk en biedt een duidelijk begin voor procesanalyse. Vindplaats Dit event wordt vastgelegd uit wijzigingsdocumenten (tabellen CDHDR en CDPOS) die wijzigingen in de boekingsperiode controletabel T001B loggen, typisch uitgevoerd via transactie OB52. Vastleggen Filter Gebeurtenistype explicit | |||
| Rekeningafstemming Goedgekeurd | Deze activiteit duidt op de definitieve goedkeuring van een GL rekeningafstemming, wat bevestigt dat het saldo is gesubstantieerd en eventuele problemen zijn opgelost. Dit wordt afgeleid uit een statuswijziging naar 'Goedgekeurd' in een afstemmingstool. | ||
| Het belang Deze milestone marks the completion of a critical control activity. Tracking approval times helps identify knelpunten in the review process and is essential for measuring herwerk and first-pass yield. Vindplaats Vastgelegd vanuit een reconciliatiebeheersysteem, zoals SAP Account Substantiation and Automation, door de Vastleggen Identificeer de Gebeurtenistype inferred | |||
| Consolidatietaken Uitgevoerd | Vertegenwoordigt de uitvoering van consolidatieactiviteiten binnen SAP Group Reporting, zoals valutaconversie, herclassificatie en eliminatie van intragroepswinsten. Deze taken worden doorgaans beheerd en gelogd in de consolidatiemonitor. | ||
| Het belang Voor organisaties met meerdere juridische entiteiten is het consolidatieproces een Vindplaats Vastgelegd uit de statuslogs binnen de Data Monitor of Consolidation Monitor in SAP S/4HANA voor Group Reporting. Elke taak heeft doorgaans een gebruiker, Vastleggen Extraheer taakuitvoeringslogs uit de onderliggende tabellen van de Group Reporting consolidatiemonitor. Gebeurtenistype explicit | |||
| Financiële Overzichten Goedgekeurd | Vertegenwoordigt de definitieve goedkeuring van de financiële overzichten door bevoegd management voordat deze worden gepubliceerd. Dit is vaak een offline proces, maar kan worden vastgelegd indien er een formele digitale goedkeuringsstap bestaat. | ||
| Het belang Dit is de final quality and control gate. Tracking its timing is essential for understanding adherence to reporting deadlines en de overall efficiency of the management review cycle. Vindplaats Dit event wordt vastgelegd als er een workflow of statusveld bestaat voor overzichtsgoedkeuring, bijvoorbeeld binnen SAP Financial Closing Cockpit of een documentbeheersysteem. Vastleggen Identificeer een Gebeurtenistype inferred | |||
| Geautomatiseerde verrekening uitgevoerd | Vertegenwoordigt de uitvoering van geautomatiseerde vereffeningsprogramma's in SAP, zoals de GR/IR (Goods Receipt/Invoice Receipt) vereffeningsrun. Deze jobs matchen en vereffenen openstaande posten op specifieke GL-rekeningen, wat de handmatige afstemmingsinspanning vermindert. | ||
| Het belang Deze activiteit benadrukt het niveau van automation in het afstemmingsproces. Falen of uitzonderingen in deze runs kunnen leiden tot significant handmatig werk en vertragingen. Vindplaats Vastgelegd uit de uitvoeringslogs van specifieke Vastleggen Monitor de start- en eind- Gebeurtenistype explicit | |||
| Overlopende posten en voorzieningen geboekt | Dit event legt de creatie vast van handmatige journaalposten voor overlappingen, uitstelposten en andere voorzieningen die nodig zijn voor accurate financiële rapportage onder het voorzieningenstelsel van boekhouding. Dit zijn expliciete transacties die naar het Grootboek zijn geboekt. | ||
| Het belang Het bijhouden van deze boekingen helpt bij het analyseren van de omvang en timing van handmatige correcties. Een hoog volume kan wijzen op kansen voor automatisering of verbetering van voorliggende processen. Vindplaats Vastgelegd als expliciete journaalboekingen in de universele journaaltabel ACDOCA en kopteksttabel BKPF. Deze boekingen kunnen worden geïdentificeerd aan de hand van specifieke documenttypen die zijn geconfigureerd voor overlopende posten. Vastleggen Filter documenten in tabel BKPF op documenttype (bijv. 'SA' of aangepaste typen) en boekingsdatum binnen de periode. Gebeurtenistype explicit | |||
| Proef- en Saldibalans Opgesteld | Geeft aan dat een proefbalans is gegenereerd en opgeslagen voor controle, dienend als een belangrijk controlepunt voordat de definitieve financiële overzichten worden opgesteld. Het vastleggen van deze `event` berust vaak op procedures waarbij de rapportuitvoer wordt opgeslagen. | ||
| Het belang De voorbereiding van de proefbalans is een cruciale kwaliteitspoort. Het analyseren van de timing ervan helpt de gereedheid voor definitieve rapportage te begrijpen en kan vertragingen in voorafgaande activiteiten aan het licht brengen. Vindplaats Dit is often not an explicit event. Het kan worden afgeleid uit de uitvoering van een specifieke reporting transaction if variants are saved met user en date stamps, of if the process is managed in a tool like SAP Financial Closing Cockpit. Vastleggen Vereist systeemanalyse om te bepalen of er een betrouwbaar registratiemechanisme bestaat, zoals uitvoerlogs van rapporten of closing cockpit taaklijsten. Gebeurtenistype inferred | |||
| Subledger Data Overdracht Voltooid | Vertegenwoordigt de voltooiing van batchjobs die samengevatte data overdragen van subgrootboeken, zoals Debiteuren, Crediteuren en Vaste Activa, naar het Grootboek. Dit zorgt ervoor dat alle onderliggende operationele transacties zijn weerspiegeld in het GL voordat de afsluitingsprocedures beginnen. | ||
| Het belang Vertragingen in de afsluiting van subgrootboeken kunnen een belangrijk knelpunt vormen voor het algehele proces. Het volgen van deze activiteit helpt inefficiënties te identificeren in Vindplaats Afgeleid uit de succesvolle voltooiingsstatus van specifieke Vastleggen Identificeer en monitor de Gebeurtenistype explicit | |||
| Valutawaarderun | Dit is een standaard maandafsluitingsprocedure om openstaande posten en saldi in vreemde valuta te herwaarderen op basis van de periode-einde wisselkoersen. De uitvoering van dit programma boekt de resulterende waarderingsverschillen. | ||
| Het belang Zorgt voor Vindplaats Vastgelegd uit de uitvoeringslogs van het programma voor de waardering van vreemde valuta (bijv. FAGL_FCV). Vastleggen Monitor de uitvoeringslogs voor Gebeurtenistype explicit | |||
Extractie Guides
Stappen
- Identificeer en verifieer CDS Views: Log in op uw SAP S/4HANA-systeem via SAP HANA Studio of Eclipse met ADT. Gebruik de ABAP Development Tools om de in de query genoemde standaard CDS views, zoals I_JournalEntryItem, I_BatchJob en I_ConsolidationTaskLog, te zoeken en hun bestaan te verifiëren. Voor processen zoals Account Reconciliation moet u mogelijk aangepaste CDS views aanmaken, bijvoorbeeld Z_I_ACCOUNTRECONCILIATION, om statuswijzigingen vast te leggen.
- Exposeer CDS Views via OData: Gebruik in de SAP backend transactie
SEGW(Gateway Service Builder) om een nieuw project aan te maken. Klik met de rechtermuisknop op de map Data Model en selecteer 'Reference -> Data Source'. Voeg de vereiste CDS views toe. Genereer deruntime objectsom een OData service te creëren die deze views voor extern gebruik beschikbaar maakt. - Activeer OData Service: Ga naar transactie
/IWFND/MAINT_SERVICEop de SAP Gateway hub. Klik op 'Add Service', zoek de service die u in de vorige stap hebt gegenereerd, en voeg deze toe. Dit maakt de service actief en beschikbaar voor querying. - Leg dataverbindingen tot stand: Leg vanuit uw gekozen data-extractietool (zoals Python, Power BI, of een toegewijd ETL platform) een verbinding met de nieuw gecreëerde OData service. U heeft de service URL en de juiste inloggegevens met autorisatie nodig om toegang te krijgen tot de CDS views.
- Pas de query aan en voer deze uit: Kopieer de geleverde
SQL query. Pas de placeholder-waarden aan voor datumbereiken, bedrijfscodes en eventuele aangepaste CDS view- of batch job-namen om deze af te stemmen op uw specifieke SAP-omgeving. Voer de query uit tegen het OData service endpoint. Merk op dat OData een andere syntax ($filter, $select) gebruikt, dus het kan nodig zijn de logica van de UNION ALL query te vertalen naar een reeks afzonderlijke API calls, één voor elke activiteit. - Consolideer activiteitendata: Aangezien OData doorgaans geen complexe UNION ALL queries direct in één enkele call ondersteunt, zult u een afzonderlijke request uitvoeren voor elk activiteitsblok in de query. Consolideer de resultaten van alle requests in één dataset of tabel binnen uw client tool.
- Transformeer en reinig data: Controleer de geconsolideerde data. Zorg ervoor dat de kolommen
EventTimeenEndTimeeen consistentetimestampindeling hebben. Controleer ofFinancialPeriodcorrect is geformatteerd als 'JJJJ-MM'. Behandel eventueleNULL valuesin kolommen zoalsResponsibleUserofDocumentNumberindien nodig. - Exporteer als Event Log: Exporteer de definitieve, geconsolideerde dataset naar een CSV-bestand. Zorg ervoor dat de kolomkoppen overeenkomen met de vereiste
attributes:FinancialPeriod,ActivityName,EventTime,EndTime,ResponsibleUser, etc. Dit bestand is nu klaar om te worden geüpload naar ProcessMind.
Configuratie
- CDS Views: De query is gebaseerd op een combinatie van standaard en aangepaste CDS views. Standaard views zoals
I_JournalEntryItem(voor journaalboekingen) enI_BatchJob(voor geautomatiseerde runs) zijn essentieel. Aangepaste views, zoalsZ_I_ACCOUNTRECONCILIATION, zijn vaak nodig om de status van interne processen vast te leggen die niet door standaard views worden gedekt. - Datumbereik: Definieer een specifiek datumbereik voor de extractie om het datavolume te beheren. De query gebruikt placeholders
[Start Date]en[End Date]die doorgaans een periode van 3 tot 6 volledige fiscale periodes moeten omvatten voor een zinvolle analyse. - Belangrijke filters: Filteren is cruciaal voor prestaties en relevantie. Filter altijd op
CompanyCode. Andere belangrijke filters zijnLedger(bijv. '0L' voor het leidende grootboek),FiscalYear, en specifiekeDocumentType-waarden om onderscheid te maken tussen reguliere boekingen, overlopende posten en correcties. - Vereisten: De gebruiker die de extractie uitvoert, heeft autorisaties in SAP nodig om toegang te krijgen tot de gespecificeerde CDS views en OData services uit te voeren (bijv. autorisatieobjecten
S_SERVICE,S_RFC). SAP Gateway services moeten worden geconfigureerd en geactiveerd. - Prestaties: Het opvragen van
I_JournalEntryItemkan prestatie-intensief zijn. Pas altijd selectieve filters toe, vooral op datums, bedrijfscodes en grootboeken. Overweeg de extractie buiten piekuren uit te voeren of een incrementele laadstrategie te gebruiken voor continue monitoring.
a Voorbeeldquery sql
SELECT
CONCAT(CAST(PostingDate AS DATE FORMAT 'YYYY'), '-', CAST(PostingDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Period Opened For Posting' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_FinPostingPeriodControl -- This is a proxy; this activity is a configuration change often found in change logs (CDHDR/CDPOS for table T001B)
WHERE PostingPeriodVariant = '[Your Variant]' AND FiscalYear = '[Your Fiscal Year]' AND FromPostingPeriod = 1 AND AuthorizationGroup IS NOT NULL -- Logic to detect the opening event
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod, -- Infer period from Job Name if patterned, otherwise use job start date
'Subledger Data Transfer Completed' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Subledger Job Prefix]%' AND JobStatus = 'F' -- 'F' for Finished
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(CAST(CreationDate AS DATE FORMAT 'YYYY'), '-', CAST(CreationDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Intercompany Reconciliation Started' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
NULL AS EndTime,
CreatedByUser AS ResponsibleUser,
LeadingCompanyCode AS CompanyCode,
NULL AS GlAccountNumber,
ReconciliationCase AS DocumentNumber,
ReconciliationCaseStatus AS ReconciliationStatus,
NULL AS TargetCompletionDate,
NULL AS ProcessingTime
FROM I_ICRcnCase -- Part of SAP S/4HANA for group reporting
WHERE CreationDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Accruals And Provisions Posted' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
AccountingDocument AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_JournalEntryItem
WHERE DocumentType IN ('[Accrual Doc Type 1]', '[Accrual Doc Type 2]') -- e.g., 'SA', 'AC'
AND PostingDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Automated Clearing Run Executed' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE 'SAPF124%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Foreign Currency Valuation Run' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE 'FAGL_FCV%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- This activity often requires a custom view on a custom table or an add-on like SAP Account Substantiation and Automation.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Account Reconciliation Started' AS ActivityName,
CAST(ChangedAt AS TIMESTAMP) AS EventTime,
NULL AS EndTime,
ChangedBy AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
ReconciliationID AS DocumentNumber,
'In Progress' AS ReconciliationStatus,
PlannedCompletionDate AS TargetCompletionDate,
NULL AS ProcessingTime
FROM Z_I_ACCOUNTRECONCILIATION -- Placeholder for your custom reconciliation status view
WHERE Status = 'IN_PROGRESS' AND OldStatus = 'NEW'
AND ChangeDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Adjusting Journal Entry Posted' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
AccountingDocument AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_JournalEntryItem
WHERE DocumentType IN ('[Adjustment Doc Type 1]', '[Adjustment Doc Type 2]') -- e.g., 'AJ'
AND PostingDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- This activity often requires a custom view on a custom table or an add-on product.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Account Reconciliation Approved' AS ActivityName,
CAST(ChangedAt AS TIMESTAMP) AS EventTime,
CAST(ChangedAt AS TIMESTAMP) AS EndTime,
ApprovedBy AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
ReconciliationID AS DocumentNumber,
'Approved' AS ReconciliationStatus,
PlannedCompletionDate AS TargetCompletionDate,
NULL AS ProcessingTime
FROM Z_I_ACCOUNTRECONCILIATION -- Placeholder for your custom reconciliation status view
WHERE Status = 'APPROVED'
AND ChangeDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Consolidation Tasks Executed' AS ActivityName,
CAST(TaskExecutionUTCTimestamp AS TIMESTAMP) AS EventTime,
CAST(TaskCompletionUTCTimestamp AS TIMESTAMP) AS EndTime,
ExecutedByUser AS ResponsibleUser,
ConsolidationUnitCompanyCode AS CompanyCode, -- Assuming mapping exists
NULL AS GlAccountNumber,
DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(TaskExecutionUTCTimestamp AS TIMESTAMP), CAST(TaskCompletionUTCTimestamp AS TIMESTAMP)) AS ProcessingTime
FROM I_ConsolidationTaskLog
WHERE ConsolidationTaskStatus = 'S' -- Successful
AND TaskExecutionUTCDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Trial Balance Prepared' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Trial Balance Job Prefix]%' AND JobStatus = 'F' -- Example: FAGL_TRIAL_BALANCE_RUN
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Financial Statements Generated' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Fin Statement Job Prefix]%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- Approval is often a manual step. This requires a custom solution to capture.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(ApprovalYear, '-', LPAD(ApprovalPeriod, 2, '0')) AS FinancialPeriod,
'Financial Statements Approved' AS ActivityName,
CAST(ApprovalTimestamp AS TIMESTAMP) AS EventTime,
CAST(ApprovalTimestamp AS TIMESTAMP) AS EndTime,
ApproverUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
FinancialStatementVersion AS DocumentNumber,
'Approved' AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM Z_I_FINSTATEMENTAPPROVAL -- Placeholder for custom approval tracking view
WHERE ApprovalDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(CAST(LastChangeDate AS DATE FORMAT 'YYYY'), '-', CAST(LastChangeDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Period Closed For Posting' AS ActivityName,
CAST(LastChangeDateTime AS TIMESTAMP) AS EventTime,
CAST(LastChangeDateTime AS TIMESTAMP) AS EndTime,
LastChangedByUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_FinPostingPeriodControl -- Proxy, see note on 'Period Opened'
WHERE PostingPeriodStatus = 'C' -- 'C' for Closed
AND LastChangeDate BETWEEN '[Start Date]' AND '[End Date]'; Stappen
- Identificeer en verifieer CDS Views: Log in op uw SAP S/4HANA-systeem via SAP HANA Studio of Eclipse met ADT. Gebruik de ABAP Development Tools om de in de query genoemde standaard CDS views, zoals I_JournalEntryItem, I_BatchJob en I_ConsolidationTaskLog, te zoeken en hun bestaan te verifiëren. Voor processen zoals Account Reconciliation moet u mogelijk aangepaste CDS views aanmaken, bijvoorbeeld Z_I_ACCOUNTRECONCILIATION, om statuswijzigingen vast te leggen.
- Exposeer CDS Views via OData: Gebruik in de SAP backend transactie
SEGW(Gateway Service Builder) om een nieuw project aan te maken. Klik met de rechtermuisknop op de map Data Model en selecteer 'Reference -> Data Source'. Voeg de vereiste CDS views toe. Genereer deruntime objectsom een OData service te creëren die deze views voor extern gebruik beschikbaar maakt. - Activeer OData Service: Ga naar transactie
/IWFND/MAINT_SERVICEop de SAP Gateway hub. Klik op 'Add Service', zoek de service die u in de vorige stap hebt gegenereerd, en voeg deze toe. Dit maakt de service actief en beschikbaar voor querying. - Leg dataverbindingen tot stand: Leg vanuit uw gekozen data-extractietool (zoals Python, Power BI, of een toegewijd ETL platform) een verbinding met de nieuw gecreëerde OData service. U heeft de service URL en de juiste inloggegevens met autorisatie nodig om toegang te krijgen tot de CDS views.
- Pas de query aan en voer deze uit: Kopieer de geleverde
SQL query. Pas de placeholder-waarden aan voor datumbereiken, bedrijfscodes en eventuele aangepaste CDS view- of batch job-namen om deze af te stemmen op uw specifieke SAP-omgeving. Voer de query uit tegen het OData service endpoint. Merk op dat OData een andere syntax ($filter, $select) gebruikt, dus het kan nodig zijn de logica van de UNION ALL query te vertalen naar een reeks afzonderlijke API calls, één voor elke activiteit. - Consolideer activiteitendata: Aangezien OData doorgaans geen complexe UNION ALL queries direct in één enkele call ondersteunt, zult u een afzonderlijke request uitvoeren voor elk activiteitsblok in de query. Consolideer de resultaten van alle requests in één dataset of tabel binnen uw client tool.
- Transformeer en reinig data: Controleer de geconsolideerde data. Zorg ervoor dat de kolommen
EventTimeenEndTimeeen consistentetimestampindeling hebben. Controleer ofFinancialPeriodcorrect is geformatteerd als 'JJJJ-MM'. Behandel eventueleNULL valuesin kolommen zoalsResponsibleUserofDocumentNumberindien nodig. - Exporteer als Event Log: Exporteer de definitieve, geconsolideerde dataset naar een CSV-bestand. Zorg ervoor dat de kolomkoppen overeenkomen met de vereiste
attributes:FinancialPeriod,ActivityName,EventTime,EndTime,ResponsibleUser, etc. Dit bestand is nu klaar om te worden geüpload naar ProcessMind.
Configuratie
- CDS Views: De query is gebaseerd op een combinatie van standaard en aangepaste CDS views. Standaard views zoals
I_JournalEntryItem(voor journaalboekingen) enI_BatchJob(voor geautomatiseerde runs) zijn essentieel. Aangepaste views, zoalsZ_I_ACCOUNTRECONCILIATION, zijn vaak nodig om de status van interne processen vast te leggen die niet door standaard views worden gedekt. - Datumbereik: Definieer een specifiek datumbereik voor de extractie om het datavolume te beheren. De query gebruikt placeholders
[Start Date]en[End Date]die doorgaans een periode van 3 tot 6 volledige fiscale periodes moeten omvatten voor een zinvolle analyse. - Belangrijke filters: Filteren is cruciaal voor prestaties en relevantie. Filter altijd op
CompanyCode. Andere belangrijke filters zijnLedger(bijv. '0L' voor het leidende grootboek),FiscalYear, en specifiekeDocumentType-waarden om onderscheid te maken tussen reguliere boekingen, overlopende posten en correcties. - Vereisten: De gebruiker die de extractie uitvoert, heeft autorisaties in SAP nodig om toegang te krijgen tot de gespecificeerde CDS views en OData services uit te voeren (bijv. autorisatieobjecten
S_SERVICE,S_RFC). SAP Gateway services moeten worden geconfigureerd en geactiveerd. - Prestaties: Het opvragen van
I_JournalEntryItemkan prestatie-intensief zijn. Pas altijd selectieve filters toe, vooral op datums, bedrijfscodes en grootboeken. Overweeg de extractie buiten piekuren uit te voeren of een incrementele laadstrategie te gebruiken voor continue monitoring.
a Voorbeeldquery sql
SELECT
CONCAT(CAST(PostingDate AS DATE FORMAT 'YYYY'), '-', CAST(PostingDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Period Opened For Posting' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_FinPostingPeriodControl -- This is a proxy; this activity is a configuration change often found in change logs (CDHDR/CDPOS for table T001B)
WHERE PostingPeriodVariant = '[Your Variant]' AND FiscalYear = '[Your Fiscal Year]' AND FromPostingPeriod = 1 AND AuthorizationGroup IS NOT NULL -- Logic to detect the opening event
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod, -- Infer period from Job Name if patterned, otherwise use job start date
'Subledger Data Transfer Completed' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Subledger Job Prefix]%' AND JobStatus = 'F' -- 'F' for Finished
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(CAST(CreationDate AS DATE FORMAT 'YYYY'), '-', CAST(CreationDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Intercompany Reconciliation Started' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
NULL AS EndTime,
CreatedByUser AS ResponsibleUser,
LeadingCompanyCode AS CompanyCode,
NULL AS GlAccountNumber,
ReconciliationCase AS DocumentNumber,
ReconciliationCaseStatus AS ReconciliationStatus,
NULL AS TargetCompletionDate,
NULL AS ProcessingTime
FROM I_ICRcnCase -- Part of SAP S/4HANA for group reporting
WHERE CreationDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Accruals And Provisions Posted' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
AccountingDocument AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_JournalEntryItem
WHERE DocumentType IN ('[Accrual Doc Type 1]', '[Accrual Doc Type 2]') -- e.g., 'SA', 'AC'
AND PostingDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Automated Clearing Run Executed' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE 'SAPF124%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Foreign Currency Valuation Run' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE 'FAGL_FCV%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- This activity often requires a custom view on a custom table or an add-on like SAP Account Substantiation and Automation.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Account Reconciliation Started' AS ActivityName,
CAST(ChangedAt AS TIMESTAMP) AS EventTime,
NULL AS EndTime,
ChangedBy AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
ReconciliationID AS DocumentNumber,
'In Progress' AS ReconciliationStatus,
PlannedCompletionDate AS TargetCompletionDate,
NULL AS ProcessingTime
FROM Z_I_ACCOUNTRECONCILIATION -- Placeholder for your custom reconciliation status view
WHERE Status = 'IN_PROGRESS' AND OldStatus = 'NEW'
AND ChangeDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Adjusting Journal Entry Posted' AS ActivityName,
CAST(CreationDateTime AS TIMESTAMP) AS EventTime,
CAST(CreationDateTime AS TIMESTAMP) AS EndTime,
CreatedByUser AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
AccountingDocument AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_JournalEntryItem
WHERE DocumentType IN ('[Adjustment Doc Type 1]', '[Adjustment Doc Type 2]') -- e.g., 'AJ'
AND PostingDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- This activity often requires a custom view on a custom table or an add-on product.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Account Reconciliation Approved' AS ActivityName,
CAST(ChangedAt AS TIMESTAMP) AS EventTime,
CAST(ChangedAt AS TIMESTAMP) AS EndTime,
ApprovedBy AS ResponsibleUser,
CompanyCode,
GLAccountNumber,
ReconciliationID AS DocumentNumber,
'Approved' AS ReconciliationStatus,
PlannedCompletionDate AS TargetCompletionDate,
NULL AS ProcessingTime
FROM Z_I_ACCOUNTRECONCILIATION -- Placeholder for your custom reconciliation status view
WHERE Status = 'APPROVED'
AND ChangeDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(FiscalYear, '-', LPAD(FiscalPeriod, 2, '0')) AS FinancialPeriod,
'Consolidation Tasks Executed' AS ActivityName,
CAST(TaskExecutionUTCTimestamp AS TIMESTAMP) AS EventTime,
CAST(TaskCompletionUTCTimestamp AS TIMESTAMP) AS EndTime,
ExecutedByUser AS ResponsibleUser,
ConsolidationUnitCompanyCode AS CompanyCode, -- Assuming mapping exists
NULL AS GlAccountNumber,
DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(TaskExecutionUTCTimestamp AS TIMESTAMP), CAST(TaskCompletionUTCTimestamp AS TIMESTAMP)) AS ProcessingTime
FROM I_ConsolidationTaskLog
WHERE ConsolidationTaskStatus = 'S' -- Successful
AND TaskExecutionUTCDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Trial Balance Prepared' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Trial Balance Job Prefix]%' AND JobStatus = 'F' -- Example: FAGL_TRIAL_BALANCE_RUN
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(SUBSTRING(JobName, STRPOS(JobName, '_') + 1, 4), '-', SUBSTRING(JobName, STRPOS(JobName, '_') + 5, 2)) AS FinancialPeriod,
'Financial Statements Generated' AS ActivityName,
CAST(JobStartDate || JobStartTime AS TIMESTAMP) AS EventTime,
CAST(JobEndDate || JobEndTime AS TIMESTAMP) AS EndTime,
JobCreatedByUser AS ResponsibleUser,
'[Configure based on your system]' AS CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
SECONDS_BETWEEN(CAST(JobStartDate || JobStartTime AS TIMESTAMP), CAST(JobEndDate || JobEndTime AS TIMESTAMP)) AS ProcessingTime
FROM I_BatchJob
WHERE JobName LIKE '[Fin Statement Job Prefix]%' AND JobStatus = 'F'
AND JobEndDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
-- Approval is often a manual step. This requires a custom solution to capture.
-- The following is a placeholder for such a custom view.
SELECT
CONCAT(ApprovalYear, '-', LPAD(ApprovalPeriod, 2, '0')) AS FinancialPeriod,
'Financial Statements Approved' AS ActivityName,
CAST(ApprovalTimestamp AS TIMESTAMP) AS EventTime,
CAST(ApprovalTimestamp AS TIMESTAMP) AS EndTime,
ApproverUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
FinancialStatementVersion AS DocumentNumber,
'Approved' AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM Z_I_FINSTATEMENTAPPROVAL -- Placeholder for custom approval tracking view
WHERE ApprovalDate BETWEEN '[Start Date]' AND '[End Date]'
UNION ALL
SELECT
CONCAT(CAST(LastChangeDate AS DATE FORMAT 'YYYY'), '-', CAST(LastChangeDate AS DATE FORMAT 'MM')) AS FinancialPeriod,
'Period Closed For Posting' AS ActivityName,
CAST(LastChangeDateTime AS TIMESTAMP) AS EventTime,
CAST(LastChangeDateTime AS TIMESTAMP) AS EndTime,
LastChangedByUser AS ResponsibleUser,
CompanyCode,
NULL AS GlAccountNumber,
NULL AS DocumentNumber,
NULL AS ReconciliationStatus,
NULL AS TargetCompletionDate,
0 AS ProcessingTime
FROM I_FinPostingPeriodControl -- Proxy, see note on 'Period Opened'
WHERE PostingPeriodStatus = 'C' -- 'C' for Closed
AND LastChangeDate BETWEEN '[Start Date]' AND '[End Date]';