Re: rlib looks nice
Denis Kokarev <[email protected]> Sat, 10 Sep 2005 14:57:15 -0400
| Newsgroups | gmane.text.rlib.user |
|---|---|
| Organization | AT&T Labs Research |
| Message-ID | <[email protected]> |
Thank you, somehow xml.pl is not in sourceforge.net distribution. The tool looks nice and small, yet powerful. Basic functionality looks ok, but I got a couple of questions: I couldn't break on v.* variable. If I break on v.day it prints first record for the next day first and only then handles <breakfooter> section. Is it how it suppose to run? I've had to break on expression to make it work properly ... 2004-09-10 23h 4708 887 2004-09-11 00h 3544 230 2004-09-11 38170 6494 2004-09-11 01h 6312 812 ... Example is attached. Also, I couldn't declare a var that refers to other DATE v.* vars. Reference to STR v.* vars seems working. <Variables> <Variable name="tm" value="stodtsql(time)" type="expression"/> <Variable name="week" value="format(v.tm, '!@%V')" type="expression"/> <Variable name="day" value="format(v.tm, '!@%Y-%m-%d')" type="expression"/> Each line it was complaining: Format type does not match variable type in 'format' functionFormat type does not match variable type in 'format' functionrlib_process_variables EXPECTED TYPE NUMBER OR STRING FOR RLIB_REPORT_VARIABLE_EXPRESSION I've had to do <Variables> <Variable name="week" value="format(stodtsql(time), '!@%V')" type="expression"/> <Variable name="day" value="format(stodtsql(time), '!@%Y-%m-%d')" type="expression"/> No big deal, but unpleasant My intentions with RLIB are quite obvious, reports, reports, ... some other reports. Bob Doan wrote: > Hi, > > On Fri, 2005-09-09 at 19:55 -0400, Denis Kokarev wrote: > >>Does RLIB support input data in XML format rather than reading directly >>from DB? > > > Yes > > >>Do you have a sample how can I do in in Perl or C? > > > rlib/src/examples/perl/xml.pm > > >>This feature >>would be helpful for us. > > > Out of curiosity what might AT&T be doing with RLIB? > > Cheers, > > - Bob >
rtstrpt.xml
(text/xml, 1.4 KB)
<?xml version="1.0"?> <!DOCTYPE report > <Report fontSize="9"> <Breaks> <Break name="day" newpage="no"> <BreakFields> <BreakField value="v.day"/> <!-- you need to break on: <BreakField value="dateof(stodtsql(time))"/> --> </BreakFields> <BreakFooter> <Output> <Line> <field value="v.day" width="20" bold="yes" align="left"/> <field value="v.day_total" width="15" bold="yes" align="right"/> <literal width="1"/> <field value="v.day_incomplete" width="15" bold="yes" align="right"/> </Line> </Output> </BreakFooter> </Break> </Breaks> <Variables> <Variable name="hour" value="format(stodtsql(time), '!@%Y-%m-%d %Hh')" type="expression"/> <Variable name="day" value="left(v.hour,10)" type="expression"/> <Variable name="ntotal" value="val(total)" type="expression"/> <Variable name="nincomplete" value="val(incomplete)" type="expression"/> <Variable name="day_total" value="val(total)" type="sum" resetonbreak="day"/> <Variable name="day_incomplete" value="val(incomplete)" type="sum" resetonbreak="day"/> </Variables> <Detail> <FieldDetails> <Output> <Line> <field value="v.hour" width="20" align="left"/> <field value="v.ntotal" width="15" align="right"/> <literal width="1"/> <field value="v.nincomplete" width="15" align="right"/> </Line> </Output> </FieldDetails> </Detail> </Report>
rtstdata.xml
(text/xml, 3.5 KB)
<?xml version="1.0"?> <data> <fields> <field>time</field> <field>total</field> <field>incomplete</field> </fields> <rows> <row><col>2004-09-10 14:00:00</col><col>6031</col><col>1192</col></row> <row><col>2004-09-10 15:00:00</col><col>5324</col><col>659</col></row> <row><col>2004-09-10 16:00:00</col><col>1351</col><col>410</col></row> <row><col>2004-09-10 17:00:00</col><col>3537</col><col>1001</col></row> <row><col>2004-09-10 18:00:00</col><col>7017</col><col>563</col></row> <row><col>2004-09-10 19:00:00</col><col>6708</col><col>1499</col></row> <row><col>2004-09-10 20:00:00</col><col>2649</col><col>411</col></row> <row><col>2004-09-10 21:00:00</col><col>7741</col><col>1808</col></row> <row><col>2004-09-10 22:00:00</col><col>4361</col><col>634</col></row> <row><col>2004-09-10 23:00:00</col><col>259</col><col>3</col></row> <row><col>2004-09-11 00:00:00</col><col>2402</col><col>48</col></row> <row><col>2004-09-11 01:00:00</col><col>7784</col><col>1709</col></row> <row><col>2004-09-11 02:00:00</col><col>8905</col><col>2833</col></row> <row><col>2004-09-11 03:00:00</col><col>6416</col><col>863</col></row> <row><col>2004-09-11 04:00:00</col><col>3967</col><col>594</col></row> <row><col>2004-09-11 05:00:00</col><col>9168</col><col>424</col></row> <row><col>2004-09-11 06:00:00</col><col>9616</col><col>1699</col></row> <row><col>2004-09-11 07:00:00</col><col>5144</col><col>710</col></row> <row><col>2004-09-11 08:00:00</col><col>3889</col><col>767</col></row> <row><col>2004-09-11 09:00:00</col><col>9462</col><col>1446</col></row> <row><col>2004-09-11 10:00:00</col><col>6722</col><col>595</col></row> <row><col>2004-09-11 11:00:00</col><col>4403</col><col>582</col></row> <row><col>2004-09-11 12:00:00</col><col>7051</col><col>1828</col></row> <row><col>2004-09-11 13:00:00</col><col>159</col><col>15</col></row> <row><col>2004-09-11 14:00:00</col><col>5861</col><col>280</col></row> <row><col>2004-09-11 15:00:00</col><col>5723</col><col>1025</col></row> <row><col>2004-09-11 16:00:00</col><col>3421</col><col>625</col></row> <row><col>2004-09-11 17:00:00</col><col>9684</col><col>2692</col></row> <row><col>2004-09-11 18:00:00</col><col>4124</col><col>840</col></row> <row><col>2004-09-11 19:00:00</col><col>4669</col><col>236</col></row> <row><col>2004-09-11 20:00:00</col><col>8735</col><col>394</col></row> <row><col>2004-09-11 21:00:00</col><col>2141</col><col>565</col></row> <row><col>2004-09-11 22:00:00</col><col>9031</col><col>2850</col></row> <row><col>2004-09-11 23:00:00</col><col>526</col><col>127</col></row> <row><col>2004-09-12 00:00:00</col><col>2422</col><col>337</col></row> <row><col>2004-09-12 01:00:00</col><col>5007</col><col>1651</col></row> <row><col>2004-09-12 02:00:00</col><col>5790</col><col>209</col></row> <row><col>2004-09-12 03:00:00</col><col>2636</col><col>553</col></row> <row><col>2004-09-12 04:00:00</col><col>6139</col><col>837</col></row> <row><col>2004-09-12 05:00:00</col><col>9055</col><col>1466</col></row> <row><col>2004-09-12 06:00:00</col><col>6492</col><col>226</col></row> <row><col>2004-09-12 07:00:00</col><col>458</col><col>24</col></row> <row><col>2004-09-12 08:00:00</col><col>5389</col><col>210</col></row> <row><col>2004-09-12 09:00:00</col><col>5525</col><col>1513</col></row> <row><col>2004-09-12 10:00:00</col><col>7300</col><col>1123</col></row> <row><col>2004-09-12 11:00:00</col><col>658</col><col>201</col></row> <row><col>2004-09-12 12:00:00</col><col>4871</col><col>304</col></row> <row><col>2004-09-12 13:00:00</col><col>8773</col><col>237</col></row> </rows> </data>