Bonjour,
Je souhaiterais faire un filtre sur une valeur null,
Le Contexte :
J'ai un champs datefin qui n'est pas toujours renseigné, je souhaiterais faire un filtre sur tous les éléments dont ( la date de fin est supérieure ou égale a Now ) OU (la date de fin est null).
Et donc je suppose que si je ne renseigne pas la date de fin, celle ci reste a null. (a moins qu'elle n'ai une valeur par défaut comme '' )
Mon filtre ressemble a ceci :
ContainerFilterBean dateFilter = new ContainerFilterBean("datefin",true,jData.params().getEntryLoadRequest());
dateFilter.addClause(ContainerFilterBean.COMP_BIGGER_OR_EQUAL,"" +todayCalendar.getTimeInMillis() );
Et dès que j'applique ce filtre aucun élément dont datefin est non renseigné n'apparait . (ce qui est logique du point de vue SQL)
J'ajoute donc une clause COMP_ISNULL en ecrivant :
dateFilter.addClause(ContainerFilterBean.COMP_ISNULL,"" );
(déja la syntaxe n'est pas correcte car la requete générée ne semble pas bonne : b.value_jahia_fields_dataISNULL '' )
J'ai meme modifié les sources pour avoir b.value_jahia_fields_data IS NULL mais ca ne change rien. (hypersonic serait - t 'il différent ?)
Je me pose donc la question de comment filtrer sur un élément dont la valeur n'est pas renseignée.
Si quelqu'un a la solution..
Eric
Jahia 4.1 Hypersonic (ou Oracle) + Tomcat 4.1
- Filtre sur valeur null Eric Bourdin
- Re: Filtre sur valeur null Philippe Vollenweider
