Transactie openen

Begint een transactie; volgende recordwijzigingen worden in transactie gehouden tot de scriptstap Transactie vastleggen of Transactie ongedaan maken wordt uitgevoerd.

Opmerking  Transacties worden afgehandeld binnen het oorspronkelijke venster. Acties die in verschillende vensters van het venster van de oorspronkelijke transactie worden ondernomen, worden automatisch buiten bestaande transacties uitgevoerd.

Opties 

  • Met Bevestiging van gegevensinvoer overslaan worden alle bevestigingsopties voor gegevensinvoer die zijn ingesteld voor velden genegeerd en wordt de record gewoon vastgelegd. Deze optie slaat de bevestiging alleen over voor velden die zijn ingesteld met de bevestigingsoptie Alleen tijdens gegevensinvoer in het dialoogvenster Opties voor veld. Velden die op Altijd bevestigen zijn ingesteld, worden nog steeds bevestigd, zelfs als de optie Bevestiging van gegevensinvoer overslaan is ingeschakeld. Raadpleeg Veldbevestiging definiëren.

  • Met ESS-vergrendelingsconflicten negeren kunnen clients van ODBC-gegevensbronnen het vastleggen van wijzigingen afdwingen wanneer de vastlegbewerking anders door de 'optimistische vergrendeling' zou worden voorkomen. ODBC-gegevensbronnen worden ook wel externe SQL-bronnen (ESS) genoemd.

Compatibiliteit 

Product Ondersteund
FileMaker Pro Ja
FileMaker Go Ja
FileMaker WebDirect Ja
FileMaker Server Ja
FileMaker Cloud Ja
FileMaker Data API Ja
Custom Web Publishing Ja

Afkomstig uit versie 

19.6.1

Beschrijving 

Een transactie bestaat uit wijzigingen in een of meer records in het huidige venster. Wijzigingen in een transactie kunnen invloed hebben op meerdere tabellen in meerdere databasebestanden. Alle wijzigingen in een transactie worden samen vastgelegd of, als er een fout optreedt, samen ongedaan gemaakt. Een transactie begint met een scriptstap Transactie openen. Nadat u een transactie hebt gestart, worden daaropvolgende recordwijzigingen in de transactie vastgehouden totdat een scriptstap Transactie vastleggen of Transactie ongedaan maken wordt uitgevoerd. De onderstaande stappen kunnen records wijzigen die zijn opgeslagen in het databaseschema en kunnen worden gebruikt als transactiescriptstappen.

Wanneer u een scriptstap Transactie openen aan een script toevoegt, wordt de scriptstap Transactie vastleggen automatisch hieraan gekoppeld.

Transacties:

  • Combineer een of meer veld- of tabelwijzigingen als een enkele set wijzigingen

  • Een hele reeks wijzigingen doorvoeren of ongedaan maken

  • Wijzigingen in velden of tabellen tussen de scriptstappen Transactie openen en Transactie vastleggen

  • Hiermee kunt u een betrouwbaardere reeks wijzigingen maken

  • Kan automatisch worden teruggedraaid met behulp van de scriptstap Transactie ongedaan maken

  • Slagen (vastleggen) of falen (terugdraaien) als een groep

  • Slagen wanneer aan schemaregels is voldaan

  • Automatisch terugdraaien wanneer niet aan schemaregels is voldaan

  • Kan optioneel validatie-instellingen overslaan en automatisch terugdraaien negeren wanneer niet aan schemaregels is voldaan. Het negeren van schemaregels kan de integriteit van transacties schenden.

  • Worden gewijzigd in een lokaal tijdelijk bestand voordat de scriptstap Transactie vastleggen de wijzigingen opslaat in het hoofdbestand

Transacties worden automatisch vastgelegd en eindigen wanneer:

  • De volgende scriptstappen wijzigen het lay-outvenster: Nieuw venster, Venster sluiten of Venster selecteren

  • De volgende dialoogvensters worden gebruikt: Database beheren, Container beheren of Gegevensbron beheren

  • De volgende acties of scriptstappen worden uitgevoerd: Een kopie opslaan als of Opnieuw aanmelden.

  • Het bestand is gesloten

Transacties worden automatisch teruggedraaid wanneer:

  • Er is een onopgeloste schemafout opgetreden voordat een transactie wordt gestart. Transacties worden automatisch overgeslagen wanneer dit gebeurt

  • Een wijziging in een veld, dat is ingesteld om altijd te valideren, komt niet overeen met de validatie-opties van het veld

  • De scriptstap Transactie ongedaan maken wordt gebruikt

  • Een script is geannuleerd

  • De scriptstap Script onderbreken wordt gebruikt binnen een transactie

  • Een script wordt geannuleerd met behulp van de Script Debugger

  • Er zijn privilegefouten zoals geen veldtoegang, geen recordtoegang en geen tabeltoegang

Opmerkingen 

  • U kunt de scriptstap Transactie openen niet gebruiken om een transactie binnen een andere transactie te starten.

  • Geneste transacties die de scriptstap Script uitvoeren gebruiken, voegen oorspronkelijke transacties samen, maar ze negeren geneste scriptstappen Transactie ongedaan maken en Transactie vastleggen in subscripts.

  • De actie Record verwijderen, indien gebruikt binnen transacties, verwijdert één record tegelijk.

  • De actie Tabel afbreken kan niet worden teruggedraaid.

  • De actie Records importeren geeft geen samenvatting weer bij gebruik binnen transacties.

  • Met de scriptstap Transactie ongedaan maken wordt de waarde voor het automatisch invoeren van seriële verhoging niet teruggedraaid.

  • De optie Recordwijzigingen automatisch opslaan in de Lay-outinstelling wordt tijdens transacties genegeerd.

  • Wijzigingen die worden aangebracht door de scriptstap FileMaker Data API uitvoeren, worden niet opgenomen in de transactie van het script. Elke bewerking die binnen deze scriptstap is voltooid, zelfs als deze is ingesloten in een transactie, wordt niet ongedaan gemaakt.

Voorbeeld 1 

Hiermee wordt een transactie geopend en uitgevoerd.

Kopiëren
Transactie openen []
    Record/verzoek openen Veld instellen [ Activa::Beschrijving ; "beschrijvende tekst" ] Transactie vastleggen

Voorbeeld 2 

Hiermee wordt een transactie geopend en uitgevoerd zonder validatie van gegevensinvoer.

Kopiëren
Transactie openen [ Validatie gegevensinvoer overslaan ] Record/verzoek openen Veld instellen [ Activa::Beschrijving ; "beschrijvende tekst" ] Transactie vastleggen

Voorbeeld 3 

Hiermee wordt een transactie geopend en uitgevoerd zonder ESS-vergrendelingsbeveiliging.

Kopiëren
Transactie openen [ ESS-vergrendelingsconflicten overschrijven ]
Record/verzoek openen Veld instellen [ Activa::Beschrijving ; "beschrijvende tekst" ] Transactie vastleggen