Difference between revisions of "Excelreader-call"
(→Definition) |
(→{{VULCON}} / {{GVCONSOLE}} Configuration) |
||
Line 16: | Line 16: | ||
− | The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure an | + | The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure an ''excelreader-call'' operation: |
<syntaxhighlight lang="XML"><?xml version="1.0" encoding="UTF-8"?> | <syntaxhighlight lang="XML"><?xml version="1.0" encoding="UTF-8"?> | ||
<GVSystems name="SYSTEMS" type="module"> | <GVSystems name="SYSTEMS" type="module"> | ||
<Systems> | <Systems> | ||
− | |||
<System id-system="system-name" system-activation="on"> | <System id-system="system-name" system-activation="on"> | ||
<Channel id-channel="CHANNEL_NAME"> | <Channel id-channel="CHANNEL_NAME"> | ||
Line 33: | Line 32: | ||
− | To use an ''excelreader-call'' in a {{GVESB}} service, you need to define a node of type [[GVOperationNode]] in [[Service section]] and define in the field ''operation-name'' the name defined in excelreader-call operation. | + | To use an ''excelreader-call'' in a {{GVESB}} service, you need to define a node of type [[GVOperationNode]] in [[Service section]] and define in the field ''operation-name'' the name defined in ''excelreader-call'' operation. |
− | The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure an | + | The following example shows the configuration generated from {{L_VULCON}} or {{L_GVCONSOLE}} when you configure an ''excelreader-call'' operation in {{GVESB}} service: |
<syntaxhighlight lang="XML"><?xml version="1.0" encoding="UTF-8"?> | <syntaxhighlight lang="XML"><?xml version="1.0" encoding="UTF-8"?> | ||
− | <Service group-name="DEFAULT_GRP" id-service="SERVICE-NAME" | + | <GVServices name="SERVICES" type="module"> |
− | + | <Groups> | |
− | + | <Group group-activation="on" id-group="DEFAULT_GRP"/> | |
− | + | </Groups> | |
− | + | <Services> | |
− | + | <Service group-name="DEFAULT_GRP" id-service="SERVICE-NAME" | |
− | + | service-activation="on"> | |
− | + | <Client id-system="SYSTEM-NAME" statistics="off" system-activation="on"> | |
− | + | <Operation name="RequestReply" operation-activation="on" | |
− | + | out-check-type="none" type="operation"> | |
− | + | <Participant id-channel="CHANNEL-NAME" id-system="SYSTEM-NAME"/> | |
− | + | <Flow first-node="excel_reader" point-x="20" point-y="112"> | |
− | + | <GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode" | |
− | + | id="excel_reader" id-system="DAMA" | |
− | + | input="input" next-node-id="end" | |
− | + | op-type="call" | |
− | + | operation-name="ReadExcelInput" | |
− | + | output="excel_xml" point-x="158" | |
− | + | point-y="112" type="flow-node"/> | |
− | + | <GVEndNode class="it.greenvulcano.gvesb.core.flow.GVEndNode" | |
− | + | end-business-process="yes" id="end" op-type="end" | |
− | + | output="excel_xml" point-x="358" point-y="112" | |
− | </Service> | + | type="flow-node"/> |
+ | </Flow> | ||
+ | </Operation> | ||
+ | </Client> | ||
+ | </Service> | ||
+ | </Services> | ||
+ | </GVServices> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | At this point you have configured a service with an ''excelreader'' operation. | + | At this point you have configured a service with an ''excelreader-call'' operation. |
==Example== | ==Example== |
Revision as of 07:51, 15 November 2011
Definition
Many IT applications, within their business process, need to read an Excel file. ExcelReader plug-in helps IT organizations integrating applications that use Excel format to execute their business. ExcelReader plug-in is compatible with all Excel formats up to version 2003, and it is very simple to configure. It receives in input a binary stream containing the Excel file, and returns in output a corresponding XML structure. At the output of ExcelReader plug-in is possible to apply a ChangeGvBufferNode operation (with OGNL script or an XSL transformation) to retrieve all interested data.
GreenVulcano® ESB provides two different tools, GV Console® and VulCon®, to configure all supported plug-ins in GV services.
VulCon / GV Console Configuration
excelreader-call is the operation that must be configured into VulCon® or GV Console® System section, to convert an Excel file in GVBuffer.object field, in an XML document. In order to add an operation excelreader-call you must define the following fields:
- class: it.greenvulcano.gvesb.virtual.excel.reader.GVExcelReaderCallOperation (java class that manage excelReader invocation).
- name: this field identify the operation name that you will use in service definition.
- onlyData: is a boolean field, it enabled in output cell formatting informations. If 'false', insert in the XML document also the cell formatting informations.
Default to 'true'.
- type: call
The following example shows the configuration generated from VulCon® or GV Console® when you configure an excelreader-call operation:
<?xml version="1.0" encoding="UTF-8"?>
<GVSystems name="SYSTEMS" type="module">
<Systems>
<System id-system="system-name" system-activation="on">
<Channel id-channel="CHANNEL_NAME">
<excelreader-call class="it.greenvulcano.gvesb.virtual.excel.reader.GVExcelReaderCallOperation"
name="ReadExcelInput" type="call" onlyData="true"/>
</Channel>
</System>
</Systems>
</GVSystems>
To use an excelreader-call in a GreenVulcano® ESB service, you need to define a node of type GVOperationNode in Service section and define in the field operation-name the name defined in excelreader-call operation.
The following example shows the configuration generated from VulCon® or GV Console® when you configure an excelreader-call operation in GreenVulcano® ESB service:
<?xml version="1.0" encoding="UTF-8"?>
<GVServices name="SERVICES" type="module">
<Groups>
<Group group-activation="on" id-group="DEFAULT_GRP"/>
</Groups>
<Services>
<Service group-name="DEFAULT_GRP" id-service="SERVICE-NAME"
service-activation="on">
<Client id-system="SYSTEM-NAME" statistics="off" system-activation="on">
<Operation name="RequestReply" operation-activation="on"
out-check-type="none" type="operation">
<Participant id-channel="CHANNEL-NAME" id-system="SYSTEM-NAME"/>
<Flow first-node="excel_reader" point-x="20" point-y="112">
<GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode"
id="excel_reader" id-system="DAMA"
input="input" next-node-id="end"
op-type="call"
operation-name="ReadExcelInput"
output="excel_xml" point-x="158"
point-y="112" type="flow-node"/>
<GVEndNode class="it.greenvulcano.gvesb.core.flow.GVEndNode"
end-business-process="yes" id="end" op-type="end"
output="excel_xml" point-x="358" point-y="112"
type="flow-node"/>
</Flow>
</Operation>
</Client>
</Service>
</Services>
</GVServices>
At this point you have configured a service with an excelreader-call operation.
Example
This example shows an XML document generated by a simple Excel sheet (without cols and rows grouping). Given an Excel sheet with the following structure:
ID1 | ID2 | ID3 | ID4 | ID5 | ID6 | ID7 |
---|---|---|---|---|---|---|
23 | 23232 | 23 | 23333 | 1 | 2 | 3 |
24 | 24444 | 23 | 23332 | 1 | 2 | 3 |
excelreader-call generates the following XML:
<?xml version="1.0" encoding="UTF-8"?>
<workbook>
<sheet number="0">
<name><![CDATA[Foglio1]]></name>
<row number="0">
<col number="0">
<data><![CDATA[ID1]]></data>
</col>
<col number="1">
<data><![CDATA[ID2]]></data>
</col>
<col number="2">
<data><![CDATA[ID3]]></data>
</col>
<col number="3">
<data><![CDATA[ID4]]></data>
</col>
<col number="4">
<data><![CDATA[ID5]]></data>
</col>
<col number="5">
<data><![CDATA[ID6]]></data>
</col>
<col number="6">
<data><![CDATA[ID7]]></data>
</col>
</row>
<row number="1">
<col number="0">
<data><![CDATA[23]]></data>
</col>
<col number="1">
<data><![CDATA[23232]]></data>
</col>
<col number="2">
<data><![CDATA[23]]></data>
</col>
<col number="3">
<data><![CDATA[711]]></data>
</col>
<col number="4">
<data><![CDATA[1]]></data>
</col>
<col number="5">
<data><![CDATA[1]]></data>
</col>
<col number="6">
<data><![CDATA[1]]></data>
</col>
</row>
<row number="2">
<col number="0">
<data><![CDATA[23]]></data>
</col>
<col number="1">
<data><![CDATA[711]]></data>
</col>
<col number="2">
<data><![CDATA[23]]></data>
</col>
<col number="3">
<data><![CDATA[23232]]></data>
</col>
<col number="4">
<data><![CDATA[1]]></data>
</col>
<col number="5">
<data><![CDATA[1]]></data>
</col>
<col number="6">
<data><![CDATA[1]]></data>
</col>
</row>
</sheet>
</workbook>
With a ChangeGvBufferNode is possible parsing XML and retrieve any tag and value.