stocker des valeurs dans le SimulationContext depuis le beforeSimulation d'un plan
Hello, la question d'aujourd'hui... Je voudrais passer des objets depuis leSimulationPlanContext vers le SimulationContext de la prochaine simu, mais je n'ai access qu'au SimulationStorage (pour pouvoir y acceder dans les equations). Dans le passé, je créais des Tag, et j avais une regle qui lisait les tag pour les mettre dans le context. Y a t'il eu des evolutions qui rendent cela plus direct ? ex. dans le BeforeSimulation:nextSimulation.getParameter().getTagValue().put("UnwantedPrice",priceString); dans la règle : if(context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice") != null){ String priceStr = context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice"); double unwantedPrice = StringUtil.toDouble(priceStr); context.setValue("priceUnwanted",unwantedPrice); } Merci ! -- Sigrid LEHUTA ~ ><> ~ Fisheries modeller IFREMER unit HALGO, Ecology and modeling for fisheries science lab (EMH) Member of the Mixed Research Unit DECOD: Dynamics and sustainability of ecosystems: from source to sea Member of l'Association Française d'Halieutique IFREMER, Centre Atlantique Rue de l'Ile d'Yeu - BP 21105 44311 Nantes Cedex 03, France Tél : 02 40 37 42 38 (N° interne : 8238) https://halgo.ifremer.fr/en https://www.umr-decod.fr/en https://www.association-francaise-halieutique.fr/
Bonjour, Non, pas d'evolutions. Les simulations préparées par les plans ne démarrent pas systématiquement quand le plan les a créées, ni même localement (datarmor...) Donc le stockage de tagValues dans les paramètres est toujours la façon de faire. Le 04/04/2024 à 15:05, Sigrid LEHUTA a écrit :
Hello,
la question d'aujourd'hui... Je voudrais passer des objets depuis leSimulationPlanContext vers le SimulationContext de la prochaine simu, mais je n'ai access qu'au SimulationStorage (pour pouvoir y acceder dans les equations).
Dans le passé, je créais des Tag, et j avais une regle qui lisait les tag pour les mettre dans le context. Y a t'il eu des evolutions qui rendent cela plus direct ?
ex. dans le BeforeSimulation:nextSimulation.getParameter().getTagValue().put("UnwantedPrice",priceString);
dans la règle :
if(context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice") != null){ String priceStr = context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice"); double unwantedPrice = StringUtil.toDouble(priceStr); context.setValue("priceUnwanted",unwantedPrice); }
Merci !
-- Sigrid LEHUTA ~ ><> ~ Fisheries modeller IFREMER unit HALGO, Ecology and modeling for fisheries science lab (EMH) Member of the Mixed Research Unit DECOD: Dynamics and sustainability of ecosystems: from source to sea Member of l'Association Française d'Halieutique
IFREMER, Centre Atlantique Rue de l'Ile d'Yeu - BP 21105 44311 Nantes Cedex 03, France Tél : 02 40 37 42 38 (N° interne : 8238)
https://halgo.ifremer.fr/en https://www.umr-decod.fr/en https://www.association-francaise-halieutique.fr/
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
-- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
OK. je cree une methode pour faire joli. comment faut il que je la declare ? (je t'avoue qu'apres 18ans de java je comprends toujours rien a ca) : public/private/protected ? (je mets la rule en pj) Merci ! protected void tagToContext(SimulationContext context,String name)throws Exception { if(context.getSimulationStorage().getParameter().getTagValue().get(name) !=null){ String valString = context.getSimulationStorage().getParameter().getTagValue().get(name); int valInt =Integer.parseInt(valString); context.setValue(name,valInt); } } Le 04/04/2024 à 15:13, Eric Chatellier a écrit :
Bonjour,
Non, pas d'evolutions.
Les simulations préparées par les plans ne démarrent pas systématiquement quand le plan les a créées, ni même localement (datarmor...) Donc le stockage de tagValues dans les paramètres est toujours la façon de faire.
Le 04/04/2024 à 15:05, Sigrid LEHUTA a écrit :
Hello,
la question d'aujourd'hui... Je voudrais passer des objets depuis leSimulationPlanContext vers le SimulationContext de la prochaine simu, mais je n'ai access qu'au SimulationStorage (pour pouvoir y acceder dans les equations).
Dans le passé, je créais des Tag, et j avais une regle qui lisait les tag pour les mettre dans le context. Y a t'il eu des evolutions qui rendent cela plus direct ?
ex. dans le BeforeSimulation:nextSimulation.getParameter().getTagValue().put("UnwantedPrice",priceString);
dans la règle :
if(context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice") != null){ String priceStr = context.getSimulationStorage().getParameter().getTagValue().get("UnwantedPrice"); double unwantedPrice = StringUtil.toDouble(priceStr); context.setValue("priceUnwanted",unwantedPrice); }
Merci !
-- Sigrid LEHUTA ~ ><> ~ Fisheries modeller IFREMER unit HALGO, Ecology and modeling for fisheries science lab (EMH) Member of the Mixed Research Unit DECOD: Dynamics and sustainability of ecosystems: from source to sea Member of l'Association Française d'Halieutique
IFREMER, Centre Atlantique Rue de l'Ile d'Yeu - BP 21105 44311 Nantes Cedex 03, France Tél : 02 40 37 42 38 (N° interne : 8238)
https://halgo.ifremer.fr/en https://www.umr-decod.fr/en https://www.association-francaise-halieutique.fr/
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org https://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users Archives et moteur de recherche: http://list.isis-fish.org/pipermail/isis-fish-users/
-- Sigrid LEHUTA ~ ><> ~ Fisheries modeller IFREMER unit HALGO, Ecology and modeling for fisheries science lab (EMH) Member of the Mixed Research Unit DECOD: Dynamics and sustainability of ecosystems: from source to sea Member of l'Association Française d'Halieutique IFREMER, Centre Atlantique Rue de l'Ile d'Yeu - BP 21105 44311 Nantes Cedex 03, France Tél : 02 40 37 42 38 (N° interne : 8238) https://halgo.ifremer.fr/en https://www.umr-decod.fr/en https://www.association-francaise-halieutique.fr/
Il faut venir au formations ;) C'est bien comme ça. Dans ton cas, la visibilité n'a pas d'importance car seule la regle appele elle-même sa méthode. C'est différent pour les autres méthodes : "public void init" car c'est Isis qui l'appele de l'extérieur. Le 04/04/2024 à 17:58, Sigrid LEHUTA a écrit :
OK.
je cree une methode pour faire joli. comment faut il que je la declare ?
(je t'avoue qu'apres 18ans de java je comprends toujours rien a ca) : public/private/protected ? (je mets la rule en pj)
Merci !
protected void tagToContext(SimulationContext context,String name)throws Exception { if(context.getSimulationStorage().getParameter().getTagValue().get(name) !=null){ String valString = context.getSimulationStorage().getParameter().getTagValue().get(name); int valInt =Integer.parseInt(valString); context.setValue(name,valInt); } }
-- Éric Chatellier - www.codelutin.com - 02.40.50.29.28
participants (2)
-
Eric Chatellier -
Sigrid LEHUTA