|
|
Ligne 2 : |
Ligne 2 : |
| | | |
| L'objet de cette page est de présenter le fonctionnement du moteur des [[rapports]]. | | L'objet de cette page est de présenter le fonctionnement du moteur des [[rapports]]. |
− |
| |
− | =Champ de saisie=
| |
− |
| |
− | ==Champ de type "dbObject"==
| |
− |
| |
− | Dans le formulaire, le champs de type "dbObject" est représenté sous forme de liste déroulante où est proposé comme choix :
| |
− | * "Pas de filtre" comme premier choix
| |
− | * La liste des différents "objets" comme autre choix. Par exemple, un type "dbObject::Person" va donner la liste des utilisateurs
| |
− |
| |
− | Une variable associé à ce type de champ recevra comme valeur possible :
| |
− | * Lorsque "Pas de filtre" est sélectionné, le caractère : -
| |
− | * Lorsqu'une valeur est sélectionnée, un id sous forme de nombre
| |
− |
| |
− | Exemple de prise en compte de la variable au niveau du rapport : Liste des utilisateurs actifs possédant le profil "$profileId"
| |
− | <sql>SELECT person.*
| |
− | FROM person
| |
− | LEFT JOIN profile ON person.profile & profile.id
| |
− | WHERE profile.id='$profileId'
| |
− | AND activated=1</sql>
| |
− |
| |
− | Exemple de prise en compte de la variable au niveau du rapport : Liste des utilisateurs actifs avec ou non, un filtre sur le profil
| |
− | <sql>SELECT *
| |
− | FROM person
| |
− | LEFT JOIN profile ON person.profile & profile.id
| |
− | WHERE ( profile.id='$profileId' OR '-'='$profileId' )</sql>
| |
− |
| |
− | ==Champ de type "dbObjectMulti"==
| |
− |
| |
− | Dans le formulaire, le champ de type "dbObjectMulti" est représenté sous forme de liste de cases à cocher où est proposé comme choix :
| |
− | * La liste des différents "objets" comme autre choix. Par exemple, un type "dbObjectMulti::Profile" va donner la liste des profils
| |
− |
| |
− | Une variable associé à ce type de champ recevra comme valeur possible :
| |
− | * Lorsque rien n'est coché, la chaîne : '-'. Cela est considéré comme "Pas de filtre".
| |
− | * Lorsqu'une valeur est cochée, un id sous forme de nombre
| |
− | * Lorsque plusieurs valeurs sont cochées, plusieurs id sous forme de chaîne suivante : 1,2,3
| |
− |
| |
− | Exemple de prise en compte de la variable au niveau du rapport : Liste des utilisateurs actifs possédant le profil "$profileId"
| |
− | <sql>SELECT person.*
| |
− | FROM person
| |
− | LEFT JOIN profile ON person.profile & profile.id
| |
− | WHERE profile.id IN ($profileId)
| |
− | AND activated=1</sql>
| |
− |
| |
− | Exemple de prise en compte de la variable au niveau du rapport : Liste des utilisateurs actifs avec ou non, un filtre sur le profil
| |
− | <sql>SELECT *
| |
− | FROM person
| |
− | LEFT JOIN profile ON person.profile & profile.id
| |
− | WHERE ( profile.id IN ($profileId) OR '-' IN ($profileId) )</sql>
| |
| | | |
| =Visualisation de rapport= | | =Visualisation de rapport= |