U bevindt zich nu op een technische pagina over de software Mercator. Deze pagina bevat specifieke informatie die bestemd is voor professionals van de software Mercator. Wenst u naar algemenere informatie over Mercator door te gaan?


   Deze vraag niet meer stellen

Het bijhouden van wijzigingen in de informatiebestanden

0000002716     -      19-06-2018

Mercator 10.1 bevat een audit-functie die ons toelaat om wijzigingen te volgen die uitgevoerd worden door gebruikers in de verschillende zones van een informatiebestand, zoals de verschillende roosters. Dit mechanisme maakt het mogelijk om volgende wijzigingen te monitoren:

  • Toevoegingen
  • Wijzigingen
  • Verwijderingen

Wanneer de functionaliteit correct geïnstalleerd en geconfigureerd is en wanneer de gebruiker het recht heeft om te controleren, kan deze via rechtsklik het extra contextmenu "Audit" aanklikken. (Zie tabblad "Sign" in het gebruikersprofiel. Hier moet je onderaan "Audit" aanvinken).

Het laat ons toe om een pop-up weer te geven, met hierin alle wijzigingen.

De knop "Potlood" laat ons toe om de waarde rechts op te nemen. (Deze knop is ontoegankelijk voor de dropdowns en gebieden voor specifieke validatie).

Voor dropdowns wordt de waarde weergegeven onder de vorm van "ID -> Waarde". Bijvoorbeeld voor een dropdown van families.

Deze functionaliteit kan geïnstalleerd worden onder alle informatiebestanden. Ze omvat dus alle basistabellen: CLI, FOU, STOCK, GEN, ANA,...

Daarnaast kan het ook ingeschakeld worden in de tabellen die afhankelijk zijn van een informatiebestand:

  • Artikelen:
    • DISPO
    • ARTFOU
    • ARTLIENS
  • Klanten: TARCLI
  • Dienstverleners: TARPREST
  • Analystische rekeningen: ANALIENS

De functionaliteit is gebaseerd op SQL-triggers die worden aangemaakt door Mercator bij de activering. Deze zijn toegankelijk via de Geavanceerde Tools in het menu "SQL Database/Audit". Deze activatie gebeurt voor elk informatiebestand apart. Voor elk van de informatiebestanden en de daarbijhorende tabellen kan de gebruiker bepalen voor welke kolommmen de wijzigingen moeten worden bijgehouden. De kolommen van de verschillende tabellen zijn zichtbaar vanaf tabblad 2.

Opmerkingen:

  • Het context menu laat ons toe om alle kolommen snel aan- of uit te vinken.
  • Sommige kolommen zijn bewust buiten beschouwing gelaten, dit omwille van het type of de inhoud van het veld. Deze worden beschouwd als oncontroleerbaar.
  • Het is aangeraden om enkel de velden aan te kruisen waarvan u een audit wenst en niet alle kolommen. Dit zou een invloed kunnen hebben op de prestaties van Mercator.

Eens de selectie uitgevoerd is, moet men klikken op de knop "Activeer audit" in het eerste tabblad.

Deze procedure zo vaak als gewenst herhaald worden, bijvoorbeeld als we willen dat er wijzigingen worden bijgehouden op kolommen die toegevoegd werden na de activatie van deze functie.

De knop "Audit deactiveren" laat ons toe om deze functionaliteit te deactiveren.

De aangemaakte trigger draagt nog steeds de naam TR_TABLE_AUDIT. Dit is een unieke trigger, die uitgevoerd wordt bij het toevoegen, wijzigen of verwijderen van rijen.

Standaard worden gegevens van de audit 60 dagen bewaard. Deze parameter kan gewijzigd worden met de optie "Informatiebestanden / Audit: Aantal dagen te bewaren" (NJ_AUDIT).


Technisch, de informatie van de audit wordt bijgehouden in de tabel AUDITING.

  • Voor een toevoeging:
    • De kolom ACTION bevat de waarde INSERT
    • De kolom OLDVALUE is null
    • Indien de tabel een standaard informatiebestandstabel is, dan bevat de kolom NEWVALUE de waarde X_NOM of S_MODELE
  • Voor een verwijdering
    • De kolom ACTION bevat de waarde DELETE
    • De kolom NEWVALUE is null
    • Indien de tabel een standaard informatiebestandstabel is, dan bevat de kolom OLDVALUE de waarde X_NOM of S_MODELE
  • Voor een wijziging:
    • De kolom ACTION bevat de waarde UPDATE
    • De kolom OLDVALUE bevat de waarde van vóór de wijziging.
    • De kolom NEWVALUE bevat de nieuwe waarde.

In alle gevallen bevat het veld ROWID de waarde van de primary key van het huidige record.

Indien de wijziging in Mercator gemaakt is worden de kolommen als volgt ingevuld:

  • USER_ID: id van de gebruiker die de Actie uitvoerde
  • USERNAME: de naam van de gebruiker

Indien de wijziging werd uitgevoerd van buiten Mercator:

  • USER_ID: blijft leeg
  • USERNAME: bevat SYSTEM_USER @ APP_NAME()

Deze informatie wordt gebruikt om een rapport op te maken van deze audit-gegevens.

Zie dit voorbeeld: