Exception beim Laden eines Rezeptes (behoben ab V3.14)

Behoben ab:
PLC Designer V3.14
 
Verhalten der neuen Version:
Mit der Methode LoadFromAndWriteRecipe kann ein Rezept aus einer Rezeptdatei gelesen und dann die Werte in die entsprechenden Variablen des PLC Projekts geschrieben werden. Eine Exception tritt dabei nicht auf.
 
Beschreibung des Verhaltens:
Die PLC Abarbeitung stoppt mit einem Ausnahmefehler. Im Logbuch ist folgende Fehlermeldung eingetragen:
*EXCEPTION* [AccessViolation] occurred: App=[Application], Task=[Taskname] 
 
Unter welchen Bedingungen tritt das Verhalten auf?
Das Verhalten tritt auf, wenn die Methode LoadFromAndWriteRecipe des Funktionsbausteins RecipeManCommands aus der Bibliothek RecipeManagement verwendet wird.
Mit der Methode LoadFromAndWriteRecipe wird ein Rezept aus einer Rezeptdatei gelesen und dann die Werte in die entsprechenden Variablen des PLC Projekts geschrieben.
 
Betroffene Produkte:
PLC Designer ab V3.12
 
Kurzfristige Maßnahmen:
Damit der Ausnahmefehler nicht auftritt, rufen Sie vor dem Aufruf der Methode LoadFromAndWriteRecipe die Methode GetRecipeCount auf, z.B. folgendermaßen:
dwRetValueOfMethod := RecipeManCommands.GetRecipeCount(
                         RecipeDefinitionName:= sRecipeDefinitionName);
dwRetValueOfMethod := RecipeManCommands.LoadFromAndWriteRecipe(
                         RecipeDefinitionName := sRecipeDefinitionName,
                         RecipeName := sRecipeName,
                         FileName:=sFileName);

Die Methode GetRecipeCount gibt die Anzahl der Rezepturen innerhalb der Rezepturdefinition aus.
 
Bewertung/Empfehlungen:
Bei Verwendung des Rezepturverwalters im PLC Projekt kann die Ausführung der Methode LoadFromAndWriteRecipe zu einem Ausnahmefehler und damit zum Stoppen der PLC Abarbeitung führen. Unter 'Kurzfristige Maßnahmen' ist eine Abhilfe beschrieben. 

URL zur Verlinkung dieses AKB-Artikels: https://www.lenze.com/de-de/go/akb/201600132/0/
Kontaktformular