Provided by: libexcel-template-plus-perl_0.06-2_all bug

NAME

       Excel::Template::Plus - An extension to the Excel::Template module

SYNOPSIS

         use Excel::Template::Plus;

         my $template = Excel::Template::Plus->new(
             engine   => 'TT',
             template => 'greeting.tmpl',
             config   => { INCLUDE  => [ '/templates' ] },
             params   => { greeting => 'Hello' }
         );

         $template->param(location => 'World');

         $template->write_file('greeting.xls');

DISCLAIMER

       This is the very first release of this module, it is an idea that I and Rob Kinyon (the author of
       Excel::Template) had discussed many times, but never got around to doing. This is the first attempt at
       bring this to reality, it may change radically as it evolves, so be warned.

DESCRIPTION

       This module is an extension of the Excel::Template module, which allows the user to use various "engines"
       from which you can create Excel files through Excel::Template.

       The idea is to use the existing (and very solid) excel file generation code in Excel::Template, but to
       extend its more templatey bits with more powerful options.

       The only engine currently provided is the Template Toolkit engine, which replaces Excel::Template's built
       in template features (the LOOP, and IF constructs) with the full power of TT. This is similar to the
       module Excel::Template::TT, but expands on that even further to try and create a more extensive system.

       You can use this module to create Excel::Template-compatible XML files using one of the supported
       engines. For example, with the TT engine you could create a Excel::Template XML file like:

         <workbook>
           <worksheet name="[% worksheet_name %]">
            [% my_cols = get_list_of_columns %]
             <row>
            [% FOR col = my_cols %]
              <bold><cell>[% col %]</cell></bold>
            [% END %]
             </row>
            [% FOR my_row = get_list_of_objects %]
             <row>
                [% FOR col = my_cols %]
                 <cell>[% my_row.$col %]</cell>
                [% END %]
             </row>
            [% END %]
           </worksheet>
         </workbook>

       Your TT template thus creates a XML file suitable to handing over to Excel::Template for processing.
       Excel::Template::Plus simplifies the template-creation and handing-over process.

       Future engine/plans include:

       Pure Perl
           This would allow you to write you Excel::Template files using Perl itself which would then output the
           XML   for   Excel::Template   to   consume.  This  would  be  modeled  after  the  recently  released
           Template::Declare module perhaps.

       TT Plugins/Macros/Wrappers
           This is basically anything which will make the TT engine  easier  to  write  templates  for.  I  have
           experimented  with  some of these things, but I was not happy with any of them enough to release them
           yet.

       HTML::Template
           Excel::Template's templating features are based on HTML::Template, but the HTML::Template plugins and
           other goodies are not compatible. This engine would bring those things to Excel::Template.

METHODS

       new (%options)
           This  method  basically  serves  as  a  factory  for  creating  new  engine  instances   (for   which
           Excel::Template::Plus::TT  is the only one currently). The only parameter that it requires is engine,
           all other parameters are passed onto the engine's constructor  (see  the  individual  docs  for  more
           details on what is required).

       meta
           Access to the metaclass.

BUGS

       All  complex  software  has bugs lurking in it, and this module is no exception. If you find a bug please
       either email me, or add the bug to cpan-RT.

ACKNOWLEDGEMENTS

       This module came out of several discussions I had with Rob Kinyon.

AUTHOR

       Stevan Little <stevan@cpan.org>

COPYRIGHT AND LICENSE

       Copyright 2007-2014 by Infinity Interactive, Inc.

       <http://www.iinteractive.com>

       This library is free software; you can redistribute it and/or modify it under  the  same  terms  as  Perl
       itself.

perl v5.34.0                                       2022-06-13                         Excel::Template::Plus(3pm)