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 "ofb").</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 "Setup eclipse
project for OFBiz" 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 "Setup an external database" 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 "Running gradle tasks without an internet connection"
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 "Repository and directory structure"
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>"quoting"</strong> the commands. For example: <code>gradlew
"ofbiz --help"</code></p></li>
+<li><p>OFBiz <strong>server commands</strong> require
<strong>âquotingâ</strong> the commands. For example: <code>gradlew
"ofbiz --help"</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 "ofbizDebug --test"</code></p>
<p><code>gradlew "ofbizBackground --start --portoffset
10000"</code></p>
<p><code>gradlew "ofbiz --shutdown --portoffset 10000"</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 "ofbiz --start --portoffset
10000"</code></p>
<hr />
@@ -133,7 +143,7 @@ under the License.
<h4 id="get-ofbiz-status">Get OFBiz status</h4>
<p><code>gradlew "ofbiz --status"</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 "ofbiz --start --portoffset 10000"</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
"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>
+<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
"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>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="My
Name" -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 "ofbiz --test loglevel=fatal"</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 "entity" and
the case name is "entity-tests"</p>
+<p>run a test case, in this example the component is âentityâ and the case
name is âentity-testsâ</p>
<p><code>gradlew "ofbiz --test component=entity --test
suitename=entitytests --test case=entity-query-tests"</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 "ofbiz". 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="http://www.example.com/custom-maven" -PrepoUser=myuser
-PrepoPassword=mypassword
-PdependencyId="org.apache.ofbiz.plugin:myplugin:0.1.0"</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
"install" 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 ".svn" 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 "pullPlugin" 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 "install" 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 "uninstall" 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 "Publication of OFBiz plugin
${pluginId}"</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="Introduce special functionality X"</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
"special-purpose" 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 "special-purpose" and
"hot-deploy".</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 "Flexible Report" menu (varies depending on
themes)</li>
-<li>Click on the "Generate report" 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 "Choose report topic" 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 "Generate filters in design" 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 "Edit Report"
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">"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="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
"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. ><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. ><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 "Manage reports" 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 "Preview" Panel and can do the
same things than in the "Edit Report" 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 "Use a report".</li>
-<li>Select your report and hit "Send".</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"><form</span><span class="ot"> name=</span><span
class="st">"CTNT_MASTER_EXAMPLE"</span><span class="ot">
type=</span><span class="st">"single"</span><span class="ot">
extends=</span><span
class="st">"AbstractFlexibleReportSearchForm"</span><span
class="kw">></span>
- <span class="kw"><auto-fields-entity</span><span class="ot">
entity-name=</span><span class="st">"Example"</span><span class="ot">
default-field-type=</span><span class="st">"find"</span><span
class="kw">/></span>
- <span class="kw"></form></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"><form</span><span class="ot"> name=</span><span
class="st">"CTNT_MASTER_EXAMPLE"</span><span class="ot">
type=</span><span class="st">"single"</span><span class="ot">
extends=</span><span
class="st">"AbstractFlexibleReportSearchForm"</span><span
class="kw">></span> </a>
+<a class="sourceLine" id="cb1-2" data-line-number="2"> <span
class="kw"><auto-fields-entity</span><span class="ot">
entity-name=</span><span class="st">"Example"</span><span class="ot">
default-field-type=</span><span class="st">"find"</span><span
class="kw">/></span></a>
+<a class="sourceLine" id="cb1-3" data-line-number="3"> <span
class="kw"></form></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"><DataResource</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="ot">
dataResourceTypeId=</span><span
class="st">"ELECTRONIC_TEXT"</span><span class="ot">
dataTemplateTypeId=</span><span class="st">"FORM_COMBINED"</span>
<span class="kw">/></span>
- <span class="kw"><ElectronicText</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="kw">></span>
- <span class="kw"><textData></span><span
class="bn"><![CDATA[</span><!--default domain form-->
- <form name="${masterContentId}_${contentId}"
type="single" extends="${masterContentId}" extends-
resource="component://birt/widget/birt/BirtMasterForms.xml">
- </form><span class="bn">]]></span>
- <span class="kw"></textData></span>
- <span class="kw"></ElectronicText></span>
- <span class="kw"><Content</span><span class="ot">
contentId=</span><span class="st">"CTNT_MASTER_EXAMPLE"</span><span
class="ot"> contentTypeId=</span><span
class="st">"REPORT_MASTER"</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="ot">
statusId=</span><span class="st">"CTNT_PUBLISHED"</span><span
class="ot"> contentName=</span><span class="st">"Example"</span><span
class="ot"> description=</span><span class="st">"Master Content for
Example"</span> <span class="kw">/></span>
- <span class="co"><!-- Data retrieval will be done using perform find on
entity Example--></span>
- <span class="kw"><ContentAttribute</span><span class="ot">
contentId=</span><span class="st">"CTNT_MASTER_EXAMPLE"</span><span
class="ot"> attrName=</span><span class="st">"Entity"</span><span
class="ot"> attrValue=</span><span class="st">"Example"</span><span
class="kw">/></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"><DataResource</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="ot">
dataResourceTypeId=</span><span
class="st">"ELECTRONIC_TEXT"</span><span class="ot">
dataTemplateTypeId=</span><span class="st">"FORM_COMBINED"</span>
<span class="kw">/></span></a>
+<a class="sourceLine" id="cb2-2" data-line-number="2"> <span
class="kw"><ElectronicText</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="kw">></span></a>
+<a class="sourceLine" id="cb2-3" data-line-number="3"> <span
class="kw"><textData></span><span
class="bn"><![CDATA[</span><!--default domain form--></a>
+<a class="sourceLine" id="cb2-4" data-line-number="4"> <form
name="${masterContentId}_${contentId}" type="single"
extends="${masterContentId}" extends-
resource="component://birt/widget/birt/BirtMasterForms.xml"></a>
+<a class="sourceLine" id="cb2-5" data-line-number="5">
</form><span class="bn">]]></span></a>
+<a class="sourceLine" id="cb2-6" data-line-number="6"> <span
class="kw"></textData></span></a>
+<a class="sourceLine" id="cb2-7" data-line-number="7"> <span
class="kw"></ElectronicText></span></a>
+<a class="sourceLine" id="cb2-8" data-line-number="8"> <span
class="kw"><Content</span><span class="ot"> contentId=</span><span
class="st">"CTNT_MASTER_EXAMPLE"</span><span class="ot">
contentTypeId=</span><span class="st">"REPORT_MASTER"</span><span
class="ot"> dataResourceId=</span><span
class="st">"DR_MASTER_EXAMPLE"</span><span class="ot">
statusId=</span><span class="st">"CTNT_PUBLISHED"</span><span
class="ot"> contentName=</span><span class="st">"Example"</span><span
class="ot"> description=</span><span class="st">"Master Content for
Example"</span> <span class="kw">/></span></a>
+<a class="sourceLine" id="cb2-9" data-line-number="9"> <span
class="co"><!-- Data retrieval will be done using perform find on entity
Example--></span></a>
+<a class="sourceLine" id="cb2-10" data-line-number="10"> <span
class="kw"><ContentAttribute</span><span class="ot"> contentId=</span><span
class="st">"CTNT_MASTER_EXAMPLE"</span><span class="ot">
attrName=</span><span class="st">"Entity"</span><span class="ot">
attrValue=</span><span class="st">"Example"</span><span
class="kw">/></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"><property</span><span class="ot"> key=</span><span
class="st">"Content.description.CTNT_MASTER_EXAMPLE"</span><span
class="kw">></span>
- <span class="kw"><value</span><span class="ot">
xml:lang=</span><span class="st">"en"</span><span
class="kw">></span>Example<span class="kw"></value></span>
- <span class="kw"><value</span><span class="ot">
xml:lang=</span><span class="st">"fr"</span><span
class="kw">></span>Exemple<span class="kw"></value></span>
- <span class="kw"></property></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"><property</span><span class="ot"> key=</span><span
class="st">"Content.description.CTNT_MASTER_EXAMPLE"</span><span
class="kw">></span></a>
+<a class="sourceLine" id="cb3-2" data-line-number="2"> <span
class="kw"><value</span><span class="ot"> xml:lang=</span><span
class="st">"en"</span><span class="kw">></span>Example<span
class="kw"></value></span></a>
+<a class="sourceLine" id="cb3-3" data-line-number="3"> <span
class="kw"><value</span><span class="ot"> xml:lang=</span><span
class="st">"fr"</span><span class="kw">></span>Exemple<span
class="kw"></value></span></a>
+<a class="sourceLine" id="cb3-4" data-line-number="4"> <span
class="kw"></property></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<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>
</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<String, Object> parameters = (Map<String, Object>)
reportContext.<span class="fu">getParameterValue</span>(<span
class="st">"parameters"</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><<span class="bu">String</span>, <span
class="bu">Object</span>> parameters = (<span class="bu">Map</span><<span
class="bu">String</span>, <span class="bu">Object</span>>)
reportContext.<span class="fu">getParameterValue</span>(<span
class="st">"parameters"</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<String, Object> 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"><form</span><span class="ot"> name=</span><span
class="st">"CTNT_MASTER_TURNOVER"</span><span class="ot">
type=</span><span class="st">"single"</span><span class="ot">
extends=</span><span
class="st">"AbstractFlexibleReportSearchForm"</span><span
class="kw">></span>
- <span class="kw"><field</span><span class="ot"> name=</span><span
class="st">"fromDate"</span><span
class="kw">><date-time</span><span class="ot"> type=</span><span
class="st">"date"</span><span class="kw">/></field></span>
- <span class="kw"><field</span><span class="ot"> name=</span><span
class="st">"thruDate"</span><span
class="kw">><date-time</span><span class="ot"> type=</span><span
class="st">"date"</span><span class="kw">/></field></span>
- <span class="kw"><field</span><span class="ot"> name=</span><span
class="st">"productCategoryId"</span><span
class="kw">><lookup</span><span class="ot"> target-form-name=</span><span
class="st">"LookupProductCategory"</span><span
class="kw">/></field></span>
- <span class="kw"><field</span><span class="ot"> name=</span><span
class="st">"productStoreId"</span><span
class="kw">><lookup</span><span class="ot"> target-form-name=</span><span
class="st">"LookupProductStore"</span><span
class="kw">/></field></span>
- <span class="kw"></form></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"><form</span><span class="ot"> name=</span><span
class="st">"CTNT_MASTER_TURNOVER"</span><span class="ot">
type=</span><span class="st">"single"</span><span class="ot">
extends=</span><span
class="st">"AbstractFlexibleReportSearchForm"</span><span
class="kw">></span></a>
+<a class="sourceLine" id="cb5-2" data-line-number="2"> <span
class="kw"><field</span><span class="ot"> name=</span><span
class="st">"fromDate"</span><span
class="kw">><date-time</span><span class="ot"> type=</span><span
class="st">"date"</span><span
class="kw">/></field></span></a>
+<a class="sourceLine" id="cb5-3" data-line-number="3"> <span
class="kw"><field</span><span class="ot"> name=</span><span
class="st">"thruDate"</span><span
class="kw">><date-time</span><span class="ot"> type=</span><span
class="st">"date"</span><span
class="kw">/></field></span></a>
+<a class="sourceLine" id="cb5-4" data-line-number="4"> <span
class="kw"><field</span><span class="ot"> name=</span><span
class="st">"productCategoryId"</span><span
class="kw">><lookup</span><span class="ot"> target-form-name=</span><span
class="st">"LookupProductCategory"</span><span
class="kw">/></field></span></a>
+<a class="sourceLine" id="cb5-5" data-line-number="5"> <span
class="kw"><field</span><span class="ot"> name=</span><span
class="st">"productStoreId"</span><span
class="kw">><lookup</span><span class="ot"> target-form-name=</span><span
class="st">"LookupProductStore"</span><span
class="kw">/></field></span></a>
+<a class="sourceLine" id="cb5-6" data-line-number="6"> <span
class="kw"></form></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"><CustomMethod</span><span class="ot">
customMethodId=</span><span class="st">"CM_FB_TURNOVER"</span><span
class="ot"> customMethodTypeId=</span><span
class="st">"FLEXIBLE_BIRT"</span><span class="ot">
customMethodName=</span><span
class="st">"flexibleReportTurnOver"</span><span class="ot">
description=</span><span class="st">"service to resolve invoice for
turnover report domain"</span><span class="kw">/></span>
- <span class="kw"><DataResource</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="ot">
dataResourceTypeId=</span><span
class="st">"ELECTRONIC_TEXT"</span><span class="ot">
dataTemplateTypeId=</span><span class="st">"FORM_COMBINED"</span>
<span class="kw">/></span>
- <span class="kw"><ElectronicText</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="kw">></span>
- <span class="kw"><textData></span><span
class="bn"><![CDATA[</span><!--default domain form-->
- <form name="${masterContentId}_${contentId}"
type="single" extends="${masterContentId}"
extends-resource="component://birt/widget/birt/BirtMasterForms.xml">
- </form><span class="bn">]]></span>
- <span class="kw"></textData></span>
- <span class="kw"></ElectronicText></span>
- <span class="kw"><Content</span><span class="ot">
contentId=</span><span class="st">"CTNT_MASTER_TURNOVER"</span><span
class="ot"> customMethodId=</span><span
class="st">"CM_FB_TURNOVER"</span><span class="ot">
contentTypeId=</span><span class="st">"REPORT_MASTER"</span><span
class="ot"> dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="ot">
statusId=</span><span class="st">"CTNT_PUBLISHED"</span><span
class="ot"> contentName=</span><span
class="st">"Turnover"</span><span class="ot">
description=</span><span class="st">"Master Content for TURNOVER
domain"</span> <span class="kw">/></span>
- <span class="co"><!-- 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
"prepareField" 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 + "prepareFields") then
flexibleReportTurnOver--></span>
- <span class="kw"><ContentAttribute</span><span class="ot">
contentId=</span><span class="st">"CTNT_MASTER_TURNOVER"</span><span
class="ot"> attrName=</span><span class="st">"Service"</span><span
class="ot"> attrValue=</span><span class="st">"default"</span><span
class="kw">/></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"><CustomMethod</span><span class="ot">
customMethodId=</span><span class="st">"CM_FB_TURNOVER"</span><span
class="ot"> customMethodTypeId=</span><span
class="st">"FLEXIBLE_BIRT"</span><span class="ot">
customMethodName=</span><span
class="st">"flexibleReportTurnOver"</span><span class="ot">
description=</span><span class="st">"service to resolve invoice for
turnover report domain"</span><span class="kw">/></span></a>
+<a class="sourceLine" id="cb6-2" data-line-number="2"> <span
class="kw"><DataResource</span><span class="ot"> dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="ot">
dataResourceTypeId=</span><span
class="st">"ELECTRONIC_TEXT"</span><span class="ot">
dataTemplateTypeId=</span><span class="st">"FORM_COMBINED"</span>
<span class="kw">/></span></a>
+<a class="sourceLine" id="cb6-3" data-line-number="3"> <span
class="kw"><ElectronicText</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="kw">></span></a>
+<a class="sourceLine" id="cb6-4" data-line-number="4"> <span
class="kw"><textData></span><span
class="bn"><![CDATA[</span><!--default domain form--></a>
+<a class="sourceLine" id="cb6-5" data-line-number="5"> <form
name="${masterContentId}_${contentId}" type="single"
extends="${masterContentId}"
extends-resource="component://birt/widget/birt/BirtMasterForms.xml"></a>
+<a class="sourceLine" id="cb6-6" data-line-number="6">
</form><span class="bn">]]></span></a>
+<a class="sourceLine" id="cb6-7" data-line-number="7"> <span
class="kw"></textData></span></a>
+<a class="sourceLine" id="cb6-8" data-line-number="8"> <span
class="kw"></ElectronicText></span></a>
+<a class="sourceLine" id="cb6-9" data-line-number="9"> <span
class="kw"><Content</span><span class="ot"> contentId=</span><span
class="st">"CTNT_MASTER_TURNOVER"</span><span class="ot">
customMethodId=</span><span class="st">"CM_FB_TURNOVER"</span><span
class="ot"> contentTypeId=</span><span
class="st">"REPORT_MASTER"</span><span class="ot">
dataResourceId=</span><span
class="st">"DR_MASTER_TURNOVER"</span><span class="ot">
statusId=</span><span class="st">"CTNT_PUBLISHED"</span><span
class="ot"> contentName=</span><span
class="st">"Turnover"</span><span class="ot">
description=</span><span class="st">"Master Content for TURNOVER
domain"</span> <span class="kw">/></span></a>
+<a class="sourceLine" id="cb6-10" data-line-number="10"> <span
class="co"><!-- 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 "prepareField" 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 +
"prepareFields") then flexibleReportTurnOver--></span></a>
+<a class="sourceLine" id="cb6-14" data-line-number="14"> <span
class="kw"><ContentAttribute</span><span class="ot"> contentId=</span><span
class="st">"CTNT_MASTER_TURNOVER"</span><span class="ot">
attrName=</span><span class="st">"Service"</span><span class="ot">
attrValue=</span><span class="st">"default"</span><span
class="kw">/></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
"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"><property</span><span class="ot"> key=</span><span
class="st">"Content.description.CTNT_MASTER_TURNOVER"</span><span
class="kw">></span>
- <span class="kw"><value</span><span class="ot">
xml:lang=</span><span class="st">"en"</span><span
class="kw">></span>Turnover (product)<span class="kw"></value></span>
- <span class="kw"><value</span><span class="ot">
xml:lang=</span><span class="st">"fr"</span><span
class="kw">></span>Rotation (des stocks)<span
class="kw"></value></span>
- <span class="kw"></property></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"><property</span><span class="ot"> key=</span><span
class="st">"Content.description.CTNT_MASTER_TURNOVER"</span><span
class="kw">></span></a>
+<a class="sourceLine" id="cb7-2" data-line-number="2"> <span
class="kw"><value</span><span class="ot"> xml:lang=</span><span
class="st">"en"</span><span class="kw">></span>Turnover
(product)<span class="kw"></value></span></a>
+<a class="sourceLine" id="cb7-3" data-line-number="3"> <span
class="kw"><value</span><span class="ot"> xml:lang=</span><span
class="st">"fr"</span><span class="kw">></span>Rotation (des
stocks)<span class="kw"></value></span></a>
+<a class="sourceLine" id="cb7-4" data-line-number="4"> <span
class="kw"></property></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>