InitMapWage

---

Inicializace rychlého hledání mzdových vět pro jednoho zaměstnance.

Používá se tam, kde je potřeba číst velké množství mzdových vět bez toho, že bychom věděli, zda konkrétní věta existuje či nikoliv. Vlastně se provede rychlé nahrání sloupce PERIOD u všech mzdových vět daného zaměstnance. Typickým příkladem je zobrazení obsazenosti mzdových vět v jednolivých měsících (Shift + F2 ve mzdovém oddělení).

Opakovaným použitím InitMapWage dojde vždy ke znovunahrání z databáze!

Obvykle se pro test existence mzdové věty v databázi používá funkce _LoadWage, která používá mzdovou cache, takže opakované dotazy na existenci mzdové věty jsou velmi rychlé, ale první dotaz znamená dotaz do databáze. To v případě potřeby testu existence stovek mzdových vět bude velmi pomalé!

Jestliže ale napřed uděláme InitMapWage, pak funkce _LoadWage, začne používat mapu mzdových vět v paměti stylem: co je v mapě existuje, co není neexistuje a tím pádem se test existence stovek mzdových vět extrémně urychlí!

Mzdová cache

Jestliže existuje init mzdové mapy procedurou InitMapWage pro daného zaměstnance a mzdová věta v ní nebude při _LoadWage nalezena, nahlédne system i do mzdová cache (bez dotazu do databáze!) a jestliže existuje mzdová věta připravená k přidání již i s nějakou změnou, vrací také true!!

Omezení

  1. Mapa mzdových vět je poplatná pouze jednomu zaměstnanci. Při přechodu na jiného, zaniká.
  2. Mapa mzdových vět není hlídána na změny z jiných programu Pam5 nebo SDPam pomocí komunikačního serveru FlxSrv2. Z toho je vidět, že je určena pouze pro lokální a časově omezené použití!!

 

Podívejte se na: Mzdy