Difference between revisions of "Form Element description"
Line 22: | Line 22: | ||
* '''filterMinLen''': The minimum chars in input to begin to filter results. | * '''filterMinLen''': The minimum chars in input to begin to filter results. | ||
− | + | ===Example=== | |
Create database metadata definition | Create database metadata definition | ||
<source lang="sql"> | <source lang="sql"> | ||
Line 86: | Line 86: | ||
* '''optionsQuery''': A metadata query used to obtain the select options. | * '''optionsQuery''': A metadata query used to obtain the select options. | ||
− | + | ===Example=== | |
Create database metadata definition | Create database metadata definition | ||
<source lang="sql"> | <source lang="sql"> | ||
Line 153: | Line 153: | ||
* regexp ( regular expression ) | * regexp ( regular expression ) | ||
− | + | ===example=== | |
+ | Define input with decimal value required ( can not be empty ) | ||
<source lang="xml"> | <source lang="xml"> | ||
<input label="Importe" name="okp:importe"> | <input label="Importe" name="okp:importe"> |
Revision as of 15:59, 18 October 2012
Input
Used to enter free form text:
- label: The text which describes the component. Required.
- name: This value is used to access the value typed by the user. Required.
- type: This value constrain value type. Allowed types: text, date, link or folder.
- value: Here you can specify a default value for this component.
- width: The width of the component. Defaults to browser default HTML input width.
- height: The height of the component. Defaults to browser default HTML input height.
Suggestbox
This is an implementation of the typical AJAX suggest box component:
- label: The text which describes the component. Required.
- name: This value is used to access the value typed by the user. Required.
- table: The table where the data is stored.
- filterQuery: An Hibernate query to filter the data. Use {0} to place the user input. Required.
- valueQuery: An Hibernate query to obtain the value of a identifier. Use {0} to place the identifier. Required.
- dialogTitle: The text which describes the title of the dialog. Required.
- filterMinLen: The minimum chars in input to begin to filter results.
Example
Create database metadata definition
-- NORMAL
DELETE FROM OKM_DB_METADATA_TYPE WHERE DMT_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('provincia', 'col00', 'integer', 'pro_id');
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('provincia', 'col01', 'text', 'pro_nombre');
-- SOME DATABASES NEED SET DMT_ID
DELETE FROM OKM_DB_METADATA_TYPE WHERE DMT_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_TYPE (DMT_ID, DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', 'col00', 'integer', 'pro_id');
INSERT INTO OKM_DB_METADATA_TYPE (DMT_ID, DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', 'col01', 'text', 'pro_nombre');
Create database metadata values
-- NORMAL
DELETE FROM OKM_DB_METADATA_VALUE WHERE DMV_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('provincia', '1', 'Araba');
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('provincia', '2', 'Albacete');
-- SOME DATABASES NEED SET DMV_ID
DELETE FROM OKM_DB_METADATA_VALUE WHERE DMV_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_VALUE (DMV_ID, DMV_TABLE, DMV_COL00, DMV_COL01) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', '1', 'Araba');
INSERT INTO OKM_DB_METADATA_VALUE (DMV_ID, DMV_TABLE, DMV_COL00, DMV_COL01) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', '2', 'Albacete');
Property group xml definition
<suggestbox label="Provincia" name="okp:provincia" width="200px"
table="provincia" dialogTitle="Seleccionar Provincia" filterMinLen="3"
filterQuery="select $pro_id, $pro_nombre from DatabaseMetadataValue dmv where dmv.table='provincia' and lower(dmv.$pro_nombre) like '%{0}%' order by dmv.$pro_nombre"
valueQuery="select $pro_id, $pro_nombre from DatabaseMetadataValue dmv where dmv.table='provincia' and dmv.$pro_id='{0}'" />
Checkbox
Best used to represent boolean data:
- label: The text which describes the component. Required.
- name: This value is used to access the value typed by the user. Required.
TextArea
Similar to Input but for bigger text:
- label: The text which describes the component. Required.
- name: This value is used to access the value typed by the user. Required.
- value: Here you can specify a default value for this component.
- width: The width of the component. Defaults to 300px.
- height: The height of the component. Defaults to 100px.
Select
In this case, the value can be selected from a list of predefined one. Every select component can contain an arbitrary number of options bigger than one.
- label: The text which describes the component. Required.
- name: This value is used to access the value selected by the user. Required.
- type: Actually can be only "simple". Simple means that only one option can be selected at a time. Defaults to "simple".
- width: The width of the component. Defaults to browser default HTML select width.
- height: The height of the component. Defaults to browser default HTML select height.
Since OpenKM 6.1 you have a couple of new properties to get the select option values from a database query. Look at issue 2258 to see a sample use of these new values:
- table: The metadata table used in this query.
- optionsQuery: A metadata query used to obtain the select options.
Example
Create database metadata definition
-- NORMAL
DELETE FROM OKM_DB_METADATA_TYPE WHERE DMT_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('provincia', 'col00', 'integer', 'pro_id');
INSERT INTO OKM_DB_METADATA_TYPE (DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES ('provincia', 'col01', 'text', 'pro_nombre');
-- SOME DATABASES NEED SET DMT_ID
DELETE FROM OKM_DB_METADATA_TYPE WHERE DMT_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_TYPE (DMT_ID, DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', 'col00', 'integer', 'pro_id');
INSERT INTO OKM_DB_METADATA_TYPE (DMT_ID, DMT_TABLE, DMT_REAL_COLUMN, DMT_TYPE, DMT_VIRTUAL_COLUMN) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', 'col01', 'text', 'pro_nombre');
Create database metadata values
-- NORMAL
DELETE FROM OKM_DB_METADATA_VALUE WHERE DMV_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('provincia', '1', 'Araba');
INSERT INTO OKM_DB_METADATA_VALUE (DMV_TABLE, DMV_COL00, DMV_COL01) VALUES ('provincia', '2', 'Albacete');
-- SOME DATABASES NEED SET DMV_ID
DELETE FROM OKM_DB_METADATA_VALUE WHERE DMV_TABLE='provincia';
INSERT INTO OKM_DB_METADATA_VALUE (DMV_ID, DMV_TABLE, DMV_COL00, DMV_COL01) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', '1', 'Araba');
INSERT INTO OKM_DB_METADATA_VALUE (DMV_ID, DMV_TABLE, DMV_COL00, DMV_COL01) VALUES (HIBERNATE_SEQUENCE.nextval, 'provincia', '2', 'Albacete');
Property group xml definition
<select label="Provincia" name="okp:provincia" type="simple"
table="provincia"
optionsQuery="select $pro_id, $pro_nombre from DatabaseMetadataValue dmv where dmv.table='provincia'"/>
Option
- label: The text which describes the component. Required.
- value: This is the value of the option to be selected. Required.
- selected: Can be "true" or "false". Indicates if the option is selected by default or not. Defaults to "false".
Separator
Represent a way to draw a separator to group different elements.
- label: The text which describes the component. Required.
- name: This value is used to access the value selected by the user. Required.
Text
Print a text which can contain HTML tags.
- label: The text which describes the component. Required.
- name: This value is used to access the value selected by the user. Required.
Validator
Can be used several validators with form elements. Available validators are:
- req ( indicaques required )
- alpha ( indicates alphanumeric )
- dec (indicates decimal )
- num (indicates numeric )
- url
- maxlen ( indicates max length )
- minlen ( indicates min length )
- lt (indicates less to )
- gt ( indicates greater than
- min ( indicates min value )
- max ( indicates max value )
- regexp ( regular expression )
example
Define input with decimal value required ( can not be empty )
<input label="Importe" name="okp:importe">
<validator type="dec"/>
<validator type="req"/>
</input>