Exempel på uppdatering av plugin-program
I följande exempel jämförs det installerade plugin-programmets version med den version som finns i ett containerfält i FileMaker Pro-filen, och sedan uppdateras plugin-programmet om det behövs.
- I den anpassade appfilen skapar du en tabell med namnet Plugin-uppdateringför lagring av plugin-information.
- Definiera följande fält:
- Skapa en layout med namnet Information om plugin-uppdatering och lägg till de fält du definierade i steg 2.
- Skapa följande script med namnet Installera Plug-In:KopieraManuell felhantering [På]
 Installera Plug-In [Plugin-uppdatering::Plugin-fil]
 #
 #Hantera fel
 If [Get ( SenasteFel ) ≠ 0]
 If [Get ( SenasteFel ) = 3]
 Visa anpassad dialogruta [Plugin-uppdatering::Plugin-fil & " gick inte att installera. Kontrollera att Tillåt lösningar att installera filer är markerat i FileMaker Pro-inställningarna för plugin-program."]
 Else If [Get ( SenasteFel ) = 1550]
 Visa anpassad dialogruta [Plugin-uppdatering::Plugin-fil & " har installerats men kunde inte initieras."]
 Else If [ Get ( SenasteFel ) = 1551]
 Visa anpassad dialogruta [Plugin-uppdatering::Plugin-fil & " kunde inte installeras."]
 Else
 Visa anpassad dialogruta ["Ett allmänt fel " & Get ( SenasteFel ) & " uppstod vid installationen av " & Plugin-uppdatering::Plugin-fil]
 End If
 End If
- Skapa följande script med namnet Kontrollera plugin-versioner.KopieraGå till layout ["Information om plugin-uppdatering"]
 Gå till post/sökpost/sida[Första]
 Loop [ Rensa: Alltid ]
 If [Plugin-uppdatering::Installerad plugin-version < Plugin-uppdatering::Krävd plugin-version]
 #Plugin-program måste installeras eller uppdateras.
 Utför script [Angivet: Från lista ; "Installera plugin" ;
 Parameter: ]
 End If
 Gå till post/sökpost/sida [Nästa; Avbryt efter sista: På]
 End Loop
- Skapa följande script med namnet Kontrollera aktivering:KopieraManuell felhantering [På]
 Utför sökning [Återställ]
 #Sökning efter "Aktiverad" i statusfältet för det installerade plugin-programmet
 If [Get ( HittadePoster ) < Get ( TotaltAntalPoster )]
 Visa anpassad dialogruta ["Vissa plugin-program som krävs är inte aktiverade. Kontrollera att Tillåt lösningar att installera filer är markerat i FileMaker Pro-inställningarna för plugin-program."]
 End If
- Skapa ett startscript med namnet Script för plugin-uppdatering som refererar till ovanstående scripts i rätt ordning när databasen öppnas:KopieraUtför script [Angivet: Från lista ; "Kontrollera plugin-versioner" ;
 Parameter: ]
 Utför script [Angivet: Från lista ; "Kontrollera om aktiverad" ;
 Parameter: ]
 Gå till layout [ursprunglig layout ; Animering: Ingen]
| Fältnamn | Fälttyp | 
| Plugin-namn | text | 
| Plugin-version som krävs | nummer | 
| Installerad plugin-version | beräkning (ej lagrad). Exempel på kod finns i Beräkning av klienters plugin-version nedan. | 
| Installerad plugin-status | beräkning (ej lagrad). Exempel på kod finns i Beräkning av klienters plugin-programs aktiveringsstatus nedan. | 
| Plugin-fil | container | 
Beräkning av klienters plugin-version
Kopiera
                                            
                                        
                                        Let (
    [
    PluginNamePosition = Position ( Get(InstalleradeFMPlugin); Plugin Name ; 1 ; 1 );
    PluginVersionStart = PluginNamePosition + Length( Plugin Name ) + 1;
    PluginVersionEnd = Position ( Get(InstalleradeFMPlugin); ";" ; PluginNamePosition ; 2 );
    PluginVersionLength = PluginVersionEnd - PluginVersionStart
    ];
    If ( PatternCount ( Get (InstalleradeFMPlugin) ; Plugin Name ) = 0 ; "" ; Middle ( Get(InstalleradeFMPlugin) ; PluginVersionStart ; PluginVersionLength ) )
)Beräkning av klienters plugin-programs aktiveringsstatus
Kopiera
                                            
                                        
                                        Let (
    [
    PluginNamePosition = Position ( Get(InstalleradeFMPlugin); Plugin Name ; 1 ; 1 );
    PluginStateStart = Position ( Get(InstalleradeFMPlugin); ";" ; PluginNamePosition ; 2 ) + 1;
    PluginStateEnd = If ( Position ( Get(InstalleradeFMPlugin); "¶" ; PluginNamePosition ; 1 ) > 0; Position ( Get(InstalleradeFMPlugin); "¶" ; PluginNamePosition ; 1 ); Length( Get(InstalleradeFMPlugin) ) + 1 );
    PluginStateLength = PluginStateEnd - PluginStateStart
    ];
    If ( PatternCount ( Get (InstalleradeFMPlugin) ; Plugin Name ) = 0 ;
    "" ; Middle ( Get(InstalleradeFMPlugin) ; PluginStateStart ; PluginStateLength ) )
)Kommentarer
- Om du vill att plugin-program ska installeras, måste alternativet Tillåt lösningar att installera filer vara markerat i klientinställningarna för plugin-program. Mer information finns i Ändra plugin-inställningar.
- Om ett plugin-program har inaktiverats i klientinställningarna för plugin-program kommer det att installeras, men inte vara tillgängligt förrän det aktiveras manuellt av användaren.
- Endast ett plugin-program kan lagras i respektive containerfält, men du kan visa all plugin-information genom att skapa flera plugin-containerfält i en och samma layout.