Wallet File Format
Each wallet (role or user) are persisted in a wallet.iwt (or wallet_<roleId>.iwt). "iwt" is for 'i'nformation 'w'alle't'. This is a plain XML file that lists all flows descriptors for of the role's or user wallet.
XML Sample
<Wallet group="Retail_2d6e0f1e" lastedit="1602240482661" name="Retail" uid="Retail_2d6e0f1e">
<SpeakableNames contextprefix="FLOW" global="true" id="Retail" readonly="false"></SpeakableNames>
<ScheduleList>
<Schedule frequency="daily" fromDay="25" fromHour="0" fromMinute="0" fromMonth="4" fromYear="2016" periods="1" time="20:0"></Schedule>
</ScheduleList>
<Flow disabled="false" file="flow_datamodelwrapper.xml" group="Retail_2d6e0f1e" lastedit="1570689992312" name="Revenues" refid="11" uid="11517a0bd">
<SpeakableNames contextprefix="FLOW" global="false" id="Revenues" readonly="false">
<SpeakableName Description="" DisplayName="" ImageName="" Lang="0" VocalName="">
<Tag></Tag>
</SpeakableName>
<SpeakableName Description="" DisplayName="Chiffre d'affaire" ImageName="" Lang="1" VocalName="">
<Tag></Tag>
</SpeakableName>
<SpeakableName Description="" DisplayName="Ingresos" ImageName="" Lang="2" VocalName="">
<Tag></Tag>
</SpeakableName>
</SpeakableNames>
<Description Name="">
<SpeakableNames contextprefix="FLOW.DESCRIPTION" global="true" id="" readonly="false"></SpeakableNames>
</Description>
<Category Name="Retail/Synthèse">
<SpeakableNames contextprefix="FLOW.CATEGORY" global="false" id="Retail/Synthèse" readonly="false">
<SpeakableName Description="" DisplayName="Synthesis" ImageName="" Lang="0" VocalName="">
<Tag></Tag>
</SpeakableName>
<SpeakableName Description="" DisplayName="Synthèse" ImageName="" Lang="1" VocalName="">
<Tag></Tag>
</SpeakableName>
<SpeakableName Description="" DisplayName="Síntesis" ImageName="" Lang="2" VocalName="">
<Tag></Tag>
</SpeakableName>
</SpeakableNames>
</Category>
<deviceids>
<device id="dashboard"></device>
</deviceids>
<History ForceRefresh="false" KeepSource="true" MaxItems="1" Refresh="2"></History>
<Input id="1" value="4ed0efaf2746ec7c60593590bf140d59"/>
<Input id="2"><![CDATA[<RenderingModel DimCount="4" axisId="0" id="" refreshatopening="true" template="textreport-template" templateVideo="" type="$ui.TextChart" version="20130212" vizid="19"><MeasureRenderingParameter Aggregation="0" AxisAlias="-1" Format="" HideLabel="false" HideMeasure="false" MeasureId="Sales" Target=""></MeasureRenderingParameter><NavigationModels AcceptableTarget="" BadTarget="" EnableDescription="false" GoodTarget="" Intro="" NoVal="" Outro="" SayEmptyValues="false" id="text"><NavigationModel MinTime="-1" SentenceId="Indicateur ( RETAIL - CA)" id="0" type="0"></NavigationModel></NavigationModels><ChartRenderingParameter Action="<Actions><Action TypeAction="JAVASCRIPT" AxisAction="0" URLAction="" JavascriptAction="ddCtrl.switchPage(&apos;Sales.Revenues&apos;)"/></Actions>" ActiononMouseover="" Animated="true" ColorIndependant="true" ColorManager="true" ColorTable="" DisplayTooltip="true" FontScalable="false" ShowEmptyValues="false" ShowNullValues="false" globalSortPreserveTotal="false" maxSizeTooltip="0" version="20161001"><Labels></Labels><Tooltip><SpeakableNames global="false" id="" readonly="false"></SpeakableNames></Tooltip><ExtraParameters><parameter key="extraFeature_enableScaleGroup" value="true"/></ExtraParameters><Scripts></Scripts><AddCSS name="${client.digdashCSS},_DD_,removeScrollBar"></AddCSS></ChartRenderingParameter><DimensionsOptions></DimensionsOptions></RenderingModel>]]></Input>
<Input id="3" value=""/>
</Flow>
</Wallet>
Wallet Node
Attribute | Type | Description |
---|---|---|
group | Identifier | Identifier of the role of the wallet as it is defined in LDAP. This value is empty for a user wallet. |
lastedit | Timestamp | Last time this wallet was modified |
name | Name | User friendly name of the wallet (can be modified). In case of a user wallet, this is the user's name |
uid | Identifier | Identifier of the wallet. Identical to group attribute for a role wallet, and generated id for a user wallet |
Child Nodes | Count | Description |
---|---|---|
SpeakableNames | 1 | List of localized names for this element |
ScheduleList | 1 | List of Schedule options for this element |
Flow | N | Descriptor of a flow |
Flow Node
The flow is the description of a visual representation in DigDash Enterprise. It can be of several types, from a single indicator, table, chart to a more complex report containing other flows (PDF/PPT/HTML reports). Each type has its own set of specific inputs.
Attribute | Type | Description |
---|---|---|
group | Identifier | Identifier of the role of the flow as it is defined in LDAP. This value is empty for a user wallet. Note: this value is always the same as the group attribute in the Wallet node. |
lastedit | Timestamp | Last time this flow was modified |
name | Name | User friendly name of the flow (can be modified) |
uid | Identifier | Identifier of the flow (generated). This is the identifier used in dashboard flow portlets, see Base node, flowId attribute in Dashboard File Format |
refid & file | Identifier | Type of the flow. file attribute is also used in dashboard flow portlets, see Base node, subtype attribute in Dashboard File Format |
Child Nodes | Count | Description |
---|---|---|
SpeakableNames | 1 | List of localized names for this element |
ScheduleList | 1 | List of Schedule options for this element |
Description | 1 | Description of the flow localized via SpeakableNames |
Category | 1 | Category of the flow localized via SpeakableNames |
deviceids | 1 | List of Device where this flow can be exported |
History | 1 | Options of the flow's history |
Input | N | Input for the specified type of flow (see below) |
Type Flow Data Model Wrapper (file=flow_datamodelwrapper.xml, refid=11)
This type is the most used information flow in DigDash. This is any type of visualisation : table, chart, KPI... Each flow of this type uses one data model and one data rendering model. They are used to build dashboard page, export data to different devices or build more complex reports (builders).
Input Id | Type | Description |
---|---|---|
1 | Identifier | This is the identifier of the data model used for this flow. See TableDataModel node, id attribute in Data Models File Format. |
2 | XML (CDATA) | This is the XML to describe the rendering model of the flow |
3 | File | This is the file name to use when exporting this flow to a device. It may contains substitution tokens. |
Rendering Model XML Sample (TODO)
The rendering model describe how the flow should be displayed in dashboard pages and exports. It may contains references to measures (MeasureId) and dimensions (DimId) from the flow's data model. See TableDataModel Node, name attributes of the Dimension and Measure child nodes in Data Models File Format.
<MeasureRenderingParameter Aggregation="0" AxisAlias="-1" Format="" HideLabel="false" HideMeasure="false" MeasureId="Sales" Target=""></MeasureRenderingParameter>
<NavigationModels AcceptableTarget="" BadTarget="" EnableDescription="false" GoodTarget="" Intro="" NoVal="" Outro="" SayEmptyValues="false" id="text">
<NavigationModel MinTime="-1" SentenceId="Indicateur ( RETAIL - CA)" id="0" type="0"></NavigationModel>
</NavigationModels>
<ChartRenderingParameter Action="<Actions><Action TypeAction="JAVASCRIPT" AxisAction="0" URLAction="" JavascriptAction="ddCtrl.switchPage(&apos;Sales.Revenues&apos;)"/></Actions>" ActiononMouseover="" Animated="true" ColorIndependant="true" ColorManager="true" ColorTable="" DisplayTooltip="true" FontScalable="false" ShowEmptyValues="false" ShowNullValues="false" globalSortPreserveTotal="false" maxSizeTooltip="0" version="20161001">
<Labels></Labels>
<Tooltip>
<SpeakableNames global="false" id="" readonly="false"></SpeakableNames>
</Tooltip>
<ExtraParameters>
<parameter key="extraFeature_enableScaleGroup" value="true"/>
</ExtraParameters>
<Scripts></Scripts>
<AddCSS name="${client.digdashCSS},_DD_,removeScrollBar"></AddCSS>
</ChartRenderingParameter>
<DimensionsOptions></DimensionsOptions>
</RenderingModel>
Type Flow PDF/PPT/XLS/HTML builder (TODO)
These types of flow are used to build complex reports. They usually contain other flows (type Data Model Wrapper) and are based on a report template, externally defined. Eg. a Powerpoint file, an Excel file...
Input Id | Type | Description |
---|---|---|
TODO | TODO | TODO |
SpeakableNames Node
This is used in different part and defines the localization for the name of the node where it is included.
Note : if the localization global attribute is set to true, then the translated string are stored in a properties files. If it is false the localized string are defined in SpeakableName child nodes, one for each language.
We will not describe this node for each place where it can be used. Instead we will only mention it.
Summary
- The important element here is the Flow.
- The identifier of the flow is the uid attribute of the Flow node, while its (default) name is the name attribute. Name can be localized using SpeakableNames.
- There is also a Description (localized) and Category of the flow (also localized)
- For Data Model Wrappers type of flow, input "1" is the id of the data model, and input "2" is the rendering Model.