Bérszámfejtési adatsablon
Bérszámfejtési adatsablon
- A bérszámfejtés elemzéséhez optimalizált adatmezők
- Részletes tevékenységkövetés a folyamat teljes életciklusának feltérképezéséhez
- Részletes adatkinyerési útmutató az Oracle HCM Cloud bérszámfejtéséhez
Bérszámfejtési attribútumok
| Név | Leírás | ||
|---|---|---|---|
| Bérszámfejtési rekord PayrollRecord | Egy adott bérszámfejtési időszakban a munkavállalót azonosító egyedi érték. | ||
| Leírás A bérszámfejtési rekord a folyamatbányászati elemzés központi esetazonosítója. Az alkalmazotti jogviszony azonosítóját és a bérszámfejtési időszak azonosítóját összefűző egyedi kulcs. Ez az attribútum egyetlen munkavállaló adott ciklushoz tartozó kifizetésének összes tevékenységét csoportosítja, a munkaidő-nyilvántartás beküldésétől a végső banki átutalásig és az adóbevallásig. Így az elemzés különbséget tud tenni ugyanazon munkavállaló januári és februári kifizetése között. Miért fontos? Case ID-ként szolgál, és az elemzéshez egyetlen folyamatpéldányba rendezi a különálló eseményeket. Hol szerezhető be? A PAY_ASSIGNMENT_ACTIONS táblából, vagy az Oracle HCM-ben a Person Number és a Payroll Period Name összekapcsolásával állítható elő. Példák EMP1001-2023-M01EMP5992-2023-W42300000018273645US-NY-A123-JAN23 | |||
| Esemény időbélyege EventTimestamp | A tevékenység pontos dátuma és időpontja. | ||
| Leírás Rögzíti, hogy pontosan mikor történt egy tevékenység. Ez szükséges az időtartamok és átfutási idők kiszámításához, valamint a szűk keresztmetszetek azonosításához. Automatizált lépéseknél ez a rendszer általi végrehajtás időpontja. Kézi lépéseknél, például jóváhagyásnál, a tranzakciós naplóban rögzített felhasználói művelet időbélyege. Miért fontos? Az események időrendi sorrendbe állításához és az időalapú KPI-k kiszámításához szükséges. Hol szerezhető be? A CREATION_DATE vagy ACTION_DATE oszlop a kapcsolódó tranzakciós táblákban, például a PAY_ACTION_INFORMATION táblában. Példák 2023-10-01T08:30:00Z2023-10-01T14:15:22Z2023-10-05T09:00:00Z | |||
| Forrásrendszer SourceSystem | A rendszer neve, amelyben az esemény történt. | ||
| Leírás Megadja, melyik szoftver vagy modul hozta létre az adatpontot. Ennél a folyamatnál az elsődleges érték: „Oracle HCM Cloud Payroll”. Összetett rendszerek esetén ez az érték megkülönböztetheti a központi bérszámfejtő motort, a munkaidő- és munkaerő-kezelő modult, illetve a külső banki interfészt. Miért fontos? Segít nyomon követni az adatok eredetét, különösen akkor, ha munkaidő-nyilvántartó vagy banki alrendszerek adatait integrálják. Hol szerezhető be? Az adatkinyerés során rögzítik, vagy az interfészazonosítók alapján határozzák meg. Példák Oracle HCM Cloud PayrollOracle Time and LaborKülső banki interfész | |||
| Tevékenység neve ActivityName | A bérszámfejtési ciklusban végrehajtott konkrét lépés vagy esemény. | ||
| Leírás Ez az attribútum a bérszámfejtési folyamatban bekövetkező esemény nevét rögzíti. Ilyen például a „Munkaidő-nyilvántartás beküldve”, a „Bérszámfejtési számítás elindítva” és a „Kifizetés végrehajtva”. Ez a folyamatfeltárás és a változatelemzés elsődleges dimenziója. Az Oracle HCM Cloudban gyakran a bérszámfejtési műveletek tábláiban szereplő Action Type vagy Action Status értékből származik. Miért fontos? Ez határozza meg, hogy mi történik a folyamatban, és lehetővé teszi a folyamattérkép rekonstruálását. Hol szerezhető be? A PAY_PAYROLL_ACTIONS tábla ACTION_TYPE kódjából vagy az auditnaplók állapotváltozásaiból származik. Példák Bérszámfejtési számítás elindítvaMunkaidő-nyilvántartás jóváhagyvaBanki átutalás előkészítveAuditkivétel jelölve | |||
| Utolsó adatfrissítés LastDataUpdate | Az időpont, amikor a rekordot utoljára módosították a forrásadatbázisban. | ||
| Leírás Jelzi, mennyire frissek az elemzéshez használt adatok. Ez nem azonos az esemény időbélyegével: azt mutatja, mikor dolgozta fel utoljára az adatbázis sorát egy ETL-folyamat vagy rendszerfrissítés. Segítségével ellenőrizhető az adatok aktualitása, és feltárhatók az adatkinyerés késedelmei. Miért fontos? Az elemzők így tudják, hogy valós idejű vagy elavult adatokat vizsgálnak. Hol szerezhető be? A LAST_UPDATE_DATE oszlop szinte minden Oracle HCM-táblában megtalálható. Példák 2023-10-02T12:00:00Z2023-10-06T01:00:00Z | |||
| Bércsoport PayGroup | A munkavállalók logikai csoportosítása a bérszámfejtéshez. | ||
| Leírás Megadja, melyik bérszámfejtési definícióhoz tartozik a munkavállaló, például „Heti, gyártás” vagy „Havi, vállalati”. Ez az attribútum szinte minden dashboardon fontos, mert lehetővé teszi a különböző bérszámfejtési ciklusok és gyakoriságok teljesítményének összehasonlítását. Miért fontos? Ez a fő konfigurációs objektum határozza meg a bérszámfejtés ütemezését. Hol szerezhető be? A PAY_ALL_PAYROLLS_F tábla (Payroll Name). Példák USA, havonta kétszerEgyesült Királyság, haviHeti, szakszervezeti | |||
| Bérszámfejtési időszak neve PayrollPeriodName | A bérszámfejtési ciklus időintervallumának neve. | ||
| Leírás Azonosítja az adott ciklust, például „2024. január, havi” vagy „42. heti időszak”. Ez az adat szükséges az „SLA-határidő betartásának figyelése” dashboardhoz. Segítségével az egyes munkavállalói esetek a megfelelő kötegelt futtatáshoz rendelhetők, így összesített jelentések készíthetők. Miért fontos? Alapvető adat a kötegelt feldolgozás elemzéséhez és az SLA-k követéséhez. Hol szerezhető be? A PAY_TIME_PERIODS tábla vagy a Payroll Definition Time Period Name mezője. Példák 2023. 10. havi2023. 42. heti2023. decemberi bónuszfuttatás | |||
| Bruttó bér összege GrossPayAmount | Az időszakra kiszámított teljes bruttó bér. | ||
| Leírás A ciklus során kiszámított bruttó bér pénzben kifejezett értéke. A „Adó- és juttatásszámítás pontossága”, valamint az „Ösztönzők integrációja” elemzéshez használható. Segítségével összevethető a nagy összegű kifizetések értéke a feldolgozási idővel vagy a hibaaránnyal. Miért fontos? Pénzügyi szemponttal egészíti ki a process mining elemzést. Hol szerezhető be? A PAY_RUN_RESULT_VALUES tábla, a Gross Pay egyenleg összesített értékével. Példák 5000.002350.5010000.00 | |||
| Feldolgozást végző felhasználó ProcessingUser | A tevékenységet végző személy felhasználói azonosítója vagy neve. | ||
| Leírás Rögzíti annak a bérszámfejtési szakértőnek, vezetőnek vagy rendszerfióknak az azonosítóját, amely elindította a tevékenységet. Ez az adat a „Bérszámfejtési szakértők munkaterhelésének megoszlása” dashboardhoz használható. Segít azonosítani a bérszámfejtő csapat erőforrásainak szűk keresztmetszeteit és a képzési igényeket. Miért fontos? Lehetővé teszi az erőforrások termelékenységének elemzését és a munkaterhelés kiegyensúlyozását. Hol szerezhető be? A tranzakciós táblák CREATED_BY vagy LAST_UPDATED_BY oszlopa. Példák sysadminj.smithpayroll_batch_userm.doe | |||
| Jogszabályi adatcsoport LegislativeDataGroup | Ország vagy szabályozási környezet szerint bontja a bérszámfejtési adatokat. | ||
| Leírás Az Oracle HCM Cloudban a Legislative Data Group (LDG) bontja ország vagy terület szerint a bérszámfejtési és kapcsolódó adatokat. Jellemzően egy ország vagy egy adott terület jogszabályainak felel meg. Ez az attribútum lehetővé teszi a folyamatelemzés ország szerinti szűrését, például az amerikai és a brit bérszámfejtés összehasonlítását. Gyakran az általános Country attribútumhoz rendelik. Miért fontos? A megfelelési szabályok és a folyamatmenetek joghatóságonként jelentősen eltérhetnek. Hol szerezhető be? A PAY_ALL_PAYROLLS_F tábla összekapcsolva a Legislative Data Group definícióival. Példák Amerikai jogszabályi adatcsoportBrit LDGFrancia bérszámfejtés | |||
| Kézi javítás történt IsManualCorrection | Jelzi, hogy a tevékenységhez kézi beavatkozásra volt-e szükség. | ||
| Leírás Logikai jelző, amelynek értéke true az olyan tevékenységeknél, mint az „Adatjavítás elvégezve” vagy a „Bérszámfejtési rekord javítva”. Ezzel számítható ki a „Kézi adatjavítási arány” és az „Első feldolgozásra pontos bérszámfejtés aránya” KPI. Miért fontos? Megkülönbözteti a teljesen automatizált feldolgozást a kézi utómunkától. Hol szerezhető be? A tevékenység nevéből vagy a módosítást jelző művelettípusokból származik, például QuickPay vagy Balance Adjustment. Példák truefalse | |||
| Részleg neve DepartmentName | Az a szervezeti egység, ahol a munkavállaló dolgozik. | ||
| Leírás Megadja, melyik részleg felel a bérszámfejtési rekordhoz tartozó munkavállalóért. Ez az attribútum fontos a „Munkaidő-nyilvántartások jóváhagyásának hatékonysága” dashboardhoz. A részleg szerinti bontásból kiderül, mely üzleti egységek hagyják rendszeresen késve jóvá a munkaidő-nyilvántartásokat, és ezzel késleltetik a teljes bérszámfejtést. Miért fontos? Segít feltárni a vezetői jóváhagyásokhoz kapcsolódó késések kiváltó okait. Hol szerezhető be? A munkavállaló bérszámfejtéskor érvényes hozzárendelési rekordjából származik. Példák Észak-amerikai értékesítésMérnökségHumánerőforrásLogisztika | |||
| SLA-feldolgozási határidő SlaProcessingDeadline | A célként megadott dátum és idő, ameddig a kifizetést végre kell hajtani. | ||
| Leírás A bérkifizetés szerződéses vagy jogszabályi határidejét tárolja. Ezt az attribútumot a „Kifizetés végrehajtva” időbélyeggel vetik össze. Az adatból számítható ki az „SLA-feldolgozási határidő betartása” KPI, és azonosíthatók a veszélyeztetett bércsoportok. Miért fontos? Ez a fő mérce annak megállapításához, hogy a folyamat időben teljesült-e. Hol szerezhető be? Általában a Payroll Definition konfigurált mezője (DFF), vagy a Check Date mínusz X nap alapján számítják ki. Példák 2023-10-28T17:00:00Z2023-11-30T17:00:00Z | |||
| Adózási joghatóság TaxJurisdiction | Az adóbevalláshoz tartozó állam, tartomány vagy település. | ||
| Leírás Megadja a bérszámfejtési rekordhoz tartozó elsődleges adóhatóságot, például „CA” Kalifornia vagy „NY” New York esetén. Ez az adat a „Adózási megfelelés feldolgozási ideje” dashboardhoz használható. Segít feltárni, hogy egyes régiókban összetettebb vagy lassabb-e az adó kiszámítása és bevallása. Miért fontos? A teljesítményt a szabályozási környezet összetettsége szerint bontja. Hol szerezhető be? A munkavállaló adózási adatlapjából vagy a munkahely címéből származik. Példák CA-KaliforniaNY-New YorkTX-TexasSzövetségi adózás, USA | |||
| Auditkivétel típusa AuditExceptionType | Az audit során jelzett hiba vagy figyelmeztetés kategóriája. | ||
| Leírás Kategorizálja az „Auditkivétel jelzése” tevékenység során talált konkrét problémát, például „Negatív nettó bér” vagy „Hiányzó adóazonosító”. Ez az attribútum segít azonosítani a gyakori adatminőségi problémákat az „Auditkivételek és javítások elemzése” dashboardon. Miért fontos? Nélkülözhetetlen az ismételt feldolgozási körök kiváltó okainak feltárásához. Hol szerezhető be? A bérszámfejtési folyamatnaplók vagy kivételjelentések Message vagy Error Code oszlopa. Példák Negatív nettó bérHiányzó SSNÉrvénytelen banki adatokTúllépte a túlórakeretet | |||
| Előnézeti iterációk száma PreviewIterationCount | Az eredmények véglegesítés előtti előnézeteinek száma. | ||
| Leírás Minden alkalommal eggyel nő a számláló, amikor ugyanahhoz az esethez „Bérszámfejtési eredmény előnézete” tevékenység tartozik. Ez az adat közvetlenül használható a „Bérszámfejtési előnézeti iterációk követése” dashboardon, és megmutatja, mennyi utómunkára vagy mérlegelésre volt szükség a jóváhagyás előtt. Miért fontos? Számszerűsíti az ellenőrzési szakasz hatékonyságát. Hol szerezhető be? Az adatátalakítás során, az egyes Case ID-khoz tartozó meghatározott tevékenységek előfordulásainak megszámlálásával számítják ki. Példák 1350 | |||
| Munkavállaló típusa EmployeeType | A munkavállaló besorolása, például havi béres, órabéres vagy szerződéses. | ||
| Leírás Besorolja a munkavállalói rekordot. Ez fontos a „Digitális bérjegyzék közzétételének késése” dashboardhoz, mert az egyes munkavállalótípusokra eltérő feldolgozási szabályok vagy sürgősségi szintek vonatkozhatnak. Segítségével a munkaerő különböző csoportjai között hasonlítható össze a folyamat teljesítménye. Miért fontos? A különböző munkavállalótípusok gyakran eltérő folyamatváltozatokat követnek. Hol szerezhető be? A PER_ALL_ASSIGNMENTS_M tábla hozzárendelési kategóriája vagy foglalkoztatási feltételei. Példák Teljes munkaidős, havi béresRészmunkaidős, órabéresSzerződéses munkavállalóVezető beosztású | |||
| SLA-állapot SlaStatus | Az SLA betartásának kategóriája (teljesült vagy elmaradt). | ||
| Leírás A „Kifizetés végrehajtva” időbélyeg és az „SLA-feldolgozási határidő” összevetésével határozzák meg. Az érték lehet például „Időben”, „Veszélyben” vagy „Határidőn túl”. Az esetek teljesítménykategóriákba sorolásával egyszerűbbé teszi a jelentéskészítést az „SLA-határidő betartásának figyelése” dashboardon. Miért fontos? A bonyolult időbeli összehasonlításokat könnyen értelmezhető, intézkedést segítő kategóriákká alakítja. Hol szerezhető be? Az esemény időbélyegét az SLA-határidővel összevető számítási logika. Példák TeljesültHatáridőn túlKözel a határidő túllépése | |||
| Visszamenőleges módosítás jelzője RetroactiveChangeFlag | Jelzi, hogy a bérszámfejtési futtatás tartalmaz-e visszamenőleges kifizetéseket. | ||
| Leírás Logikai jelző, amelynek értéke true, ha a rekordban „Retropay” elemeket dolgoznak fel. Ez segít megmagyarázni a hosszabb feldolgozási időt vagy az auditkivételeket a „Folyamatútvonal-változatok összehasonlítása” elemzésben. A visszamenőleges módosítások gyakran több korábbi időszakra kiterjedő, összetett újraszámítást indítanak el. Miért fontos? Azonosítja azokat az összetett eseteket, amelyek feldolgozása eleve több időt igényel. Hol szerezhető be? A PAY_ELEMENT_ENTRIES táblában szereplő „Retropay” elemek jelenléte. Példák truefalse | |||
Bérszámfejtési tevékenységek
| Tevékenység | Leírás | ||
|---|---|---|---|
| Banki átutalás előkészítve | Az EFT-fájl vagy más fizetési kimeneti fájl létrehozása. Ez a banki átutalási megbízásfájl technikai előállításának lépése. | ||
| Miért fontos? A fizetési fájl előállítási ciklusidejét méri. Az itt jelentkező késések miatt a banki befogadási határidő is elmaradhat. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke M (Magnetic Tape), E (EFT) vagy C (Check Writer). Rögzítés Az EFT- vagy csekkművelet befejezésekor rögzül Eseménytípus explicit | |||
| Bérszámfejtési számítás elindítva | A fő bérszámfejtési folyamat elindítása egy adott bérszámfejtési definícióhoz és időszakhoz. Ez jelzi az adatgyűjtés és a feldolgozás közötti átmenetet. | ||
| Miért fontos? Ezzel kezdődik az intenzív feldolgozási időszak. A technikai bérszámfejtés teljes ciklusidejének kiszámítására használható. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke R (Run) vagy Q (QuickPay), az ACTION_STATUS pedig started állapotú, vagy ezt a létrehozás dátuma alapján lehet megállapítani. Rögzítés A PAY_PAYROLL_ACTIONS rekord létrehozásakor rögzül Eseménytípus explicit | |||
| Bérszámfejtési számítás végrehajtva | A Calculate Payroll folyamat sikeres befejezése, beleértve a bruttó és nettó összeg kiszámítását. Ez az esemény jelzi, hogy a munkaviszonyhoz tartozó jövedelmeket, levonásokat és adókat kiszámították. | ||
| Miért fontos? Fontos mérföldkő, amely jelzi, hogy az adatok készen állnak az ellenőrzésre. A hosszú feldolgozási idő rendszerproblémára vagy összetett fast formulákra utalhat. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_REL_ACTIONS táblát a PAY_PAYROLL_ACTIONS táblával összekapcsolva, ahol az ACTION_TYPE értéke R vagy Q, az ACTION_STATUS pedig C (Complete) értékre változik. Rögzítés A bérszámfejtési futtatás művelet állapotának Complete értékre váltásakor rögzül Eseménytípus explicit | |||
| Előlegszámítás elvégezve | A Prepayments folyamat végrehajtása, amely a nettó fizetést a munkavállaló által választott fizetési módok között osztja fel, például csekkre vagy elektronikus átutalásra. Ezzel ellenőrizhető, hogy a kiszámított összegek ténylegesen kifizethetők-e. | ||
| Miért fontos? Ez köti össze a számítást a kifizetéssel. Az itt jelentkező hibák általában hiányzó banki adatokra vagy érvénytelen fizetési módokra utalnak. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke P (Prepayments), az állapot pedig Complete. Rögzítés A Prepayments művelet befejezésekor rögzül Eseménytípus explicit | |||
| Kifizetés végrehajtva | A végső megerősítés arról, hogy a kifizetés megtörtént. Az Oracle rendszerben ez a fizetési folyamat befejezésének vagy a Cash Management egyeztetésének felel meg. | ||
| Miért fontos? Az SLA-k betartásának méréséhez használt elsődleges időbélyeg. Ezzel állapítható meg, hogy a munkavállalók időben megkapták-e a fizetésüket. Hol szerezhető be? Megállapítható a banki átutalási művelet Effective Date értékéből, vagy közvetlenül a Cash Management egyeztetési naplóiból (CE_STATEMENT_LINES). Rögzítés A fizetési művelet érvényességi dátuma vagy az egyeztetési esemény alapján kerül naplózásra Eseménytípus explicit | |||
| Adóbevallás elkészült | A jogszabályban előírt adófájlok, például a harmadik félnek szóló negyedéves adófájl létrehozása. Ez biztosítja az adott bérszámfejtési időszakra vonatkozó jogszabályi megfelelést. | ||
| Miért fontos? Az adózási megfelelés feldolgozási idejét mérő KPI-hez szükséges. Ha ez a lépés nem sikerül, bírságot szabhatnak ki. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát az adóbevalláshoz kapcsolódó, adott jogszabályi adatcsoport műveleteihez, például az amerikai harmadik félnek szóló adóbevalláshoz. Rögzítés Az adott adóbevallási folyamat befejezésekor kerül naplózásra Eseménytípus explicit | |||
| Archív eredmények létrehozva | Az Archive Periodic Payroll Results folyamat befejezése. Ez a pillanatkép rögzíti az adatokat a jelentések és a bérjegyzékek elkészítéséhez. | ||
| Miért fontos? A bérjegyzékek és a jogszabályban előírt jelentések elkészítésének technikai feltétele. Megerősíti, hogy az adatok véglegesek. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke X (Archive), az állapot pedig Complete. Rögzítés Az Archive művelet befejezésekor rögzül Eseménytípus explicit | |||
| Auditkivétel jelölve | Hiba- vagy figyelmeztető üzenet rögzítése a bérszámfejtés számítási vagy ellenőrzési szakaszában. Az esemény az emberi beavatkozást igénylő konkrét ellenőrzési hibákat rögzíti. | ||
| Miért fontos? Az adatminőségi problémák feltárásához szükséges. A sok kivétel növeli a kézi munkát és az SLA megsértésének kockázatát. Hol szerezhető be? Kérdezze le a PAY_MESSAGE_LINES táblát a megfelelő PAY_PAYROLL_REL_ACTION_ID alapján. Ez a tábla tárolja a futtatások során keletkezett hibákat és figyelmeztetéseket. Rögzítés A PAY_MESSAGE_LINES táblába kerülő rekord létrehozásakor rögzül Eseménytípus explicit | |||
| Bérjegyzék közzétéve | Ekkor válik láthatóvá a bérjegyzék a munkavállaló számára a Self Service felületen. Ez az Archiver folyamat, illetve adott esetben a külön Generate Payslip folyamat után történik. | ||
| Miért fontos? Hatással van a munkavállalói elégedettségre. Ha a kifizetés és a bérjegyzék elérhetővé válása között sok idő telik el, az ügyfélszolgálathoz fordulnak. Hol szerezhető be? Kérdezze le a Documents of Record táblát (HR_DOCUMENTS_OF_RECORD), vagy ellenőrizze a Generate Payslip folyamat befejezését a PAY_PAYROLL_ACTIONS táblában. Rögzítés A bérjegyzék PDF-fájljának létrehozásakor kerül naplózásra Eseménytípus explicit | |||
| Bérszámfejtési futtatás jóváhagyva | A bérjegyzék vagy a folyamat hivatalos jóváhagyása a Payroll Dashboard felületén. Ez általában az ellenőrzési jelentések áttekintése után, a banki fájlok létrehozása előtt történik. | ||
| Miért fontos? A vezetői jóváhagyást jelzi. A számítás és a jóváhagyás közötti idő az ellenőrzésre rendelkezésre álló időszak. Hol szerezhető be? Kérdezze le a PAY_REQ_FLOW_INSTANCES táblát az állapotváltozások vagy egy adott Payroll Flow Pattern feladatának befejezése alapján. Rögzítés A Flow Instance állapotának Completed/Approved értékre váltásakor rögzül Eseménytípus explicit | |||
| Bérszámfejtési rekord javítva | Az első bérszámfejtési futtatás után, de a véglegesítés előtt végrehajtott kézi módosítások az elembejegyzéseken vagy a munkaviszony adataiban. Ez a tevékenység a hibák vagy kivételek javításához szükséges utómunkát jelzi. | ||
| Miért fontos? Folyamatbeli hatékonysági problémákra és adatminőségi gondokra utal. Ennek a tevékenységnek a csökkentése javítja az első futtatáskor helyes bérszámfejtések arányát. Hol szerezhető be? A PAY_ELEMENT_ENTRIES_F táblában azonosított módosítások alapján állapítható meg, ha az utolsó módosítás dátuma az első bérszámfejtési futtatás és az előlegszámítás dátuma közé esik. Rögzítés Hasonlítsa össze az elembejegyzések módosítási időbélyegeit a bérszámfejtési futtatások időbélyegeivel Eseménytípus inferred | |||
| Költségadatok átadva | A bérszámfejtési költségadatok átadása a főkönyvbe. Ez jelzi a bérszámfejtési ciklus pénzügyi lezárását. | ||
| Miért fontos? Biztosítja a pénzügyi megfelelést és a munkaerőköltségek pontos könyvelését. A késések miatt a pénzügy nem tudja lezárni a könyvelést. Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke T (Transfer to GL), az állapot pedig Complete. Rögzítés A Transfer to GL folyamat befejezésekor kerül naplózásra Eseménytípus explicit | |||
| Munkaidő-nyilvántartás beküldve | Az első esemény, amikor a munkavállaló vagy a vezető beküldi a feldolgozandó munkaidő- és munkavégzési adatokat. Az Oracle HCM-ben ezt az eseményt a Time and Labor modul rögzíti, amikor a munkaidő-nyilvántartás állapota Submitted értékre változik. | ||
| Miért fontos? Ez jelzi, hogy a nyers adatok bekerültek a lehetséges bérszámfejtési folyamatba. Az itt jelentkező késések a további lépésekre is kihatnak, és kevesebb idő marad a bérszámfejtési szakértőknek a számítások ellenőrzésére. Hol szerezhető be? Kérdezze le a HWM_TM_REC_GRP_DTLS táblát vagy a HXT_TIMECARDS nézetet, és keresse azokat a rekordokat, amelyek állapota SUBMITTED értékre változik. Használja a beküldés időbélyegét. Rögzítés A Time and Labor modulban akkor rögzül, amikor az állapot SUBMITTED értékre változik Eseménytípus explicit | |||
| Munkaidő-nyilvántartás jóváhagyva | Annak megerősítése, hogy a vezető ellenőrizte és jóváhagyta a beküldött munkaidőadatokat. Ez az állapotváltozás indítja el az adatok átvitelét a bérszámfejtési elemek bejegyzéseihez. | ||
| Miért fontos? A vezetői jóváhagyás átfutási idejének méréséhez szükséges. Az itt jelentkező késések gyakran vezetnek utólagos bérkorrekciókhoz a következő időszakokban. Hol szerezhető be? Kérdezze le a HWM_TM_REC_GRP_DTLS táblát vagy a HXT_TIMECARDS nézetet, és keresse azokat a rekordokat, amelyek állapota APPROVED értékre változik. Hasonlítsa össze a jóváhagyás és a beküldés időbélyegét. Rögzítés A Time and Labor modulban akkor rögzül, amikor az állapot APPROVED értékre változik Eseménytípus explicit | |||
| Ösztönző juttatások adatainak importálása | Változó juttatások, például bónuszok vagy jutalékok elembejegyzéseinek létrehozása batch loaderrel vagy HDL-importtal. Ez az esemény jelzi a külső javadalmazási adatok átvitelét a bérszámfejtésbe. | ||
| Miért fontos? A változó juttatások adatainak betöltési sebességét követi. A késői import miatt gyakran kiegészítő bérszámfejtésre vagy kézi javításra van szükség. Hol szerezhető be? Kérdezze le a PAY_BATCH_HEADERS táblát az import befejezésének ellenőrzéséhez, vagy kövesse a PAY_ELEMENT_ENTRIES_F rekordjainak létrehozását egy adott forrásrendszer-hivatkozás alapján. Rögzítés A kötegelt elembejegyzési folyamat sikeres befejezésekor rögzül Eseménytípus explicit | |||
| QuickPay végrehajtva | Egyetlen személy bérszámfejtésének futtatása (QuickPay), amelyet általában a javítások ellenőrzésére használnak. Ez a Payroll Result Previewed tevékenység helyettesítő mutatójaként szolgál. | ||
| Miért fontos? Ha egy személyhez gyakran futtatnak QuickPayt, az arra utal, hogy a bérszámfejtést próbálgatással végzik, nem pedig egy Hol szerezhető be? Kérdezze le a PAY_PAYROLL_ACTIONS táblát, ahol az ACTION_TYPE értéke Q (QuickPay). Számolja meg az egyes munkavállalókhoz és bérszámfejtési időszakokhoz tartozó előfordulásokat. Rögzítés A PAY_PAYROLL_ACTIONS táblában rögzített QuickPay-műveletkor kerül naplózásra Eseménytípus explicit | |||
Adatkinyerési útmutatók
Lépések
A Data Exchange megnyitása: Jelentkezzen be az Oracle HCM Cloudba olyan felhasználóval, aki rendelkezik a 'Human Capital Management Integration Specialist' szerepkörrel. Lépjen a My Client Groups > Data Exchange > Extract Definitions menüpontra.
Új Extract létrehozása: Kattintson a '+' ikonra az új Extract létrehozásához. Nevezze el 'ProcessMind_Payroll_Extract' néven. Fogyasztóként válassza a 'Payroll', kategóriaként pedig a 'HR Archive' lehetőséget, hogy hozzáférjen a korábbi bérszámfejtési műveletek adataihoz.
Adatcsoportok meghatározása: Hozzon létre egy Root Data Group csoportot a
PAY_PAYROLL_REL_UE(Payroll Relationship) User Entity alapján. Ez köti az adatkinyerést a munkavállaló bérszámfejtési jogviszonyához. Hozzon létre gyermek adatcsoportokat aPAY_ACTION_INFORMATION_UE,PAY_ELEMENT_ENTRY_UEésHWM_MEASURE_DAY_V_UE(munkaidő és munka) entitásokhoz.Extract-rekordok beállítása: Az adatcsoportokon belül határozza meg a hierarchikus adatokat kilapító rekordokat. Minden tevékenységtípushoz külön rekordot kell létrehoznia, például egyet a 'Time Card' eseményekre szűrve, egy másikat pedig a 'Run Results' adatokhoz.
SQL-logika megvalósítása FastFormula vagy BIP használatával: A hierarchikus bérszámfejtési adatok lineáris eseménynaplóvá alakítása összetett feladat. A legmegbízhatóbb megoldás az 'Extract Delivery Option' használata BI Publisher-jelentés meghívására. Így az alábbi 'Query' szakaszban megadott SQL-t használhatja adatmodellként. Egységes eseménynapló létrehozásához ez jobb megoldás, mint a natív grafikus felületen végzett szűrés.
BI Publisher-adatmodell létrehozása: Lépjen a Tools > Reports and Analytics > Browse Catalog menüpontra. Hozzon létre új Data Modelt, és illessze be az alábbi SQL-lekérdezést. Hozzon létre paramétert a
bind_start_dateés abind_end_dateváltozóhoz.Extract összekapcsolása a BIP-pel: Az Extract Definition 'Delivery' lapján hozzon létre kézbesítési beállítást. Kimeneti formátumként válassza a 'PDF' vagy az 'XML' lehetőséget. A ProcessMind CSV-t használ, ezért a BIP kimenetét át kell alakítania. Válassza ki az előző lépésben létrehozott BI Publisher-jelentést.
Paraméterek megadása: Az Extract Execution Tree-ben adja meg a kezdő és záró dátum paraméterét, hogy dinamikusan továbbítsa őket a BI Publisher-lekérdezésnek.
Ellenőrzés és beküldés: Ellenőrizze az Extract definícióját, és javítsa az esetleges hibákat. Kattintson a 'Submit Extract' gombra, majd adja meg a paramétereket, például az elmúlt 90 napot.
Folyamat figyelése: Lépjen a 'View Extract Results' menüpontra. Várja meg, amíg az állapot 'Succeeded' értékre változik.
Kimenet letöltése: Töltse le a létrehozott XML- vagy CSV-fájlt. Nyissa meg, és ellenőrizze, hogy tartalmazza-e a szükséges oszlopokat, például a PayrollRecord, ActivityName és EventTimestamp mezőket.
Formázás a ProcessMind számára: XML-kimenet esetén alakítsa át egyszerű CSV-fájllá, és ellenőrizze, hogy a fejlécek megfelelnek-e az 'Attributes to include' követelményeinek. Töltse fel az eredményül kapott fájlt a ProcessMindbe.
Konfiguráció
- Adatkinyerési mód: Csak a változások vagy teljes adatkinyerés. Az első betöltéshez válassza a teljes adatkinyerést. A napi frissítésekhez állítsa be a 'Changes Only' módot a Last Update Date alapján.
- Legislative Data Group (LDG): Ha a rendszer több országot kezel, érdemes LDG szerint szűrni, mivel a bérszámfejtési definíciók országonként eltérnek.
- Dátumtartomány: Állítsa be a
bind_start_dateésbind_end_dateértékét legalább 3-6 hónapra, hogy a process mining a teljes ciklusidőket is rögzítse. - Adatcsomag mérete: Nagy adatmennyiségű bérszámfejtésnél (10k+ munkavállaló) állítsa az Extract Definition adatcsomagméretét 2000-re, hogy elkerülje az időtúllépést.
- Érvényességi dátumok kezelése: A bérszámfejtési táblák dátum szerint érvényesek. A lekérdezés logikája kezeli az
effective_start_dateéseffective_end_datemezőket, így a rekord megfelelő korábbi verzióját kéri le. - Biztonság: A futtató felhasználónak olyan adatbiztonsági profilokkal kell rendelkeznie, amelyek hozzáférést adnak az elemzésbe bevont bérszámfejtésekhez és szervezeti egységekhez.
Példa-lekérdezés sql
/* Oracle HCM Cloud Payroll Extraction for ProcessMind */
/* Aggregating 16 specific activities into a unified Event Log */
SELECT
/* Attributes */
rel.person_number || '-' || ppa.payroll_action_id AS PayrollRecord,
'Time Card Submitted' AS ActivityName,
TO_CHAR(htr.creation_date, 'YYYY-MM-DD HH24:MI:SS') AS EventTimestamp,
'Oracle HCM Time and Labor' AS SourceSystem,
TO_CHAR(htr.last_update_date, 'YYYY-MM-DD HH24:MI:SS') AS LastDataUpdate,
pap.name AS PayrollPeriodName,
org.name AS DepartmentName,
NULL AS GrossPayAmount
FROM hwm_tm_rec htr
JOIN hwm_tm_rec_grp htrg ON htr.tm_rec_grp_id = htrg.tm_rec_grp_id
JOIN per_all_people_f rel ON htrg.person_id = rel.person_id
LEFT JOIN pay_all_payrolls_f pap ON htrg.payroll_id = pap.payroll_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id /* Adjust mapping */
WHERE htr.latest_version_flag = 'Y'
AND htr.tm_rec_status = 'SUBMITTED'
AND htr.creation_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Time Card Approved',
TO_CHAR(htr.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Time and Labor',
TO_CHAR(htr.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM hwm_tm_rec htr
JOIN hwm_tm_rec_grp htrg ON htr.tm_rec_grp_id = htrg.tm_rec_grp_id
JOIN per_all_people_f rel ON htrg.person_id = rel.person_id
LEFT JOIN pay_all_payrolls_f pap ON htrg.payroll_id = pap.payroll_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE htr.latest_version_flag = 'Y'
AND htr.tm_rec_status = 'APPROVED'
AND htr.last_update_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || pee.element_entry_id,
'Incentive Data Imported',
TO_CHAR(pee.creation_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pee.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
NULL,
org.name,
NULL
FROM pay_element_entries_f pee
JOIN pay_element_types_f pet ON pee.element_type_id = pet.element_type_id
JOIN per_all_assignments_m asg ON pee.assignment_id = asg.assignment_id
JOIN per_all_people_f rel ON asg.person_id = rel.person_id
LEFT JOIN per_departments org ON asg.organization_id = org.organization_id
WHERE pet.classification_name IN ('Supplemental Earnings', 'Voluntary Deductions')
AND pee.creator_type IN ('H', 'F') /* HDL or Flat File */
AND pee.creation_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Payroll Calculation Started',
TO_CHAR(ppa.creation_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(ppa.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_actions ppa
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN pay_payroll_rel_actions pra ON ppa.payroll_action_id = pra.payroll_action_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id /* Simplified Join */
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type IN ('R', 'Q') /* Run or QuickPay */
AND ppa.creation_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Payroll Calculation Executed',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
(SELECT SUM(prrv.result_value) FROM pay_run_result_values prrv JOIN pay_run_results prr ON prrv.run_result_id = prr.run_result_id WHERE prr.payroll_rel_action_id = pra.payroll_rel_action_id) AS GrossPayAmount
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type IN ('R', 'Q')
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Audit Exception Flagged',
TO_CHAR(pml.creation_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pml.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_message_lines pml
JOIN pay_payroll_rel_actions pra ON pml.source_id = pra.payroll_rel_action_id
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE pml.message_level IN ('F', 'E') /* Fatal or Error */
AND pml.creation_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Payroll Record Corrected',
TO_CHAR(pee.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pee.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_element_entries_f pee
JOIN pay_payroll_rel_actions pra ON pee.creator_id = pra.payroll_rel_action_id
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE pee.last_update_date > pee.creation_date
AND pee.last_update_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'QuickPay Executed',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type = 'Q'
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Prepayments Calculated',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type = 'P' /* Distribution */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Payroll Run Approved',
TO_CHAR(pfi.action_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pfi.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_flow_instances pfi
JOIN pay_payroll_actions ppa ON pfi.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN pay_payroll_rel_actions pra ON ppa.payroll_action_id = pra.payroll_action_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE pfi.status = 'COMPLETED'
AND pfi.instance_name LIKE '%Approval%'
AND pfi.action_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Archive Results Generated',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type = 'X' /* Archive */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Bank Transfer Generated',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
(SELECT SUM(ppp.value) FROM pay_pre_payments ppp WHERE ppp.payroll_action_id = ppa.payroll_action_id) AS GrossPayAmount
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type IN ('M', 'E') /* Mag Tape or EFT */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Payment Executed',
TO_CHAR(ppp.base_currency_value, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(ppa.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
ppp.value AS GrossPayAmount
FROM pay_pre_payments ppp
JOIN pay_payroll_actions ppa ON ppp.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN pay_payroll_rel_actions pra ON ppa.payroll_action_id = pra.payroll_action_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type IN ('H', 'E', 'M') /* Check or EFT */
AND ppa.effective_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Pay Slip Published',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type = 'G' /* Generate Payslip */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Costing Transferred',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.action_type = 'T' /* Transfer to GL */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date
UNION ALL
SELECT
rel.person_number || '-' || ppa.payroll_action_id,
'Tax Filing Completed',
TO_CHAR(pra.action_sequence_date, 'YYYY-MM-DD HH24:MI:SS'),
'Oracle HCM Payroll',
TO_CHAR(pra.last_update_date, 'YYYY-MM-DD HH24:MI:SS'),
pap.name,
org.name,
NULL
FROM pay_payroll_rel_actions pra
JOIN pay_payroll_actions ppa ON pra.payroll_action_id = ppa.payroll_action_id
JOIN pay_all_payrolls_f pap ON ppa.payroll_id = pap.payroll_id
JOIN per_all_people_f rel ON pra.payroll_relationship_id = rel.person_id
LEFT JOIN per_departments org ON rel.attribute1 = org.organization_id
WHERE ppa.report_category IN ('Tax', 'Regulatory') /* Customize based on local requirements */
AND pra.action_status = 'C'
AND pra.action_sequence_date BETWEEN :bind_start_date AND :bind_end_date Lépések
- Jelentkezzen be az Oracle BI Publisherbe: Nyissa meg az Oracle Cloud környezetet, majd lépjen a Tools > Reports and Analytics menüpontra. Kattintson a Browse Catalog gombra a BI Publisher felületének megnyitásához.
- Adatmodell létrehozása: Kattintson a New gombra a bal felső sarokban, majd válassza a Data Model lehetőséget. Ebben adhatja meg az SQL-alapú adatkinyerés logikáját.
- SQL-adatkészlet létrehozása: A Diagram lapon kattintson a New Data Set ikonra, majd válassza az SQL Query lehetőséget.
- Adatforrás beállítása: Nevezze el az adatkészletet, például
ProcessMind_Payroll_Extractnéven. Adatforrásként állítsa be azApplicationDB_HCMértéket, vagy válassza ki a saját HCM-alkalmazásadatbázis-kapcsolatát. A típust hagyja Standard SQL értéken. - Lekérdezés megadása: Másolja ki az alábbi Query szakaszban található teljes SQL-szkriptet, és illessze be az SQL Query mezőbe. Ne használjon markdown-formázást.
- Paraméterek megadása: A lekérdezés a
:p_start_dateés:p_end_datekötött változókat használja. Az adatmodell Parameters lapján hozzon létre két Date típusú paramétert az adatkinyerési időszak szűréséhez, például appa.EFFECTIVE_DATEalapján. - Adatszerkezet ellenőrzése: Kattintson az OK gombra, majd az adatmodell-szerkesztőben váltson a Data lapra. Adjon meg próbadátumokat, például
2023-01-01és2023-03-31értéket, majd kattintson a View gombra. Ellenőrizze, hogy a kimenet tartalmazza-e a PayrollRecord, ActivityName és EventTimestamp mezőket. - Adatmodell mentése: Mentse a modellt egy megosztott mappába, például a
/Shared Folders/Custom/ProcessMiningmappába. - Jelentés létrehozása exportáláshoz: Kattintson a Create Report gombra, majd válassza ki az imént mentett adatmodellt. A Report Wizard segítségével hozzon létre egyszerű táblázatot az összes oszloppal. Törölje a 'Show Grand Totals' jelölését.
- Exportálás CSV-be: Nyissa meg a jelentést a Report Viewerben. Kattintson az Actions menüre, vagyis a fogaskerék ikonra, majd válassza az Export > Data > CSV lehetőséget.
- Átalakítás: Nyissa meg a CSV-fájlt. Ha a dátumformátum nem állt be automatikusan, módosítsa ISO 8601 formátumra (
YYYY-MM-DD HH:MM:SS). Ha az SQL-t helyesen illesztette be, további átalakításra nincs szükség. - Feltöltés: Importálja az eredményül kapott CSV-fájlt a ProcessMindbe, és rendelje hozzá az oszlopokat az adatigények szerint.
Konfiguráció
- Adatforrás-kapcsolat: Az
ApplicationDB_HCMadatforrást vagy azzal egyenértékű, aPAY_ésPER_sémákhoz olvasási hozzáférést biztosító JNDI-adatforrást kell használni. - Dátumtartomány: A teljes bérszámfejtési ciklusok rögzítéséhez 3-6 hónapos adatkinyerési időszak ajánlott. A dinamikus betöltést a
:p_start_dateés:p_end_dateparaméterekkel szabályozhatja. - Legislative Data Group (LDG): A lekérdezés alapértelmezés szerint az összes LDG adatait kinyeri. Ha több országot kezel, érdemes az adatok elkülönítéséhez hozzáadni az
AND ppa.LEGISLATIVE_DATA_GROUP_ID = [Your_LDG_ID]szűrőt. - Teljesítmény: A lekérdezés nagy adatmennyiségű táblákat használ (
PAY_RUN_RESULTS,PAY_ASSIGNMENT_ACTIONS). Az időtúllépés elkerüléséhez ne állítson be túl hosszú, például egy évnél nagyobb időszakot a BI Publisherben. - Biztonság: A jelentést futtató felhasználónak Data Access Set jogosultsággal kell rendelkeznie a célként megadott bérszámfejtési definíciókhoz.
Példa-lekérdezés sql
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Time Card Submitted' AS ActivityName,
peef.CREATION_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
peef.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME AS LegislativeDataGroup,
org.NAME AS DepartmentName,
peef.LAST_UPDATED_BY AS ProcessingUser,
NULL AS GrossPayAmount,
ptp.PERIOD_NAME AS PayrollPeriodName,
NULL AS SlaProcessingDeadline,
'N' AS IsManualCorrection,
pg.PAYROLL_NAME AS PayGroup,
NULL AS ProcessDurationDays
FROM PAY_ELEMENT_ENTRIES_F peef
JOIN PER_ALL_ASSIGNMENTS_M paam ON peef.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND peef.EFFECTIVE_START_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND peef.EFFECTIVE_START_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PAY_PAY_RELATIONSHIPS_DN pprd ON paam.PAYROLL_RELATIONSHIP_ID = pprd.PAYROLL_RELATIONSHIP_ID
JOIN PER_TIME_PERIODS ptp ON pprd.PAYROLL_ID = ptp.PAYROLL_ID
AND peef.EFFECTIVE_START_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON pprd.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON pprd.PAYROLL_ID = pg.PAYROLL_ID
WHERE peef.CREATOR_TYPE = 'H'
AND peef.CREATION_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Time Card Approved' AS ActivityName,
peef.EFFECTIVE_START_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
peef.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
peef.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_ELEMENT_ENTRIES_F peef
JOIN PER_ALL_ASSIGNMENTS_M paam ON peef.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND peef.EFFECTIVE_START_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND peef.EFFECTIVE_START_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PAY_PAY_RELATIONSHIPS_DN pprd ON paam.PAYROLL_RELATIONSHIP_ID = pprd.PAYROLL_RELATIONSHIP_ID
JOIN PER_TIME_PERIODS ptp ON pprd.PAYROLL_ID = ptp.PAYROLL_ID
AND peef.EFFECTIVE_START_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON pprd.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON pprd.PAYROLL_ID = pg.PAYROLL_ID
WHERE peef.CREATOR_TYPE = 'H'
AND peef.EFFECTIVE_START_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Incentive Data Imported' AS ActivityName,
peef.CREATION_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
peef.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
peef.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_ELEMENT_ENTRIES_F peef
JOIN PER_ALL_ASSIGNMENTS_M paam ON peef.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND peef.EFFECTIVE_START_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND peef.EFFECTIVE_START_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PAY_PAY_RELATIONSHIPS_DN pprd ON paam.PAYROLL_RELATIONSHIP_ID = pprd.PAYROLL_RELATIONSHIP_ID
JOIN PER_TIME_PERIODS ptp ON pprd.PAYROLL_ID = ptp.PAYROLL_ID
AND peef.EFFECTIVE_START_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON pprd.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON pprd.PAYROLL_ID = pg.PAYROLL_ID
WHERE peef.CREATOR_TYPE IN ('B', 'F')
AND peef.CREATION_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
CASE
WHEN ppa.ACTION_TYPE = 'R' AND paa.ACTION_STATUS = 'C' THEN 'Payroll Calculation Executed'
WHEN ppa.ACTION_TYPE = 'R' THEN 'Payroll Calculation Started'
WHEN ppa.ACTION_TYPE = 'Q' THEN 'QuickPay Executed'
WHEN ppa.ACTION_TYPE IN ('P', 'U') THEN 'Prepayments Calculated'
WHEN ppa.ACTION_TYPE = 'X' THEN 'Archive Results Generated'
WHEN ppa.ACTION_TYPE = 'M' THEN 'Bank Transfer Generated'
WHEN ppa.ACTION_TYPE IN ('Z', 'E') THEN 'Payment Executed'
WHEN ppa.ACTION_TYPE = 'T' THEN 'Costing Transferred'
ELSE 'Payroll Process Action'
END AS ActivityName,
ppa.CREATION_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
paa.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
ppa.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
ptp.REGULAR_PAYMENT_DATE AS SlaProcessingDeadline,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_PAYROLL_ACTIONS ppa
JOIN PAY_ASSIGNMENT_ACTIONS paa ON ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
JOIN PER_ALL_ASSIGNMENTS_M paam ON paa.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND ppa.EFFECTIVE_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND ppa.EFFECTIVE_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PER_TIME_PERIODS ptp ON ppa.PAYROLL_ID = ptp.PAYROLL_ID
AND ppa.DATE_EARNED BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON ppa.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON ppa.PAYROLL_ID = pg.PAYROLL_ID
WHERE ppa.ACTION_TYPE IN ('R', 'Q', 'P', 'U', 'X', 'M', 'Z', 'E', 'T')
AND ppa.EFFECTIVE_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Audit Exception Flagged' AS ActivityName,
pml.CREATION_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
pml.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
pml.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'Y',
pg.PAYROLL_NAME,
NULL
FROM PAY_MESSAGE_LINES pml
JOIN PAY_PAYROLL_ACTIONS ppa ON pml.PAYROLL_ACTION_ID = ppa.PAYROLL_ACTION_ID
LEFT JOIN PAY_ASSIGNMENT_ACTIONS paa ON ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
JOIN PER_ALL_ASSIGNMENTS_M paam ON paa.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND ppa.EFFECTIVE_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND ppa.EFFECTIVE_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PER_TIME_PERIODS ptp ON ppa.PAYROLL_ID = ptp.PAYROLL_ID
AND ppa.DATE_EARNED BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON ppa.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON ppa.PAYROLL_ID = pg.PAYROLL_ID
WHERE pml.MESSAGE_LEVEL IN ('E', 'W')
AND pml.CREATION_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Payroll Record Corrected' AS ActivityName,
peef.LAST_UPDATE_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
peef.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
peef.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'Y',
pg.PAYROLL_NAME,
NULL
FROM PAY_ELEMENT_ENTRIES_F peef
JOIN PER_ALL_ASSIGNMENTS_M paam ON peef.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND peef.EFFECTIVE_START_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND peef.EFFECTIVE_START_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PAY_PAY_RELATIONSHIPS_DN pprd ON paam.PAYROLL_RELATIONSHIP_ID = pprd.PAYROLL_RELATIONSHIP_ID
JOIN PER_TIME_PERIODS ptp ON pprd.PAYROLL_ID = ptp.PAYROLL_ID
AND peef.EFFECTIVE_START_DATE BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON pprd.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON pprd.PAYROLL_ID = pg.PAYROLL_ID
WHERE peef.LAST_UPDATE_DATE > peef.CREATION_DATE
AND peef.LAST_UPDATE_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Payroll Run Approved' AS ActivityName,
ppa.LAST_UPDATE_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
ppa.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
ppa.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_PAYROLL_ACTIONS ppa
JOIN PAY_ASSIGNMENT_ACTIONS paa ON ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
JOIN PER_ALL_ASSIGNMENTS_M paam ON paa.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND ppa.EFFECTIVE_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND ppa.EFFECTIVE_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PER_TIME_PERIODS ptp ON ppa.PAYROLL_ID = ptp.PAYROLL_ID
AND ppa.DATE_EARNED BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON ppa.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON ppa.PAYROLL_ID = pg.PAYROLL_ID
WHERE ppa.ACTION_TYPE = 'R'
AND paa.ACTION_STATUS = 'C'
AND ppa.EFFECTIVE_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Pay Slip Published' AS ActivityName,
(ppa.CREATION_DATE + 1) AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
ppa.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
ppa.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_PAYROLL_ACTIONS ppa
JOIN PAY_ASSIGNMENT_ACTIONS paa ON ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
JOIN PER_ALL_ASSIGNMENTS_M paam ON paa.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND ppa.EFFECTIVE_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND ppa.EFFECTIVE_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PER_TIME_PERIODS ptp ON ppa.PAYROLL_ID = ptp.PAYROLL_ID
AND ppa.DATE_EARNED BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON ppa.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON ppa.PAYROLL_ID = pg.PAYROLL_ID
WHERE ppa.ACTION_TYPE = 'X'
AND ppa.EFFECTIVE_DATE BETWEEN :p_start_date AND :p_end_date
UNION ALL
SELECT
TO_CHAR(papf.PERSON_NUMBER) || '-' || ptp.PERIOD_NAME AS PayrollRecord,
'Tax Filing Completed' AS ActivityName,
ppa.CREATION_DATE AS EventTimestamp,
'Oracle HCM' AS SourceSystem,
ppa.LAST_UPDATE_DATE AS LastDataUpdate,
pld.NAME,
org.NAME,
ppa.LAST_UPDATED_BY,
NULL,
ptp.PERIOD_NAME,
NULL,
'N',
pg.PAYROLL_NAME,
NULL
FROM PAY_PAYROLL_ACTIONS ppa
JOIN PAY_ASSIGNMENT_ACTIONS paa ON ppa.PAYROLL_ACTION_ID = paa.PAYROLL_ACTION_ID
JOIN PER_ALL_ASSIGNMENTS_M paam ON paa.ASSIGNMENT_ID = paam.ASSIGNMENT_ID
AND ppa.EFFECTIVE_DATE BETWEEN paam.EFFECTIVE_START_DATE AND paam.EFFECTIVE_END_DATE
JOIN PER_ALL_PEOPLE_F papf ON paam.PERSON_ID = papf.PERSON_ID
AND ppa.EFFECTIVE_DATE BETWEEN papf.EFFECTIVE_START_DATE AND papf.EFFECTIVE_END_DATE
JOIN PER_TIME_PERIODS ptp ON ppa.PAYROLL_ID = ptp.PAYROLL_ID
AND ppa.DATE_EARNED BETWEEN ptp.START_DATE AND ptp.END_DATE
LEFT JOIN PER_LEGISLATIVE_DATA_GROUPS_VL pld ON ppa.LEGISLATIVE_DATA_GROUP_ID = pld.LEGISLATIVE_DATA_GROUP_ID
LEFT JOIN HR_ORGANIZATION_UNITS_F_TL org ON paam.ORGANIZATION_ID = org.ORGANIZATION_ID AND org.LANGUAGE = USERENV('LANG')
LEFT JOIN PAY_ALL_PAYROLLS_F pg ON ppa.PAYROLL_ID = pg.PAYROLL_ID
WHERE ppa.ACTION_TYPE = 'Z'
AND ppa.CREATION_DATE BETWEEN :p_start_date AND :p_end_date Készen áll a kezdésre?
A sablon adataival átláthatóbbá teheti bérszámfejtési működését és ciklusait. Tegye meg még ma az első lépést a hatékonyabb működés és a pontosabb jelentések felé.
Optimalizálja még ma az Oracle HCM bérszámfejtését
Csökkentse 30%-kal a bérszámfejtési ciklus idejét, és szüntesse meg a szűk keresztmetszeteket.
Nincs szükség bankkártyára. Beállítás percek alatt.