Namensraum Isom.Plan.TherapyPlanAction
Beschreibung
Therapieplanaktionen sind die konstituierenden aktiven Elemente, aus denen sich eine Therapiesitzung zusammensetzt. Sämtliche Fahrzeug-verändernden Tätigkeiten sollten als Aktionen implementiert werden.
Ihr Wirkungsgefüge wird im Therapieplan (Typ Isom.Plan.TherapyPlan
) gespeichert, ihre Ausführungsreihenfolge im Aktionsplan Isom.Plan.ActionPlan
Die Klassifizierung von Therapieplanaktionen umfasst folgende Unterscheidungen:
- virtuelle Aktionen = nicht-Blatt-Knoten im Therapiebaum, entsprechen den Aktionen, die an die Filter...()- Funktion übergeben wurden
- ausführbare Aktionen = konkrete Aktionen = Aktionen, für die kein Filter angewendet oder die aufrund eines Rekursionsabbruches direkt eingefügt wurden. Für diese muss eine Ausführungsfunktion Do<Name>() in ISOM/L definiert sein.
- nicht Steuergeräte-bezogene Aktion = Aktion, die entweder auf mehrere Steuergeräte oder auf kein Steuergerät oder auf das Gesamtfahrzeug wirkt.
- Steuergeräte-bezogene Aktion = Aktion, die ausschließlich auf ein Steuergerät wirkt.
Funktionen
|
Isom.Plan.TherapyPlanAction.CanRunOnly |
Prüft, ob Aktion an einer beliebigen Stelle im Prozessablauf über Processes.RunAction()
ausgeführt werden kann (beispielsweise Diagnose-Aktionen).
Prüft, ob Aktion an einer beliebigen Stelle im Prozessablauf über Processes.RunAction()
ausgeführt werden kann (beispielsweise Diagnose-Aktionen).
-
Zu beachten:
- Der Ergebniswert ist 'true', wenn (1a) die Aktion in [EditibleAction] bzw. (1b) [EditibleEcuAction] als sofort ausführbar gekennzeichnet (1c) (bzw. über SetCanRunOnly() gesetzt wurde ) und gleichzeitig (2) der zugeordnete Sichtbarkeitsterm dynamisch erfüllt ist.
- vs. CanExecuteImmediate()
- Ein Wert 'true' für dieses Flag schließt sämtliche anderen InsertableAction-Flags aus.
-
Rückgabe:
- 'true' wenn in jeder Situation sofort ausführbar, 'false' sonst.
|
Isom.Plan.TherapyPlanAction.Clone |
Erzeugt eine identische Kopie des Objekts.
Erzeugt eine identische Kopie des Objekts.
-
Rückgabe:
- Isom.Plan.TherapyPlanAction
Das geklonte Objekt.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetActionPlanGroup |
Liefert die Ausführungsgrupe, zu der die Aktion gehört.
Liefert die Ausführungsgrupe, zu der die Aktion gehört.
-
Rückgabe:
- Ausführungsgrupe
-
Ausnahmebehandlung:
- Es wird
Isom.Base.String.Void
zurückgegeben, falls die Ausführungsgrupe für die Aktion nicht gesetzt ist.
-
Siehe auch:
-
Isom.Plan.ActionPlan.SetExecutionOrderGroup
- Annotation
[ActionPlanGroup]
|
Isom.Plan.TherapyPlanAction.GetActionText |
Liefert den vom Autor per [Editable[Ecu]Action(…, TextID, …)]
vorgegebenen übersetzbaren Text.
Liefert den vom Autor per [Editable[Ecu]Action(…, TextID, …)]
vorgegebenen übersetzbaren Text.
-
Verwendungsbeispiel:
TherapyPlanActionList list = tPlan.GetEditableActions();
while(list.HasNext() )
{
System.Stdout( list.Next().GetActionText());
}
CurrentVehicleContext currentContext = CurrentVehicleContext.GetInstance();
EcuList ecuList = currentContext.GetEcus();
while( ecuList.HasNext() )
{
Ecu ecu = ecuList.Next();
list = ecu.GetEditableActions();
while(list.HasNext() )
{
System.Stdout( list.Next().GetActionText());
}
}
-
Rückgabe:
- Name der Aktion (case-sensitiv).
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls für die Aktion kein übersetzbarer Text bekannt ist.
|
Isom.Plan.TherapyPlanAction.GetActivationCode |
Liefert den Freischaltcode, auf den sich die Aktion bezieht oder Void.
Liefert den Freischaltcode, auf den sich die Aktion bezieht oder Void.
-
Verwendungsbeispiel:
using Isom.Base.*;
using Isom.Context.*;
using Isom.Global.Config;
...
ActivationCode ac = action.GetActivationCode();
-
Rückgabe:
- Freischaltcode oder Void.
|
Isom.Plan.TherapyPlanAction.GetContinueOnError |
Fragt das Verhalten des Therapieplan-orientierten Abbruchmodells für diese Aktion ab.
Fragt das Verhalten des Therapieplan-orientierten Abbruchmodells für diese Aktion ab.
Mit dieser Funktion lässt sich abfragen, ob nach einem Fehler bei Ausführung der Aktion weitere Aktionen für das Steuergerät ausgeführt werden dürfen.
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn bei Fehlschlag der Aktion mit anderen Aktionen im Therapiebaum fortgefahren wird
'false', wenn bei Fehlschlag der Aktion nicht mit anderen Aktionen im Therapiebaum fortgefahren wird
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetContinueOnError() für die zugehörige Setter-Funktion.
- Annotation
[ContinueOnError]
-
Isom.Plan.TherapyPlanAction.GetContinueWithEcuOnError() für Steuergeräte-bezogenes Abbruchmodell.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetContinueWithEcuOnError |
Fragt das Verhalten des Steuergeräte-orientierten Abbruchmodells für diese Aktion ab.
|
objectbound Isom.Base.Boolean Isom.Plan.TherapyPlanAction.GetContinueWithEcuOnError |
( |
) |
|
Fragt das Verhalten des Steuergeräte-orientierten Abbruchmodells für diese Aktion ab.
Mit dieser Funktion lässt sich abfragen, ob nach einem Fehler bei Ausführung der Aktion weitere Aktionen für das Steuergerät ausgeführt werden dürfen.
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn bei Fehlschlag der Aktion mit anderen Aktionen für dieses Steuergerät fortgefahren wird
'false', wenn bei Fehlschlag der Aktion nicht mit anderen Aktionen für dieses Steuergerät fortgefahren wird
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetContinueWithEcuOnError() für die zugehörige Setter-Funktion.
- Annotation
[ContinueWithEcuOnError]
-
Isom.Plan.TherapyPlanAction.GetContinueOnError() für Therapieplan-bezogenes Abbruchmodell.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetDependantActionsToRefilter |
Liefert Aktionen, die neu gefiltert werden müssen, wenn die aktuelle Aktion entfernt wird.
Liefert Aktionen, die neu gefiltert werden müssen, wenn die aktuelle Aktion entfernt wird.
Die Liste wird vom ISOM-Kern aktualisiert, wenn Aktionen zum Therapieplan hinzugefügt oder aus dem Therapieplan entfernt werden. Der Aufruf kann auf einer bereits im Therapieplan befindlichen Aktion oder auf einer als Suchmuster fungierenden, "freistehenden" Aktion (beispielsweise InsertableAction) erfolgen. Im letzteren Fall wird über Isom.Plan.TherapyPlan.GetActions()
die letzte semantisch gleiche Aktion gesucht und verwendet.
-
Rückgabe:
- Isom.Plan.TherapyPlanActionList
Abhängige Aktionen, die nach einem Entfernen dieser Aktion neu gefiltert werden müssen.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls die Liste noch nicht existiert.
- Es wird das Void-Objekt zurückgegeben, falls die Liste explizit auf Void gesetzt wurde.
- Es wird das Void-Objekt zurückgegeben, falls die oben beschriebene Suche kein passendes Element ergibt.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetDependantActionsToRefilter()
-
Isom.Plan.TherapyPlanAction.GetDependantActionsToRemove()
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetDependantActionsToRemove |
Liefert Aktionen, die mit entfernt werden müssen, wenn die aktuelle Aktion entfernt wird.
Liefert Aktionen, die mit entfernt werden müssen, wenn die aktuelle Aktion entfernt wird.
Die Liste wird vom ISOM-Kern aktualisiert, wenn Aktionen zum Therapieplan hinzugefügt oder aus dem Therapieplan entfernt werden. Der Aufruf kann auf einer bereits im Therapieplan befindlichen Aktion oder auf einer als Suchmuster fungierenden, "freistehenden" Aktion (beispielsweise InsertableAction) erfolgen. Im letzteren Fall wird über Isom.Plan.TherapyPlan.GetActions()
die letzte semantisch gleiche Aktion gesucht und verwendet.
-
Parameter:
-
|
transitive
|
wenn 'true', werden auch alle Aktionen geliefert, die von Aktionen abhängig sind, die von dieser Aktion abhängig sind ("Transitive Hülle"). wenn 'false', werden nur Aktionen geliefert, die von dieser Aktion direkt abhängig sind. |
-
Rückgabe:
- Isom.Plan.TherapyPlanActionList
Abhängige Aktionen, die mit entfernt werden müssen.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls die Liste noch nicht existiert.
- Es wird das Void-Objekt zurückgegeben, falls die Liste explizit auf Void gesetzt wurde.
- Es wird das Void-Objekt zurückgegeben, falls die oben beschriebene Suche kein passendes Element ergibt.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetDependantActionsToRemove()
-
Isom.Plan.TherapyPlanAction.GetDependantActionsToRefilter()
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetDependentActions |
Liefert die abhängigen Aktionen der Therapieplanaktion.
Liefert die abhängigen Aktionen der Therapieplanaktion.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
TherapyPlanActionList dependentActions = action.GetDependentActions();
-
Rückgabe:
- Liste der abhängigen Aktionen
|
Isom.Plan.TherapyPlanAction.GetDisplayProp |
Setzt den Wert der vorgegebenen Anzeigeeigenschaft für die Aktion.
Setzt den Wert der vorgegebenen Anzeigeeigenschaft für die Aktion.
-
Zu beachten:
- Die unterstützten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
- Es gilt die Initialisierungsreihenfolge: ContextConfiguration -> CurrentVehicleContext -> FutureVehicleContext
-
Verwendungsbeispiel:
deftext INTERNAL FLASH_ACTION "Programmieren"
using Isom.Base.*
...
Ecu ecu = ...
String val = ecu.GetDisplayProp( Consts.FLASH_ACTION );
-
Rückgabe:
- Wert der Eigenschaft.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls der Wert ungesetzt oder gleich "" ist.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetDisplayProp()
|
Isom.Plan.TherapyPlanAction.GetDisplayPropNames |
Liefert die Namen aller Anzeige-Eigenschaften der Aktion.
Liefert die Namen aller Anzeige-Eigenschaften der Aktion.
Es werden die Eigenschaftsnamen für die Anzeige-Eigenschaften (siehe Isom.Plan.TherapyPlanAction.GetDisplayProp()) zurückgeliefert. Die systemseitig ermittelten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
-
Rückgabe:
- Isom.Base.StringList
Liste der Namen aller Anzeige-Eigenschaften der Aktion.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetDisplayProp()
-
Datum:
- letzte Änderung am 09.09.2010
|
Isom.Plan.TherapyPlanAction.GetDisplayState |
Ruft den Anzeigezustand der Aktion ab.
Ruft den Anzeigezustand der Aktion ab.
-
Rückgabe:
- Anzeigezustand der Aktion.
|
Isom.Plan.TherapyPlanAction.GetEcu |
Liefert das assoziierte Steuergeräte-Fachobjekt oder Void.
Liefert das assoziierte Steuergeräte-Fachobjekt oder Void.
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.TherapyPlanAction;
using Isom.Context.Ecu;
...
Boolean Filter...( TherapyPlanAction action )
{
Ecu ecu = action.GetEcu();
if( ecu.IsVoid().Not() )
ecu.Store...();
else
Deploy....();
...
}
-
Rückgabe:
- Assoziiertes Ecu-Objekt für steuergerätebezogene Aktionen oder Void-Objekt, wenn kein Steuergerät assoziiert wurde.
|
Isom.Plan.TherapyPlanAction.GetEstimatedRuntime |
Fragt die prognostizierte Laufzeit für die Aktion ab.
|
objectbound Isom.Base.Number Isom.Plan.TherapyPlanAction.GetEstimatedRuntime |
( |
) |
|
Fragt die prognostizierte Laufzeit für die Aktion ab.
-
Verwendungsbeispiel:
Number time = tpa.GetEstimatedRuntime ();
-
Rückgabe:
- Prognostizierte Laufzeit in Sekunden.
|
Isom.Plan.TherapyPlanAction.GetExecutedByIsom |
Ruft ab, ob die Aktion durch eine Ausführungsfunktion ausgeführt wird.
Ruft ab, ob die Aktion durch eine Ausführungsfunktion ausgeführt wird.
Eine Ausführungsfunktion wird in ISOM/L implementiert. Ihr Name besteht aus Do
und dem Namen der Aktion. Für Aktionen, die im Rahmen einer asynchronen Phase ausgeführt werden, wird z. B. keine Ausführungsfunktion aufgerufen.
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn ISOM bei der Aktionsausführung die entsprechende Ausführungsfunktion aufruft
'false', sonst
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetExecutedByIsom() für die zugehörige Setter-Funktion.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.GetFinishTime |
Fragt den Zeitpunkt ab, zu dem die Aktion beendet wurde.
|
objectbound Isom.Base.Date Isom.Plan.TherapyPlanAction.GetFinishTime |
( |
) |
|
Fragt den Zeitpunkt ab, zu dem die Aktion beendet wurde.
Der Rückgabewert kann das Void-Objekt sein, falls die Aktion noch nicht beendet wurde.
-
Zu beachten:
- Zusammen mit der Funktion 'GetStartTime()' lässt sich somit die gesamte Zeitdauer der Aktion berechnen. Im Unterschied zu 'GetProcessedTime()' enthält die somit berechnete Zeitspanne auch die Zeit, in der Benutzeranfragen angezeigt werden.
-
Verwendungsbeispiel:
Date startTime = tpa.GetStartTime();
Date finishTime = tpa.GetFinishTime();
Number actualDurationInSeconds = finishTime.ElapsedTime(startTime);
-
Rückgabe:
- Zeitpunkt, zu dem die Aktion beendet wurde.
|
Isom.Plan.TherapyPlanAction.GetFlashFlags |
Ruft die Flags für den Flashvorgang ab.
Ruft die Flags für den Flashvorgang ab.
Die Flags werden durch eine ganze Zahl repräsentiert.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
Number flashFlags = action.GetFlashFlags();
-
Rückgabe:
- Die Flags für den Flashvorgang als ganze Zahl.
|
Isom.Plan.TherapyPlanAction.GetLogicalUnits |
Liefert die Liste der logischen Einheiten, die von der Aktion betroffen sind.
Liefert die Liste der logischen Einheiten, die von der Aktion betroffen sind.
-
Verwendungsbeispiel:
-
Rückgabe:
- Liste der logischen Einheiten, die von der Aktion betroffen sind Die Liste kann leer sein, aber nicht das Void-Objekt
|
Isom.Plan.TherapyPlanAction.GetLogicalVehicles |
Ermittelt die Liste verwendbarer logischer Fahrzeuge.
Ermittelt die Liste verwendbarer logischer Fahrzeuge.
-
Zu beachten:
- Über diese logischen Fahrzeuge wird bei Fahrzeugzugriffen während der Aktionsausführung iteriert.
- Die Reihenfolge der logischen Fahrzeuge in der Liste bestimmt über die Zugriffsreihenfolge.
- Für steuergerätebezogene und zusammengesetzte Aktionen ermittelt ISOM die Liste automatisch.
-
Rückgabe:
-
Isom.Context.LogicalVehicleList
Liste verwendbarer logischer Fahrzeuge
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetLogicalVehicles
-
Seit:
- Eingeführt mit BZ-12385/BZ-12497/WA-588-5637 (Mischbordnetze).
-
Datum:
- letzte Änderung am 29.06.2011
|
Isom.Plan.TherapyPlanAction.GetMissingFiles |
Überprüft, ob zu allen Aktionen des Therapieplans die erforderlichen Steuergerätedaten vorhanden sind.
Überprüft, ob zu allen Aktionen des Therapieplans die erforderlichen Steuergerätedaten vorhanden sind.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
action.GetMissingFiles();
String missingSwu = action.GetProp("Swu:Missing");
if (missingSwu.Equals("").Not())
{
}
...
-
Rückgabe:
-
Isom.Base.Boolean
true
im Erfolgsfall, false
sonst.
|
Isom.Plan.TherapyPlanAction.GetName |
Liefert den vom Autor definierten Namen der Aktion.
Liefert den vom Autor definierten Namen der Aktion.
-
Rückgabe:
- Name der Aktion (case-sensitiv).
|
Isom.Plan.TherapyPlanAction.GetOrderingInfoList |
Liefert Bestellinformationen für das Steuergerät.
Liefert Bestellinformationen für das Steuergerät.
-
Verwendungsbeispiel:
using Isom.Base.*;
using Isom.Context.*;
...
OrderingInfoList oiList = action.GetOrderingInfoList();
...
-
Rückgabe:
- Liste von Bestellalternativen.
|
Isom.Plan.TherapyPlanAction.GetPhase |
Fragt den Sortierindex für die Aktionsplanphase ab, in der die Aktion ausgeführt wird.
Fragt den Sortierindex für die Aktionsplanphase ab, in der die Aktion ausgeführt wird.
Der vorgegebene Sortierindex ist eine ganze Zahl. Es wird normalerweise von der Logistik festgelegt, kann aber vom Autor angegeben werden. Ein kleinerer Sortierindex bewirkt eine frühere Ausführung der Aktion.
Die Abbildungen für die systemseitig ermittelten Sortierkriterien sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der jeweils zugeordneten Phase und daher stets sequentiell ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex, aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
Number flashPhase = action.GetPhase();
-
Rückgabe:
- Sortierindex für die Aktionsplanphase (ganze Zahl).
|
Isom.Plan.TherapyPlanAction.GetPossibleLChannels |
Ermittelt die für die Aktionsausführung alternativ zueinander zulässigen L-Kanäle.
Ermittelt die für die Aktionsausführung alternativ zueinander zulässigen L-Kanäle.
-
Verwendungsbeispiel:
using Isom.Base.*;
using Isom.Context.*;
...
StringList possibleChannels = action.GetPossibleLChannels();
String msg = "Für die Aktion ";
msg.Append(action.GetName());
msg.Append(" wurden mögliche Kanäle ");
msg.Append(possibleChannels.Concat(";"));
msg.Append(" gefunden.");
Log.Error ("", msg);
...
-
Rückgabe:
- Liste der L-Kanäle.
|
Isom.Plan.TherapyPlanAction.GetPriority |
Fragt einen Sortierindex für die Aktionsausführung ab, der innerhalb der Aktionsplanphase durch Kanalauswahl oder durch Trennung der Aktionsplanphasen (Phasenbruch) erzwungen wird.
Fragt einen Sortierindex für die Aktionsausführung ab, der innerhalb der Aktionsplanphase durch Kanalauswahl oder durch Trennung der Aktionsplanphasen (Phasenbruch) erzwungen wird.
Der Sortierindex ist eine ganze Zahl. Er wird von einigen Logistiken festgelegt, kann aber vom Autor überschrieben werden.
Die Abbildungen für die systemseitig ermittelten Sortierindizes sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der getrennten Phasen und daher stets sequentiell zueinander ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex,aber verschiedenen Prioritäten werden innerhalb derselben Phase und im selben Aktionsplanpfad und damit stets sequentiell ausgeführt, soweit dies mit den Kanalvorgaben der Aktionen vereinbar ist. Lassen die Kanalvorgaben dies nicht zu, wird die Sequentialität erzwungen, indem die Aktionen in verschiedenen Aktionsplanphasen eingeplant werden (Phasenbruch). Prioritätsindizes werden dabei aufsteigend sortiert.
(3) Zwei beliebige Aktionen mit gleichem Phasenindex, gleicher Priorität aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden. Sequenzindizes werden dabei aufsteigend sortiert.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
Number flashSequence = action.GetPriority();
-
Rückgabe:
- Aktionsplanpfad-übergreifender Sortierindex (ganze Zahl).
|
Isom.Plan.TherapyPlanAction.GetProcessedRuntime |
Liefert die tatsächliche Zeitdauer der Aktion.
|
objectbound Isom.Base.Number Isom.Plan.TherapyPlanAction.GetProcessedRuntime |
( |
) |
|
Liefert die tatsächliche Zeitdauer der Aktion.
-
Zu beachten:
- Der Rückgabewert kann das Void-Objekt sein, falls die Aktion noch nicht gestartet oder beendet wurde.
- Diese Zeitdauer schließt nicht die Anzeige von Benutzeranfragen ein.
-
Verwendungsbeispiel:
Data planEntry = Data.Create(Consts.PROTOCOLTAG_ACTION_PLAN);
Number n = ap.GetProcessedRuntime ();
planEntry.AddAttribute (Consts.PROTOCOLATTR_PHASE_TOTAL_TIME, n.ToIntString ());
-
Rückgabe:
- Tatsächliche Zeitdauer der Aktion in Sekunden.
|
Isom.Plan.TherapyPlanAction.GetProp |
Ermittelt den Wert der vorgegebenen Eigenschaft (property) für die Aktion.
Ermittelt den Wert der vorgegebenen Eigenschaft (property) für die Aktion.
Die systemseitig ermittelten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
-
Verwendungsbeispiel:
using Isom.Base.*
...
String val = action.GetProp( "ErrorX" );
-
Rückgabe:
- Diagnoseadresse.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls der Wert ungesetzt oder gleich "" ist.
|
Isom.Plan.TherapyPlanAction.GetPropNames |
Liefert die Namen aller technischen Eigenschaften der Aktion.
Liefert die Namen aller technischen Eigenschaften der Aktion.
Es werden die Eigenschaftsnamen für die technischen Eigenschaften (siehe Isom.Plan.TherapyPlanAction.GetProp()) zurückgeliefert. Die systemseitig ermittelten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
-
Rückgabe:
- Isom.Base.StringList
Liste der Namen aller technischen Eigenschaften der Aktion.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetProp()
-
Datum:
- letzte Änderung am 09.09.2010
|
Isom.Plan.TherapyPlanAction.GetReasonForFailedDependency |
Liefert die Kette der fehlgeschlagenen Aktionen, die der Grund für das abhängige Fehlschlagen dieser Aktion waren.
Liefert die Kette der fehlgeschlagenen Aktionen, die der Grund für das abhängige Fehlschlagen dieser Aktion waren.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
TherapyPlanActionList actions = action.GetReasonForFailedDependency();
-
Rückgabe:
- Referenz auf die fehlgeschlagenen Aktionen: Den Anfang der Liste (Index 0) bildet die Aktion, deren Ausführung gescheitert ist. Die weiteren Einträge können andere abhängig fehlgeschlagene Aktionen sein, wenn eine Abhängigkeitskette existiert.
|
Isom.Plan.TherapyPlanAction.GetSequence |
Fragt den Sortierindex innerhalb des Aktionsplanpfades ab, in der die Aktion ausgeführt wird.
Fragt den Sortierindex innerhalb des Aktionsplanpfades ab, in der die Aktion ausgeführt wird.
Der Sortierindex ist eine ganze Zahl. Er wird normalerweise von der Logistik festgelegt, kann aber vom Autor überschrieben werden.
Die Abbildungen für die systemseitig ermittelten Sortierindizes sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der getrennten Phasen und daher stets sequentiell zueinander ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex,aber verschiedenen Prioritäten werden innerhalb derselben Phase und im selben Aktionsplanpfad und damit stets sequentiell ausgeführt, soweit dies mit den Kanalvorgaben der Aktionen vereinbar ist. Lassen die Kanalvorgaben dies nicht zu, wird die Sequentialität erzwungen, indem die Aktionen in verschiedenen Aktionsplanphasen eingeplant werden (Phasenbruch). Prioritätsindizes werden dabei aufsteigend sortiert.
(3) Zwei beliebige Aktionen mit gleichem Phasenindex, gleicher Priorität aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden. Sequenzindizes werden dabei aufsteigend sortiert.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
Number flashSequence = action.GetSequence();
-
Rückgabe:
- Sortierindex innerhalb des Aktionsplanpfades (ganze Zahl).
|
Isom.Plan.TherapyPlanAction.GetStartTime |
Fragt den Zeitpunkt ab, zu dem die Aktion gestartet wurde.
|
objectbound Isom.Base.Date Isom.Plan.TherapyPlanAction.GetStartTime |
( |
) |
|
Fragt den Zeitpunkt ab, zu dem die Aktion gestartet wurde.
Der Rückgabewert kann das Void-Objekt sein, falls die Aktion noch nicht gestartet wurde.
-
Verwendungsbeispiel:
Date startTime = tpa.GetStartTime();
Date finishTime = tpa.GetFinishTime();
Number actualDurationInSeconds = finishTime.ElapsedTime(startTime);
-
Rückgabe:
- Zeitpunkt, zu dem die Aktion gestartet wurde.
|
Isom.Plan.TherapyPlanAction.GetStates |
Liefert eine Liste von Zuständen, die den Ausführungszustand der Aktion beschreiben.
Liefert eine Liste von Zuständen, die den Ausführungszustand der Aktion beschreiben.
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.TherapyPlanAction;
using Isom.Context.Ecu;
...
Boolean CompleteTherapyPlan ()
{
TherapyPlan tp = TherapyPlan.GetInstance ();
TherapyPlanActionList tpal = tp.GetActions ();
while( tpal.HasNext() )
{
TherapyPlanAction tpa = tpal.Next();
System.Stdout( tpa.GetName().Append(" - ").Append( tpa.GetStates().Concat(",") ) );
...
}
...
}
-
Rückgabe:
- Liste von Zuständen.
|
Isom.Plan.TherapyPlanAction.IsInsertable |
Ermittelt, ob die Aktion aus ISOM-Sicht zum Therapieplan hinzufügbar ist.
Ermittelt, ob die Aktion aus ISOM-Sicht zum Therapieplan hinzufügbar ist.
Dafür wird insbesondere der vom Autor per [Editable[Ecu]Action(..., ..., Term)] vorgegebene Sichtbarkeitsterm ausgewertet.
Diese Flags sind im Therapieplan und den editierbaren Aktionen gesetzt.
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.TherapyPlan;
using Isom.Plan.TherapyPlanAction;
using Isom.Plan.TherapyPlanActionList;
...
CurrentVehicleContext currentContext = CurrentVehicleContext.GetInstance();
EcuList ecuList = currentContext.GetEcus();
while( ecuList.HasNext() )
{
Ecu ecu = ecuList.Next();
list = ecu.GetEditableActions();
while(list.HasNext() )
{
TherapyPlanAction action = list.Next();
System.Stdout( action.GetActionText() );
if( action.IsInsertable() )
System.Stdout("INSERTABLE");
else
System.Stdout("HIDDEN");
}
}
-
Rückgabe:
- 'true' wenn die Aktion sichtbar und einfügbar sein soll, 'false' sonst.
|
Isom.Plan.TherapyPlanAction.IsLogisticsConsistent |
Liefert den Zustand bzgl Logistikinformationen
Liefert den Zustand bzgl Logistikinformationen
Die Funktion bestimmt, ob für die Aktion und ihre eventuellen Kinderknoten Logistikdaten abgefragt werden müssen und falls ja, ob bereits Logistikdaten abgefragt wurden.
-
Rückgabe:
- Isom.Base.Boolean
'true' Die Aktion ist Logistik-relevant und ihre Logistikdaten wurden abgefragt (das heißt es existiert eine zugehörige Logistikaktion oder ein zugehöriger Logistikplan).
'false' Die Aktion ist Logistik-relevant, ihre Logistikdaten wurden aber noch nicht abgefragt. (Sollte in der Regel während des ersten Filteraufrufs einer Logistik-relevanten Aktion der Fall sein)
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls die Aktion nicht logistikrelevant ist.
- Es wird das Void-Objekt zurückgegeben, falls während der Ermittlung der Logistikrelevanz technische Fehler auftreten.
-
Siehe auch:
-
Isom.Plan.TherapyPlan.IsLogisticsConsistent()
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.IsPlanned |
Prüft, ob die Editierbare Aktion als geplant markiert ist.
Prüft, ob die Editierbare Aktion als geplant markiert ist.
-
Zu beachten:
- Die Markierung einer Editierbaren Aktion als geplant bewirkt normalerweise eine entsprechende Anzeige in den Dialogen zum Editieren des Therapieplans.
- Die Funktion dient primär Test- und Protokollierungszwecken.
-
Rückgabe:
- 'true' wenn als geplant markiert, 'false' sonst.
-
Siehe auch:
-
Isom.Context.Ecu.GetEditableActions(), Isom.Plan.TherapyPlan.GetEditableActions() für die Ermittlung Editierbarer Aktionen.
-
Verwendungsbeispiel:
TherapyPlanActionList list = tPlan.GetEditableActions();
System.Stdout( "Folgende Aktionen sollten mit [x] angezeigt werden: " );
list.Reset();
while(list.HasNext() )
{
TherapyPlanAction tpa = list.Next();
if( tpa.IsPlanned() )
System.Stdout( tpa.GetActionText());
}
|
Isom.Plan.TherapyPlanAction.IsRemoveable |
Ermittelt, ob die Aktion aus ISOM-Sicht aus dem Therapieplan entfernbar ist.
Ermittelt, ob die Aktion aus ISOM-Sicht aus dem Therapieplan entfernbar ist.
Diese Flags sind im Therapieplan und den editierbaren Aktionen gesetzt.
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.TherapyPlan;
using Isom.Plan.TherapyPlanAction;
using Isom.Plan.TherapyPlanActionList;
...
CurrentVehicleContext currentContext = CurrentVehicleContext.GetInstance();
EcuList ecuList = currentContext.GetEcus();
while( ecuList.HasNext() )
{
Ecu ecu = ecuList.Next();
list = ecu.GetEditableActions();
while(list.HasNext() )
{
TherapyPlanAction action = list.Next();
System.Stdout( action.GetActionText() );
if( action.IsRemoveable() )
System.Stdout("REMOVEABLE");
else
System.Stdout("HIDDEN");
}
}
-
Rückgabe:
- 'true' wenn die Aktion sichtbar und entfernbar sein soll, 'false' sonst.
|
Isom.Plan.TherapyPlanAction.IsVirtual |
Ermittelt, ob die Aktion eine virtuelle Aktion, das heißt ein nicht-Blatt-Knoten im Therapiebaum, ist.
Ermittelt, ob die Aktion eine virtuelle Aktion, das heißt ein nicht-Blatt-Knoten im Therapiebaum, ist.
-
Siehe auch:
- Erläuterungen zu Isom.Plan.TherapyPlanAction oben
-
Verwendungsbeispiel:
-
Rückgabe:
- 'true' wenn die Aktion virtuell ist, 'false' wenn die Aktion konkret ist.
|
Isom.Plan.TherapyPlanAction.IsVoid |
Bestimmt, ob die Aufrufinstanz das Void-Objekt ist.
Bestimmt, ob die Aufrufinstanz das Void-Objekt ist.
Das Void-Objekt kann z. B. bei Funktionsaufrufen geliefert werden, um einen Fehler anzuzeigen.
-
Rückgabe:
- Isom.Base.Boolean
'true', falls dies das Void-Objekt ist, 'false' sonst
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.Purge |
Markiert die Aktion oder alle Aktionen im Teilbaum als "nicht einzuplanen" / "nicht auszuführen".
Markiert die Aktion oder alle Aktionen im Teilbaum als "nicht einzuplanen" / "nicht auszuführen".
-
Veraltet:
- Veraltet seit Argonaut 1.10. TherapyPlanAction.Purge() soll in künftigen Versionen durch Mechanismen ersetzt werden, die auf TherapyPlanAction.RemoveFromPlan() basieren.
-
Achtung:
- Die Änderung des Ausführungsstatuses von Aktionen im Therapieplan kann die Logistikkonsistenz zerstören!
- Das Ausblenden mittels Purge()-Aufrufen bewirkt auch eine Unterdrückung der Aktion in künftigen Logistikplänen (sogenannte Persistente Wirkung der Purge()s). Dies kann rückgängig gemacht werden, indem die Aktionen mittels RemoveFromPlan() endgültig aus dem Plan gelöscht werden oder indem eine gleiche Aktion neu zu Therapieplan hinzugefügt wird.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.RemoveFromPlan()
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.ActionPlan;
...
TherapyPlanAction tpa = ...;
Ecu ecu = tpa.GetEcu();
StringList hardwareDAs = ...;
if( hardwareDAs.Contains( ecu.GetEcuAddress().ToIntString() ) )
{
if( tpa.Purge().Failed() )
{
...
}
if (FutureVehicleContext.GetInstance().RecalcPlanAfterReassembly ("").Failed ())
{
...
}
}
-
Rückgabe:
- 'true' wenn Aktion erfolgreich entfernt, 'false' sonst.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls für die Aktion kein Einfüge-Zusammenhang vorhanden ist.
|
Isom.Plan.TherapyPlanAction.RemoveFromPlan |
Entfernt eine Aktion technisch von der Stelle, an der sie momentan eingefügt ist (beispielsweise aus dem Therapieplan).
Entfernt eine Aktion technisch von der Stelle, an der sie momentan eingefügt ist (beispielsweise aus dem Therapieplan).
-
Achtung:
- Eventuelle Änderungen am Soll-Kontext (Fahrzeugauftrag, SG-Liste), die mit der ürsprünglichen Aktionsplanung verbunden waren, werden nicht automatisch rückgängig gemacht, sondern es wird rein technisch der Knoten aus der Datenstruktur entfernt.
- Entfernen von Aktionen aus dem Therapieplan kann die Logistikkonsistenz zerstören!
- Bei Entfernen von Teilbäumen aus Logistikplänen können die entfernten Aktionen in künftigen Logistikplänen erneut geplant werden.
-
Zu beachten:
- Der gesamte Therapieplan kann durch Löschen des Root-Elements, beispielsweise mittels
TherapyPlan.GetInstance().GetActions().At(0).RemoveFromPlan()
geleert werden.
-
Verwendungsbeispiel:
using Isom.Base.*
using Isom.Plan.ActionPlan;
...
TherapyPlanAction tpa = ...;
Ecu ecu = tpa.GetEcu();
StringList hardwareDAs = ...;
if( hardwareDAs.Contains( ecu.GetEcuAddress().ToIntString() ) )
{
if( tpa.RemoveFromPlan().Failed() )
{
...
}
if (FutureVehicleContext.GetInstance().RecalcPlanAfterReassembly ("").Failed ())
{
...
}
}
-
Rückgabe:
- 'true' wenn Aktion erfolgreich entfernt werden konnte, 'false' sonst.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls für die Aktion kein Einfüge-Zusammenhang vorhanden ist.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.Purge() für persistent wirksames Ausblenden.
-
Isom.Plan.TherapyPlan.Remove() für Entfernen ganzer Teilbäume mit neuberechnung der Soll-Kontexte.
|
Isom.Plan.TherapyPlanAction.Run |
Führt eine einzelne Aktion aus.
Führt eine einzelne Aktion aus.
Die Aktion kann mit dieser Funktion außerhalb eines Aktionsplans ausgeführt werden (beispielsweise für Diagnose-Aktionen).
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn erfolgreich, 'false', sonst
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetActivationCode |
Setzt den Freischaltcode, auf den sich die Aktion bezieht.
Setzt den Freischaltcode, auf den sich die Aktion bezieht.
-
Verwendungsbeispiel:
-
Rückgabe:
- 'true' wenn erfolgreich, 'false' sonst.
|
Isom.Plan.TherapyPlanAction.SetCanRunOnly |
Setzt fest, ob die Aktion bereits während der Planungsphase ausgeführt werden kann.
Setzt fest, ob die Aktion bereits während der Planungsphase ausgeführt werden kann.
-
Rückgabe:
- 'true' wenn erfolgreich, 'false' sonst.
|
Isom.Plan.TherapyPlanAction.SetContinueOnError |
Setzt das Verhalten des Therapieplan-orientierten Abbruchmodells für diese Aktion.
Setzt das Verhalten des Therapieplan-orientierten Abbruchmodells für diese Aktion.
Mit dieser Funktion lässt sich steuern, ob nach einem Fehler bei Ausführung der Aktion weitere Aktionen des Therapieplans ausgeführt werden dürfen.
-
Parameter:
-
|
value
|
wenn 'true' wird bei Fehlschlag der Aktion mit anderen Aktionen im Therapiebaum fortgefahren; wenn 'false' wird bei Fehlschlag der Aktion nicht mit anderen Aktionen im Therapiebaum fortgefahren. |
-
Rückgabe:
- Isom.Base.Boolean
Immer 'true'
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetContinueOnError() für die zugehörige Getter-Funktion.
- Annotation
[ContinueOnError]
-
Isom.Plan.TherapyPlanAction.SetContinueWithEcuOnError() für Steuergeräte-bezogenes Abbruchmodell.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetContinueWithEcuOnError |
Setzt das Verhalten des Steuergeräte-orientierten Abbruchmodells für diese Aktion.
Setzt das Verhalten des Steuergeräte-orientierten Abbruchmodells für diese Aktion.
Mit dieser Funktion lässt sich steuern, ob nach einem Fehler bei Ausführung der Aktion weitere Aktionen für das Steuergerät ausgeführt werden dürfen.
-
Parameter:
-
|
value
|
wenn 'true', wird bei Fehlschlag der Aktion mit anderen Aktionen für dieses Steuergerät fortgefahren; wenn 'false', wird bei Fehlschlag der Aktion nicht mit anderen Aktionen für dieses Steuergerät fortgefahren. |
-
Rückgabe:
- Isom.Base.Boolean
Immer 'true'
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetContinueWithEcuOnError() für die zugehörige Getter-Funktion.
- Annotation
[ContinueWithEcuOnError]
-
Isom.Plan.TherapyPlanAction.SetContinueOnError() für Therapieplan-bezogenes Abbruchmodell.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetDependantActionsToRefilter |
Setzt Aktionen, die neu gefiltert werden müssen, wenn die aktuelle Aktion entfernt wird.
Setzt Aktionen, die neu gefiltert werden müssen, wenn die aktuelle Aktion entfernt wird.
Die Liste wird vom ISOM-Kern aktualisiert, wenn Aktionen zum Therapieplan hinzugefügt oder aus dem Therapieplan entfernt werden. Die Liste muss deshalb nach jedem manuellen Editieren des Therapieplans neu gesetzt/aktualisiert werden, wenn die ISOM-Vorinitialisierung überschrieben werden soll.
-
Parameter:
-
|
dependantActions
|
Abhängige Aktionen, die nach einem Entfernen dieser Aktion neu gefiltert werden müssen oder Isom.Plan.TherapyPlanActionList.Void() |
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn die Liste erfolgreich übernommen werden konnte
'false'sonst
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetDependantActionsToRefilter()
-
Isom.Plan.TherapyPlanAction.SetDependantActionsToRemove()
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetDependantActionsToRemove |
Setzt Aktionen, die mit entfernt werden müssen, wenn die aktuelle Aktion entfernt wird.
Setzt Aktionen, die mit entfernt werden müssen, wenn die aktuelle Aktion entfernt wird.
Die Liste wird vom ISOM-Kern aktualisiert, wenn Aktionen zum Therapieplan hinzugefügt oder aus dem Therapieplan entfernt werden. Die Liste muss deshalb nach jedem manuellen Editieren des Therapieplans neu gesetzt/aktualisiert werden, wenn die ISOM-Vorinitialisierung überschrieben werden soll.
-
Parameter:
-
|
dependantActions
|
Abhängige Aktionen, die mit entfernt werden müssen oder Isom.Plan.TherapyPlanActionList.Void() |
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn die Liste erfolgreich übernommen werden konnte
'false'sonst
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetDependantActionsToRemove()
-
Isom.Plan.TherapyPlanAction.SetDependantActionsToRefilter()
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetDisplayProp |
Setzt den Wert der vorgegebenen Anzeigeeigenschaft für für die Aktion.
Setzt den Wert der vorgegebenen Anzeigeeigenschaft für für die Aktion.
-
Zu beachten:
- Die unterstützten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
- Es gilt die Initialisierungsreihenfolge: ContextConfiguration -> CurrentVehicleContext -> FutureVehicleContext
-
Verwendungsbeispiel:
deftext INTERNAL FLASH_ACTION "Programmieren"
using Isom.Base.*
...
Ecu ecu = ...
if( ecu.GetDisplayProp( "ACTION_TYPE" ).IsVoid() )
ecu.SetDisplayProp( "ACTION_TYPE", FLASH_ACTION );
-
Rückgabe:
- 'true' nach erfolgreichem Setzen. 'false' niemals.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetDisplayProp()
|
Isom.Plan.TherapyPlanAction.SetDisplayState |
Legt den Anzeigezustand der Aktion fest.
Legt den Anzeigezustand der Aktion fest.
Folgende Zustände sind zulässig:
"Isom.Display.ToDo"
"Isom.Display.FailedDependency"
"Isom.Display.Successful"
"Isom.Display.Failed"
"Isom.Display.Attention"
"Isom.Display.Suppress"
"Isom.Display.Default"
-
Verwendungsbeispiel:
using Isom.Base.*;
using Isom.Context.*;
using Isom.Global.Config;
...
TherapyPlan tp = TherapyPlan.GetInstance ();
TherapyPlanActionList tpal = tp.GetActions ();
tpal.Reset ();
while (tpal.HasNext ())
{
TherapyPlanAction tpa = tpal.Next ();
if (tpa.GetName ().Equals ("Replace"))
{
tpa.SetDisplayState (Consts.ACTIONSTATE_ISOM_DISPLAY_ATTENTION);
}
} ...
-
Rückgabe:
- 'true' wenn der Anzeigezustand gesetzt werden konnte, 'false' wenn displayState einen unzulässigen Anzeigezustand bezeichnet.
|
Isom.Plan.TherapyPlanAction.SetEcu |
Ändert das betroffene Steuergerät unter Erhaltung der restlichen Aktionsinformationen.
Ändert das betroffene Steuergerät unter Erhaltung der restlichen Aktionsinformationen.
-
Rückgabe:
- 'true' wenn erfolgreich, 'false' sonst.
-
Ausnahmebehandlung:
- Es wird das Void-Objekt zurückgegeben, falls der Parameter Void ist.
- Es wird das Void-Objekt zurückgegeben, falls die Aktion nicht steuergerätebezogen ist.
|
Isom.Plan.TherapyPlanAction.SetEstimatedRuntime |
Setzt die prognostizierte Laufzeit für die Aktion in Sekunden.
Setzt die prognostizierte Laufzeit für die Aktion in Sekunden.
-
Verwendungsbeispiel:
-
Parameter:
-
|
seconds
|
Zu setzende Ausführungszeitprognose - wenn >=0 wird die Ausführungszeitprognose auf den Wert gesetzt
- wenn <0 wird eine vorher gesetzte Ausführungszeitprognose gelöscht.
|
-
Rückgabe:
- Prognostizierte Laufzeit in Sekunden.
|
Isom.Plan.TherapyPlanAction.SetExecutedByIsom |
Legt fest, ob die Aktion durch eine Ausführungsfunktion ausgeführt wird.
Legt fest, ob die Aktion durch eine Ausführungsfunktion ausgeführt wird.
Eine Ausführungsfunktion wird in ISOM/L implementiert. Ihr Name besteht aus Do
und dem Namen der Aktion. Für Aktionen, die im Rahmen einer asynchronen Phase ausgeführt werden, wird z. B. keine Ausführungsfunktion aufgerufen.
-
Parameter:
-
|
byIsom
|
'true': Die Aktion wird ausgeführt, indem ISOM die entsprechende Ausführungsfunktion aufruft. Die Funktion scheitert, wenn diese Funktion nicht existiert. 'false': ISOM ruft keine Ausführungsfunktion auf. |
-
Rückgabe:
- Isom.Base.Boolean
'true', wenn die Einstellung erfolgreich verändert wurde oder keine Veränderung erforderlich war
'false', wenn die Einstellung nicht übernommen wurde
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetExecutedByIsom() für die zugehörige Getter-Funktion.
-
Datum:
- letzte Änderung am 10.09.2010
|
Isom.Plan.TherapyPlanAction.SetFlashFlags |
Legt die Flags für den Flashvorgang fest.
Legt die Flags für den Flashvorgang fest.
Die Flags werden durch eine ganze Zahl repräsentiert.
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
action.SetFlashFlags(42);
-
Rückgabe:
- Immer 'true'.
|
Isom.Plan.TherapyPlanAction.SetLogicalUnits |
Setzt die Liste der logischen Einheiten, die von der Aktion betroffen sind.
Setzt die Liste der logischen Einheiten, die von der Aktion betroffen sind.
-
Verwendungsbeispiel:
-
Rückgabe:
- Liste der logischen Einheiten, die von der Aktion betroffen sind Die Liste kann leer sein, aber nicht das Void-Objekt
|
Isom.Plan.TherapyPlanAction.SetLogicalVehicles |
Setzt die Liste verwendbarer logischer Fahrzeuge.
Setzt die Liste verwendbarer logischer Fahrzeuge.
-
Zu beachten:
- Über diese logischen Fahrzeuge wird bei Fahrzeugzugriffen während der Aktionsausführung iteriert.
- Die Reihenfolge der logischen Fahrzeuge in der Liste bestimmt über die Zugriffsreihenfolge.
-
Parameter:
-
-
Rückgabe:
-
Isom.Base.Boolean
true
, falls Setzen erfolgreich
false
nie.
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.GetLogicalVehicles
-
Seit:
- Eingeführt mit BZ-12385/BZ-12497/WA-588-5637 (Mischbordnetze).
-
Datum:
- letzte Änderung am 29.06.2011
|
Isom.Plan.TherapyPlanAction.SetManuallyPlanned |
Legt fest, ob eine Aktion manuell angewiesen wurde.
Legt fest, ob eine Aktion manuell angewiesen wurde.
Diese mit dieser Funktion vorgenommene Einstellung hat Vorrang vor dem Kriterium, ob eine Aktion direkt eingefügt wurde.
-
Parameter:
-
|
manuallyPlanned
|
Gibt an, ob die Aktion als manuell eingeplant oder als nicht manuell eingeplant gelten soll |
-
Rückgabe:
- true, wenn der Wert von manuallyPlanned erfolgreich übernommen wurde, sonst false
-
Datum:
- letzte Änderung am 12.10.2010
|
Isom.Plan.TherapyPlanAction.SetOrderingInfoList |
Setzt die Bestellinformationen für das Steuergerät.
Setzt die Bestellinformationen für das Steuergerät.
-
Verwendungsbeispiel:
using Isom.Base.*;
using Isom.Context.*;
...
if (Action.SetOrderingInfoList (oiList).Failed ())
{
Log.Warning ("", "Liste der Bestellinformationen konnte nicht an die " \
"Aktion weitergereicht werden.");
} ...
-
Rückgabe:
- 'true' oder Void.
|
Isom.Plan.TherapyPlanAction.SetPhase |
Legt ein Sortierkriterium für die Aktionsplanphase fest, das stets über getrennte Aktionsplanphasen (Phasenbruch) erzwungen wird.
Legt ein Sortierkriterium für die Aktionsplanphase fest, das stets über getrennte Aktionsplanphasen (Phasenbruch) erzwungen wird.
Der vorgegebene Sortierindex ist eine ganze Zahl. Es wird normalerweise von der Logistik festgelegt, kann aber vom Autor angegeben werden. Ein kleinerer Sortierindex bewirkt eine frühere Ausführung der Aktion.
-
Achtung:
- Vom Autor gesetzte Werte können von der Logistik wieder überschrieben werden. Es liegt in der Verantwortung des Autors dies ggf. durch eine geeignete Aufrufreihenfolge zu berücksichtigen.
Die Abbildungen für die systemseitig ermittelten Sortierkriterien sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der getrennten Phasen und daher stets sequentiell zueinander ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex,aber verschiedenen Prioritäten werden innerhalb derselben Phase und im selben Aktionsplanpfad und damit stets sequentiell ausgeführt, soweit dies mit den Kanalvorgaben der Aktionen vereinbar ist. Lassen die Kanalvorgaben dies nicht zu, wird die Sequentialität erzwungen, indem die Aktionen in verschiedenen Aktionsplanphasen eingeplant werden (Phasenbruch). Prioritätsindizes werden dabei aufsteigend sortiert.
(3) Zwei beliebige Aktionen mit gleichem Phasenindex, gleicher Priorität aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden. Sequenzindizes werden dabei aufsteigend sortiert.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Parameter:
-
|
phase
|
Sortierindex für die Aktionsplanphase (aufsteigend sortiert). |
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
action.SetPhase(42);
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetPriority.
-
Isom.Plan.TherapyPlanAction.SetSequence.
-
Rückgabe:
- Immer 'true'.
|
Isom.Plan.TherapyPlanAction.SetPossibleLChannels |
Setzt die für die Aktionsausführung alternativ zueinander zulässigen L-Kanäle.
Setzt die für die Aktionsausführung alternativ zueinander zulässigen L-Kanäle.
-
Verwendungsbeispiel:
possibleLChannels = ...
action.SetPossibleLChannels(possibleLChannels);
-
Rückgabe:
- Liste der zulässigen L-Kanäle.
|
Isom.Plan.TherapyPlanAction.SetPriority |
Legt den Sortierindex für die Aktionsausführung ab, der innerhalb der Aktionsplanphase durch Kanalauswahl oder durch Trennung der Aktionsplanphasen (Phasenbruch) erzwungen wird.
Legt den Sortierindex für die Aktionsausführung ab, der innerhalb der Aktionsplanphase durch Kanalauswahl oder durch Trennung der Aktionsplanphasen (Phasenbruch) erzwungen wird.
Der Sortierindex ist eine ganze Zahl. Er wird von einigen Logistiken festgelegt, kann aber vom Autor angegeben werden.
-
Achtung:
- Vom Autor gesetzte Werte können von der Logistik wieder überschrieben werden. Es liegt in der Verantwortung des Autors dies ggf. durch eine geeignete Aufrufreihenfolge zu berücksichtigen.
Die Abbildungen für die systemseitig ermittelten Sortierindizes sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der getrennten Phasen und daher stets sequentiell zueinander ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex,aber verschiedenen Prioritäten werden innerhalb derselben Phase und im selben Aktionsplanpfad und damit stets sequentiell ausgeführt, soweit dies mit den Kanalvorgaben der Aktionen vereinbar ist. Lassen die Kanalvorgaben dies nicht zu, wird die Sequentialität erzwungen, indem die Aktionen in verschiedenen Aktionsplanphasen eingeplant werden (Phasenbruch). Prioritätsindizes werden dabei aufsteigend sortiert.
(3) Zwei beliebige Aktionen mit gleichem Phasenindex, gleicher Priorität aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden. Sequenzindizes werden dabei aufsteigend sortiert.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Parameter:
-
|
priority
|
Aktionsplanpfad-übergreifender Sortierindex (aufsteigend sortiert). |
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
action.SetPriority(42);
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetPhase.
-
Isom.Plan.TherapyPlanAction.SetSequence.
-
Rückgabe:
- Immer 'true'.
|
Isom.Plan.TherapyPlanAction.SetProp |
Setzt den Wert der generischen Eigenschaft (property) für die Aktion.
Setzt den Wert der generischen Eigenschaft (property) für die Aktion.
Die systemseitig ermittelten Eigenschaftsnamen sind in den herstellerspezifischen Begleitdokumenten zu finden.
-
Verwendungsbeispiel:
using Isom.Base.*;
...
String propName = "ErrorX";
if( action.GetProp(propName).IsVoid() )
action.SetProp( propName, "5" );
-
Rückgabe:
- immer 'true'
|
Isom.Plan.TherapyPlanAction.SetRemoveable |
Markiert die Aktion als aus dem Therapieplan entfernbar.
Markiert die Aktion als aus dem Therapieplan entfernbar.
Diese Flags werden im Therapieplan und den editierbaren Aktionen gesetzt.
-
Zu beachten:
- ISOM entfernt immer den kompletten TOP-Level-Subbaum. Als identifizierende Aktion kann jedoch angegeben werden
- der Top-Level-Baumknoten
- ein beliebiger als IsRemoveable gekennzeichneter Subknoten.
-
Verwendungsbeispiel:
-
Rückgabe:
- 'true' im Erfolgsfall (derzeit immer), 'false' sonst.
|
Isom.Plan.TherapyPlanAction.SetSequence |
Legt den Sortierindex für die Aktionsausführung ab, der innerhalb desselben Aktionsplanpfades erzwungen wird.
Legt den Sortierindex für die Aktionsausführung ab, der innerhalb desselben Aktionsplanpfades erzwungen wird.
Der Sortierindex ist eine ganze Zahl. Er wird normalerweise von der Logistik festgelegt, kann aber vom Autor angegeben werden.
-
Achtung:
- Vom Autor gesetzte Werte können von der Logistik wieder überschrieben werden. Es liegt in der Verantwortung des Autors dies ggf. durch eine geeignete Aufrufreihenfolge zu berücksichtigen.
Die Abbildungen für die systemseitig ermittelten Sortierindizes sind in den herstellerspezifischen Begleitdokumenten zu finden.
Es gelten folgende Zusicherungen bzgl. der Parallelausführung:
(1) Zwei beliebige Aktionen mit verschiedenen Phasenindizes werden in der getrennten Phasen und daher stets sequentiell zueinander ausgeführt. Phasenindizes werden dabei aufsteigend sortiert.
(2) Zwei beliebige Aktionen mit gleichem Phasenindex,aber verschiedenen Prioritäten werden innerhalb derselben Phase und im selben Aktionsplanpfad und damit stets sequentiell ausgeführt, soweit dies mit den Kanalvorgaben der Aktionen vereinbar ist. Lassen die Kanalvorgaben dies nicht zu, wird die Sequentialität erzwungen, indem die Aktionen in verschiedenen Aktionsplanphasen eingeplant werden (Phasenbruch). Prioritätsindizes werden dabei aufsteigend sortiert.
(3) Zwei beliebige Aktionen mit gleichem Phasenindex, gleicher Priorität aber verschiedenen Sequenzindizes werden innerhalb der gleichen Phase ausgeführt. Werden beide Aktionen über denselben nebenläufigen Kanal ausgeführt, erfolgt ihre Ausführung sequentiell innerhalb jedes Ausführungspfades nach aufsteigendem Sequenzindex. Werden sie über verschiedene nebenläufige Kanäle ausgeführt, können sie parallel ausgeführt werden. Sequenzindizes werden dabei aufsteigend sortiert.
Technische Details zur Aktionsplanung und -ausführung sind im Fach-IV-Konzept ISOM, Teil III beschrieben.
-
Parameter:
-
|
sequence
|
Sortierindex innerhalb des Aktionsplanpfades (aufsteigend sortiert). |
-
Verwendungsbeispiel:
using Isom.Plan.*;
...
TherapyPlanAction action;
action.SetSequence(42);
-
Siehe auch:
-
Isom.Plan.TherapyPlanAction.SetPhase.
-
Isom.Plan.TherapyPlanAction.SetPriority.
-
Rückgabe:
- Immer 'true'.
|
Isom.Plan.TherapyPlanAction.SetState |
Legt den Ausführungszustand der Aktion fest.
Legt den Ausführungszustand der Aktion fest.
Folgende Zustände sind zulässig:
- Ausgangszustände:
-
"Isom.Execution.ToDo"
(zur Ausführung durch ISOM vorgesehen)
- Finalzustände:
-
"Isom.Execution.Purged"
(als inaktiv markiert) -
"Isom.Execution.FailedDependency"
(Vorbedingung nicht erfüllt) -
"Isom.Execution.Successful"
(ohne Fehler beendet) -
"Isom.Execution.Failed"
(mit Fehler(n) beendet)
-
Achtung:
- Die Änderung von Aktionszuständen verändert u.U. tiefgehend den Therapieablauf!
-
Zu beachten:
-
TherapyPlanAction.SetState() ist primär für die Reaktivierung bereits ausgeführter Aktionen vorgesehen.
- Die Änderungen werden nicht automatisch im Aktionsplan berücksichtigt, das heißt es ist ggf. ein Aufruf von ActionPlan.DoTp2Ap() notwendig.
-
Verwendungsbeispiel:
TherapyPlan tp = TherapyPlan.GetInstance ();
TherapyPlanActionList tpal = tp.GetActions ();
tpal.Reset ();
while (tpal.HasNext ())
{
TherapyPlanAction tpa = tpal.Next ();
if( tpa. ... )
{
tpa.SetState( "Isom.Execution.ToDo" );
ap.DoTp2Ap ();
break;
}
}
-
Rückgabe:
- 'true' wenn der Ausführungszustand gesetzt werden konnte, 'false' wenn execState einen unzulässigen Ausführungszustand bezeichnet.
|
Isom.Plan.TherapyPlanAction.Void |
Erzeugt ein Void-Objekt.
Die Funktion kann in Fehlerfällen verwendet werden, um beispielsweise einen ungültigen Funktionsrückgabewert zu erzeugen.
-
Rückgabe:
- Isom.Plan.TherapyPlanAction
Die Funktion liefert immer ein Void-Objekt.
-
Ausnahmebehandlung:
- Void wird von dieser Funktion immer geliefert.
-
Datum:
- letzte Änderung am 10.09.2010