Maken van gerelateerd record met een script zonder layout te verlaten

Over berekeningen operatoren/functies, relaties, lay-outs gedeelten/rapport, scripts beheren/maken en beveiliging bestand/tabellen.
Plaats reactie
Rene C
Berichten: 1
Lid geworden op: 16 nov 2018 19:56

Maken van gerelateerd record met een script zonder layout te verlaten

Bericht door Rene C » 01 dec 2018 12:00

De bedoeling is om met een script een gerelateerd record aan te maken zonder de huidige layout te verlaten. Bijv de parent tabel Project bestaat uit meerdere taken. Deze staan in de tabel Taak (one to many).
We zijn op de layout van tabel Project. Met gebruikt van scriptsteps zoals Go To Layout en New Record/Request is een gerelateerde taak te maken. Maar dat is niet de bedoeling. Hoe zou dit anders kunnen?
Waarschijnlijk is Set Field scriptstep nodig. Volgens de beschrijving van de Magic Key (https://filemakerhacks.com/tag/magic-key/) of het Connector-Selector model (https://www.seedcode.com/filemaker-data ... connector/) zou dit moeten kunnen. Zijn er andere oplossingen?

Gebruikersavatar
René Ros
Site Admin
Berichten: 50
Lid geworden op: 26 feb 2017 20:46

Re: Maken van gerelateerd record met een script zonder layout te verlaten

Bericht door René Ros » 01 dec 2018 12:18

Wellicht kan je ook zeggen waarom je dat wilt? Als het doel bekend is, kan vaak een passender antwoord gegeven worden. Ik neem even aan dat je alles (selecties, tabs e.d.) onaangeroerd wilt laten voor de gebruiker. Volgens mij heb je dan twee mogelijkheden:

1) Als de portaal een relatie gebruikt waarbij de optie is ingeschakeld om nieuwe records te maken dan is dit een mogelijkheid:
Ga naar veld [<veld in portaal >] of Ga naar object [<naam van portaal>]
Ga naar portaalrij [Laatste]
If [IsValid ( <sleutelveld in gerelateerde tabel> ) ]
Veld instellen [<veld in gerelateerde tabel>]
End If
Zwakte is dat het afhankelijk is van een portaal en een relatie-instelling. Om uitschakeling van die instelling te ondervangen is de If[] scriptstap toegevoegd.

2) Maak een nieuw venster, doe de scriptstappen die je noemde en sluit het venster dan weer. Het huidige record (Project in jouw voorbeeld) is mogelijk gelockd, wellicht eerst Record Vastleggen gebruiken.
Deze methode is veiliger en vormt ook beter herbruikbare code.

Mvg,
René
Met vriendelijke groet,
René Ros

FMTraining
Hét FileMaker trainingsinstituut van Nederland.

Plaats reactie

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers en 1 gast