Utför script på server med återanrop

Utför ett script på den server som den aktuella filen delas från, utan att pausa klienten, och utför angivet återanropsscript på klienten när serverscriptet är klart.

Tillval 

  • Script är det script som ska köras på servern.

  • Återanropsscript är det script som ska köras på klienten när serverscriptet har slutförts på servern.

Kompatibilitet 

Produkt Stöds

FileMaker Pro

Ja

FileMaker Go

Ja

FileMaker WebDirect

Ja

FileMaker Server

Nej

FileMaker Cloud

Nej

FileMaker Data API

Nej

Anpassad webbpublicering

Nej

Ursprungsversion 

20.1

Beskrivning 

Den aktuella filen måste finnas på FileMaker Server eller FileMaker Cloud. Annars returnerar det här scriptsteget ett fel. Mer information finns i Om att köra scripts på FileMaker Server och FileMaker Cloud.

Återanropsscriptet schemaläggs för att köras på klienten efter det att eventuella pågående script har slutförts, precis som script som utlöses av scriptsteget Installera OnTimer-script och scripttriggern VidFönsterTransaktion. Det är inte känt i vilken kontext scriptet körs och scriptet kan inte vara beroende av att kontexten ska vara densamma som när scriptsteget kördes. Vid behov kan du använda återanropsscriptets parameter för att skicka med tillräcklig kontext så att det körs som förväntat på klienten, till exempel vilken layout och vilka hittade poster som ska användas.

Obs!  Om du anger en beräkning som parameter i återanropsscriptet, utförs beräkningen när återanropsscriptet körs på klienten.

I exemplet nedan skulle ingenting returneras eftersom $data inte finns när återanropsscriptet körs på klienten.

  • Anropare

    • Ange variabel [ $data ; Värde: 1 ]

    • Utför script på server med återanrop [ Script: "Test" ; Återanropsscript: "Återanrop" ; Parameter: $data ]

  • Test

    • Ange variabel [ $data ; Värde: 2 ]

  • Återanrop

    • Ange variabel [ $parameter ; Värde: Get ( Scriptparameter ) ]

    • Visa anpassad dialogruta [ $parameter ]

Exempel 1 

Kör ett script på servern och skickar aktuellt layoutnamn, kund-ID och kundens e-postadress som scriptparameter. Servern navigerar till den layout och den post som har angetts i parametern, sparar en länk till ögonblicksbilden av den aktuella posten, skickar länken till ögonblicksbilden till den e-postadress som angetts i parametern och returnerar ett resultat. Klienten hämtar scriptresultatet från servern och visar det i en anpassad dialogruta.

Huvudscript: Skicka länk till ögonblicksbild med e-post (Klient)

Kopiera
Utför script på server med återanrop [ Script: "Skicka länk till ögonblicksbild med e-post (Server)" ; Parameter: List ( Get ( Layoutnamn ) ; Kunder::ID ; Kunder::Epost ) ; Återanropsscript: "Slutmeddelande (Klient)" ]

Delscript: Skicka länk till ögonblicksbild med e-post (Server)

Kopiera
Gå till layout [GetValue ( Get ( Scriptparameter ) ; 1 ) ; Animering: Ingen ]
Sök [ Paus: Av ]
Tilldela fält [Kunder::ID; GetValue ( Get ( Scriptparameter ) ; 2 ) ]
Utför sökning [ ]
Ange variabel [$SÖKVÄG ; Värde: Get ( TemporärSökväg ) & "Ögonblicksbild.fmpsl" ]
Spara poster som ögonblicksbildlänk [ "$SÖKVÄG" ; Aktuell post ; Skapa mappar: Av ]
Skicka e-post [ Skicka via SMTP-server; Ingen dialogruta ; Till: GetValue ( Get ( Scriptparameter ) ; 3 ) ; "$SÖKVÄG" ]
Avsluta script [ Textresultat: "Länk till ögonblicksbild skickades." ]

Återanropsscript: Slutmeddelande (Klient)

Kopiera
Visa anpassad dialogruta [ Get ( Scriptresultat ) ]

Kommentarer 

  • Återanropsscriptet anropas inte i följande scenarier:

    • Servern eller klienten avslutas oväntat.

    • Användaren avslutar klienten eller stänger filen innan scriptet på servern har slutförts.

    • Nätverksanslutningen bryts medan scriptsteget körs. Men återanropsscriptet körs om anslutningen återupprättas inom 10 minuter efter det att serverscriptet slutfördes.

  • Flera instanser av scriptsteget kan köras i följd. Återanropsscripten körs i den ordning scriptstegen slutförs.

  • Om inget återanropsscript anges fungerar det här scriptsteget ungefär som scriptsteget Utför script på server.