Innhold
Innholdsliste 🔎︎

# Hendelser

På fanen Hendelser kan du tilordne makroer til bestemte hendelser som kan forekomme i et skjema.

For å bruke denne funksjonen …

Åpne sprettoppmenyen til et valgt skjemaelement og velg fanen Skjema → Hendelser

Åpne en av verktøylinjene Kontrollelementer for skjemaer eller Skjemautforming, trykk på Kontrollelement og velg fanen Hendelser

Når du skal knytte en hendelse til en makro, må du først skrive en makro som inneholder alle kommandoene som skal utføres når hendelsen skjer. Deretter tildeler du denne makroen til hendelsen ved å trykke på … ved siden av hendelsen. Dialogvinduet Tildel makro åpnes, slik at du kan velge makroen.

De følgende handlingene kan settes opp hver for seg, slik at du kan knytte dine egne dialogvinduer til handlinger:

1. Vise en feilmelding,

1. Bekrefte sletting (for dataposter),

1. Spørre etter parametre,

1. Kontrollere inndata når en datapost lagres.

Du kan be om bekreftelse før sletting, for eksempel med spørsmålet «Vil du virkelig slette kunden xyz?», når en datapost slettes.

Hendelsene som vises i dialogvinduet Hendelser kan ikke endres direkte. Du kan slette en hendelse fra lista ved å trykke på Delete.

Lista nedenfor viser og beskriver alle hendelsene i et skjema som kan knyttes til en makro:

## Bekreft sletting

Hendelsen Bekreft sletting finner sted så snart data er slettet fra skjemaet. Den lenkede makroen kan blant annet be om bekreftelse i et dialogvindu.

## Det oppstod en feil

Hendelsen Feil oppstod aktiveres om det oppstår en feil ved tilgang til datakilden. Dette gjelder skjema, listebokser og kombinasjonsbokser.

## Etter endring av post

Hendelsen Etter endring av post finner sted rett etter at den gjeldende post-pekeren er endret.

## Etter posthandling

Hendelsen Etter posthandling finner sted rett etter at posten er endret.

## Fyllparametere

Hendelsen Fyll parametre finner sted dersom skjemaet som skal lastes inn har parametre som må fylles ut. For eksempel kan datakilden i skjemaet inneholde denne SQL-kommandoen:

SELECT * FROM adresse WHERE navn=:navn

Her er :navn en parameter som må fylles ut ved innlasting. Parameteren fylles automatisk ut fra foreldreskjemaet hvis det er mulig. Hvis parameteren ikke kan fylles ut, blir denne hendelsen kalt, slik at en lenket makro kan fylle ut parameteren.

## Før endring av post

Hendelsen Før endring av post skjer før pekeren til den gjeldende posten endres. Den lenkede makroen kan for eksempel hindre at denne handlingen skjer ved å returnere «USANN».

## Før lasting på nytt

Hendelsen Før lasting på nytt finner sted før skjemaet blir lastet inn på nytt. Datainnholdet er ikke oppdatert ennå.

## Før oppdatering

Hendelsen «Før oppdatering» finner sted før innholdet i kontrollelementet som er endret av brukeren, blir skrevet til datakilden. Den lenkede makroen kan blant annet hindre handlingen ved å returnere «USANN».

## Etter oppdatering

Hendelsen finner sted etter at de endringene som ble utført av brukeren er lagret i datakilden.

## Før tilbakestilling

Hendelsen Før tilbakestilling skjer før et skjema tilbakestilles. Den lenkede makroen kan for eksempel hindre at skjemaet tilbakestilles ved å returnere «USANN».

Et skjema tilbakestilles hvis ett av disse vilkårene er oppfylt:

1. Brukeren trykker en knapp (HTML) som er valgt til å være tilbakestillingsknapp.

2. En ny og tom post opprettes i et skjema som er lenket til en datakilde. Dette kan for eksempel skje hvis brukeren står i den siste posten og trykker Neste post.

## Etter tilbakestilling

Hendelsen Etter tilbakestilling finner sted når et skjema er blitt tilbakestilt.

## Før posthandling

Hendelsen Før posthandling finner sted før denne dataposten blir endret, for eksempel redigert eller slettet. Den lenkede makroen kan for eksempel be om bekreftelse i et dialogvindu.

## Før sending

Hendelsen Før sending finner sted før formeldataene blir sendt.

## Før utlasting

Hendelsen Før utlasting finner sted før skjemaet blir tatt ut av datakilden.

## Ved lasting

Hendelsen Ved lasting finner sted rett etter at skjemaet er lastet inn.

## Ved lasting på nytt

Hendelsen Ved lasting på nytt finner sted rett etter at skjemaet er lastet inn. Datainnholdet er allerede oppdatert.

## Ved utlasting

Hendelsen Ved utlasting finner sted etter at skjemaet er tatt ut av datakilden.