Commit c06436bc authored by LE GAC Renaud's avatar LE GAC Renaud
Browse files

Polish documentation and tooltips.

parent a4f0b12c
......@@ -6,9 +6,6 @@
'%s in %s': '%s en %s',
'%Y-%m-%d': '%Y-%m-%d',
'%Y-%m-%d %H:%M:%S': '%Y-%m-%d %H:%M:%S',
'A list of Ext.grid.column.Column configuration.': "liste de configuration d'Ext.grid.column.Column.",
'A list of Ext.grid.column.Column configuration. The dataIndex is any field of the history table including foreign table. It is encoded as tablename.fieldname. For properties in the the user data block, uses history.data.myproperty.The dataIndex has to be encapsulated between single quote.': 'A list of Ext.grid.column.Column configuration. The dataIndex is any field of the history table including foreign table. It is encoded as tablename.fieldname. For properties in the the user data block, uses history.data.myproperty.The dataIndex has to be encapsulated between single quote.',
'A list of Ext.grid.feature.Feature configuration.': "list de configuration d'Ext.grid.feature.Feature.",
'about': 'à propos',
'Add a new history line %i': 'Add a new history line %i',
'Add a new person successfully': 'Une nouvelle personne a été ajouté',
......@@ -20,9 +17,10 @@
'Agencies': 'Agences',
'agencies': 'agences',
'Agency': 'Agence',
'Aggregate': 'Agréger',
'Aggregation Z': 'Aggregation Z',
'Alignments': 'Alignments',
'Any field of the history table including foreign table. The field is encoded as tablename.fieldname. For properties in the the user data block, use history.data.myproperty.': 'Any field of the history table including foreign table. The field is encoded as tablename.fieldname. For properties in the the user data block, use history.data.myproperty.',
'Any field of the history table including those of the foreign tables. The field is encoded as tablename.fieldname or history.data.myproperty.': 'Any field of the history table including those of the foreign tables. The field is encoded as tablename.fieldname or history.data.myproperty.',
'Are you sure you want to delete this object?': 'Are you sure you want to delete this object?',
'auth_cas': 'auth_cas',
'auth_event': 'auth_event',
......@@ -33,11 +31,7 @@
'Binary files': 'Fichiers binaires',
'Birth Date': 'Né le',
'budgets': 'budgets',
'Can be applied on any field of the history table using the SQL WHERE syntax, but the foreign keys are not resolved (more information in the smart_query in the web2py documentation). In addition individual property of the history.data dictionary are not available, but operator like contains can be applied.': 'Can be applied on any field of the history table using the SQL WHERE syntax, but the foreign keys are not resolved (more information in the smart_query in the web2py documentation). In addition individual property of the history.data dictionary are not available, but operator like contains can be applied.',
'Can be applied on any field of the history table using the SQL WHERE syntax, but the foreign keys are not resolved nor the individual property of the history.data dictionary. (more information in the smart_query in the web2py documentation).': 'Can be applied on any field of the history table using the SQL WHERE syntax, but the foreign keys are not resolved nor the individual property of the history.data dictionary. (more information in the smart_query in the web2py documentation).',
'Can be applied on any field of the history table using the SQL WHERE syntax. Be aware that foreign key are not resolved (more information in the smart_query in the web2py documentation). In addition individual property of the user block are not available, but operator like contains can be applied on the history.data field.': 'Can be applied on any field of the history table using the SQL WHERE syntax. Be aware that foreign key are not resolved (more information in the smart_query in the web2py documentation). In addition individual property of the user block are not available, but operator like contains can be applied on the history.data field.',
'Can be applied on any field of the table using the SQL WHERE syntax. Be aware that foreign key are not resolved (more information in the smart_query in the web2py documentation).': 'Can be applied on any field of the table using the SQL WHERE syntax. Be aware that foreign key are not resolved (more information in the smart_query in the web2py documentation).',
'can be applied on any field of the table using the SQL WHERE syntax. Be aware that foreign key are not resolved (see smart_query in the web2py)': 'can be applied on any field of the table using the SQL WHERE syntax. Be aware that foreign key are not resolved (see smart_query in the web2py)',
"Can't delete this record since several transactions refer to it.": 'Cet enregistrement ne peut pas être détruit car il est utilisé dans la table historique.',
'Cannot be empty': 'Cannot be empty',
'careers': 'carrières',
......@@ -56,6 +50,7 @@
'Conditions': 'Conditions',
'Configuration': 'Configuration',
'Configure': 'Configurer',
'Configure the column of the grid displayed in the view.': 'Configure les columns de la grille présenté dans la vue.',
'contains': 'contiens',
'Contract': 'Contrat',
'Controller': 'Controller',
......@@ -152,6 +147,8 @@
'Group': 'Groupe',
'Group by': 'Grouper par',
'Group Field': 'Group Field',
'Group Field X': 'Group Field X',
'Group Field Y': 'Group Field Y',
'Group ID': 'Group ID',
'Group uniquely assigned to user %(id)s': 'Group uniquely assigned to user %(id)s',
'Groupby': 'Groupby',
......@@ -218,6 +215,8 @@
'Metric': 'Métrique',
'Metric / year / category': 'Métrique / année / catégorie',
'Metric / year / quality': 'Métrique / année / qualité',
"Metric are computed for each value of that field. It can be any field of the history table including those of the foreign tables, the individual property of the history.data dictionary or 'year'": "Les métriques sont calculé pour chaque valeur de ce champ. C'est un champ de la table historique en incluant tous les champs des tables étrangères, les clés du dictionaire history.data ou 'year'",
'Metric Field Z': 'Champ métrique (z)',
'Metric people per category': 'Nb. de personnes par catégorie',
'Metric people per quality': 'Nb. personnes par qualité',
'Metric people per team': 'Nb. de personnes par équipe',
......@@ -285,8 +284,10 @@
'responsibilities': 'responsabilités',
'Responsibility': 'Responsabilité',
'Role': 'Role',
"Row are grouped according to the value of that field. It can be any field of the history table including those of the foreign tables, the individual property of the history.data dictionary, or 'year'.": "Les lignes sont regroupées en fonctions des valeurs de ce champ. C'est un champ de la table historique en incluant tous les champs des tables étrangères, les clés du dictionaire history.data , ou 'year'.",
'Select': 'Selectionnez',
'Select a teams and/or a project !!!': 'Select a teams and/or a project !!!',
'Select the history records. It can used any field of the history table using the SQL WHERE syntax, but the foreign keys are not resolved nor the individual property of the history.data dictionary. (more information in the smart_query in the web2py documentation).': "Selectionne l'historique. C'est une requête SQL WHERE bâtie à partir des champs des la table history, mais les clés étrangères ne sont pas résolues ni les clés du dictionnaire history.data dictionary. (voir les requêtes 'smart_query' dans la documentaion web2py).",
'select...': 'selectionner...',
'since %s': 'depuis %s',
'software': 'logiciels',
......@@ -301,15 +302,18 @@
'startswith': 'startswith',
'Store': 'Store',
'Summary': 'Résumé',
'Summary value can be computed for columns.': 'Des values résumées peuvent être calculées pour certaine colonnes.',
'Tablename': 'Tablename',
'Tables': 'Tables',
'Team': 'Équipe',
'teams': 'équipes',
'Tests': 'Tests',
'The aggregation function applies on the metric field. It is computed on the subset of row having a given values for the group_field x and y.': "La function d'agrégation est appliquée sur les valeurs du champ métrique. Elle est calculée sur le sous-ensemble d'enregisteremnts ayant une certain valeurs pour les champs 'group_field' x et y.",
'The graphs': 'Les graphs',
'The lists': 'les listes',
'The metrics': 'Les métriques',
'The metrics 1D': 'Les métriques 1D',
'The metrics 2D': 'Les métriques 2D',
"The report id '%s' is unknown.": "The report id '%s' is unknown.",
'Time': 'Temps',
'Timestamp': 'Timestamp',
......
......@@ -3,26 +3,22 @@
"""
tp_columns = \
T("A list of Ext.grid.column.Column configuration. "
"The dataIndex is any field of the history table including foreign table. "
"It is encoded as tablename.fieldname. "
"For properties in the the user data block, uses history.data.myproperty."
"The dataIndex has to be encapsulated between single quote.")
T("Configure the column of the grid displayed in the view.")
tp_conditions = \
T("Can be applied on any field of the history table using the SQL WHERE syntax. "
"Be aware that foreign key are not resolved "
"(more information in the smart_query in the web2py documentation). "
"In addition individual property of the user block are not available, "
"but operator like contains can be applied on the history.data field.")
tp_features = \
T("A list of Ext.grid.feature.Feature configuration.")
T("Select the history records. "
"It can used any field of the history table using the SQL WHERE syntax, "
"but the foreign keys are not resolved nor the individual property of "
"the history.data dictionary. "
"(more information in the smart_query in the web2py documentation).")
tp_fields = \
T("Any field of the history table including foreign table. "
"The field is encoded as tablename.fieldname. "
"For properties in the the user data block, use history.data.myproperty.")
T("Row are grouped according to the value of that field. "
"It can be any field of the history table including those of the foreign tables, "
"the individual property of the history.data dictionary, or 'year'.")
tp_features = \
T("Summary value can be computed for columns.")
def_columns = \
"""[{
......
......@@ -3,16 +3,10 @@
"""
tp_conditions = \
T("Can be applied on any field of the history table using the SQL WHERE syntax, "
"but the foreign keys are not resolved nor the individual property of "
"the history.data dictionary. "
"(more information in the smart_query in the web2py documentation).")
tp_fields = \
T("Any field of the history table including those of the foreign tables. "
"The field is encoded as tablename.fieldname or "
"history.data.myproperty.")
T("Metric are computed for each value of that field. "
"It can be any field of the history table including those of the foreign tables, "
"the individual property of the history.data dictionary or 'year'")
def_columns = \
......
......@@ -29,10 +29,12 @@ def get_value(row, tablename, fieldname, keyname='', **kwargs):
@type keyname: str
@param keyname:
@return: either C{row[tablename][fieldname]} or
C{row[tablename][fieldname][keyname]} for JSON type field or
C{kwargs[tablename]} when fieldname and keyname are not defined
@return:
- C{row[tablename][fieldname]}
- C{row[tablename][fieldname][keyname]} for JSON type field
- C{kwargs[tablename]} when fieldname and keyname are not defined
- empty string
"""
# standard field
if fieldname and not keyname:
......@@ -51,17 +53,17 @@ def get_value(row, tablename, fieldname, keyname='', **kwargs):
def split_dbfield(value):
"""The address of a database field is encoded by the user
as table.field or table.field.key. The latter is used for
as C{table.field} or C{table.field.key}. The latter is used for
JSON type field. It is decode as a 3-elements tuple in
which the last element is equal to key or an empty string.
@typr value: string
@type value: string
@param value: the address of the database field, either
tablename.fieldname or tablename.fieldname.key
@rtype: tuple
@return: a tuple with the tablename, fieldname and key.
The latter is either a string or an empty string.
@return: the tuple C{(tablename, fieldname, keyname)}.
The C{keyname} is either a string or an empty string.
"""
li = value.split('.')
......@@ -120,7 +122,7 @@ class BaseReport(object):
def to_df(self):
"""Return as pandas DataFrame.
"""Return the pandas DataFrame.
@rtype: pandas.DataFrame
......
......@@ -9,6 +9,15 @@ The configuration parameter for the List column are those of the
``Ext.grid.column.Column`` class. The most important one are listed in the next
sections. Those marked with a (*) are mandatory.
The properties and their values have to follow the `JSON
<http://www.json.org>`_ syntax:
* ``array`` is a collection of value between ``[]``
* ``object`` is a collection of ``string: value`` pair between ``{}``
* ``string`` are surrounded by the double quote, `e.g.` ``"foo"``
* ``boolean`` values are ``true`` or ``false``
* ...
all columns
^^^^^^^^^^^
......@@ -20,25 +29,30 @@ all columns
-
* - ``align``
-
- Possible values are: ``left``, ``center``, and ``right``.
- String defining the alignment of the column.
Possible values are: ``"left"``, ``"center"``, and ``"right"``.
* - ``columnWidth``
-
- can be specified as a number or a percentage.
* - ``dbfield``
- (*)
- Address of the database field.
- String with the address of the database field.
It is encoded as ``"tablename.fieldname"`` or
``"tablename.fieldname.keyname"``.
It should not be used with ``rownumberer`` column.
* - ``hidden``
-
- ``True`` to hide the column.
- ``true`` to hide the column.
* - ``renderer``
-
- javascript function to render the value.
- A string pointing to the javascript function rendering the value or
containing the function itself.
* - ``text``
- (*)
- The label of the column.
- String containing the label of the column.
* - ``xtype``
- (*)
- specified the type of the column.
- String specifying the type of the column.
The mapping between the type of the column and the one of the database field is
the following:
......@@ -63,9 +77,9 @@ booleancolumn
* -
-
* - ``falseText``
- the string return in the grid when the value is False.
- the string return in the grid when the value is false.
* - ``trueText``
- the string return in the grid when the value is True.
- the string return in the grid when the value is true.
datecolumn
^^^^^^^^^^
......@@ -75,7 +89,7 @@ datecolumn
* -
-
* - ``format``
- format string, e.g. ``d/m/Y``.
- format string, e.g. ``"d/m/Y"``.
numbercolumn
^^^^^^^^^^^^
......@@ -85,9 +99,11 @@ numbercolumn
* -
-
* - ``format``
- format string, e.g. ``0,000.00``.
- format string, e.g. ``"0,000.00"``.
* - ``summaryType``
- compute summary over column values: ``count``, ``sum``, ``min``, ``max`` or ``average``.
- Summary over column values are computed.
Possible values are ``"count"``, ``"sum"``, ``"min"``, ``"max"``
and ``"average"``.
Metric 1D
......@@ -105,28 +121,35 @@ it is not required to specify the column type.
-
* - ``aggregate``
- (*)
- name of the aggregation function, e.g. count, sum, mean,...
- name of the aggregation function, e.g. ``"count"``, ``"sum"``,
``"mean"``,...
* - ``align``
-
- Possible values are: ``left``, ``center``, and ``right``.
* - ``columnWidth``
- String defining the alignment of the column.
Possible values are: ``"left"``, ``"center"``, and ``"right"``.
* - ``columnWidth`` or ``flex``
-
- can be specified as a number or a percentage.
* - ``dbfield``
- (*)
- Address of the database field.
- String with the address of the database field.
It is encoded as ``"tablename.fieldname"`` or
``"tablename.fieldname.keyname"``.
* - ``format``
-
- format string, e.g. ``0,000.00``.
- format string, e.g. ``"0,000.00"``.
* - ``hidden``
-
- ``True`` to hide the column.
- ``true`` to hide the column.
* - ``renderer``
-
- javascript function to render the value.
- A string pointing to the javascript function rendering the value or
containing the function itself.
* - ``text``
- (*)
- The label of the column.
- String containing the label of the column.
* - ``summaryType``
-
- compute summary over column values: ``count``, ``sum``, ``min``, ``max`` or ``average``.
- Summary over column values are computed.
Possible values are ``"count"``, ``"sum"``, ``"min"``, ``"max"``
and ``"average"``.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment