ofbiz-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Brohl <michael.br...@ecomify.de>
Subject Re: svn commit: r1826200 [1/3] - in /ofbiz: ofbiz-plugins/trunk/birt/documents/ tools/wiki-files/ tools/wiki-files/BuildBot/ tools/wiki-files/birt/ tools/wiki-files/data-model/ tools/wiki-files/demos/ tools/wiki-files/themes/
Date Thu, 08 Mar 2018 19:30:27 GMT
Thank you, Jacques.

Regards,

Michael


Am 08.03.18 um 20:15 schrieb Jacques Le Roux:
> OK done (but no Jira referenced, I'll not create a Jira to move a 
> letter in a word), sincerely I still don't understand the purpose in 
> this case.
>
> Apart as you say that "When you do not use the template, these commits 
> have to be handled manually." That I can understand, but I then 
> believe the process is flawed. IMO, it should be the contrary: no 
> template => ignore. But I guess we both better stop here...
>
> Jacques
>
>
> Le 08/03/2018 à 20:03, Michael Brohl a écrit :
>> Jacques,
>>
>> this commit was partly for plugins so it matters here.
>>
>> One of the reasons we use the commit message template is that we can 
>> easily sort out the different change types *automatically*.
>>
>> When you do not use the template, these commits have to be handled 
>> manually. So you do us a favor if you use a simple "Improved:" for 
>> improvements like this.
>>
>> We agreed to use this template and it is not up to every single 
>> committer to decide himself if he wants to use it or not. The fact 
>> that you "did plenty of such in the past" on purpose just shows that 
>> you don't respect this agreement.
>>
>> It is remarkable that others are not arguing if they do not follow 
>> the template by accident but just amend their commit message and show 
>> up to be collaborative. It would be nice if you would do the same.
>>
>> Thanks,
>>
>> Michael
>>
>>
>> Am 08.03.18 um 19:01 schrieb Jacques Le Roux:
>>> I don't think it's needed here, it's only files in tools for the 
>>> wiki but a small typo in 
>>> ofbiz/ofbiz-plugins/trunk/birt/documents/Creating reports.md
>>>
>>> Or do you mean that you will also use it for your list in the 
>>> monthly blog post? I thought it was only about Jira issues related 
>>> to OFBiz code.
>>>
>>> That's why I don't use the commit template for such commits, I did 
>>> plenty of such in the past (since we use the commit template)
>>>
>>> Jacques
>>>
>>>
>>> Le 08/03/2018 à 18:34, Michael Brohl a écrit :
>>>> Please stick to the commit message template, thanks.
>>>>
>>>> Am 08.03.18 um 11:42 schrieb jleroux@apache.org:
>>>>> Author: jleroux
>>>>> Date: Thu Mar  8 10:42:54 2018
>>>>> New Revision: 1826200
>>>>>
>>>>> URL: http://svn.apache.org/viewvc?rev=1826200&view=rev
>>>>> Log:
>>>>> I locally updated Pandoc and it now generates HTML5 code
>>>>> So when using the -s argument it now generates this warning
>>>>>
>>>>> [WARNING] This document format requires a nonempty <title> element
>>>>>    Please specify either 'title' or 'pagetitle' in the metadata.
>>>>>    Falling back to 'README'
>>>>>
>>>>> This means that since HTML5 requires a title Pandoc generates it 
>>>>> using the file
>>>>> name
>>>>>
>>>>> There are 2 options:
>>>>>
>>>>> * add the -quiet option to hide the warning (lazy/easy)
>>>>> * add the 'title' or 'pagetitle' in the metadata a bit heavy, 
>>>>> default is OK with
>>>>>    me
>>>>>
>>>>> I decided to not change anything since this will anyway certainly 
>>>>> changed with
>>>>> our new way of documenting
>>>>>
>>>>> So here are new generated HTML5 pages, also fixes a typo in 
>>>>> Creating reports.md
>>>>>
>>>>> Modified:
>>>>>      ofbiz/ofbiz-plugins/trunk/birt/documents/Creating reports.md
>>>>>      ofbiz/tools/wiki-files/BuildBot/BuildBot.md.html
>>>>>      ofbiz/tools/wiki-files/README.md.html
>>>>>      ofbiz/tools/wiki-files/birt/Creating reports.md.html
>>>>>      ofbiz/tools/wiki-files/birt/How to use flexible reports.md.html
>>>>>      ofbiz/tools/wiki-files/birt/Report master creation.md.html
>>>>>      ofbiz/tools/wiki-files/birt/Using the Birt Report 
>>>>> Designer.md.html
>>>>> ofbiz/tools/wiki-files/data-model/DATAMODEL_CHANGES.md.html
>>>>>      ofbiz/tools/wiki-files/demos/README.md.html
>>>>>      ofbiz/tools/wiki-files/themes/README.md.html
>>>>>
>>>>> Modified: ofbiz/ofbiz-plugins/trunk/birt/documents/Creating 
>>>>> reports.md
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/ofbiz-plugins/trunk/birt/documents/Creating%20reports.md?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/ofbiz-plugins/trunk/birt/documents/Creating reports.md 
>>>>> (original)
>>>>> +++ ofbiz/ofbiz-plugins/trunk/birt/documents/Creating reports.md 
>>>>> Thu Mar  8 10:42:54 2018
>>>>> @@ -27,7 +27,7 @@ Once the form is validated, OFBiz will s
>>>>>   ## Report information ##
>>>>>   This first panel allows you to change the report description and 
>>>>> status. Actually it does not make sense changing the status to 
>>>>> published before having downloaded the .rptdesign file (Birt 
>>>>> Report Designer file) from the server (in database), edited and 
>>>>> uploaded it back to the server. This is explained in the section 
>>>>> below. Changing the status allows users to use your reports. But 
>>>>> if you publish without any change the report will render as empty.
>>>>>   -## The .rptdesign report file: donwload, edit, upload and 
>>>>> publish it ##
>>>>> +## The .rptdesign report file: download, edit, upload and publish 
>>>>> it ##
>>>>>   To really use the report you need to download the .rptdesign 
>>>>> file from the server in a location from where you can edit it with 
>>>>> the BIRT Report Designer. So you need to install first the BIRT 
>>>>> Report Designer. Then you can edit the .rptdesign file in the BIRT 
>>>>> Report Designer. For that refer to the ["Using the Birt Report 
>>>>> Designer.md.html" 
>>>>> file](https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk/birt/documents/Using%20the%20Birt%20Report%20Designer.md.html). 
>>>>> You can also find the Markdonw version in the same directory: 
>>>>> ofbiz-framework/plugins/birt/documents
>>>>>   ###  Editing the downloaded file ###
>>>>>   Once you installed the BIRT Report Designer and have downloaded 
>>>>> the .rptdesign file, you can edit it with the Birt Report 
>>>>> Designer. When you have edited it suiting your needs you must 
>>>>> upload it to the server for your changes to be taken into account 
>>>>> by OFBiz.
>>>>>
>>>>> Modified: ofbiz/tools/wiki-files/BuildBot/BuildBot.md.html
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/BuildBot/BuildBot.md.html?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/tools/wiki-files/BuildBot/BuildBot.md.html (original)
>>>>> +++ ofbiz/tools/wiki-files/BuildBot/BuildBot.md.html Thu Mar 8 
>>>>> 10:42:54 2018
>>>>> @@ -1,11 +1,19 @@
>>>>> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
>>>>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
>>>>> -<html xmlns="http://www.w3.org/1999/xhtml">
>>>>> +<!DOCTYPE html>
>>>>> +<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
>>>>>   <head>
>>>>> -  <meta http-equiv="Content-Type" content="text/html; 
>>>>> charset=utf-8" />
>>>>> -  <meta http-equiv="Content-Style-Type" content="text/css" />
>>>>> +  <meta charset="utf-8" />
>>>>>     <meta name="generator" content="pandoc" />
>>>>> -  <title></title>
>>>>> -  <style type="text/css">code{white-space: pre;}</style>
>>>>> +  <meta name="viewport" content="width=device-width, 
>>>>> initial-scale=1.0, user-scalable=yes" />
>>>>> +  <title>BuildBot</title>
>>>>> +  <style type="text/css">
>>>>> +      code{white-space: pre-wrap;}
>>>>> +      span.smallcaps{font-variant: small-caps;}
>>>>> +      span.underline{text-decoration: underline;}
>>>>> +      div.column{display: inline-block; vertical-align: top; 
>>>>> width: 50%;}
>>>>> +  </style>
>>>>> +  <!--[if lt IE 9]>
>>>>> +    <script 
>>>>> src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
>>>>> +  <![endif]-->
>>>>>   </head>
>>>>>   <body>
>>>>>   <!--
>>>>> @@ -32,20 +40,20 @@ under the License.
>>>>>   <p><a 
>>>>> href="https://svn.apache.org/repos/infra/infrastructure/buildbot/aegis/buildmaster/master1/projects/ofbiz.conf">Here 
>>>>> is the OFBiz BuildBot script</a>. If you are interested on 
>>>>> modifying it, please understand its content and read the BuildBot 
>>>>> documentation. Note that the Infra team is always there to help 
>>>>> you.</p>
>>>>>   <h3 id="schedulers-and-builders">Schedulers and Builders</h3>
>>>>>   <p>BuildBot uses schedulers and builders. Schedulers decide 
>>>>> which builders to trigger on svn commits.</p>
>>>>> -<p>You can see the OFBiz builders and their states in the <a 
>>>>> href="https://ci.apache.org/waterfall">common Buildbot waterfall 
>>>>> view</a> (look for &quot;ofb&quot;).</p>
>>>>> +<p>You can see the OFBiz builders and their states in the <a 
>>>>> href="https://ci.apache.org/waterfall">common Buildbot waterfall 
>>>>> view</a> (look for “ofb”).</p>
>>>>>   <p>The <a 
>>>>> href="https://ci.apache.org/builders/ofbizTrunkFramework">ofbizTrunkFramework</a> 
>>>>> builder is triggered on commits in the trunk framework branch. 
>>>>> Then only the framework integration tests are run. This also 
>>>>> triggers the <a 
>>>>> href="https://ci.apache.org/builders/ofbizTrunkFrameworkPlugins">ofbizTrunkFrameworkPlugins</a> 
>>>>> and then the whole integration tests are run. To check that a 
>>>>> commit in the framework puts no regressions in plugins and 
>>>>> especially because the dependencies of ofbiz-framework without 
>>>>> ofbiz-plugins is different from the dependencies of 
>>>>> ofbiz-framework + ofbiz-plugins (plugins components are Gradle 
>>>>> sub-projects). So testing needs to happen in both scenarios 
>>>>> because you might face library version bugs. Of course a commit 
>>>>> into the trunk plugins also triggers the 
>>>>> ofbizTrunkFrameworkPlugins.</p>
>>>>>   <p>The same apply to the <a 
>>>>> href="https://ci.apache.org/builders/ofbizBranch17Framework">ofbizBranch17Framework</a> 
>>>>> and the <a 
>>>>> href="https://ci.apache.org/builders/ofbizBranch17FrameworkPlugins">ofbizBranch17FrameworkPlugins</a> 
>>>>> and next releases branches, they follows the same structure than 
>>>>> the trunk now.</p>
>>>>>   <p>The current stable branch R16.12 has only <a 
>>>>> href="https://ci.apache.org/builders/ofbizBranch16">one 
>>>>> builder</a>. This will be gone in future. All new releases needs 2 
>>>>> builders.</p>
>>>>> -<p>In an OFBiz builder page you can see <a 
>>>>> href="https://ci.apache.org/builders/ofbizTrunkFramework">an 
>>>>> history of the builds up to 100+</a>. OFBiz randomly uses 3 
>>>>> servers (except for RAT which always only uses lares_ubuntu) to 
>>>>> build as you can see at the bottom of this page. You may want to 
>>>>> explore more to get acquainted with the tool...</p>
>>>>> +<p>In an OFBiz builder page you can see <a 
>>>>> href="https://ci.apache.org/builders/ofbizTrunkFramework">an 
>>>>> history of the builds up to 100+</a>. OFBiz randomly uses 3 
>>>>> servers (except for RAT which always only uses lares_ubuntu) to 
>>>>> build as you can see at the bottom of this page. You may want to 
>>>>> explore more to get acquainted with the tool…</p>
>>>>>   <p>There is also the <a 
>>>>> href="https://ci.apache.org/builders/ofbizTrunkFrameworkRat">RAT 
>>>>> builder</a>. It checks the licenses in OFBiz. You can find the 
>>>>> result <a 
>>>>> href="https://ci.apache.org/projects/ofbiz/rat-output.html">here</a></p>
>>>>>   <h3 id="tests-results">tests results</h3>
>>>>>   <p>Here are the <a 
>>>>> href="ci.apache.org/projects/ofbiz/logs/">test results</a>. The 
>>>>> folders structure reflects the current svn repo structure.</p>
>>>>>   <h3 id="technical-information">Technical information</h3>
>>>>> -<p>When you create a new branch you need to let know BuildBot 
>>>>> about it. This because BuildBot uses svn hooks to triggers builds 
>>>>> on commits. <a 
>>>>> href="https://github.com/apache/infrastructure-puppet/blob/deployment/modules/subversion_server/files/hooks/buildbot_project_paths">The 
>>>>> file to change is here</a> You can't make commit in 
>>>>> infrastructure-puppet if you are not an infra committer. So you 
>>>>> need to clone the repo and make a Pull Request.</p>
>>>>> +<p>When you create a new branch you need to let know BuildBot 
>>>>> about it. This because BuildBot uses svn hooks to triggers builds 
>>>>> on commits. <a 
>>>>> href="https://github.com/apache/infrastructure-puppet/blob/deployment/modules/subversion_server/files/hooks/buildbot_project_paths">The 
>>>>> file to change is here</a> You can’t make commit in 
>>>>> infrastructure-puppet if you are not an infra committer. So you 
>>>>> need to clone the repo and make a Pull Request.</p>
>>>>>   <h2 id="handling-issues">Handling issues</h2>
>>>>> -<p>Sometimes (rarely) you can get transient tests errors in 
>>>>> BuildBot. This mean tests don't all pass in BuildBot, though they 
>>>>> pass in your local instance. In such case, it's most certainly an 
>>>>> issue with servers. Those are hard workers and make errors from 
>>>>> time to time, which shows that not only human make errors.</p>
>>>>> -<p>Before doing anything it's best to check which BuildBot step 
>>>>> is impacted, and if it exists have a look at the logfile (stdio)</p>
>>>>> -<p>Some other errors may happen, like * svn not updating * upload 
>>>>> not working * you name it...</p>
>>>>> +<p>Sometimes (rarely) you can get transient tests errors in 
>>>>> BuildBot. This mean tests don’t all pass in BuildBot, though 
>>>>> they pass in your local instance. In such case, it’s most 
>>>>> certainly an issue with servers. Those are hard workers and make 
>>>>> errors from time to time, which shows that not only human make 
>>>>> errors.</p>
>>>>> +<p>Before doing anything it’s best to check which BuildBot step 
>>>>> is impacted, and if it exists have a look at the logfile (stdio)</p>
>>>>> +<p>Some other errors may happen, like * svn not updating * upload 
>>>>> not working * you name it…</p>
>>>>>   <p>In such case you can trigger a build from IRC to see if the 
>>>>> problem resolves by itself. Most of the time tests and svn issues 
>>>>> are resolved this way. If it does not then the best is to ask 
>>>>> Infra help, either on <a 
>>>>> href="https://apache.hipchat.com/chat/room/669587">HipChat infra 
>>>>> room</a> or through the <a 
>>>>> href="https://issues.apache.org/jira/servicedesk/customer/portal/1/create/3">service 
>>>>> desk</a></p>
>>>>>   <p>When something like that happens, I get to IRC (using 
>>>>> https://webchat.freenode.net). There using a recognisable username 
>>>>> (I use jleroux) I get to the ofbiz channel. I wait for ofbiz-bot 
>>>>> to appear, click on it, click on query and then I can make a 
>>>>> request in the chat line to restart a scheduler. A request is of 
>>>>> the form</p>
>>>>>   <pre><code>force build ofbizTrunkFramework</code></pre>
>>>>> @@ -53,8 +61,8 @@ under the License.
>>>>>   <pre><code>forces manual build after weird error</code></pre>
>>>>>   <p>So the whole request is of the form</p>
>>>>>   <pre><code>force build ofbizTrunkFramework forces manual build 
>>>>> after weird error</code></pre>
>>>>> -<p>Note though that with our last config (see <a 
>>>>> href="https://issues.apache.org/jira/browse/INFRA-15394">INFRA-15394</a>) 
>>>>> the ofbizTrunkFrameworkPlugins and ofbizBranch17FrameworkPlugins 
>>>>> builders are dependent and respectively automatically launched by 
>>>>> the ofbizTrunkFramework and ofbizBranch17Framework builders but 
>>>>> only on commits. So if you use an IRC command like <code>force 
>>>>> build ofbizTrunkFramework</code> only this builder will be 
>>>>> launched not the dependent ofbizTrunkFrameworkPlugins. We can't 
>>>>> call a scheduler from IRC. It needs a svn commit.</p>
>>>>> +<p>Note though that with our last config (see <a 
>>>>> href="https://issues.apache.org/jira/browse/INFRA-15394">INFRA-15394</a>) 
>>>>> the ofbizTrunkFrameworkPlugins and ofbizBranch17FrameworkPlugins 
>>>>> builders are dependent and respectively automatically launched by 
>>>>> the ofbizTrunkFramework and ofbizBranch17Framework builders but 
>>>>> only on commits. So if you use an IRC command like <code>force 
>>>>> build ofbizTrunkFramework</code> only this builder will be 
>>>>> launched not the dependent ofbizTrunkFrameworkPlugins. We can’t 
>>>>> call a scheduler from IRC. It needs a svn commit.</p>
>>>>>   <h3 id="randon-conflicts-on-port-8080-during-tests">Randon 
>>>>> conflicts on port 8080 during tests</h3>
>>>>> -<p>One case which comes back from time to time is a conflit on 
>>>>> port 8080 due to the automatic startup of tomcat. It's due to 
>>>>> security patches being applied on Silvanus (one of 3 the servers 
>>>>> BuildBot uses for OFBiz, hence the random aspect, only Sylvanus is 
>>>>> concerned). In such case we need to ask infra to manually disable 
>>>>> Tomcat on Silvanus. This happened 4th already, last case was <a 
>>>>> href="https://issues.apache.org/jira/browse/INFRA-15829">INFRA-15829</a>) 
>>>>> where things are best explained.</p>
>>>>> +<p>One case which comes back from time to time is a conflit on 
>>>>> port 8080 due to the automatic startup of tomcat. It’s due to 
>>>>> security patches being applied on Silvanus (one of 3 the servers 
>>>>> BuildBot uses for OFBiz, hence the random aspect, only Sylvanus is 
>>>>> concerned). In such case we need to ask infra to manually disable 
>>>>> Tomcat on Silvanus. This happened 4th already, last case was <a 
>>>>> href="https://issues.apache.org/jira/browse/INFRA-15829">INFRA-15829</a>) 
>>>>> where things are best explained.</p>
>>>>>   </body>
>>>>>   </html>
>>>>>
>>>>> Modified: ofbiz/tools/wiki-files/README.md.html
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/README.md.html?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/tools/wiki-files/README.md.html (original)
>>>>> +++ ofbiz/tools/wiki-files/README.md.html Thu Mar  8 10:42:54 2018
>>>>> @@ -1,11 +1,19 @@
>>>>> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
>>>>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
>>>>> -<html xmlns="http://www.w3.org/1999/xhtml">
>>>>> +<!DOCTYPE html>
>>>>> +<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
>>>>>   <head>
>>>>> -  <meta http-equiv="Content-Type" content="text/html; 
>>>>> charset=utf-8" />
>>>>> -  <meta http-equiv="Content-Style-Type" content="text/css" />
>>>>> +  <meta charset="utf-8" />
>>>>>     <meta name="generator" content="pandoc" />
>>>>> -  <title></title>
>>>>> -  <style type="text/css">code{white-space: pre;}</style>
>>>>> +  <meta name="viewport" content="width=device-width, 
>>>>> initial-scale=1.0, user-scalable=yes" />
>>>>> +  <title>README</title>
>>>>> +  <style type="text/css">
>>>>> +      code{white-space: pre-wrap;}
>>>>> +      span.smallcaps{font-variant: small-caps;}
>>>>> +      span.underline{text-decoration: underline;}
>>>>> +      div.column{display: inline-block; vertical-align: top; 
>>>>> width: 50%;}
>>>>> +  </style>
>>>>> +  <!--[if lt IE 9]>
>>>>> +    <script 
>>>>> src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
>>>>> +  <![endif]-->
>>>>>   </head>
>>>>>   <body>
>>>>>   <!--
>>>>> @@ -32,16 +40,16 @@ under the License.
>>>>>   <p><a href="http://ofbiz.apache.org/documentation.html">OFBiz 
>>>>> documentation</a></p>
>>>>>   <p><a href="http://www.apache.org/licenses/LICENSE-2.0">OFBiz 
>>>>> License</a></p>
>>>>>   <blockquote>
>>>>> -<p><em>Note</em>: If you want to use Eclipse, read the 
>>>>> &quot;Setup eclipse project for OFBiz&quot; section to set it up.</p>
>>>>> +<p><em>Note</em>: If you want to use Eclipse, read the “Setup 
>>>>> eclipse project for OFBiz” section to set it up.</p>
>>>>>   </blockquote>
>>>>>   <blockquote>
>>>>> -<p><em>Note</em>: If you want to use an external database like 
>>>>> MySQL or PostgreSQL, read the &quot;Setup an external 
>>>>> database&quot; section to set it up.</p>
>>>>> +<p><em>Note</em>: If you want to use an external database like 
>>>>> MySQL or PostgreSQL, read the “Setup an external database” 
>>>>> section to set it up.</p>
>>>>>   </blockquote>
>>>>>   <blockquote>
>>>>> -<p><em>Note</em>: If you want to run OFBiz without an internet 
>>>>> connection, read the &quot;Running gradle tasks without an 
>>>>> internet connection&quot; section.</p>
>>>>> +<p><em>Note</em>: If you want to run OFBiz without an internet 
>>>>> connection, read the “Running gradle tasks without an internet 
>>>>> connection” section.</p>
>>>>>   </blockquote>
>>>>>   <blockquote>
>>>>> -<p><em>Note</em>: The directory structure and repositories have 
>>>>> changed. For more information read the &quot;Repository and 
>>>>> directory structure&quot; section.</p>
>>>>> +<p><em>Note</em>: The directory structure and repositories have 
>>>>> changed. For more information read the “Repository and directory 
>>>>> structure” section.</p>
>>>>>   </blockquote>
>>>>>   <h2 id="system-requirements">System requirements</h2>
>>>>>   <p>The only requirement to run OFBiz is to have the Java 
>>>>> Development Kit (JDK) version 8 installed on your system (not just 
>>>>> the JRE, but the full JDK) which you can download from the below 
>>>>> link. Make sure of setting the $JAVA_HOME environment variable.</p>
>>>>> @@ -83,14 +91,16 @@ under the License.
>>>>>   <p>There are two types of tasks designed for OFBiz in Gradle:</p>
>>>>>   <ul>
>>>>>   <li><p><strong>Standard tasks</strong>: To execute general 
>>>>> standard Gradle tasks</p></li>
>>>>> -<li><strong>OFBiz server tasks</strong>: To execute OFBiz startup 
>>>>> commands. These tasks start with one of the following words:</li>
>>>>> +<li><strong>OFBiz server tasks</strong>: To execute OFBiz startup 
>>>>> commands. These tasks start with one of the following words:
>>>>> +<ul>
>>>>>   <li><strong>ofbiz</strong> : standard server commands</li>
>>>>>   <li><strong>ofbizDebug</strong> : server commands running in 
>>>>> remote debug mode</li>
>>>>> -<li><p><strong>ofbizBackground</strong> ; server commands running 
>>>>> in a background forked process</p></li>
>>>>> +<li><strong>ofbizBackground</strong> ; server commands running in 
>>>>> a background forked process</li>
>>>>> +</ul></li>
>>>>>   </ul>
>>>>>   <p>Tips:</p>
>>>>>   <ul>
>>>>> -<li><p>OFBiz <strong>server commands</strong> require 
>>>>> <strong>&quot;quoting&quot;</strong> the commands. For example: 
>>>>> <code>gradlew &quot;ofbiz --help&quot;</code></p></li>
>>>>> +<li><p>OFBiz <strong>server commands</strong> require 
>>>>> <strong>“quoting”</strong> the commands. For example: 
>>>>> <code>gradlew &quot;ofbiz --help&quot;</code></p></li>
>>>>>   <li><p>Shortcuts to task names can be used by writing the first 
>>>>> letter of every word in a task name. However, you cannot use the 
>>>>> shortcut form for OFBiz server tasks. Example: <code>gradlew 
>>>>> loadAdminUserLogin -PuserLoginId=myadmin</code> = <code>gradlew 
>>>>> lAUL -PuserLoginId=myadmin</code></p></li>
>>>>>   <li><p>Dependent tasks can be skipped with the -x switch. 
>>>>> Example: <code>gradlew build -x test</code> does not run the tests 
>>>>> within the build.</p></li>
>>>>>   </ul>
>>>>> @@ -102,7 +112,7 @@ under the License.
>>>>>   <p><code>gradlew &quot;ofbizDebug --test&quot;</code></p>
>>>>>   <p><code>gradlew &quot;ofbizBackground --start --portoffset 
>>>>> 10000&quot;</code></p>
>>>>>   <p><code>gradlew &quot;ofbiz --shutdown --portoffset 
>>>>> 10000&quot;</code></p>
>>>>> -<p><code>gradlew ofbiz</code> (default is --start)</p>
>>>>> +<p><code>gradlew ofbiz</code> (default is –start)</p>
>>>>>   <h4 id="example-mixed-tasks-standard-and-ofbiz-server">Example 
>>>>> mixed tasks (standard and OFBiz server)</h4>
>>>>>   <p><code>gradlew cleanAll loadAll &quot;ofbiz --start 
>>>>> --portoffset 10000&quot;</code></p>
>>>>>   <hr />
>>>>> @@ -133,7 +143,7 @@ under the License.
>>>>>   <h4 id="get-ofbiz-status">Get OFBiz status</h4>
>>>>>   <p><code>gradlew &quot;ofbiz --status&quot;</code></p>
>>>>>   <h4 id="force-ofbiz-shutdown">Force OFBiz shutdown</h4>
>>>>> -<p>Terminate all running OFBiz server instances by calling the 
>>>>> appropriate operating system kill command. Use this command to 
>>>>> force OFBiz termination if the --shutdown command does not work. 
>>>>> Usually this is needed when in the middle of data loading or 
>>>>> testing in OFBiz.</p>
>>>>> +<p>Terminate all running OFBiz server instances by calling the 
>>>>> appropriate operating system kill command. Use this command to 
>>>>> force OFBiz termination if the –shutdown command does not work. 
>>>>> Usually this is needed when in the middle of data loading or 
>>>>> testing in OFBiz.</p>
>>>>>   <p>Warning: Be careful in using this command as force 
>>>>> termination might lead to inconsistent state / data</p>
>>>>>   <p><code>gradlew terminateOfbiz</code></p>
>>>>>   <h4 id="start-ofbiz-in-remote-debug-mode">Start OFBiz in remote 
>>>>> debug mode</h4>
>>>>> @@ -142,7 +152,7 @@ under the License.
>>>>>   <p>OR</p>
>>>>>   <p><code>gradlew ofbizDebug</code></p>
>>>>>   <h4 id="start-ofbiz-on-a-different-port">Start OFBiz on a 
>>>>> different port</h4>
>>>>> -<p>Start OFBiz of the network port offsetted by the range 
>>>>> provided in the argument to --portoffset</p>
>>>>> +<p>Start OFBiz of the network port offsetted by the range 
>>>>> provided in the argument to –portoffset</p>
>>>>>   <p><code>gradlew &quot;ofbiz --start --portoffset 
>>>>> 10000&quot;</code></p>
>>>>>   <h4 id="start-ofbiz-in-the-background">Start OFBiz in the 
>>>>> background</h4>
>>>>>   <p>Start OFBiz in the background by forking it to a new process 
>>>>> and redirecting the output to 
>>>>> <strong>runtime/logs/console.log</strong></p>
>>>>> @@ -161,16 +171,16 @@ under the License.
>>>>>   <li><strong>ext</strong>: External General Data (custom)</li>
>>>>>   <li><strong>ext-test</strong>: External Test Data (custom)</li>
>>>>>   <li><strong>ext-demo</strong>: External Demo Data (custom)</li>
>>>>> -<li><strong>tenant</strong>: Data to load into the master tenants 
>>>>> database &quot;ofbiztenant&quot;. This data is required to 
>>>>> identify where a tenant's database is located. For more 
>>>>> information you can review the relevant <a 
>>>>> href="https://cwiki.apache.org/confluence/display/OFBIZ/Multitenancy+support">tenant 
>>>>> documentation</a></li>
>>>>> +<li><strong>tenant</strong>: Data to load into the master tenants 
>>>>> database “ofbiztenant”. This data is required to identify 
>>>>> where a tenant’s database is located. For more information you 
>>>>> can review the relevant <a 
>>>>> href="https://cwiki.apache.org/confluence/display/OFBIZ/Multitenancy+support">tenant 
>>>>> documentation</a></li>
>>>>>   </ul>
>>>>> -<p>Available options for the --load-data server command are the 
>>>>> following:</p>
>>>>> +<p>Available options for the –load-data server command are the 
>>>>> following:</p>
>>>>>   <ul>
>>>>> -<li><strong>readers=[name]</strong>: only load data from certain 
>>>>> readers separated by comma. e.g. seed,seed-initial,ext</li>
>>>>> +<li><strong>readers=[name]</strong>: only load data from certain 
>>>>> readers separated by comma. e.g. seed,seed-initial,ext</li>
>>>>>   <li><strong>file=[path]</strong>: load a single file from 
>>>>> location or several files separated by commas. e.g. 
>>>>> /my/file/1,/my/file/2</li>
>>>>>   <li><strong>dir=[path]</strong>: load all data files found in 
>>>>> directory</li>
>>>>> -<li><strong>component=[name]</strong>: only load data from a 
>>>>> specific component. e.g. base</li>
>>>>> -<li><strong>delegator=[name]</strong>: use the defined delegator. 
>>>>> Default is &quot;default&quot;. If the value passed is 
>>>>> <strong>&quot;all-tenants&quot;</strong> then OFBiz will load the 
>>>>> data for all defined tenants in the system.</li>
>>>>> -<li><strong>group=[name]</strong>: override the entity group 
>>>>> (org.apache.ofbiz). e.g. com.example.something</li>
>>>>> +<li><strong>component=[name]</strong>: only load data from a 
>>>>> specific component. e.g. base</li>
>>>>> +<li><strong>delegator=[name]</strong>: use the defined delegator. 
>>>>> Default is “default”. If the value passed is 
>>>>> <strong>“all-tenants”</strong> then OFBiz will load the data 
>>>>> for all defined tenants in the system.</li>
>>>>> +<li><strong>group=[name]</strong>: override the entity group 
>>>>> (org.apache.ofbiz). e.g. com.example.something</li>
>>>>>   <li><strong>timeout=[millis]</strong>: timeout in milliseconds</li>
>>>>>   <li><strong>create-pks</strong>: create primary keys</li>
>>>>>   <li><strong>drop-pks</strong>: drop primary keys</li>
>>>>> @@ -221,8 +231,8 @@ under the License.
>>>>>   <p><code>gradlew createTenant -PtenantId=mytenant 
>>>>> -PtenantName=&quot;My Name&quot; -PdomainName=com.example 
>>>>> -PtenantReaders=seed,seed-initial,ext -PdbPlatform=M 
>>>>> -PdbIp=127.0.0.1 -PdbUser=mydbuser -PdbPassword=mydbpass</code></p>
>>>>>   <p>If run successfully, the system creates a new tenant having:</p>
>>>>>   <ul>
>>>>> -<li>delegator: default#${tenandId} (e.g. default#mytenant)</li>
>>>>> -<li>admin user: ${tenantId}-admin (e.g. mytenant-admin)</li>
>>>>> +<li>delegator: default#${tenandId} (e.g. default#mytenant)</li>
>>>>> +<li>admin user: ${tenantId}-admin (e.g. mytenant-admin)</li>
>>>>>   <li>admin user password: ofbiz</li>
>>>>>   </ul>
>>>>>   <h4 id="load-data-for-a-specific-tenant">load data for a 
>>>>> specific tenant</h4>
>>>>> @@ -256,7 +266,7 @@ under the License.
>>>>>   </ul>
>>>>>   <p><code>gradlew &quot;ofbiz --test loglevel=fatal&quot;</code></p>
>>>>>   <h4 id="execute-an-integration-test-case">Execute an integration 
>>>>> test case</h4>
>>>>> -<p>run a test case, in this example the component is 
>>>>> &quot;entity&quot; and the case name is &quot;entity-tests&quot;</p>
>>>>> +<p>run a test case, in this example the component is “entity” 
>>>>> and the case name is “entity-tests”</p>
>>>>>   <p><code>gradlew &quot;ofbiz --test component=entity --test 
>>>>> suitename=entitytests --test case=entity-query-tests&quot;</code></p>
>>>>>   <h4 
>>>>> id="execute-an-integration-test-case-in-debug-mode-with-verbose-log">Execute 
>>>>> an integration test case in debug mode with verbose log</h4>
>>>>>   <p>listens on port <strong>5005</strong></p>
>>>>> @@ -275,7 +285,7 @@ under the License.
>>>>>   <h4 id="refresh-the-generated-artifacts">Refresh the generated 
>>>>> artifacts</h4>
>>>>>   <p><code>gradlew clean build</code></p>
>>>>>   <h4 id="create-an-admin-user-account">Create an admin user 
>>>>> account</h4>
>>>>> -<p>Create an admin user with login name MyUserName and default 
>>>>> password with value &quot;ofbiz&quot;. Upon first login OFBiz will 
>>>>> request changing the default password</p>
>>>>> +<p>Create an admin user with login name MyUserName and default 
>>>>> password with value “ofbiz”. Upon first login OFBiz will 
>>>>> request changing the default password</p>
>>>>>   <p><code>gradlew loadAdminUserLogin 
>>>>> -PuserLoginId=MyUserName</code></p>
>>>>>   <h4 id="compile-java-using-xlint-output">Compile Java using 
>>>>> Xlint output</h4>
>>>>>   <p>Xlint prints output of all warnings detected by the compiler</p>
>>>>> @@ -284,7 +294,7 @@ under the License.
>>>>>   <p>The below command activates a gradle plugin (OWASP) and 
>>>>> Identifies and reports known vulnerabilities (CVEs) in OFBiz 
>>>>> library dependencies. The task takes time to complete, and once 
>>>>> done, a report will be generated in 
>>>>> $OFBIZ_HOME/build/reports/dependency-check-report.html</p>
>>>>>   <p><code>gradlew -PenableOwasp dependencyCheckAnalyze</code></p>
>>>>>   <h4 id="setup-eclipse-project-for-ofbiz">Setup eclipse project 
>>>>> for OFBiz</h4>
>>>>> -<p>Setting up OFBiz on eclipse is done by simply running the 
>>>>> below command and then importing the project to eclipse. This 
>>>>> command will generate the necessary <strong>.classpath</strong> 
>>>>> and <strong>.project</strong> files for eclipse and it will also 
>>>>> make the source code for external libraries available in eclipse 
>>>>> (i.e. you can view source through Ctrl + Click)</p>
>>>>> +<p>Setting up OFBiz on eclipse is done by simply running the 
>>>>> below command and then importing the project to eclipse. This 
>>>>> command will generate the necessary <strong>.classpath</strong> 
>>>>> and <strong>.project</strong> files for eclipse and it will also 
>>>>> make the source code for external libraries available in eclipse 
>>>>> (i.e. you can view source through Ctrl + Click)</p>
>>>>>   <p>The first time you run this command it will take a long time 
>>>>> to execute because it will download source packages available for 
>>>>> project dependencies.</p>
>>>>>   <p><code>gradlew eclipse</code></p>
>>>>>   <hr />
>>>>> @@ -301,16 +311,16 @@ under the License.
>>>>>   <p>If you need username and password to access the custom 
>>>>> repository:</p>
>>>>>   <p><code>gradlew pullPlugin 
>>>>> -PrepoUrl=&quot;http://www.example.com/custom-maven&quot; 
>>>>> -PrepoUser=myuser -PrepoPassword=mypassword 
>>>>> -PdependencyId=&quot;org.apache.ofbiz.plugin:myplugin:0.1.0&quot;</code></p>
>>>>>   <h3 id="pull-an-official-plugin-from-source-control">Pull an 
>>>>> official plugin from source control</h3>
>>>>> -<p>Download an official plugin from source control (currently 
>>>>> subversion) and place it in the plugins directory. In addition, 
>>>>> this task also executes the &quot;install&quot; task if it is 
>>>>> defined for the plugin being downloaded.</p>
>>>>> +<p>Download an official plugin from source control (currently 
>>>>> subversion) and place it in the plugins directory. In addition, 
>>>>> this task also executes the “install” task if it is defined 
>>>>> for the plugin being downloaded.</p>
>>>>>   <p>This task is mostly useful when working on the trunk branch 
>>>>> as it pulls in the latest version of a plugin.</p>
>>>>>   <p><code>gradlew pullPluginSource -PpluginId=ecommerce</code></p>
>>>>>   <blockquote>
>>>>>   <p><em>Note</em>: This plugin will have its own .svn directory 
>>>>> placed inside the plugin directory.</p>
>>>>>   </blockquote>
>>>>>   <h3 id="pull-all-official-plugins-from-source-control">Pull all 
>>>>> official plugins from source control</h3>
>>>>> -<p>Download all officially supported plugins from source control 
>>>>> (currently subversion) and place them inclusive of their 
>>>>> &quot;.svn&quot; directory in /plugins. WARNING! This task deletes 
>>>>> the /plugins directory and replaces it with the official plugins.</p>
>>>>> +<p>Download all officially supported plugins from source control 
>>>>> (currently subversion) and place them inclusive of their 
>>>>> “.svn” directory in /plugins. WARNING! This task deletes the 
>>>>> /plugins directory and replaces it with the official plugins.</p>
>>>>>   <p><code>gradlew pullAllPluginsSource</code></p>
>>>>> -<p>This task makes it easy to download and develop officially 
>>>>> supported plugins. It is mostly used by developers or individuals 
>>>>> working on the trunk branch. We do not recommend using this task 
>>>>> on releases of OFBiz, instead consider using the 
>>>>> &quot;pullPlugin&quot; task to get the correct version of a plugin 
>>>>> compatible with your release.</p>
>>>>> +<p>This task makes it easy to download and develop officially 
>>>>> supported plugins. It is mostly used by developers or individuals 
>>>>> working on the trunk branch. We do not recommend using this task 
>>>>> on releases of OFBiz, instead consider using the “pullPlugin” 
>>>>> task to get the correct version of a plugin compatible with your 
>>>>> release.</p>
>>>>>   <blockquote>
>>>>>   <p><em>Note</em>: All the plugins will share a .svn directory 
>>>>> placed in the plugins directory.</p>
>>>>>   </blockquote>
>>>>> @@ -322,11 +332,11 @@ under the License.
>>>>>   <li>Run the below command</li>
>>>>>   </ul>
>>>>>   <p><code>gradlew installPlugin -PpluginId=myplugin</code></p>
>>>>> -<p>The above commands executes the task &quot;install&quot; in 
>>>>> the plugin's build.gradle file if it exists</p>
>>>>> +<p>The above commands executes the task “install” in the 
>>>>> plugin’s build.gradle file if it exists</p>
>>>>>   <h3 id="uninstall-a-plugin">Uninstall a plugin</h3>
>>>>>   <p>If you have an existing plugin called mycustomplugin and you 
>>>>> wish to uninstall run the below command</p>
>>>>>   <p><code>gradlew uninstallPlugin -PpluginId=myplugin</code></p>
>>>>> -<p>The above command executes the task &quot;uninstall&quot; in 
>>>>> the plugin's build.gradle file if it exists</p>
>>>>> +<p>The above command executes the task “uninstall” in the 
>>>>> plugin’s build.gradle file if it exists</p>
>>>>>   <h3 id="remove-a-plugin">Remove a plugin</h3>
>>>>>   <p>Calls <strong>uninstallPlugin</strong> on an existing plugin 
>>>>> and then delete it from the file-system</p>
>>>>>   <p><code>gradlew removePlugin -PpluginId=myplugin</code></p>
>>>>> @@ -347,7 +357,7 @@ under the License.
>>>>>   <li>pluginId: mandatory</li>
>>>>>   <li>groupId: optional, defaults to org.apache.ofbiz.plugin</li>
>>>>>   <li>pluginVersion: optional, defaults to 0.1.0-SNAPSHOT</li>
>>>>> -<li>pluginDescription: optional, defaults to &quot;Publication of 
>>>>> OFBiz plugin ${pluginId}&quot;</li>
>>>>> +<li>pluginDescription: optional, defaults to “Publication of 
>>>>> OFBiz plugin ${pluginId}”</li>
>>>>>   </ul>
>>>>>   <p><code>gradlew pushPlugin -PpluginId=myplugin</code></p>
>>>>>   <p><code>gradlew pushPlugin -PpluginId=mycompany 
>>>>> -PpluginGroup=com.mycompany.ofbiz.plugin -PpluginVersion=1.2.3 
>>>>> -PpluginDescription=&quot;Introduce special functionality 
>>>>> X&quot;</code></p>
>>>>> @@ -361,9 +371,9 @@ under the License.
>>>>>   <p>OFBiz is split into two repositories:</p>
>>>>>   <ul>
>>>>> <li><p><strong>ofbiz-framework</strong>: Contains the core 
>>>>> framework and main applications in the system like accounting, 
>>>>> party, order, etc</p></li>
>>>>> -<li><p><strong>ofbiz-plugins</strong>: Renamed from 
>>>>> &quot;special-purpose&quot; and contains optional components that 
>>>>> are officially supported by the community</p></li>
>>>>> +<li><p><strong>ofbiz-plugins</strong>: Renamed from 
>>>>> “special-purpose” and contains optional components that are 
>>>>> officially supported by the community</p></li>
>>>>>   </ul>
>>>>> -<p>Furthermore, the hot-deploy directory is removed as the 
>>>>> plugins directory works as a replacement for both 
>>>>> &quot;special-purpose&quot; and &quot;hot-deploy&quot;.</p>
>>>>> +<p>Furthermore, the hot-deploy directory is removed as the 
>>>>> plugins directory works as a replacement for both 
>>>>> “special-purpose” and “hot-deploy”.</p>
>>>>>   <p>If you need to load the components in the plugins directory 
>>>>> in a specific order place a component-load.xml file in the plugins 
>>>>> directory listing the order.</p>
>>>>>   <p>To check out a plugin from source control use the 
>>>>> <strong>pullPluginSource</strong> Gradle task. To check out all 
>>>>> plugins from source control use the 
>>>>> <strong>pullAllPluginsSource</strong>. <strong>Beware</strong> 
>>>>> this deletes a previously existing plugins directory.</p>
>>>>>   <h3 
>>>>> id="running-gradle-tasks-without-an-internet-connection">Running 
>>>>> gradle tasks without an internet connection</h3>
>>>>> @@ -372,7 +382,7 @@ under the License.
>>>>>   <p>If any dependencies are missing from the cache and you pass 
>>>>> <code>--offline</code> switch then the build execution will fail.</p>
>>>>>   <h3 
>>>>> id="setup-an-external-database-like-mysql-postgresql-etc">Setup an 
>>>>> external database like MySQL, PostgreSQL, etc</h3>
>>>>>   <p>To setup an external database instead of the default embedded 
>>>>> Apache Derby, you will need to follow the following instructions:</p>
>>>>> -<ol style="list-style-type: decimal">
>>>>> +<ol type="1">
>>>>>   <li>Find the JDBC driver suitable for your database using one of 
>>>>> the following options:</li>
>>>>>   </ol>
>>>>>   <ul>
>>>>> @@ -380,7 +390,7 @@ under the License.
>>>>>   <p>OR</p></li>
>>>>>   <li><p>Download the JDBC driver jar and place it in 
>>>>> $OFBIZ_HOME/lib or the lib sub-directory of any component</p></li>
>>>>>   </ul>
>>>>> -<ol start="2" style="list-style-type: decimal">
>>>>> +<ol start="2" type="1">
>>>>>   <li>Modify the entityengine.xml file located in 
>>>>> $OFBIZ_HOME/framework/entity/config to switch the default database 
>>>>> to the one you selected. For more details you can read the 
>>>>> relevant section in the <a 
>>>>> href="https://cwiki.apache.org/confluence/display/OFBIZ/Apache+OFBiz+Technical+Production+Setup+Guide">technical 
>>>>> setup guide</a></li>
>>>>>   </ol>
>>>>>   <h3 id="setup-gradle-tab-completion-on-unix-like-systems">Setup 
>>>>> gradle tab-completion on Unix-like systems:</h3>
>>>>> @@ -390,7 +400,7 @@ under the License.
>>>>>   <p><code>sudo curl -L -s https://edub.me/gradle-completion-bash 
>>>>> -o /etc/bash_completion.d/gradle-tab-completion.bash</code></p>
>>>>>   <hr />
>>>>>   <h2 id="crypto-notice">Crypto notice</h2>
>>>>> -<p>This distribution includes cryptographic software. The country 
>>>>> in which you currently reside may have restrictions on the import, 
>>>>> possession, use, and/or re-export to another country, of 
>>>>> encryption software. BEFORE using any encryption software, please 
>>>>> check your country's laws, regulations and policies concerning the 
>>>>> import, possession, or use, and re-export of encryption software, 
>>>>> to see if this is permitted. See <a 
>>>>> href="http://www.wassenaar.org/" 
>>>>> class="uri">http://www.wassenaar.org/</a> for more information.</p>
>>>>> +<p>This distribution includes cryptographic software. The country 
>>>>> in which you currently reside may have restrictions on the import, 
>>>>> possession, use, and/or re-export to another country, of 
>>>>> encryption software. BEFORE using any encryption software, please 
>>>>> check your country’s laws, regulations and policies concerning 
>>>>> the import, possession, or use, and re-export of encryption 
>>>>> software, to see if this is permitted. See <a 
>>>>> href="http://www.wassenaar.org/" 
>>>>> class="uri">http://www.wassenaar.org/</a> for more information.</p>
>>>>>   <p>The U.S. Government Department of Commerce, Bureau of 
>>>>> Industry and Security (BIS), has classified this software as 
>>>>> Export Commodity Control Number (ECCN) 5D002.C.1, which includes 
>>>>> information security software using or performing cryptographic 
>>>>> functions with asymmetric algorithms. The form and manner of this 
>>>>> Apache Software Foundation distribution makes it eligible for 
>>>>> export under the License Exception ENC Technology Software 
>>>>> Unrestricted (TSU) exception (see the BIS Export Administration 
>>>>> Regulations, Section 740.13) for both object code and source 
>>>>> code.</p>
>>>>>   <p>The following provides more details on the included 
>>>>> cryptographic software:</p>
>>>>>   <ul>
>>>>>
>>>>> Modified: ofbiz/tools/wiki-files/birt/Creating reports.md.html
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/Creating%20reports.md.html?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/tools/wiki-files/birt/Creating reports.md.html (original)
>>>>> +++ ofbiz/tools/wiki-files/birt/Creating reports.md.html Thu Mar  
>>>>> 8 10:42:54 2018
>>>>> @@ -1,11 +1,19 @@
>>>>> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
>>>>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
>>>>> -<html xmlns="http://www.w3.org/1999/xhtml">
>>>>> +<!DOCTYPE html>
>>>>> +<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
>>>>>   <head>
>>>>> -  <meta http-equiv="Content-Type" content="text/html; 
>>>>> charset=utf-8" />
>>>>> -  <meta http-equiv="Content-Style-Type" content="text/css" />
>>>>> +  <meta charset="utf-8" />
>>>>>     <meta name="generator" content="pandoc" />
>>>>> -  <title></title>
>>>>> -  <style type="text/css">code{white-space: pre;}</style>
>>>>> +  <meta name="viewport" content="width=device-width, 
>>>>> initial-scale=1.0, user-scalable=yes" />
>>>>> +  <title>Creating reports</title>
>>>>> +  <style type="text/css">
>>>>> +      code{white-space: pre-wrap;}
>>>>> +      span.smallcaps{font-variant: small-caps;}
>>>>> +      span.underline{text-decoration: underline;}
>>>>> +      div.column{display: inline-block; vertical-align: top; 
>>>>> width: 50%;}
>>>>> +  </style>
>>>>> +  <!--[if lt IE 9]>
>>>>> +    <script 
>>>>> src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
>>>>> +  <![endif]-->
>>>>>   </head>
>>>>>   <body>
>>>>>   <h1 id="report-creation---adminsuper-user">Report creation - 
>>>>> Admin/Super-User</h1>
>>>>> @@ -18,30 +26,30 @@
>>>>>   <li>The BIRT Report Designer</li>
>>>>>   </ul>
>>>>>   <h2 id="report-creation">Report creation</h2>
>>>>> -<ol style="list-style-type: decimal">
>>>>> +<ol type="1">
>>>>>   <li>Get to Birt component in OFBiz <img 
>>>>> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Birt%20Menus.png?api=v2" 
>>>>> alt="Birt menus" /></li>
>>>>> -<li>Click on the &quot;Flexible Report&quot; menu (varies 
>>>>> depending on themes)</li>
>>>>> -<li>Click on the &quot;Generate report&quot; button, you get to 
>>>>> this screen:</li>
>>>>> +<li>Click on the “Flexible Report” menu (varies depending on 
>>>>> themes)</li>
>>>>> +<li>Click on the “Generate report” button, you get to this 
>>>>> screen:</li>
>>>>>   <li>Fill the form: <img 
>>>>> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Example%20Report.png?api=v2" 
>>>>> alt="Example Report" /></li>
>>>>>   </ol>
>>>>>   <ul>
>>>>> -<li>The list &quot;Choose report topic&quot; will let you choose 
>>>>> among predefined report masters your topic of interest.</li>
>>>>> +<li>The list “Choose report topic” will let you choose among 
>>>>> predefined report masters your topic of interest.</li>
>>>>>   <li>The report name is a simple short name from which the file 
>>>>> name will be generated.</li>
>>>>>   <li>The description is a short description which will allow you 
>>>>> to recognise the report and its topic.</li>
>>>>> -<li>The box &quot;Generate filters in design&quot; will add in 
>>>>> the design the visualisation of the filters filled in the 
>>>>> filtering form.</li>
>>>>> +<li>The box “Generate filters in design” will add in the 
>>>>> design the visualisation of the filters filled in the filtering 
>>>>> form.</li>
>>>>>   </ul>
>>>>> -<p>Finally, if you don't find what you want, you will need to 
>>>>> create a new Report Master...</p>
>>>>> -<p>Once the form is validated, OFBiz will show you the &quot;Edit 
>>>>> Report&quot; screen. <img 
>>>>> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Edit%20Report%20screen.png?api=v2" 
>>>>> alt="Edit Report screen" /></p>
>>>>> +<p>Finally, if you don’t find what you want, you will need to 
>>>>> create a new Report Master…</p>
>>>>> +<p>Once the form is validated, OFBiz will show you the “Edit 
>>>>> Report” screen. <img 
>>>>> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Edit%20Report%20screen.png?api=v2" 
>>>>> alt="Edit Report screen" /></p>
>>>>>   <h2 id="report-information">Report information</h2>
>>>>>   <p>This first panel allows you to change the report description 
>>>>> and status. Actually it does not make sense changing the status to 
>>>>> published before having downloaded the .rptdesign file (Birt 
>>>>> Report Designer file) from the server (in database), edited and 
>>>>> uploaded it back to the server. This is explained in the section 
>>>>> below. Changing the status allows users to use your reports. But 
>>>>> if you publish without any change the report will render as 
>>>>> empty.</p>
>>>>> -<h2 
>>>>> id="the-.rptdesign-report-file-donwload-edit-upload-and-publish-it">The 
>>>>> .rptdesign report file: donwload, edit, upload and publish it</h2>
>>>>> -<p>To really use the report you need to download the .rptdesign 
>>>>> file from the server in a location from where you can edit it with 
>>>>> the BIRT Report Designer. So you need to install first the BIRT 
>>>>> Report Designer. Then you can edit the .rptdesign file in the BIRT 
>>>>> Report Designer. For that refer to the <a 
>>>>> href="https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk/birt/documents/Using%20the%20Birt%20Report%20Designer.md.html">&quot;Using 
>>>>> the Birt Report Designer.md.html&quot; file</a>. You can also find 
>>>>> the Markdonw version in the same directory: 
>>>>> ofbiz-framework/plugins/birt/documents ### Editing the downloaded 
>>>>> file ### Once you installed the BIRT Report Designer and have 
>>>>> downloaded the .rptdesign file, you can edit it with the Birt 
>>>>> Report Designer. When you have edited it suiting your needs you 
>>>>> must upload it to the server for your changes to be taken into 
>>>>> account by OFBiz.</p>
>>>>> -<p><span style="color:red"><strong>This is when things begin to 
>>>>> be really interesting</strong>.</span> You can then test your 
>>>>> report using the &quot;Preview&quot; panel. There you can 
>>>>> temporarily filter the result, and use the export format you 
>>>>> prefer, once done click &quot;Send&quot;. You can then decide to 
>>>>> change the report content in the Birt Report Designer again or 
>>>>> keep your changes. Once done in the Birt Report Designer, simply 
>>>>> select the changed file to upload, and upload it again. You can 
>>>>> re-test your changes and continue until you really get what you 
>>>>> want! You can then publish the report to allow users to select and 
>>>>> use it. There are 2 ways to publish a report from the &quot;Manage 
>>>>> reports&quot; screen or directly in the &quot;Report 
>>>>> information&quot; panel. We will see the &quot;Manage 
>>>>> reports&quot; screen below.</p>
>>>>> +<h2 
>>>>> id="the-.rptdesign-report-file-download-edit-upload-and-publish-it">The 
>>>>> .rptdesign report file: download, edit, upload and publish it</h2>
>>>>> +<p>To really use the report you need to download the .rptdesign 
>>>>> file from the server in a location from where you can edit it with 
>>>>> the BIRT Report Designer. So you need to install first the BIRT 
>>>>> Report Designer. Then you can edit the .rptdesign file in the BIRT 
>>>>> Report Designer. For that refer to the <a 
>>>>> href="https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk/birt/documents/Using%20the%20Birt%20Report%20Designer.md.html">“Using 
>>>>> the Birt Report Designer.md.html” file</a>. You can also find 
>>>>> the Markdonw version in the same directory: 
>>>>> ofbiz-framework/plugins/birt/documents ### Editing the downloaded 
>>>>> file ### Once you installed the BIRT Report Designer and have 
>>>>> downloaded the .rptdesign file, you can edit it with the Birt 
>>>>> Report Designer. When you have edited it suiting your needs you 
>>>>> must upload it to the server for your changes to be taken into 
>>>>> account by OFBiz.</p>
>>>>> +<p><span style="color:red"><strong>This is when things begin to 
>>>>> be really interesting</strong>.</span> You can then test your 
>>>>> report using the “Preview” panel. There you can temporarily 
>>>>> filter the result, and use the export format you prefer, once done 
>>>>> click “Send”. You can then decide to change the report content 
>>>>> in the Birt Report Designer again or keep your changes. Once done 
>>>>> in the Birt Report Designer, simply select the changed file to 
>>>>> upload, and upload it again. You can re-test your changes and 
>>>>> continue until you really get what you want! You can then publish 
>>>>> the report to allow users to select and use it. There are 2 ways 
>>>>> to publish a report from the “Manage reports” screen or 
>>>>> directly in the “Report information” panel. We will see the 
>>>>> “Manage reports” screen below.</p>
>>>>>   <h2 id="filters-overriding">Filters Overriding</h2>
>>>>> -<p>You may want to overide the default filters. You can then use 
>>>>> the Xml &quot;Override filters&quot; panel to override and 
>>>>> personnalize the form, once done click &quot;Save&quot;. If you 
>>>>> ignore that step, it will <strong>NOT</strong> prevent the report 
>>>>> creation, <strong>it is already done</strong>, it will just be 
>>>>> with the generic filtering form inherited from the master from. 
>>>>> &gt;<em>Note</em>: if no preview is available, it is usually due 
>>>>> to a mistake in the master form code. You can edit it in the 
>>>>> database.</p>
>>>>> +<p>You may want to overide the default filters. You can then use 
>>>>> the Xml “Override filters” panel to override and personnalize 
>>>>> the form, once done click “Save”. If you ignore that step, it 
>>>>> will <strong>NOT</strong> prevent the report creation, <strong>it 
>>>>> is already done</strong>, it will just be with the generic 
>>>>> filtering form inherited from the master from. &gt;<em>Note</em>: 
>>>>> if no preview is available, it is usually due to a mistake in the 
>>>>> master form code. You can edit it in the database.</p>
>>>>>   <h2 id="manage-reports">Manage reports</h2>
>>>>> -<p>The &quot;Manage reports&quot; button get you to a screen 
>>>>> which allows to edit (get back to current page), publish or delete 
>>>>> a report.</p>
>>>>> +<p>The “Manage reports” button get you to a screen which 
>>>>> allows to edit (get back to current page), publish or delete a 
>>>>> report.</p>
>>>>>   <h2 id="use-a-report">Use a report</h2>
>>>>> -<p>Users can select and use any published report from that 
>>>>> screen. When they select a report they then get the same 
>>>>> &quot;Preview&quot; Panel and can do the same things than in the 
>>>>> &quot;Edit Report&quot; screen. Refer users to</p>
>>>>> +<p>Users can select and use any published report from that 
>>>>> screen. When they select a report they then get the same 
>>>>> “Preview” Panel and can do the same things than in the “Edit 
>>>>> Report” screen. Refer users to</p>
>>>>>   </body>
>>>>>   </html>
>>>>>
>>>>> Modified: ofbiz/tools/wiki-files/birt/How to use flexible 
>>>>> reports.md.html
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/How%20to%20use%20flexible%20reports.md.html?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/tools/wiki-files/birt/How to use flexible 
>>>>> reports.md.html (original)
>>>>> +++ ofbiz/tools/wiki-files/birt/How to use flexible 
>>>>> reports.md.html Thu Mar  8 10:42:54 2018
>>>>> @@ -1,11 +1,19 @@
>>>>> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
>>>>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
>>>>> -<html xmlns="http://www.w3.org/1999/xhtml">
>>>>> +<!DOCTYPE html>
>>>>> +<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
>>>>>   <head>
>>>>> -  <meta http-equiv="Content-Type" content="text/html; 
>>>>> charset=utf-8" />
>>>>> -  <meta http-equiv="Content-Style-Type" content="text/css" />
>>>>> +  <meta charset="utf-8" />
>>>>>     <meta name="generator" content="pandoc" />
>>>>> -  <title></title>
>>>>> -  <style type="text/css">code{white-space: pre;}</style>
>>>>> +  <meta name="viewport" content="width=device-width, 
>>>>> initial-scale=1.0, user-scalable=yes" />
>>>>> +  <title>How to use flexible reports</title>
>>>>> +  <style type="text/css">
>>>>> +      code{white-space: pre-wrap;}
>>>>> +      span.smallcaps{font-variant: small-caps;}
>>>>> +      span.underline{text-decoration: underline;}
>>>>> +      div.column{display: inline-block; vertical-align: top; 
>>>>> width: 50%;}
>>>>> +  </style>
>>>>> +  <!--[if lt IE 9]>
>>>>> +    <script 
>>>>> src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
>>>>> +  <![endif]-->
>>>>>   </head>
>>>>>   <body>
>>>>>   <h1 id="using-a-flexible-report---user">Using a flexible report 
>>>>> - User</h1>
>>>>> @@ -18,10 +26,10 @@
>>>>>   <li>Pre-published reports created from report masters</li>
>>>>>   </ul>
>>>>>   <h2 id="using-the-report">Using the report</h2>
>>>>> -<ol style="list-style-type: decimal">
>>>>> +<ol type="1">
>>>>>   <li>go to the Birt component or to another page harboring 
>>>>> reports.</li>
>>>>> -<li>In the Birt component, click &quot;Use a report&quot;.</li>
>>>>> -<li>Select your report and hit &quot;Send&quot;.</li>
>>>>> +<li>In the Birt component, click “Use a report”.</li>
>>>>> +<li>Select your report and hit “Send”.</li>
>>>>>   <li>The next screen will allow you to filter your data through a 
>>>>> set of pre-defined criteria. Should you leave it empty, you will 
>>>>> retrieve unfiltered data.</li>
>>>>>   <li>Select the desired export format</li>
>>>>>   <li>Upon validation, your report is now loaded and can be 
>>>>> saved.</li>
>>>>>
>>>>> Modified: ofbiz/tools/wiki-files/birt/Report master creation.md.html
>>>>> URL: 
>>>>> http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/Report%20master%20creation.md.html?rev=1826200&r1=1826199&r2=1826200&view=diff
>>>>> ============================================================================== 
>>>>>
>>>>> --- ofbiz/tools/wiki-files/birt/Report master creation.md.html 
>>>>> (original)
>>>>> +++ ofbiz/tools/wiki-files/birt/Report master creation.md.html Thu 
>>>>> Mar  8 10:42:54 2018
>>>>> @@ -1,48 +1,84 @@
>>>>> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
>>>>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
>>>>> -<html xmlns="http://www.w3.org/1999/xhtml">
>>>>> +<!DOCTYPE html>
>>>>> +<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
>>>>>   <head>
>>>>> -  <meta http-equiv="Content-Type" content="text/html; 
>>>>> charset=utf-8" />
>>>>> -  <meta http-equiv="Content-Style-Type" content="text/css" />
>>>>> +  <meta charset="utf-8" />
>>>>>     <meta name="generator" content="pandoc" />
>>>>> -  <title></title>
>>>>> -  <style type="text/css">code{white-space: pre;}</style>
>>>>> +  <meta name="viewport" content="width=device-width, 
>>>>> initial-scale=1.0, user-scalable=yes" />
>>>>> +  <title>Report master creation</title>
>>>>>     <style type="text/css">
>>>>> -div.sourceCode { overflow-x: auto; }
>>>>> -table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
>>>>> -  margin: 0; padding: 0; vertical-align: baseline; border: none; }
>>>>> -table.sourceCode { width: 100%; line-height: 100%; }
>>>>> -td.lineNumbers { text-align: right; padding-right: 4px; 
>>>>> padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
>>>>> -td.sourceCode { padding-left: 5px; }
>>>>> -code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
>>>>> -code > span.dt { color: #902000; } /* DataType */
>>>>> -code > span.dv { color: #40a070; } /* DecVal */
>>>>> -code > span.bn { color: #40a070; } /* BaseN */
>>>>> -code > span.fl { color: #40a070; } /* Float */
>>>>> -code > span.ch { color: #4070a0; } /* Char */
>>>>> -code > span.st { color: #4070a0; } /* String */
>>>>> -code > span.co { color: #60a0b0; font-style: italic; } /* Comment */
>>>>> -code > span.ot { color: #007020; } /* Other */
>>>>> -code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
>>>>> -code > span.fu { color: #06287e; } /* Function */
>>>>> -code > span.er { color: #ff0000; font-weight: bold; } /* Error */
>>>>> -code > span.wa { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Warning */
>>>>> -code > span.cn { color: #880000; } /* Constant */
>>>>> -code > span.sc { color: #4070a0; } /* SpecialChar */
>>>>> -code > span.vs { color: #4070a0; } /* VerbatimString */
>>>>> -code > span.ss { color: #bb6688; } /* SpecialString */
>>>>> -code > span.im { } /* Import */
>>>>> -code > span.va { color: #19177c; } /* Variable */
>>>>> -code > span.cf { color: #007020; font-weight: bold; } /* 
>>>>> ControlFlow */
>>>>> -code > span.op { color: #666666; } /* Operator */
>>>>> -code > span.bu { } /* BuiltIn */
>>>>> -code > span.ex { } /* Extension */
>>>>> -code > span.pp { color: #bc7a00; } /* Preprocessor */
>>>>> -code > span.at { color: #7d9029; } /* Attribute */
>>>>> -code > span.do { color: #ba2121; font-style: italic; } /* 
>>>>> Documentation */
>>>>> -code > span.an { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Annotation */
>>>>> -code > span.cv { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* CommentVar */
>>>>> -code > span.in { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Information */
>>>>> +      code{white-space: pre-wrap;}
>>>>> +      span.smallcaps{font-variant: small-caps;}
>>>>> +      span.underline{text-decoration: underline;}
>>>>> +      div.column{display: inline-block; vertical-align: top; 
>>>>> width: 50%;}
>>>>>     </style>
>>>>> +  <style type="text/css">
>>>>> +a.sourceLine { display: inline-block; line-height: 1.25; }
>>>>> +a.sourceLine { pointer-events: none; color: inherit; 
>>>>> text-decoration: inherit; }
>>>>> +a.sourceLine:empty { height: 1.2em; position: absolute; }
>>>>> +.sourceCode { overflow: visible; }
>>>>> +code.sourceCode { white-space: pre; position: relative; }
>>>>> +div.sourceCode { margin: 1em 0; }
>>>>> +pre.sourceCode { margin: 0; }
>>>>> +@media screen {
>>>>> +div.sourceCode { overflow: auto; }
>>>>> +}
>>>>> +@media print {
>>>>> +code.sourceCode { white-space: pre-wrap; }
>>>>> +a.sourceLine { text-indent: -1em; padding-left: 1em; }
>>>>> +}
>>>>> +pre.numberSource a.sourceLine
>>>>> +  { position: relative; }
>>>>> +pre.numberSource a.sourceLine:empty
>>>>> +  { position: absolute; }
>>>>> +pre.numberSource a.sourceLine::before
>>>>> +  { content: attr(data-line-number);
>>>>> +    position: absolute; left: -5em; text-align: right; 
>>>>> vertical-align: baseline;
>>>>> +    border: none; pointer-events: all;
>>>>> +    -webkit-touch-callout: none; -webkit-user-select: none;
>>>>> +    -khtml-user-select: none; -moz-user-select: none;
>>>>> +    -ms-user-select: none; user-select: none;
>>>>> +    padding: 0 4px; width: 4em;
>>>>> +    color: #aaaaaa;
>>>>> +  }
>>>>> +pre.numberSource { margin-left: 3em; border-left: 1px solid 
>>>>> #aaaaaa;  padding-left: 4px; }
>>>>> +div.sourceCode
>>>>> +  {  }
>>>>> +@media screen {
>>>>> +a.sourceLine::before { text-decoration: underline; }
>>>>> +}
>>>>> +code span.al { color: #ff0000; font-weight: bold; } /* Alert */
>>>>> +code span.an { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Annotation */
>>>>> +code span.at { color: #7d9029; } /* Attribute */
>>>>> +code span.bn { color: #40a070; } /* BaseN */
>>>>> +code span.bu { } /* BuiltIn */
>>>>> +code span.cf { color: #007020; font-weight: bold; } /* 
>>>>> ControlFlow */
>>>>> +code span.ch { color: #4070a0; } /* Char */
>>>>> +code span.cn { color: #880000; } /* Constant */
>>>>> +code span.co { color: #60a0b0; font-style: italic; } /* Comment */
>>>>> +code span.cv { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* CommentVar */
>>>>> +code span.do { color: #ba2121; font-style: italic; } /* 
>>>>> Documentation */
>>>>> +code span.dt { color: #902000; } /* DataType */
>>>>> +code span.dv { color: #40a070; } /* DecVal */
>>>>> +code span.er { color: #ff0000; font-weight: bold; } /* Error */
>>>>> +code span.ex { } /* Extension */
>>>>> +code span.fl { color: #40a070; } /* Float */
>>>>> +code span.fu { color: #06287e; } /* Function */
>>>>> +code span.im { } /* Import */
>>>>> +code span.in { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Information */
>>>>> +code span.kw { color: #007020; font-weight: bold; } /* Keyword */
>>>>> +code span.op { color: #666666; } /* Operator */
>>>>> +code span.ot { color: #007020; } /* Other */
>>>>> +code span.pp { color: #bc7a00; } /* Preprocessor */
>>>>> +code span.sc { color: #4070a0; } /* SpecialChar */
>>>>> +code span.ss { color: #bb6688; } /* SpecialString */
>>>>> +code span.st { color: #4070a0; } /* String */
>>>>> +code span.va { color: #19177c; } /* Variable */
>>>>> +code span.vs { color: #4070a0; } /* VerbatimString */
>>>>> +code span.wa { color: #60a0b0; font-weight: bold; font-style: 
>>>>> italic; } /* Warning */
>>>>> +  </style>
>>>>> +  <!--[if lt IE 9]>
>>>>> +    <script 
>>>>> src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
>>>>> +  <![endif]-->
>>>>>   </head>
>>>>>   <body>
>>>>>   <h1 id="report-master-creation">Report master creation</h1>
>>>>> @@ -54,86 +90,86 @@ code > span.in { color: #60a0b0; font-we
>>>>>   <li>Birt plugin</li>
>>>>>   </ul>
>>>>>   <h2 id="report-master-based-on-an-entityview">Report Master 
>>>>> based on an entity/view</h2>
>>>>> -<ol style="list-style-type: decimal">
>>>>> +<ol type="1">
>>>>>   <li>Create or choice a database entity or view</li>
>>>>>   <li>Create the general filtering form within the file 
>>>>> plugins/birt/widget/birt/BirtMasterForms.xml. The only 
>>>>> informations to be changed are entity-name and form name.</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span class="kw">&lt;form</span><span 
>>>>> class="ot"> name=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;single&quot;</span><span 
>>>>> class="ot"> extends=</span><span 
>>>>> class="st">&quot;AbstractFlexibleReportSearchForm&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;auto-fields-entity</span><span 
>>>>> class="ot"> entity-name=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span class="ot"> 
>>>>> default-field-type=</span><span 
>>>>> class="st">&quot;find&quot;</span><span class="kw">/&gt;</span>
>>>>> -    <span class="kw">&lt;/form&gt;</span></code></pre></div>
>>>>> -<ol start="3" style="list-style-type: decimal">
>>>>> +<div class="sourceCode" id="cb1"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb1-1" 
>>>>> data-line-number="1">    <span class="kw">&lt;form</span><span 
>>>>> class="ot"> name=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;single&quot;</span><span 
>>>>> class="ot"> extends=</span><span 
>>>>> class="st">&quot;AbstractFlexibleReportSearchForm&quot;</span><span 
>>>>> class="kw">&gt;</span>    </a>
>>>>> +<a class="sourceLine" id="cb1-2" data-line-number="2">        
>>>>> <span class="kw">&lt;auto-fields-entity</span><span class="ot"> 
>>>>> entity-name=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span class="ot"> 
>>>>> default-field-type=</span><span 
>>>>> class="st">&quot;find&quot;</span><span class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb1-3" data-line-number="3"> <span 
>>>>> class="kw">&lt;/form&gt;</span></a></code></pre></div>
>>>>> +<ol start="3" type="1">
>>>>>   <li>Add the informations about this Master in the database using 
>>>>> the file plugins/birt/data/BirtMasterData.xml</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span 
>>>>> class="kw">&lt;DataResource</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> dataResourceTypeId=</span><span 
>>>>> class="st">&quot;ELECTRONIC_TEXT&quot;</span><span class="ot"> 
>>>>> dataTemplateTypeId=</span><span 
>>>>> class="st">&quot;FORM_COMBINED&quot;</span> <span 
>>>>> class="kw">/&gt;</span>
>>>>> -    <span class="kw">&lt;ElectronicText</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;textData&gt;</span><span 
>>>>> class="bn">&lt;![CDATA[</span>&lt;!--default domain form--&gt;
>>>>> -            &lt;form 
>>>>> name=&quot;${masterContentId}_${contentId}&quot; 
>>>>> type=&quot;single&quot; extends=&quot;${masterContentId}&quot; 
>>>>> extends- 
>>>>> resource=&quot;component://birt/widget/birt/BirtMasterForms.xml&quot;&gt;
>>>>> -            &lt;/form&gt;<span class="bn">]]&gt;</span>
>>>>> -        <span class="kw">&lt;/textData&gt;</span>
>>>>> -    <span class="kw">&lt;/ElectronicText&gt;</span>
>>>>> -    <span class="kw">&lt;Content</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> contentTypeId=</span><span 
>>>>> class="st">&quot;REPORT_MASTER&quot;</span><span class="ot">  
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> statusId=</span><span 
>>>>> class="st">&quot;CTNT_PUBLISHED&quot;</span><span class="ot"> 
>>>>> contentName=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span class="ot"> 
>>>>> description=</span><span class="st">&quot;Master Content for 
>>>>> Example&quot;</span> <span class="kw">/&gt;</span>
>>>>> -    <span class="co">&lt;!-- Data retrieval will be done using 
>>>>> perform find on entity Example--&gt;</span>
>>>>> -    <span class="kw">&lt;ContentAttribute</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> attrName=</span><span class="st">&quot;Entity&quot;</span><span 
>>>>> class="ot"> attrValue=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span 
>>>>> class="kw">/&gt;</span></code></pre></div>
>>>>> +<div class="sourceCode" id="cb2"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb2-1" 
>>>>> data-line-number="1">    <span 
>>>>> class="kw">&lt;DataResource</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> dataResourceTypeId=</span><span 
>>>>> class="st">&quot;ELECTRONIC_TEXT&quot;</span><span class="ot"> 
>>>>> dataTemplateTypeId=</span><span 
>>>>> class="st">&quot;FORM_COMBINED&quot;</span> <span 
>>>>> class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-2" data-line-number="2"> <span 
>>>>> class="kw">&lt;ElectronicText</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span 
>>>>> class="kw">&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-3" data-line-number="3">        
>>>>> <span class="kw">&lt;textData&gt;</span><span 
>>>>> class="bn">&lt;![CDATA[</span>&lt;!--default domain form--&gt;</a>
>>>>> +<a class="sourceLine" id="cb2-4" data-line-number="4">            
>>>>> &lt;form name=&quot;${masterContentId}_${contentId}&quot; 
>>>>> type=&quot;single&quot; extends=&quot;${masterContentId}&quot; 
>>>>> extends- 
>>>>> resource=&quot;component://birt/widget/birt/BirtMasterForms.xml&quot;&gt;</a>
>>>>> +<a class="sourceLine" id="cb2-5" data-line-number="5"> 
>>>>> &lt;/form&gt;<span class="bn">]]&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-6" data-line-number="6">        
>>>>> <span class="kw">&lt;/textData&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-7" data-line-number="7"> <span 
>>>>> class="kw">&lt;/ElectronicText&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-8" data-line-number="8"> <span 
>>>>> class="kw">&lt;Content</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> contentTypeId=</span><span 
>>>>> class="st">&quot;REPORT_MASTER&quot;</span><span class="ot">  
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> statusId=</span><span 
>>>>> class="st">&quot;CTNT_PUBLISHED&quot;</span><span class="ot"> 
>>>>> contentName=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span class="ot"> 
>>>>> description=</span><span class="st">&quot;Master Content for 
>>>>> Example&quot;</span> <span class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-9" data-line-number="9"> <span 
>>>>> class="co">&lt;!-- Data retrieval will be done using perform find 
>>>>> on entity Example--&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb2-10" data-line-number="10">    <span 
>>>>> class="kw">&lt;ContentAttribute</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_EXAMPLE&quot;</span><span class="ot"> 
>>>>> attrName=</span><span class="st">&quot;Entity&quot;</span><span 
>>>>> class="ot"> attrValue=</span><span 
>>>>> class="st">&quot;Example&quot;</span><span 
>>>>> class="kw">/&gt;</span></a></code></pre></div>
>>>>>   <p>The form in the database is the form that will allow users to 
>>>>> change form parameters. You can add any field you desire. Some 
>>>>> field names are though reserved: reportContentId, overrideFilters, 
>>>>> entityViewName, birtContentType.</p>
>>>>> -<ol start="4" style="list-style-type: decimal">
>>>>> +<ol start="4" type="1">
>>>>>   <li>Add in the file content/config/contentEntityLabels.xml the 
>>>>> Property that will allow translation for your report master 
>>>>> description.</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span 
>>>>> class="kw">&lt;property</span><span class="ot"> key=</span><span 
>>>>> class="st">&quot;Content.description.CTNT_MASTER_EXAMPLE&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;en&quot;</span><span 
>>>>> class="kw">&gt;</span>Example<span class="kw">&lt;/value&gt;</span>
>>>>> -        <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;fr&quot;</span><span 
>>>>> class="kw">&gt;</span>Exemple<span class="kw">&lt;/value&gt;</span>
>>>>> -    <span class="kw">&lt;/property&gt;</span></code></pre></div>
>>>>> +<div class="sourceCode" id="cb3"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb3-1" 
>>>>> data-line-number="1">    <span class="kw">&lt;property</span><span 
>>>>> class="ot"> key=</span><span 
>>>>> class="st">&quot;Content.description.CTNT_MASTER_EXAMPLE&quot;</span><span 
>>>>> class="kw">&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb3-2" data-line-number="2">        
>>>>> <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;en&quot;</span><span 
>>>>> class="kw">&gt;</span>Example<span 
>>>>> class="kw">&lt;/value&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb3-3" data-line-number="3">        
>>>>> <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;fr&quot;</span><span 
>>>>> class="kw">&gt;</span>Exemple<span 
>>>>> class="kw">&lt;/value&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb3-4" data-line-number="4"> <span 
>>>>> class="kw">&lt;/property&gt;</span></a></code></pre></div>
>>>>>   <p>Your Report Master is created ! You can now create reports 
>>>>> using it.</p>
>>>>>   <h2 id="report-master-based-on-a-service">Report Master based on 
>>>>> a service</h2>
>>>>>   <p>Create in 
>>>>> plugins/birt/src/org/ofbiz/birt/birt/BirtMasterReportServices.java 
>>>>> 2 dedicated services (see examples there)</p>
>>>>> -<ol style="list-style-type: decimal">
>>>>> +<ol type="1">
>>>>>   <li>The first one, which name will return 4 items:</li>
>>>>>   </ol>
>>>>>   <ul>
>>>>> -<li>an object of type Map<String, String> called dataMap. 
>>>>> <strong>Keys</strong>: data field names. <strong>Values</strong>: 
>>>>> data types (OFBiz types).</li>
>>>>> -<li>an object of type Map<String, String> called 
>>>>> fieldDisplayLabels. <strong>Keys</strong>: data field names. 
>>>>> <strong>Values</strong>: the names displayed to the user. This 
>>>>> output is optional, should it be missing, the keys will be 
>>>>> displayed.</li>
>>>>> -<li>an object of type Map<String, String> called filterMap. 
>>>>> <strong>Keys</strong>: data filtering field names (exact names 
>>>>> used for the form fields). <strong>Values</strong>: data type 
>>>>> (OFBiz type). This output is optional, if missing, filters can not 
>>>>> be displayed on the report.</li>
>>>>> -<li>an object of type Map<String, String> called 
>>>>> filterDisplayLabels. <strong>Keys</strong>: data filtering field 
>>>>> names (exact names used for the form fields). 
>>>>> <strong>Values</strong>: names to be displayed to the user. This 
>>>>> output is optional, should it be missing, the keys will be 
>>>>> displayed.</li>
>>>>> +<li>an object of type Map&lt;String, String&gt; called dataMap. 
>>>>> <strong>Keys</strong>: data field names. <strong>Values</strong>: 
>>>>> data types (OFBiz types).</li>
>>>>> +<li>an object of type Map&lt;String, String&gt; called 
>>>>> fieldDisplayLabels. <strong>Keys</strong>: data field names. 
>>>>> <strong>Values</strong>: the names displayed to the user. This 
>>>>> output is optional, should it be missing, the keys will be 
>>>>> displayed.</li>
>>>>> +<li>an object of type Map&lt;String, String&gt; called filterMap. 
>>>>> <strong>Keys</strong>: data filtering field names (exact names 
>>>>> used for the form fields). <strong>Values</strong>: data type 
>>>>> (OFBiz type). This output is optional, if missing, filters can not 
>>>>> be displayed on the report.</li>
>>>>> +<li>an object of type Map&lt;String, String&gt; called 
>>>>> filterDisplayLabels. <strong>Keys</strong>: data filtering field 
>>>>> names (exact names used for the form fields). 
>>>>> <strong>Values</strong>: names to be displayed to the user. This 
>>>>> output is optional, should it be missing, the keys will be 
>>>>> displayed.</li>
>>>>>   </ul>
>>>>> -<ol start="2" style="list-style-type: decimal">
>>>>> +<ol start="2" type="1">
>>>>>   <li>The second service will actually get the data. It receives 
>>>>> an object (Object type) called reportContext. From this object, 
>>>>> you can obtain the map parameters using the following code:</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode java"><code 
>>>>> class="sourceCode java"> Map&lt;String, Object&gt; parameters = 
>>>>> (Map&lt;String, Object&gt;) reportContext.<span 
>>>>> class="fu">getParameterValue</span>(<span 
>>>>> class="st">&quot;parameters&quot;</span>);</code></pre></div>
>>>>> -<p>This Map will give access fields of the filtering form. This 
>>>>> service will return a list called list of type List<GenericValue>, 
>>>>> containing the data. A Map<String, Object> would also do.</p>
>>>>> -<ol start="3" style="list-style-type: decimal">
>>>>> +<div class="sourceCode" id="cb4"><pre class="sourceCode 
>>>>> java"><code class="sourceCode java"><a class="sourceLine" 
>>>>> id="cb4-1" data-line-number="1">    <span 
>>>>> class="bu">Map</span>&lt;<span class="bu">String</span>, <span 
>>>>> class="bu">Object</span>&gt; parameters = (<span 
>>>>> class="bu">Map</span>&lt;<span class="bu">String</span>, <span 
>>>>> class="bu">Object</span>&gt;) reportContext.<span 
>>>>> class="fu">getParameterValue</span>(<span 
>>>>> class="st">&quot;parameters&quot;</span>);</a></code></pre></div>
>>>>> +<p>This Map will give access fields of the filtering form. This 
>>>>> service will return a list called list of type List<GenericValue>, 
>>>>> containing the data. A Map&lt;String, Object&gt; would also do.</p>
>>>>> +<ol start="3" type="1">
>>>>>   <li>create the parent form in the file 
>>>>> plugins/birt/widget/birt/BirtMasterForms.xml. Field names created 
>>>>> here must be then names used on the Map parameters of the previous 
>>>>> service, and also corresponding to the map filterMap.</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span class="kw">&lt;form</span><span 
>>>>> class="ot"> name=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> type=</span><span 
>>>>> class="st">&quot;single&quot;</span><span class="ot"> 
>>>>> extends=</span><span 
>>>>> class="st">&quot;AbstractFlexibleReportSearchForm&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span class="st">&quot;fromDate&quot;</span><span 
>>>>> class="kw">&gt;&lt;date-time</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;date&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span>
>>>>> -        <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span class="st">&quot;thruDate&quot;</span><span 
>>>>> class="kw">&gt;&lt;date-time</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;date&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span>
>>>>> -        <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span 
>>>>> class="st">&quot;productCategoryId&quot;</span><span 
>>>>> class="kw">&gt;&lt;lookup</span><span class="ot"> 
>>>>> target-form-name=</span><span 
>>>>> class="st">&quot;LookupProductCategory&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span>
>>>>> -        <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span 
>>>>> class="st">&quot;productStoreId&quot;</span><span 
>>>>> class="kw">&gt;&lt;lookup</span><span class="ot"> 
>>>>> target-form-name=</span><span 
>>>>> class="st">&quot;LookupProductStore&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span>
>>>>> -    <span class="kw">&lt;/form&gt;</span></code></pre></div>
>>>>> -<ol start="4" style="list-style-type: decimal">
>>>>> +<div class="sourceCode" id="cb5"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb5-1" 
>>>>> data-line-number="1">    <span class="kw">&lt;form</span><span 
>>>>> class="ot"> name=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> type=</span><span 
>>>>> class="st">&quot;single&quot;</span><span class="ot"> 
>>>>> extends=</span><span 
>>>>> class="st">&quot;AbstractFlexibleReportSearchForm&quot;</span><span 
>>>>> class="kw">&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb5-2" data-line-number="2">        
>>>>> <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span class="st">&quot;fromDate&quot;</span><span 
>>>>> class="kw">&gt;&lt;date-time</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;date&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb5-3" data-line-number="3">        
>>>>> <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span class="st">&quot;thruDate&quot;</span><span 
>>>>> class="kw">&gt;&lt;date-time</span><span class="ot"> 
>>>>> type=</span><span class="st">&quot;date&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb5-4" data-line-number="4">        
>>>>> <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span 
>>>>> class="st">&quot;productCategoryId&quot;</span><span 
>>>>> class="kw">&gt;&lt;lookup</span><span class="ot"> 
>>>>> target-form-name=</span><span 
>>>>> class="st">&quot;LookupProductCategory&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb5-5" data-line-number="5">        
>>>>> <span class="kw">&lt;field</span><span class="ot"> 
>>>>> name=</span><span 
>>>>> class="st">&quot;productStoreId&quot;</span><span 
>>>>> class="kw">&gt;&lt;lookup</span><span class="ot"> 
>>>>> target-form-name=</span><span 
>>>>> class="st">&quot;LookupProductStore&quot;</span><span 
>>>>> class="kw">/&gt;&lt;/field&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb5-6" data-line-number="6"> <span 
>>>>> class="kw">&lt;/form&gt;</span></a></code></pre></div>
>>>>> +<ol start="4" type="1">
>>>>>   <li>Create the master in database following.</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span 
>>>>> class="kw">&lt;CustomMethod</span><span class="ot"> 
>>>>> customMethodId=</span><span 
>>>>> class="st">&quot;CM_FB_TURNOVER&quot;</span><span class="ot"> 
>>>>> customMethodTypeId=</span><span 
>>>>> class="st">&quot;FLEXIBLE_BIRT&quot;</span><span class="ot"> 
>>>>> customMethodName=</span><span 
>>>>> class="st">&quot;flexibleReportTurnOver&quot;</span><span 
>>>>> class="ot"> description=</span><span class="st">&quot;service to 
>>>>> resolve invoice for turnover report domain&quot;</span><span 
>>>>> class="kw">/&gt;</span>
>>>>> -    <span class="kw">&lt;DataResource</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span class="ot"> 
>>>>> dataResourceTypeId=</span><span 
>>>>> class="st">&quot;ELECTRONIC_TEXT&quot;</span><span class="ot"> 
>>>>> dataTemplateTypeId=</span><span 
>>>>> class="st">&quot;FORM_COMBINED&quot;</span> <span 
>>>>> class="kw">/&gt;</span>
>>>>> -    <span class="kw">&lt;ElectronicText</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;textData&gt;</span><span 
>>>>> class="bn">&lt;![CDATA[</span>&lt;!--default domain form--&gt;
>>>>> -            &lt;form 
>>>>> name=&quot;${masterContentId}_${contentId}&quot; 
>>>>> type=&quot;single&quot; extends=&quot;${masterContentId}&quot; 
>>>>> extends-resource=&quot;component://birt/widget/birt/BirtMasterForms.xml&quot;&gt;
>>>>> -            &lt;/form&gt;<span class="bn">]]&gt;</span>
>>>>> -        <span class="kw">&lt;/textData&gt;</span>
>>>>> -    <span class="kw">&lt;/ElectronicText&gt;</span>
>>>>> -    <span class="kw">&lt;Content</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> customMethodId=</span><span 
>>>>> class="st">&quot;CM_FB_TURNOVER&quot;</span><span class="ot"> 
>>>>> contentTypeId=</span><span 
>>>>> class="st">&quot;REPORT_MASTER&quot;</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span class="ot"> 
>>>>> statusId=</span><span 
>>>>> class="st">&quot;CTNT_PUBLISHED&quot;</span><span class="ot"> 
>>>>> contentName=</span><span 
>>>>> class="st">&quot;Turnover&quot;</span><span class="ot"> 
>>>>> description=</span><span class="st">&quot;Master Content for 
>>>>> TURNOVER domain&quot;</span> <span class="kw">/&gt;</span>
>>>>> -    <span class="co">&lt;!-- Data retrieval will be done using 
>>>>> two service calls. First the contentAttribute Service gives the 
>>>>> service that will define which data and label will be 
>>>>> retrieved,</span>
>>>>> -<span class="co">    and which filter and label are supported by 
>>>>> the report design (default value will call the second service with 
>>>>> &quot;prepareField&quot; suffix).</span>
>>>>> -<span class="co">    Second, the custom method gives the service 
>>>>> to retrieve all data in the report design.</span>
>>>>> -<span class="co">    Here : flexibleReportTurnOverPrepareFields 
>>>>> (customMethodName + &quot;prepareFields&quot;) then 
>>>>> flexibleReportTurnOver--&gt;</span>
>>>>> -    <span class="kw">&lt;ContentAttribute</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> attrName=</span><span 
>>>>> class="st">&quot;Service&quot;</span><span class="ot"> 
>>>>> attrValue=</span><span class="st">&quot;default&quot;</span><span 
>>>>> class="kw">/&gt;</span></code></pre></div>
>>>>> +<div class="sourceCode" id="cb6"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb6-1" 
>>>>> data-line-number="1">    <span 
>>>>> class="kw">&lt;CustomMethod</span><span class="ot"> 
>>>>> customMethodId=</span><span 
>>>>> class="st">&quot;CM_FB_TURNOVER&quot;</span><span class="ot"> 
>>>>> customMethodTypeId=</span><span 
>>>>> class="st">&quot;FLEXIBLE_BIRT&quot;</span><span class="ot"> 
>>>>> customMethodName=</span><span 
>>>>> class="st">&quot;flexibleReportTurnOver&quot;</span><span 
>>>>> class="ot"> description=</span><span class="st">&quot;service to 
>>>>> resolve invoice for turnover report domain&quot;</span><span 
>>>>> class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-2" data-line-number="2"> <span 
>>>>> class="kw">&lt;DataResource</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span class="ot"> 
>>>>> dataResourceTypeId=</span><span 
>>>>> class="st">&quot;ELECTRONIC_TEXT&quot;</span><span class="ot"> 
>>>>> dataTemplateTypeId=</span><span 
>>>>> class="st">&quot;FORM_COMBINED&quot;</span> <span 
>>>>> class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-3" data-line-number="3"> <span 
>>>>> class="kw">&lt;ElectronicText</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span 
>>>>> class="kw">&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-4" data-line-number="4">        
>>>>> <span class="kw">&lt;textData&gt;</span><span 
>>>>> class="bn">&lt;![CDATA[</span>&lt;!--default domain form--&gt;</a>
>>>>> +<a class="sourceLine" id="cb6-5" data-line-number="5">            
>>>>> &lt;form name=&quot;${masterContentId}_${contentId}&quot; 
>>>>> type=&quot;single&quot; extends=&quot;${masterContentId}&quot; 
>>>>> extends-resource=&quot;component://birt/widget/birt/BirtMasterForms.xml&quot;&gt;</a>
>>>>> +<a class="sourceLine" id="cb6-6" data-line-number="6"> 
>>>>> &lt;/form&gt;<span class="bn">]]&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-7" data-line-number="7">        
>>>>> <span class="kw">&lt;/textData&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-8" data-line-number="8"> <span 
>>>>> class="kw">&lt;/ElectronicText&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-9" data-line-number="9"> <span 
>>>>> class="kw">&lt;Content</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> customMethodId=</span><span 
>>>>> class="st">&quot;CM_FB_TURNOVER&quot;</span><span class="ot"> 
>>>>> contentTypeId=</span><span 
>>>>> class="st">&quot;REPORT_MASTER&quot;</span><span class="ot"> 
>>>>> dataResourceId=</span><span 
>>>>> class="st">&quot;DR_MASTER_TURNOVER&quot;</span><span class="ot"> 
>>>>> statusId=</span><span 
>>>>> class="st">&quot;CTNT_PUBLISHED&quot;</span><span class="ot"> 
>>>>> contentName=</span><span 
>>>>> class="st">&quot;Turnover&quot;</span><span class="ot"> 
>>>>> description=</span><span class="st">&quot;Master Content for 
>>>>> TURNOVER domain&quot;</span> <span class="kw">/&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-10" data-line-number="10">    <span 
>>>>> class="co">&lt;!-- Data retrieval will be done using two service 
>>>>> calls. First the contentAttribute Service gives the service that 
>>>>> will define which data and label will be retrieved,</span></a>
>>>>> +<a class="sourceLine" id="cb6-11" data-line-number="11"><span 
>>>>> class="co">    and which filter and label are supported by the 
>>>>> report design (default value will call the second service with 
>>>>> &quot;prepareField&quot; suffix).</span></a>
>>>>> +<a class="sourceLine" id="cb6-12" data-line-number="12"><span 
>>>>> class="co"> Second, the custom method gives the service to 
>>>>> retrieve all data in the report design.</span></a>
>>>>> +<a class="sourceLine" id="cb6-13" data-line-number="13"><span 
>>>>> class="co">    Here : flexibleReportTurnOverPrepareFields 
>>>>> (customMethodName + &quot;prepareFields&quot;) then 
>>>>> flexibleReportTurnOver--&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb6-14" data-line-number="14">    <span 
>>>>> class="kw">&lt;ContentAttribute</span><span class="ot"> 
>>>>> contentId=</span><span 
>>>>> class="st">&quot;CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="ot"> attrName=</span><span 
>>>>> class="st">&quot;Service&quot;</span><span class="ot"> 
>>>>> attrValue=</span><span class="st">&quot;default&quot;</span><span 
>>>>> class="kw">/&gt;</span></a></code></pre></div>
>>>>>   <p>The form in the database is the form that will allow users to 
>>>>> change form parameters. You can add any field you desire. Some 
>>>>> field names are reserved: reportContentId, overrideFilters, 
>>>>> entityViewName, birtContentType.</p>
>>>>> -<ol start="5" style="list-style-type: decimal">
>>>>> -<li>Import these data in the base using Webtools XML import (or 
>>>>> the longer &quot;gradlew 'ofbiz -l readers=seed,ext' command).</li>
>>>>> +<ol start="5" type="1">
>>>>> +<li>Import these data in the base using Webtools XML import (or 
>>>>> the longer “gradlew ‘ofbiz -l readers=seed,ext’ command).</li>
>>>>>   <li>Add in the file content/config/contentEntityLabels.xml the 
>>>>> Property which will translate your report Master description.</li>
>>>>>   </ol>
>>>>> -<div class="sourceCode"><pre class="sourceCode xml"><code 
>>>>> class="sourceCode xml">    <span 
>>>>> class="kw">&lt;property</span><span class="ot"> key=</span><span 
>>>>> class="st">&quot;Content.description.CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="kw">&gt;</span>
>>>>> -        <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;en&quot;</span><span 
>>>>> class="kw">&gt;</span>Turnover (product)<span 
>>>>> class="kw">&lt;/value&gt;</span>
>>>>> -        <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;fr&quot;</span><span 
>>>>> class="kw">&gt;</span>Rotation (des stocks)<span 
>>>>> class="kw">&lt;/value&gt;</span>
>>>>> -    <span class="kw">&lt;/property&gt;</span></code></pre></div>
>>>>> +<div class="sourceCode" id="cb7"><pre class="sourceCode 
>>>>> xml"><code class="sourceCode xml"><a class="sourceLine" id="cb7-1" 
>>>>> data-line-number="1">    <span class="kw">&lt;property</span><span 
>>>>> class="ot"> key=</span><span 
>>>>> class="st">&quot;Content.description.CTNT_MASTER_TURNOVER&quot;</span><span 
>>>>> class="kw">&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb7-2" data-line-number="2">        
>>>>> <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;en&quot;</span><span 
>>>>> class="kw">&gt;</span>Turnover (product)<span 
>>>>> class="kw">&lt;/value&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb7-3" data-line-number="3">        
>>>>> <span class="kw">&lt;value</span><span class="ot"> 
>>>>> xml:lang=</span><span class="st">&quot;fr&quot;</span><span 
>>>>> class="kw">&gt;</span>Rotation (des stocks)<span 
>>>>> class="kw">&lt;/value&gt;</span></a>
>>>>> +<a class="sourceLine" id="cb7-4" data-line-number="4"> <span 
>>>>> class="kw">&lt;/property&gt;</span></a></code></pre></div>
>>>>>   <h2 id="entities-diagram">Entities diagram</h2>
>>>>>   <p>The following diagram shows the Entities linked with Content 
>>>>> to store report_master/report. <img 
>>>>> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Report_Master.png?api=v2" 
>>>>> alt="Report_Master" /></p>
>>>>>   </body>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>>
>
>
>



Mime
View raw message