App-AutoCRUD
view release on metacpan or search on metacpan
lib/App/AutoCRUD.pm view on Meta::CPAN
- name: Milliseconds
- name: Commercial details
columns:
- name: UnitPrice
The full datastructure for configuration information is documented
in L<App::AutoCRUD::ConfigDomain>.
=head1 USAGE
=head2 Generalities
All pages are presented with a
L<Tree navigator|Alien::GvaScript::TreeNavigator>.
Tree sections can be folded/unfolded either through the mouse or
through navigation keys LEFT and RIGHT. Keys DOWN and UP navigate
to the next/previous sections. Typing the initial characters of a
section title directly jumps to that section.
=head2 Homepage
The homepage displays the application short name, title, and the list
of available datasources.
=head2 Schema
The schema page, for a given datasource, displays the list of
tables, grouped and ordered according to the configuration (if any).
Each table has an immediate hyperlink to its search form; in addition,
another link points to the I<description page> for this table.
=head2 Table description
The description page for a given table presents the list of columns,
with typing information as obtained from the database, and hyperlinks
to other tables for which this table has foreign keys.
=head2 Search form
The search form allows users to enter I<search criteria> and
I<presentation parameters>.
=head3 Search criteria
Within a column input field, one may enter a constant value,
a list of values separated by commas, a partial word with an
ending star (which will be interpreted as a SQL "LIKE" clause),
a comparison operator (ex C<< > 2013 >>), or a BETWEEN clause
(ex C<< BETWEEN 2 AND 6 >>).
The full syntax accepted for such criteria is documented
in L<SQL::Abstract::FromQuery>. That syntax is customizable,
so if you want to support additional fancy operators for your
database, you might do so by augmenting or subclassing the grammar.
=head3 Columns to display
On the right of each column input field is a checkbox to decide
if this column should be displayed in the results or not.
If the configuration specifies column groups, each column group
also has a checkbox to simultaneously check all columns in that group.
Finally, there is also a global checkbox to check/uncheck everything.
If nothing is checked (which is the default), this will be implicitly
interpreted as "SELECT *", i.e. showing everything.
=head3 Presentation parameters
Presentation parameters include :
=over
=item *
pagination information (page size / page index)
=item *
output format, which is one of :
=over
=item html
Default presentation view
=item xlsx
Export to Excel
=item yaml
L<YAML> format
=item json
L<JSON> format
=item xml
C<XML> format
=back
=item *
Flag for total page count (this is optional because it is not always
important, and on many databases it has an additional cost as
it requires an additional call to the database to know the total
number of records).
=back
=head2 List page
The list page displays a list of records resulting from a search.
The generated SQL is shown for information.
For columns that related to other tables, there are hyperlinks
to the related lists.
( run in 1.792 second using v1.01-cache-2.11-cpan-39bf76dae61 )