- 1
[Opened] condition particulière sur MenuList
Posted by leodc on 08/13/2008 15:28
Salut à tous, me revoilà pour petite question:
J'ai un formulaire jForm permettant d'éditer une table de ma base, ce formulaire contient donc une menuList se référant à un dao, jusqu'ici tout va bien.
Là ou cela se corse, c'est que dans la daomethod de cette menulist, j'aimerai y mettre une condition (donc un findBy($condition)).
En gros j'aimerai afficher les éléments qui ne sont pas déjà présent dans une autre liste.
Voici la dao
<?xml version="1.0" encoding="utf-8"?>
<forms xmlns="http://jelix.org/ns/forms/1.0">
<output ref="id_etat_pompage">
<label>Etat</label>
</output>
<menulist ref="id_pompe"
dao="sig~pompe"
daomethod="findAll"
daolabelproperty="id_pompe"
daovalueproperty="id_pompe"
required = "true">
<label>Pompe</label>
</menulist>
<input ref="debit_max" type="decimal">
<label>debit_max</label>
</input>
<input ref="tps_fonctionnement" type="decimal">
<label>tps_fonctionnement</label>
</input>
<input ref="debit_mensuel" type="decimal">
<label>debit_mensuel</label>
</input>
<submit ref="_submit">
<label>ok</label>
</submit>
</forms>
et voici le code comme je l'ai réalisé mais cela ne fonctionne (ce que je pense logique)...
$fact = jDao::get('sig~pompe_etat_pompage');
$conditions = jDao::createConditions();
$conditions->addCondition('id_etat_pompage','=',$this->getParam('id'));
$listeEtatPompes = $fact->findBy($conditions);
$this->_tpl->assign('listeEtatPompes', $listeEtatPompes);
$listeP = array();
$i = 0;
foreach($listeEtatPompes as $record){
$listeP[$i] = $record->id_pompe;
$i++;
}
$formEtatPompe = jForms::create('sig~pompe_etat_pompage');
$conditions = jDao::createConditions();
$conditions->addCondition('id_pompage','=',$this->getParam('idTable'));
$conditions->addCondition('id_pompe','NOT IN',$listeP);
$formEtatPompe->setData('id_etat_pompage', $this->getParam('id'));
$formEtatPompe->setData('id_pompe', array('daomethod'=>'findBy($conditions)'));
$this->_tpl->assign('formEtatPompe', $formEtatPompe);
Voilà j'éspère que quelqu'un pourra m'aider, si vous avez besoin de précisions...
Nicolas Rion
SAS Géosphère
1 Impasse champeau
21800 Quétigny
[Opened] Re: condition particulière sur MenuList
Posted by Yann.L on 08/13/2008 16:24
Je pense qu'il vaudrait mieux que tu crée une méthode dans la factory de ta dao pompe.
- 1

