--
JoaoCarreira - 22 Dec 2009
Menu Counter
The component xeo:MenuCounter allows adding counters to the
TreePanel option. This extends Menu, all his properties are inherited.
Component
MenuCounter
Declaration
<xeo:menuCounter ... >
Properties
Property |
Values |
Description |
id |
string |
Component Id |
boql |
string / EL |
BOQL to give the count. Eg. select Ebo_Perf where active='1' |
sql |
string / EL |
SQL to give the count. Eg: select count(*) from OEbo_Perf |
counterValue |
string / EL |
Value to put in the counter, if the couter result is a bean property, or a fix value |
counterMask |
string |
Value Apresentation Mask: Eg: <b style='color:red'>%s</b> Where %s is replaced by the counter value. |
updateInterval |
string |
Time in seconds of the counter update interval |
Observations
The component to get the count uses the following processing order:
- Checks if the counterValue has value.
- Checks if the boql is filled.
- Checks if the sql has filled value
- Checks if the value has a JSON Object, and if it has the property boql.
In the first condition that is found the value is returned or the count is made to the sql/boql.
Descendents
NO
Using examples
Declaring a MenuCounter in a viewer using the pré-defined buttons.
<xvw:viewer (...)>
<xvw:treePanel renderComponent='false' id='tree'>
<xeo:menuCounter
id='testeCntr'
boql="select Teste "
sql=""
updateInterval='60'
icon='resources/Ebo_Package/ico16.gif'
text='Packages'
value="{viewerName:'viewers/Ebo_Package/list.xvw', boql:'select Ebo_Package where deployed=\'1\''}"
target='Tab'
serverAction="#{viewBean.listObject}"
/>
</xvw:treePanel>
(...)
In the exemplified case, as there are no counterValue, boql and sql properties defined the cont will be done to the boql in the JSON Object of the value.
Update the example counter in a Bean action:
// Update the specified counter
public void updateCounter() {
MenuCounter.updateClientCounter( "formMain:testeCntr" );
}
public void updateCounter() {
MenuCounter.updateClientCountera();
}