Modification regle TotalClosure
Bonjour, J'ai un petit souci de codage. Je cherche a modifier la règle TotalClosure pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac...), si quelqu'un pouvais m'aider ca serait gentil. J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an). Merci d'avance a l'âme généreuse... Jess *************************************************************************************** Dr Jessica André Junior Research Fellow Wild Fisheries Program-Fisheries Aquaculture & Coasts (FAC) Institute for Marine and Antarctic Studies (IMAS) University of Tasmania, Private Bag 49 Hobart, TAS 7001, Australia Ph: (03) 6227 7284 /Int: +61 3 6227 7284 Fax: (03) 6227 8035 /Int: +61 3 6227 8035 Email: Jessica.Andre@utas.edu.au Web: http://fcms.its.utas.edu.au/scieng/mrl/pagedetails.asp?lPersonId=3177 `·.,, ><(((º> `·.,, ><(((º> `·.,, ><(((º>
Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J’ai un petit souci de codage. Je cherche a modifier la règle TotalClosure pour qu’elle s’applique en mars-avril mais seulement pour une de mes 4 espèces. J’ai bidouillé le code mais ca m’applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac…), si quelqu’un pouvais m’aider ca serait gentil.
J’ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an).
Merci d’avance a l’âme généreuse…
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base. Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ? -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com
Euh... Non. Comme je n'utilise pas de fonction d'inactivité, il y a pour chaque espèce un metier qui s'appelle M_Inactivity et qui est "pratiqué" chaque mois. Donc non, il n'y a pas pour chaque metier une espèce capturable en Mars/Avril. Si c'est ca le problème, comment je le contourne?! Merci d'avance Jess -----Original Message----- From: isis-fish-users-bounces@list.isis-fish.org [mailto:isis-fish-users-bounces@list.isis-fish.org] On Behalf Of Eric Chatellier Sent: Friday, 11 May 2012 6:10 PM To: isis-fish-users@list.isis-fish.org Subject: Re: [Isis-fish-users] Modification regle TotalClosure Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J'ai un petit souci de codage. Je cherche a modifier la règle TotalClosure pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac.), si quelqu'un pouvais m'aider ca serait gentil.
J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an).
Merci d'avance a l'âme généreuse.
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base. Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ? -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
Hello Jess, comment vas tu ? Felicitations pour le bebe!!! :-) je crois que je vois un truc louche dans ton code (en meme temps je ne suis pas sure car ton debug est bon: 16 metiers concernes?) Dans isCaptureDate je me demande ce que la methode getSpeciesTargetSpecies renvoit si species n est pas dans les especes capturables du metier et du coup ce que "TargetSpecies target = info.getSpeciesTargetSpecies(species);" fait? je me dit qu il doit la creer, et du coup logiquement ta methode retourne tjs vrai. A la place je ferais: list<TargetSpecies> ListTarget = info.getSpeciesTargetSpecies(); for(TargetSpecies ts : ListTarget){ Le 13 mai 2012 19:36, Jessica Andre <Jessica.Andre@utas.edu.au> a écrit :
Euh... Non. Comme je n'utilise pas de fonction d'inactivité, il y a pour chaque espèce un metier qui s'appelle M_Inactivity et qui est "pratiqué" chaque mois. Donc non, il n'y a pas pour chaque metier une espèce capturable en Mars/Avril. Si c'est ca le problème, comment je le contourne?!
Merci d'avance
Jess
-----Original Message----- From: isis-fish-users-bounces@list.isis-fish.org [mailto: isis-fish-users-bounces@list.isis-fish.org] On Behalf Of Eric Chatellier Sent: Friday, 11 May 2012 6:10 PM To: isis-fish-users@list.isis-fish.org Subject: Re: [Isis-fish-users] Modification regle TotalClosure
Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J'ai un petit souci de codage. Je cherche a modifier la règle
TotalClosure
pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac.), si quelqu'un pouvais m'aider ca serait gentil.
J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an).
Merci d'avance a l'âme généreuse.
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base.
Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ?
-- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
Desolee, j ai des soucis d envoi intempestif en ce moment, je finis mon message en dessous. je crois que je vois un truc louche dans ton code
(en meme temps je ne suis pas sure car ton debug est bon: 16 metiers concernes?)
Dans isCaptureDate
je me demande ce que la methode getSpeciesTargetSpecies renvoit si species n est pas dans les especes capturables du metier et du coup ce que "TargetSpecies target = info.getSpeciesTargetSpecies(species);" fait? je me dit qu il doit la creer, et du coup logiquement ta methode retourne tjs vrai.
A la place je ferais: list<TargetSpecies> ListTarget = info.getSpeciesTargetSpecies(); for(TargetSpecies ts : ListTarget){ if(ts.getSpecies().equals(param_species)){
result=true; } //surtout pas de else } et je ne crois pas qu il faille utiliser species en argument de la methode, je crois que c est redondant. Dis moi ce que tu en penses. A ++
Le 13 mai 2012 19:36, Jessica Andre <Jessica.Andre@utas.edu.au> a écrit :
Euh... Non. Comme je n'utilise pas de fonction d'inactivité, il y a pour
chaque espèce un metier qui s'appelle M_Inactivity et qui est "pratiqué" chaque mois. Donc non, il n'y a pas pour chaque metier une espèce capturable en Mars/Avril. Si c'est ca le problème, comment je le contourne?!
Merci d'avance
Jess
-----Original Message----- From: isis-fish-users-bounces@list.isis-fish.org [mailto: isis-fish-users-bounces@list.isis-fish.org] On Behalf Of Eric Chatellier Sent: Friday, 11 May 2012 6:10 PM To: isis-fish-users@list.isis-fish.org Subject: Re: [Isis-fish-users] Modification regle TotalClosure
Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J'ai un petit souci de codage. Je cherche a modifier la règle
TotalClosure
pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac.), si quelqu'un pouvais m'aider ca serait gentil.
J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an).
Merci d'avance a l'âme généreuse.
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base.
Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ?
-- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
Salut, Et oui, j'ai bien 16 métiers... Et on ne secoue pas la tête en signe de désapprobation svp... Merci pour ton aide, mais ca marche pas... Ce qui sort de info.getSpeciesTargetSpecies() n'est pas une liste d'éléments mais plutôt du style M_SJ_Calamari_out-Banded morwong(janvier-décembre)(TargetFactor) (c'est-à-dire metier-espèce-mois-target factor), donc pas compatible avec une List comme tu l'as décrit. En re-(re-re)regardant le code, je crois voir pourquoi il applique la règle pour toute les espèces : il semble que quelque soit le metier, ISIS me sort banded morwong comme target species, alors que dans ma base de données pour les métiers, le main target species est bien spécifié comme il faut (c'est a dire pas banded morwong pour tous les métiers...) Dans isCaptureDate MetierSeasonInfo info = metier.getMetierSeasonInfo(date.getMonth()); log.info(" *$$$$$** info:" + info); renvoie par ex. M_HL_Wrasse_out saison janvier-décembre TargetSpecies target = info.getSpeciesTargetSpecies(species); log.info(" *** target:" + target); renvoie par ex. M_HL_Wrasse_out-Banded morwong(janvier-décembre)(TargetFactor), ca devrait etre wrasse Species target2 = target.getSpecies(); log.info(" *$$$$$** target2:" + target2); me renvoie systematiquement banded morwong...au lieu de Wrasse boolean result; result = false; if (target2.equals(param_species)) { result = true; } else { result = false; } Donc forcement, la condition de la règle est toujours vrai (puisque il faut que la target species soit banded morwong pour l'appliquer) et donc il m'applique la règle pour toute les espèces. J'y retourne. Je comprends toujours pas pourquoi il fait ca. Jess From: isis-fish-users-bounces@list.isis-fish.org [mailto:isis-fish-users-bounces@list.isis-fish.org] On Behalf Of Sigrid Lehuta Sent: Tuesday, 15 May 2012 12:56 AM To: isis-fish-users@list.isis-fish.org Subject: Re: [Isis-fish-users] Modification regle TotalClosure Desolee, j ai des soucis d envoi intempestif en ce moment, je finis mon message en dessous. je crois que je vois un truc louche dans ton code (en meme temps je ne suis pas sure car ton debug est bon: 16 metiers concernes?) Dans isCaptureDate je me demande ce que la methode getSpeciesTargetSpecies renvoit si species n est pas dans les especes capturables du metier et du coup ce que "TargetSpecies target = info.getSpeciesTargetSpecies(species);" fait? je me dit qu il doit la creer, et du coup logiquement ta methode retourne tjs vrai. A la place je ferais: list<TargetSpecies> ListTarget = info.getSpeciesTargetSpecies(); for(TargetSpecies ts : ListTarget){ if(ts.getSpecies().equals(param_species)){ result=true; } //surtout pas de else } et je ne crois pas qu il faille utiliser species en argument de la methode, je crois que c est redondant. Dis moi ce que tu en penses. A ++ Le 13 mai 2012 19:36, Jessica Andre <Jessica.Andre@utas.edu.au<mailto:Jessica.Andre@utas.edu.au>> a écrit : Euh... Non. Comme je n'utilise pas de fonction d'inactivité, il y a pour chaque espèce un metier qui s'appelle M_Inactivity et qui est "pratiqué" chaque mois. Donc non, il n'y a pas pour chaque metier une espèce capturable en Mars/Avril. Si c'est ca le problème, comment je le contourne?! Merci d'avance Jess -----Original Message----- From: isis-fish-users-bounces@list.isis-fish.org<mailto:isis-fish-users-bounces@list.isis-fish.org> [mailto:isis-fish-users-bounces@list.isis-fish.org<mailto:isis-fish-users-bounces@list.isis-fish.org>] On Behalf Of Eric Chatellier Sent: Friday, 11 May 2012 6:10 PM To: isis-fish-users@list.isis-fish.org<mailto:isis-fish-users@list.isis-fish.org> Subject: Re: [Isis-fish-users] Modification regle TotalClosure Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J'ai un petit souci de codage. Je cherche a modifier la règle TotalClosure pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés maternité, la tête en vrac.), si quelqu'un pouvais m'aider ca serait gentil.
J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces sur 1 an).
Merci d'avance a l'âme généreuse.
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base. Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ? -- Éric Chatellier <chatellier@codelutin.com<mailto:chatellier@codelutin.com>> Tel: 02.40.50.29.28 http://www.codelutin.com _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org<mailto:Isis-fish-users@list.isis-fish.org> http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org<mailto:Isis-fish-users@list.isis-fish.org> http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
Gotcha! Tu veux n'interdire que les metiers qui ont cette espece en principale target, c est a dire que tu as coche la case a cote dans l interface du metier? Ce n'est pas ce que getSpeciesTargetSpecies() renvoit. il faut que tu ajoutes isPrimaryCatch() : getSpeciesTargetSpecies(param_species).isPrimaryCatch(); c est un boolean qui te dit si tu as coche espece principqale ou non. j espere que ca aide! A+ Le 15 mai 2012 02:52, Jessica Andre <Jessica.Andre@utas.edu.au> a écrit :
Salut,****
** **
Et oui, j’ai bien 16 métiers… Et on ne secoue pas la tête en signe de désapprobation svp…****
Merci pour ton aide, mais ca marche pas… Ce qui sort de info.getSpeciesTargetSpecies() n’est pas une liste d’éléments mais plutôt du style M_SJ_Calamari_out-Banded morwong(janvier-décembre)(TargetFactor) (c'est-à-dire metier-espèce-mois-target factor), donc pas compatible avec une List comme tu l’as décrit. En re-(re-re)regardant le code, je crois voir pourquoi il applique la règle pour toute les espèces : il semble que quelque soit le metier, ISIS me sort banded morwong comme target species, alors que dans ma base de données pour les métiers, le main target species est bien spécifié comme il faut (c’est a dire pas banded morwong pour tous les métiers…)****
** **
Dans isCaptureDate****
** **
MetierSeasonInfo info = metier.getMetierSeasonInfo(date.getMonth()); ****
log.info(" *$$$$$** info:" + info); *renvoie par ex. M_HL_Wrasse_out saison janvier-décembre*****
TargetSpecies target = info.getSpeciesTargetSpecies(species);****
log.info(" *** target:" + target); * renvoie par ex. **M_HL_Wrasse_out-Banded morwong(janvier-décembre)(TargetFactor), ca devrait etre wrasse*****
Species target2 = target.getSpecies();****
log.info(" *$$$$$** target2:" + target2); *me renvoie systematiquement banded morwong…au lieu de Wrasse *
* *
boolean result;****
result = false;****
** **
if (target2.equals(param_species)) {****
result = true;****
****
} else {****
result = false;****
}****
** **
Donc forcement, la condition de la règle est toujours vrai (puisque il faut que la target species soit banded morwong pour l’appliquer) et donc il m’applique la règle pour toute les espèces. ****
** **
** **
J’y retourne. Je comprends toujours pas pourquoi il fait ca.****
** **
Jess****
** **
*From:* isis-fish-users-bounces@list.isis-fish.org [mailto: isis-fish-users-bounces@list.isis-fish.org] *On Behalf Of *Sigrid Lehuta *Sent:* Tuesday, 15 May 2012 12:56 AM
*To:* isis-fish-users@list.isis-fish.org *Subject:* Re: [Isis-fish-users] Modification regle TotalClosure****
** **
Desolee, j ai des soucis d envoi intempestif en ce moment, je finis mon message en dessous.****
** **
je crois que je vois un truc louche dans ton code (en meme temps je ne suis pas sure car ton debug est bon: 16 metiers concernes?) ****
Dans isCaptureDate
je me demande ce que la methode getSpeciesTargetSpecies renvoit si species n est pas dans les especes capturables du metier et du coup ce que "TargetSpecies target = info.getSpeciesTargetSpecies(species);" fait? je me dit qu il doit la creer, et du coup logiquement ta methode retourne tjs vrai.
A la place je ferais: list<TargetSpecies> ListTarget = info.getSpeciesTargetSpecies(); for(TargetSpecies ts : ListTarget){ if(ts.getSpecies().equals(param_species)){****
result=true; } //surtout pas de else } ****
et je ne crois pas qu il faille utiliser species en argument de la methode, je crois que c est redondant.
Dis moi ce que tu en penses. A ++****
****
Le 13 mai 2012 19:36, Jessica Andre <Jessica.Andre@utas.edu.au> a écrit :* ***
** **
Euh... Non. Comme je n'utilise pas de fonction d'inactivité, il y a pour chaque espèce un metier qui s'appelle M_Inactivity et qui est "pratiqué" chaque mois. Donc non, il n'y a pas pour chaque metier une espèce capturable en Mars/Avril. Si c'est ca le problème, comment je le contourne?!
Merci d'avance
Jess****
-----Original Message----- From: isis-fish-users-bounces@list.isis-fish.org [mailto: isis-fish-users-bounces@list.isis-fish.org] On Behalf Of Eric Chatellier Sent: Friday, 11 May 2012 6:10 PM To: isis-fish-users@list.isis-fish.org Subject: Re: [Isis-fish-users] Modification regle TotalClosure
Le 11/05/2012 04:32, Jessica Andre a écrit :
Bonjour,
Bonjour,
J'ai un petit souci de codage. Je cherche a modifier la règle
pour qu'elle s'applique en mars-avril mais seulement pour une de mes 4 espèces. J'ai bidouillé le code mais ca m'applique quand même la fermeture pour toute les espèces. Alors comme je rame un peu (retours de congés***
TotalClosure *
maternité, la tête en vrac.), si quelqu'un pouvais m'aider ca serait gentil.****
J'ai mis la règle en PJ avec mon log de simu (simplifié pour 2 espèces
sur 1 an).
****
Merci d'avance a l'âme généreuse.****
Je ne vois pas d'erreur dans la regle, ca vient donc peut-être de la base.
Suivant le test fait par la fonction "isCaptureDate", êtes-vous sure que pour tous les métiers, il y a un moins une espèce capturable portant sur Mars et/ou Avril qui concerne l'espèce que vous avez défini en paramètre de la règle (param_species) ?
-- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users _______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users****
** **
** **
_______________________________________________ Isis-fish-users mailing list Isis-fish-users@list.isis-fish.org http://list.isis-fish.org/cgi-bin/mailman/listinfo/isis-fish-users
participants (3)
-
Eric Chatellier -
Jessica Andre -
Sigrid Lehuta