Skapa en lösning > Arbeta med plugin-program > Exempel på uppdatering av plugin-program
 
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.
1. I lösningsfilen skapar du en tabell med namnet Plugin-uppdatering för lagring av plugin-information.
2. Definiera följande fält:
 
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
3. Skapa en layout med namnet Information om plugin-uppdatering och lägg till de fält du definierade i steg 2.
4. Skapa följande script med namnet Installera plugin-program:
Manuell 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 & " installerades men kan inte startas."]
Else If [Get ( SenasteFel ) = 1551]
Visa anpassad dialogruta [Plugin-uppdatering::Plugin-fil & " gick inte att installera."]
Else
Visa anpassad dialogruta ["Ett generellt fel " & Get ( SenasteFel ) & " uppstod under installation av " & Plugin-uppdatering::Plugin-fil]
End If
End If
5. Skapa följande script med namnet Kontrollera plugin-versioner.
Gå till layout ["Information om plugin-uppdatering"]
Gå till post/sökpost/sida[Första]
Loop
If [Plugin-uppdatering::Installerad plugin-version < Plugin-uppdatering::Krävd plugin-version]
#Plugin-program måste installeras eller uppdateras.
Utför script ["Installera plugin-program"]
End If
Gå till post/sökpost/sida [Nästa; Avbryt script efter alla: På]
End Loop
6. Skapa följande script med namnet Kontrollera aktivering:
Manuell felhantering [På]
Utför sökning [Spara]
#Sökning efter "Aktiverad" i statusfältet för det installerade plugin-programmet
If[Get (HittadePoster) 0]
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
7. Skapa ett startscript med namnet Script för plugin-uppdatering som refererar till ovanstående scripts i rätt ordning när databasen öppnas:
Utför script ["Kontrollera plugin-versioner"]
Utför script ["Kontrollera aktivering"]
Gå till layout [ursprunglig layout]
Beräkning av klienters plugin-version
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
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 ) )
)
Relaterade avsnitt 
Skapa egna plugin-program
Get ( InstalleradeFMPlugin )
Installera Plug-In