Please enable JavaScript to view this site.

Invantive Vision

In dit scherm kun je attribuutregels registreren en wijzigen. Open scherm in browser Open Scherm

Een attribuutregel is een specificatie van een bedrijfsregel. Er worden twee soorten attribuutregels onderscheiden:

controles op geldigheid: attribuutregels die eisen stellen aan de gegevens om ze goed te keuren. Voorbeelden zijn ‘het bedrag op de factuurregel moet ongelijk 0 zijn’ of ‘de gebruiker die proceshouder is moet de proceshouderindicator aangevinkt hebben’.

acties: acties zijn stukjes programmatuur die uitgevoerd worden onder bepaalde condities.

Binnen acties onderscheiden we twee soorten acties:

acties die uitgevoerd worden voordat een gewijzigd gegeven wordt vastgelegd, bijvoorbeeld voor het vullen van default of vaste waarden in velden.

acties die uitgevoerd worden nadat een gewijzigd gegeven vastgelegd is, bijvoorbeeld voor het versturen van een e-mail.

Het registreren van attribuutregels is een typische activiteit voor applicatieontwikkelaars. Zie de waarschuwing onder Applicatieontwikkeling.

Scherm Attribuutregels

De betekenis van de invulvelden is:

Toepassing

De toepassing waar de attribuutregel onderdeel van uitmaakt.

Tabelcode

De tabel en bijbehorende businessview waar de attribuutregel onderdeel van uitmaakt.

Code

De unieke code voor de attribuutregel.

Sorteervolgorde

Een numerieke waarde waar de referentiële regels op gesorteerd worden qua volgorde van uitvoering.

Soort Gebeurtenis

Het soort gebeurtenis dat er voor zorgt dat de attribuutregel verwerkt wordt. De volgende gebeurtenissen worden onderscheiden:

A: Elke gebeurtenis (wijzigen, toevoegen of verwijderen)

M: Mutatie (wijzigen of toevoegen)

I: toevoegen

U: wijzigen

D: verwijderen

Actiecategorie

De actiecategorie. De volgende soorten acties worden onderscheiden:

E: geldigheidscontrole.

A: actie.

Actiemoment

Heeft alleen betekenis als de actie categorie ‘Actie’ gekozen is. Het moment waarop een actie uitgevoerd wordt: voor of na het uitvoeren van de gebeurtenis.

Invoeren

Aangevinkt indien de attribuutregel opgenomen moet worden in de bedrijfslaag.

Specificatie

Randvoorwaarde die moet gelden naast het soort gebeurtenis, uitgedrukt als SQL where clause.

Er kan gerefereerd worden aan de betrokken rij uit de tabel met de volgende teksten:

‘:old’: de waarde van de rij voor de gebeurtenis (leeg bij toevoegen).

‘:new’: de waarde van de rij na de gebeurtenis (leeg bij verwijderen)

‘:last’: de laatst bekende waarde van de rij (gelijk aan ‘:new’ in het geval van toevoegen of wijzigen en gelijk aan ‘:old’ in het geval van verwijderen).

‘:event’: het soort gebeurtenis, waarbij de volgende waardes mogelijk zijn: ‘insert’, ‘update’ en ‘delete’.

Actiespecificatie

Heeft alleen betekenis als de actiecategorie ‘Actie’ gekozen is. Specificatie in PL/SQL van de uit te voeren actie.

Er kan gerefereerd worden aan de betrokken rij uit de tabel met de volgende teksten:

‘:old’: de waarde van de rij voor de gebeurtenis (leeg bij toevoegen).

‘:new’: de waarde van de rij na de gebeurtenis (leeg bij verwijderen)

‘:last’: de laatst bekende waarde van de rij (gelijk aan ‘:new’ in het geval van toevoegen of wijzigen en gelijk aan ‘:old’ in het geval van verwijderen).

‘:event’: het soort gebeurtenis, waarbij de volgende waardes mogelijk zijn: ‘insert’, ‘update’ en ‘delete’.

Gebruikersmelding

Heeft alleen betekenis als de actiecategorie ‘Geldigheidscontrole’ gekozen is.

De melding die gegeven moet worden indien de rij niet voldoet aan de geldigheidscontrole.

Documentatie

Documentatie over de attribuutregel.

Attribuutregels bieden veel mogelijkheden. Onderstaand enkele voorbeelden.

Vul een bedrag in groter of kleiner dan 0 voor een opdracht.

Actiecategorie:        E

Specificatie:        :last.odt_bedrag_verlening is null or :last.odt_bedrag_verlening<>0

Overige:                Geen.

Er mag slechts één rij met instellingen zijn.

Actiecategorie:        E

Specificatie:        :last.isg_seq = 1

Overige:                Maak een unieke index op de kolom ‘seq’.

Een rol mag alleen de rechten hebben om alle projecten te wijzigen als de rol bovendien ook rechten heeft om alle projecten te zien.

Actiecategorie:        E

Specificatie:        :last.rol_alle_prjctn_wijzigen_vlag = ‘N’ or ( :last.rol_alle_prjctn_wijzigen_vlag = ‘Y’ and :last.rol_alle_prjctn_zien_vlag = ‘Y’)

Overige:                Geen.

Het projecttype kan niet gewijzigd worden naar hoofdproject als een project kostensoorten, opbrengsten, opdrachten, factuurregels, laatste schattingen of contractbudgetten heeft.

Actiecategorie:        E

Specificatie:        :last.pjt_projectvorm_ind in (‘S’, ‘I’) or ( :last.pjt_projectvorm_ind = ‘M’ and not exists ( select 1 from bubs_kostenplaatsen_v where pjt_id = :last.pjt_id ) )

Overige:                Geen.

Deze kostensoortprefix is al in gebruik binnen dit hoofdproject.

Actiecategorie:        E

Specificatie:        (:last.pjt_projectvorm_ind in (‘M’, ‘I’) or ( :last.pjt_projectvorm_ind = ‘S’ and not exists ( /* Another subproject of the same master project with the same prefix. */ select 1 from bubs_projecten_v where pjt_projectvorm_ind =‘S’ and pjt_code <> :last.pjt_code and hpt_code = :last.hpt_code and pjt_volgnummer_prefix = :last.pjt_volgnummer_prefix)))

Overige:                Geen.

Nieuwe toegangsaanvragen hebben altijd een open status.

Actiecategorie:        A

Actiemoment:        B

Specificatie:        1=1

Actiespecificatie:        :new.atg_afgesloten_vlag := ‘N’;

Overige:                Geen.

Stuur een e-mail als een proces wijzigt.

Actiecategorie:        A

Actiemoment:        A

Specificatie:        1=1

Actiespecificatie:        bubs#processen.send_message(:old, :new, :last);

Overige:                Geen.

Wijzig indien mogelijk de status van het achtergrondproces van F (invoer parameters) naar P (gepland) als een parameters is bijgewerkt.

Actiecategorie:        A

Actiemoment:        B

Specificatie:        1=1

Actiespecificatie:        update bubs_background_jobs_v set bjb_status_ind=‘P’ where 1=1 and bjb_status_ind=‘F’ and bjb_id = :new.bjb_id;

Overige:                Geen.