ReportSpec(3pm)
π ReportSpec β the Lire::ReportSpec era
ok so real talk: this is the ReportSpec page from LogReport's Lire Documentation, section 3pm (Perl module docs, bestie). It's the API to the XML report specifications, and honestly it's giving backstage-pass energy. Come with me β¨
β¨ SYNOPSIS β¨
use Lire::ReportSpec;
that's it. that's the whole vibe. one line and you're in π
πΈ DESCRIPTION πΈ
This page is split into two little friend groups: the meta information methods (the ones that ask questions about specs) and the object methods (the ones that actually do stuff to a spec). Let's go π
π META INFORMATION METHODS π
list_specs( $superservice )β hands you back an array reference stuffed with all the report specification types that are available for that$superservice. it's giving "show me the menu" energy πhas_spec( $superservice, $type )β returns true if a$typespecification exists for the$superservice. a little vibe check, if you will β¨
π OBJECT METHODS π
subreport_id( [ $new_subreport_id ] )β returns the id that'll get attached to the Subreport generated by this spec β and if you pass$new_subreport_id, it optionally changes it too. glow-up optional, king πchart_configs()β returns an array reference holding theLire::Report::ChartConfigobjects. those bad boys specify which charts should be generated when theLire::Report::Subrpeportobject (yes, the typo in the method's doc is canon, we don't touch it) specified by this object gets formatted. charts are the main character here, fr fr πadd_chart_config( $chart_config )β adds aLire::Report::ChartConfigobject that should be added to theLire::Report::Subreportobject specified by this object. yes, that sentence has a lot of "objects", no, we're not mad at it πfilter_spec( [ $new_filter_spec ] )β returns theLire::FilterExprthat should be applied to create theLire::Report::Subreportspecified by this object, and optionally changes it if you hand it$new_filter_spec. heads up bestie: this isundefif no filtering should be applied πcalc_spec( [ $new_aggregator ] )β returns theLire::Aggregatorthat should be used to create theLire::Report::Subreportspecified by this object β and optionally changes it too. number-crunching szn π₯mark_missing( $reason )β flags that the report generated by this report specification should be marked as missing. the$reasonparam is literally just there to explain why the subreport is gonna be missing. receipts, basically π§Ύis_missing()β returns true if the subreport generated by this report specification should be marked missing. it's giving wellness check πΈset_store( $store )β sets the DLF store that this ReportSpec will be generated upon whencreate_subreport()gets called. set the stage, bestie πcreate_subreport()β builds aLire::Report::Subreportobject based on this report specification. and oop β it'll be a missing subreport ifmark_missing()was ever called. it's called byLire::ReportSection::create_report_section(), so like, know your caller iykyk πcreate_table_info()β returns aLire::Report::TableInfoobject that describes the table generated by a subreport of this type. table setting, but make it data β¨
π SEE ALSO π
go read those next, bestie, they're the lore π¦
π AUTHOR π
Francis J. Lacoste <flacoste@logreport.org> β an absolute icon, we stan π«Ά
β VERSION β
$Id: ReportSpec.pm,v 1.59 2006/07/23 13:16:30 vanbaal Exp $
π COPYRIGHT π
Copyright (C) 2001-2004 Stichting LogReport Foundation LogReport@LogReport.org
This file is part of Lire.
Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.
ok so that's a whole lot of legalese, but the tl;dr is: it's free software under the GNU GPL v2-or-later, and there's no warranty at all β so don't come for the LogReport girlies if something breaks π
and that's the whole page, bestie! this edition is from Lire 2.1.1, dated 2025-09-28 β so yeah, she's vintage but she still slays πβ¨ go forth and spec your reports π§
π¦ where this page comes from
- arch rolling: lire 2.1.1-8 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms