17.8.3 Rapports
Les rapports (famille REPORT
) héritent de la famille recherche détaillée
(famille DSEARCH
).
17.8.3.1 Création d'un rapport
17.8.3.1.1 Critères de recherche
L'enregistrement de la requête est identique à celle de la recherche détaillée.
use \Dcp\AttributeIdentifiers as Attribute; /** * @var \Dcp\Family\Report $report */ $report = createDoc("", \Dcp\Family\Report::familyName); $report->setAttributeValue(Attribute\Report::ba_title, "Report With toview Tag"); $report->setAttributeValue(Attribute\Report::se_famid, \Dcp\Family\Iuser::familyName); $report->setAttributeValue(Attribute\Report::ba_title, "Report on Active Users with email"); $criteria = array( array(Attribute\Report::se_attrids => Attribute\Iuser::us_status, Attribute\Report::se_funcs => "=", Attribute\Report::se_keys => "A"), array(Attribute\Report::se_attrids => Attribute\Iuser::us_extmail, Attribute\Report::se_funcs => "is not null", Attribute\Report::se_keys => "") ); $report->setAttributeValue(Attribute\Report::se_t_detail, $criteria);
17.8.3.2 Présentation du rapport
Les colonnes à afficher sont indiquées par l'attribut rep_idcols
. Cet attribut
doit contenir un identifiant d'attribut ou de propriété.
$columns = array( array(Attribute\Report::rep_lcols => "Utilisateurs", Attribute\Report::rep_idcols => "title", Attribute\Report::rep_foots => "CARD"), array(Attribute\Report::rep_lcols => "Utilisateurs", Attribute\Report::rep_idcols => Attribute\Iuser::us_whatid), array(Attribute\Report::rep_lcols => "Courriel", Attribute\Report::rep_idcols => Attribute\Iuser::us_mail), array(Attribute\Report::rep_lcols => "Groupes", Attribute\Report::rep_idcols => Attribute\Iuser::us_idgroup), array(Attribute\Report::rep_lcols => "Identifiant groupes", Attribute\Report::rep_displayoption => "docid", Attribute\Report::rep_idcols => Attribute\Iuser::us_idgroup) ); $report->setAttributeValue(Attribute\Report::rep_tcols, $columns); $report->setAttributeValue(Attribute\Report::rep_style, "standard1"); $report->store();
L'attribut rep_lcols
(libellé) n'est pas utilisé lors de la génération. Le
libellé affiché correspond au libellé de l'attribut ou de la propriété.
Pour le cas particulier des attribut de type docid
et de type
account
, si l'attribut rep_displayoption
vaut docid
, alors
ce sont les identifiants des documents qui sont affichés au lieu des titres des
documents.
Pour la propriété title
, des précautions doivent être prise en
cas de surcharge du titre.