Opletten bij loops met records

Over berekeningen operatoren/functies, relaties, lay-outs gedeelten/rapport, scripts beheren/maken en beveiliging bestand/tabellen.
Gebruikersavatar
René Ros
Site Admin
Berichten: 64
Lid geworden op: 26 feb 2017 20:46

Opletten bij loops met records

Bericht door René Ros »

Als een loop wordt gebruikt om in een script meerdere records te bewerken of een actie uit te voeren, dan moet de programmeur er rekening mee houden dat handelingen van andere gebruikers daar effect op hebben.

Door record-locking is het geen probleem als een gebruiker een record bewerkt dat niet tegelijk door het script wordt bewerkt. Voor het geval dat gebruiker en script hetzelfde record willen bewerken is het belangrijk dat de scriptstap 'Record openen' wordt gebruikt en bijvoorbeeld wacht totdat dat lukt.

Wanneer de loop door alle records van de tabel gaat, dan kan er een probleem ontstaan als andere gebruikers nieuwe records maken. Door voorafgaand aan de loop tweemaal de scriptstap 'Alleen weggelaten records tonen' te gebruiken voorkomt u dat.

Als een van de records tijdens het uitvoeren van het script wordt verwijderd is dat meestal geen probleem als de scriptstappen worden gebruikt die ervoor zijn: Loop, Ga naar record [ Volgende ; Afsluiten na laatste: Aan ] en End Loop. Met een eigen teller en tussendoor naar andere records gaan kan het mis gaan.
Het script moet er ook rekening mee houden dat het met minder records kan eindigen dan waarmee het begint.

Hoe meer gebruikers er in de database werken en hoe meer records de loop bewerkt, des te groter is het gevaar.


Afbeelding
Met vriendelijke groet,
René Ros

FMTraining
Hét FileMaker trainingsinstituut van Nederland.
Plaats reactie