Invoice payment :: cheque printing PDF

This commit is contained in:
walid seghier
2022-10-11 14:58:32 +01:00
parent e47a7103c7
commit 87e01db551
11 changed files with 2224 additions and 0 deletions

View File

@@ -59,6 +59,8 @@ import com.axelor.meta.schema.actions.ActionView.ActionViewBuilder;
import com.axelor.rpc.ActionRequest;
import com.axelor.rpc.ActionResponse;
import com.axelor.rpc.Context;
import com.axelor.apps.base.service.ConvertNumberToFrenchWordsService;
import com.axelor.apps.ReportFactory;
import com.google.common.base.Function;
import com.google.common.base.Joiner;
import com.google.inject.Singleton;
@@ -68,6 +70,7 @@ import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.HashMap;
import java.util.stream.Collectors;
import org.apache.commons.lang3.tuple.Pair;
import org.slf4j.Logger;
@@ -952,4 +955,38 @@ public class InvoiceController {
}
response.setAttr("partner", "domain", domain);
}
public void printInvoicePayment(ActionRequest request, ActionResponse response)
throws AxelorException {
InvoicePayment invoicePayment = request.getContext().asType(InvoicePayment.class);
String name = I18n.get("Payment voucher");
String AmountToPay = invoicePayment.getAmount().toString();
String[] arrOfStr = AmountToPay.split("\\.");
String left = Beans.get(ConvertNumberToFrenchWordsService.class).convert(Long.parseLong(arrOfStr[0]));
String right = Beans.get(ConvertNumberToFrenchWordsService.class).convert(Long.parseLong(arrOfStr[1]));
String number = left+" dinars algériens et "+right+" centimes";
String chequeModelBank = request.getContext().get("chequeModelBank").toString();
Map<String, String> Report = new HashMap<String, String>();
Report.put("CPA", "CPA.rptdesign");
Report.put("ASB", "ASB.rptdesign");
Report.put("BDL", "BDL.rptdesign");
Report.put("SGA", "SGA.rptdesign");
Report.put("BNA", "BNA.rptdesign");
String fileLink =
ReportFactory.createReport(Report.get(chequeModelBank), name + "-${date}")
.addParam("PaymentVoucherId", invoicePayment.getId())
.addParam("NumberToWords", number)
.addParam("Wilaya", request.getContext().get("wilaya"))
.generate()
.getFileLink();
logger.debug("Printing " + name);
response.setView(ActionView.define(name).add("html", fileLink).map());
}
}

View File

@@ -32,6 +32,9 @@
<string name="description" title="Description"/>
<string name="chequeModelBank" title="Model" selection="account.invoice.payment.bank.select"/>
<string name="wilaya" title="Wilaya"/>
<finder-method name="findByReconcile" using="reconcile" all="true"/>
<extra-code>

View File

@@ -0,0 +1,386 @@
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
<property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
<list-property name="propertyBindings">
<structure>
<property name="name">odaURL</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["DBName"].value</expression>
</structure>
<structure>
<property name="name">odaUser</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["UserName"].value</expression>
</structure>
<structure>
<property name="name">odaPassword</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["Password"].value</expression>
</structure>
<structure>
<property name="name">queryText</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">queryTimeOut</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">rowFetchSize</property>
<property name="id">3740</property>
</structure>
</list-property>
<property name="units">in</property>
<property name="iconFile">/templates/blank_report.gif</property>
<property name="layoutPreference">auto layout</property>
<property name="bidiLayoutOrientation">ltr</property>
<property name="imageDPI">96</property>
<parameters>
<scalar-parameter name="PaymentVoucherId" id="570">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">true</property>
<property name="dataType">decimal</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="DBName" id="2479">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="UserName" id="2480">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Password" id="2481">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Locale" id="3676">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">false</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<simple-property-list name="defaultValue">
<value type="constant">fr</value>
</simple-property-list>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="NumberToWords" id="3722">
<property name="hidden">false</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Wilaya" id="3742">
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
</parameters>
<data-sources>
<oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="Data Source" id="209">
<list-property name="privateDriverProperties">
<ex-property>
<name>disabledMetadataBidiFormatStr</name>
</ex-property>
<ex-property>
<name>disabledContentBidiFormatStr</name>
</ex-property>
<ex-property>
<name>contentBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
<ex-property>
<name>metadataBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
</list-property>
<property name="odaDriverClass">org.postgresql.Driver</property>
<property name="odaURL">jdbc:postgresql://localhost:5432/</property>
</oda-data-source>
</data-sources>
<data-sets>
<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AccountInvoicePayment" id="3740">
<list-property name="columnHints">
<structure>
<property name="columnName">amount</property>
<property name="analysis">measure</property>
<text-property name="displayName">amount</text-property>
<text-property name="heading">amount</text-property>
</structure>
<structure>
<property name="columnName">name</property>
<property name="analysis">dimension</property>
<text-property name="displayName">name</text-property>
<text-property name="heading">name</text-property>
</structure>
<structure>
<property name="columnName">date</property>
<property name="analysis">dimension</property>
<text-property name="displayName">date</text-property>
<text-property name="heading">date</text-property>
</structure>
</list-property>
<list-property name="parameters">
<structure>
<property name="name">param_1</property>
<property name="paramName">PaymentVoucherId</property>
<property name="nativeName"></property>
<property name="dataType">decimal</property>
<property name="nativeDataType">-5</property>
<property name="position">1</property>
<property name="isInput">true</property>
<property name="isOutput">false</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="dataType">string</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="dataType">date</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="nativeName">amount</property>
<property name="dataType">decimal</property>
<property name="nativeDataType">2</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="nativeName">name</property>
<property name="dataType">string</property>
<property name="nativeDataType">12</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="nativeName">date</property>
<property name="dataType">date</property>
<property name="nativeDataType">91</property>
</structure>
</list-property>
<xml-property name="queryText"><![CDATA[select payment.amount , Partner.name ,payment.payment_date as "date"
from public.account_invoice_payment as payment
left join public.account_invoice as invoice on payment.invoice = invoice.id
left join public.base_partner as Partner on (invoice.partner = Partner.id)
where payment.id = ?
]]></xml-property>
</oda-data-set>
</data-sets>
<styles>
<style name="report" id="4">
<property name="fontFamily">sans-serif</property>
<property name="fontSize">10pt</property>
</style>
<style name="crosstab-cell" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="6">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<property name="leftMargin">0.16666666666666666in</property>
<property name="rightMargin">0.15625in</property>
<property name="headerHeight">0cm</property>
<property name="footerHeight">3cm</property>
</simple-master-page>
</page-setup>
<body>
<grid id="2568">
<property name="fontSize">12pt</property>
<property name="color">black</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<property name="height">1.6979166666666667in</property>
<property name="width">8.145833333333334in</property>
<property name="dataSet">AccountInvoicePayment</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">amount</property>
<text-property name="displayName">amount</text-property>
<expression name="expression" type="javascript">dataSetRow["amount"]</expression>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="name">name</property>
<text-property name="displayName">name</text-property>
<expression name="expression" type="javascript">dataSetRow["name"]</expression>
<property name="dataType">string</property>
</structure>
<structure>
<property name="name">date</property>
<text-property name="displayName">date</text-property>
<expression name="expression" type="javascript">dataSetRow["date"]</expression>
<property name="dataType">date</property>
</structure>
</list-property>
<column id="2569">
<property name="width">2.75in</property>
</column>
<column id="2570">
<property name="width">1.7395833333333333in</property>
</column>
<column id="2571">
<property name="width">1.125in</property>
</column>
<column id="2572">
<property name="width">2.53125in</property>
</column>
<row id="2573">
<property name="height">0.3125in</property>
<cell id="2574"/>
<cell id="2575"/>
<cell id="2576"/>
<cell id="2577">
<text id="2700">
<property name="fontSize">14px</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="###,##0.00 {RoundingMode=HALF_UP}">row["amount"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2593">
<property name="height">0.4895833333333333in</property>
<cell id="2594">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<text id="3723">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>params["NumberToWords"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2608">
<property name="height">0.3125in</property>
<cell id="2609">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<text id="3735">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>row["name"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="3724">
<cell id="3725"/>
<cell id="3726">
<property name="colSpan">2</property>
<property name="rowSpan">1</property>
<text id="3730">
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF>params["Wilaya"]</VALUE-OF>]]></text-property>
</text>
</cell>
<cell id="3728">
<text id="3729">
<property name="fontSize">12pt</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="dd/MM/yyyy">row["date"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
</grid>
</body>
</report>

View File

@@ -0,0 +1,386 @@
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
<property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
<list-property name="propertyBindings">
<structure>
<property name="name">odaURL</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["DBName"].value</expression>
</structure>
<structure>
<property name="name">odaUser</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["UserName"].value</expression>
</structure>
<structure>
<property name="name">odaPassword</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["Password"].value</expression>
</structure>
<structure>
<property name="name">queryText</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">queryTimeOut</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">rowFetchSize</property>
<property name="id">3740</property>
</structure>
</list-property>
<property name="units">in</property>
<property name="iconFile">/templates/blank_report.gif</property>
<property name="layoutPreference">auto layout</property>
<property name="bidiLayoutOrientation">ltr</property>
<property name="imageDPI">96</property>
<parameters>
<scalar-parameter name="PaymentVoucherId" id="570">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">true</property>
<property name="dataType">decimal</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="DBName" id="2479">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="UserName" id="2480">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Password" id="2481">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Locale" id="3676">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">false</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<simple-property-list name="defaultValue">
<value type="constant">fr</value>
</simple-property-list>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="NumberToWords" id="3722">
<property name="hidden">false</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Wilaya" id="3742">
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
</parameters>
<data-sources>
<oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="Data Source" id="209">
<list-property name="privateDriverProperties">
<ex-property>
<name>disabledMetadataBidiFormatStr</name>
</ex-property>
<ex-property>
<name>disabledContentBidiFormatStr</name>
</ex-property>
<ex-property>
<name>contentBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
<ex-property>
<name>metadataBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
</list-property>
<property name="odaDriverClass">org.postgresql.Driver</property>
<property name="odaURL">jdbc:postgresql://localhost:5432/</property>
</oda-data-source>
</data-sources>
<data-sets>
<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AccountInvoicePayment" id="3740">
<list-property name="columnHints">
<structure>
<property name="columnName">amount</property>
<property name="analysis">measure</property>
<text-property name="displayName">amount</text-property>
<text-property name="heading">amount</text-property>
</structure>
<structure>
<property name="columnName">name</property>
<property name="analysis">dimension</property>
<text-property name="displayName">name</text-property>
<text-property name="heading">name</text-property>
</structure>
<structure>
<property name="columnName">date</property>
<property name="analysis">dimension</property>
<text-property name="displayName">date</text-property>
<text-property name="heading">date</text-property>
</structure>
</list-property>
<list-property name="parameters">
<structure>
<property name="name">param_1</property>
<property name="paramName">PaymentVoucherId</property>
<property name="nativeName"></property>
<property name="dataType">decimal</property>
<property name="nativeDataType">-5</property>
<property name="position">1</property>
<property name="isInput">true</property>
<property name="isOutput">false</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="dataType">string</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="dataType">date</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="nativeName">amount</property>
<property name="dataType">decimal</property>
<property name="nativeDataType">2</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="nativeName">name</property>
<property name="dataType">string</property>
<property name="nativeDataType">12</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="nativeName">date</property>
<property name="dataType">date</property>
<property name="nativeDataType">91</property>
</structure>
</list-property>
<xml-property name="queryText"><![CDATA[select payment.amount , Partner.name ,payment.payment_date as "date"
from public.account_invoice_payment as payment
left join public.account_invoice as invoice on payment.invoice = invoice.id
left join public.base_partner as Partner on (invoice.partner = Partner.id)
where payment.id = ?
]]></xml-property>
</oda-data-set>
</data-sets>
<styles>
<style name="report" id="4">
<property name="fontFamily">sans-serif</property>
<property name="fontSize">10pt</property>
</style>
<style name="crosstab-cell" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="6">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<property name="leftMargin">0.16666666666666666in</property>
<property name="rightMargin">0.15625in</property>
<property name="headerHeight">0cm</property>
<property name="footerHeight">3cm</property>
</simple-master-page>
</page-setup>
<body>
<grid id="2568">
<property name="fontSize">12pt</property>
<property name="color">black</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<property name="height">1.6979166666666667in</property>
<property name="width">8.145833333333334in</property>
<property name="dataSet">AccountInvoicePayment</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">amount</property>
<text-property name="displayName">amount</text-property>
<expression name="expression" type="javascript">dataSetRow["amount"]</expression>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="name">name</property>
<text-property name="displayName">name</text-property>
<expression name="expression" type="javascript">dataSetRow["name"]</expression>
<property name="dataType">string</property>
</structure>
<structure>
<property name="name">date</property>
<text-property name="displayName">date</text-property>
<expression name="expression" type="javascript">dataSetRow["date"]</expression>
<property name="dataType">date</property>
</structure>
</list-property>
<column id="2569">
<property name="width">2.75in</property>
</column>
<column id="2570">
<property name="width">1.7395833333333333in</property>
</column>
<column id="2571">
<property name="width">1.125in</property>
</column>
<column id="2572">
<property name="width">2.53125in</property>
</column>
<row id="2573">
<property name="height">0.3125in</property>
<cell id="2574"/>
<cell id="2575"/>
<cell id="2576"/>
<cell id="2577">
<text id="2700">
<property name="fontSize">14px</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="###,##0.00 {RoundingMode=HALF_UP}">row["amount"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2593">
<property name="height">0.4895833333333333in</property>
<cell id="2594">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<text id="3723">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>params["NumberToWords"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2608">
<property name="height">0.3125in</property>
<cell id="2609">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<text id="3735">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>row["name"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="3724">
<cell id="3725"/>
<cell id="3726">
<property name="colSpan">2</property>
<property name="rowSpan">1</property>
<text id="3730">
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF>params["Wilaya"]</VALUE-OF>]]></text-property>
</text>
</cell>
<cell id="3728">
<text id="3729">
<property name="fontSize">12pt</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="dd/MM/yyyy">row["date"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
</grid>
</body>
</report>

View File

@@ -0,0 +1,386 @@
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
<property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
<list-property name="propertyBindings">
<structure>
<property name="name">odaURL</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["DBName"].value</expression>
</structure>
<structure>
<property name="name">odaUser</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["UserName"].value</expression>
</structure>
<structure>
<property name="name">odaPassword</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["Password"].value</expression>
</structure>
<structure>
<property name="name">queryText</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">queryTimeOut</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">rowFetchSize</property>
<property name="id">3740</property>
</structure>
</list-property>
<property name="units">in</property>
<property name="iconFile">/templates/blank_report.gif</property>
<property name="layoutPreference">auto layout</property>
<property name="bidiLayoutOrientation">ltr</property>
<property name="imageDPI">96</property>
<parameters>
<scalar-parameter name="PaymentVoucherId" id="570">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">true</property>
<property name="dataType">decimal</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="DBName" id="2479">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="UserName" id="2480">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Password" id="2481">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Locale" id="3676">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">false</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<simple-property-list name="defaultValue">
<value type="constant">fr</value>
</simple-property-list>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="NumberToWords" id="3722">
<property name="hidden">false</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Wilaya" id="3742">
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
</parameters>
<data-sources>
<oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="Data Source" id="209">
<list-property name="privateDriverProperties">
<ex-property>
<name>disabledMetadataBidiFormatStr</name>
</ex-property>
<ex-property>
<name>disabledContentBidiFormatStr</name>
</ex-property>
<ex-property>
<name>contentBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
<ex-property>
<name>metadataBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
</list-property>
<property name="odaDriverClass">org.postgresql.Driver</property>
<property name="odaURL">jdbc:postgresql://localhost:5432/</property>
</oda-data-source>
</data-sources>
<data-sets>
<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AccountInvoicePayment" id="3740">
<list-property name="columnHints">
<structure>
<property name="columnName">amount</property>
<property name="analysis">measure</property>
<text-property name="displayName">amount</text-property>
<text-property name="heading">amount</text-property>
</structure>
<structure>
<property name="columnName">name</property>
<property name="analysis">dimension</property>
<text-property name="displayName">name</text-property>
<text-property name="heading">name</text-property>
</structure>
<structure>
<property name="columnName">date</property>
<property name="analysis">dimension</property>
<text-property name="displayName">date</text-property>
<text-property name="heading">date</text-property>
</structure>
</list-property>
<list-property name="parameters">
<structure>
<property name="name">param_1</property>
<property name="paramName">PaymentVoucherId</property>
<property name="nativeName"></property>
<property name="dataType">decimal</property>
<property name="nativeDataType">-5</property>
<property name="position">1</property>
<property name="isInput">true</property>
<property name="isOutput">false</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="dataType">string</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="dataType">date</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="nativeName">amount</property>
<property name="dataType">decimal</property>
<property name="nativeDataType">2</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="nativeName">name</property>
<property name="dataType">string</property>
<property name="nativeDataType">12</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="nativeName">date</property>
<property name="dataType">date</property>
<property name="nativeDataType">91</property>
</structure>
</list-property>
<xml-property name="queryText"><![CDATA[select payment.amount , Partner.name ,payment.payment_date as "date"
from public.account_invoice_payment as payment
left join public.account_invoice as invoice on payment.invoice = invoice.id
left join public.base_partner as Partner on (invoice.partner = Partner.id)
where payment.id = ?
]]></xml-property>
</oda-data-set>
</data-sets>
<styles>
<style name="report" id="4">
<property name="fontFamily">sans-serif</property>
<property name="fontSize">10pt</property>
</style>
<style name="crosstab-cell" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="6">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<property name="leftMargin">0.16666666666666666in</property>
<property name="rightMargin">0.15625in</property>
<property name="headerHeight">0cm</property>
<property name="footerHeight">3cm</property>
</simple-master-page>
</page-setup>
<body>
<grid id="2568">
<property name="fontSize">12pt</property>
<property name="color">black</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<property name="height">1.6979166666666667in</property>
<property name="width">8.145833333333334in</property>
<property name="dataSet">AccountInvoicePayment</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">amount</property>
<text-property name="displayName">amount</text-property>
<expression name="expression" type="javascript">dataSetRow["amount"]</expression>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="name">name</property>
<text-property name="displayName">name</text-property>
<expression name="expression" type="javascript">dataSetRow["name"]</expression>
<property name="dataType">string</property>
</structure>
<structure>
<property name="name">date</property>
<text-property name="displayName">date</text-property>
<expression name="expression" type="javascript">dataSetRow["date"]</expression>
<property name="dataType">date</property>
</structure>
</list-property>
<column id="2569">
<property name="width">2.75in</property>
</column>
<column id="2570">
<property name="width">1.7395833333333333in</property>
</column>
<column id="2571">
<property name="width">1.125in</property>
</column>
<column id="2572">
<property name="width">2.53125in</property>
</column>
<row id="2573">
<property name="height">0.3125in</property>
<cell id="2574"/>
<cell id="2575"/>
<cell id="2576"/>
<cell id="2577">
<text id="2700">
<property name="fontSize">14px</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="###,##0.00 {RoundingMode=HALF_UP}">row["amount"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2593">
<property name="height">0.4895833333333333in</property>
<cell id="2594">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<text id="3723">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>params["NumberToWords"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2608">
<property name="height">0.3125in</property>
<cell id="2609">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<text id="3735">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>row["name"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="3724">
<cell id="3725"/>
<cell id="3726">
<property name="colSpan">2</property>
<property name="rowSpan">1</property>
<text id="3730">
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF>params["Wilaya"]</VALUE-OF>]]></text-property>
</text>
</cell>
<cell id="3728">
<text id="3729">
<property name="fontSize">12pt</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="dd/MM/yyyy">row["date"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
</grid>
</body>
</report>

View File

@@ -0,0 +1,386 @@
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
<property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
<list-property name="propertyBindings">
<structure>
<property name="name">odaURL</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["DBName"].value</expression>
</structure>
<structure>
<property name="name">odaUser</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["UserName"].value</expression>
</structure>
<structure>
<property name="name">odaPassword</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["Password"].value</expression>
</structure>
<structure>
<property name="name">queryText</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">queryTimeOut</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">rowFetchSize</property>
<property name="id">3740</property>
</structure>
</list-property>
<property name="units">in</property>
<property name="iconFile">/templates/blank_report.gif</property>
<property name="layoutPreference">auto layout</property>
<property name="bidiLayoutOrientation">ltr</property>
<property name="imageDPI">96</property>
<parameters>
<scalar-parameter name="PaymentVoucherId" id="570">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">true</property>
<property name="dataType">decimal</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="DBName" id="2479">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="UserName" id="2480">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Password" id="2481">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Locale" id="3676">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">false</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<simple-property-list name="defaultValue">
<value type="constant">fr</value>
</simple-property-list>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="NumberToWords" id="3722">
<property name="hidden">false</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Wilaya" id="3742">
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
</parameters>
<data-sources>
<oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="Data Source" id="209">
<list-property name="privateDriverProperties">
<ex-property>
<name>disabledMetadataBidiFormatStr</name>
</ex-property>
<ex-property>
<name>disabledContentBidiFormatStr</name>
</ex-property>
<ex-property>
<name>contentBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
<ex-property>
<name>metadataBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
</list-property>
<property name="odaDriverClass">org.postgresql.Driver</property>
<property name="odaURL">jdbc:postgresql://localhost:5432/</property>
</oda-data-source>
</data-sources>
<data-sets>
<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AccountInvoicePayment" id="3740">
<list-property name="columnHints">
<structure>
<property name="columnName">amount</property>
<property name="analysis">measure</property>
<text-property name="displayName">amount</text-property>
<text-property name="heading">amount</text-property>
</structure>
<structure>
<property name="columnName">name</property>
<property name="analysis">dimension</property>
<text-property name="displayName">name</text-property>
<text-property name="heading">name</text-property>
</structure>
<structure>
<property name="columnName">date</property>
<property name="analysis">dimension</property>
<text-property name="displayName">date</text-property>
<text-property name="heading">date</text-property>
</structure>
</list-property>
<list-property name="parameters">
<structure>
<property name="name">param_1</property>
<property name="paramName">PaymentVoucherId</property>
<property name="nativeName"></property>
<property name="dataType">decimal</property>
<property name="nativeDataType">-5</property>
<property name="position">1</property>
<property name="isInput">true</property>
<property name="isOutput">false</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="dataType">string</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="dataType">date</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="nativeName">amount</property>
<property name="dataType">decimal</property>
<property name="nativeDataType">2</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="nativeName">name</property>
<property name="dataType">string</property>
<property name="nativeDataType">12</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="nativeName">date</property>
<property name="dataType">date</property>
<property name="nativeDataType">91</property>
</structure>
</list-property>
<xml-property name="queryText"><![CDATA[select payment.amount , Partner.name ,payment.payment_date as "date"
from public.account_invoice_payment as payment
left join public.account_invoice as invoice on payment.invoice = invoice.id
left join public.base_partner as Partner on (invoice.partner = Partner.id)
where payment.id = ?
]]></xml-property>
</oda-data-set>
</data-sets>
<styles>
<style name="report" id="4">
<property name="fontFamily">sans-serif</property>
<property name="fontSize">10pt</property>
</style>
<style name="crosstab-cell" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="6">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<property name="leftMargin">0.16666666666666666in</property>
<property name="rightMargin">0.15625in</property>
<property name="headerHeight">0cm</property>
<property name="footerHeight">3cm</property>
</simple-master-page>
</page-setup>
<body>
<grid id="2568">
<property name="fontSize">12pt</property>
<property name="color">black</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<property name="height">1.6979166666666667in</property>
<property name="width">8.145833333333334in</property>
<property name="dataSet">AccountInvoicePayment</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">amount</property>
<text-property name="displayName">amount</text-property>
<expression name="expression" type="javascript">dataSetRow["amount"]</expression>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="name">name</property>
<text-property name="displayName">name</text-property>
<expression name="expression" type="javascript">dataSetRow["name"]</expression>
<property name="dataType">string</property>
</structure>
<structure>
<property name="name">date</property>
<text-property name="displayName">date</text-property>
<expression name="expression" type="javascript">dataSetRow["date"]</expression>
<property name="dataType">date</property>
</structure>
</list-property>
<column id="2569">
<property name="width">2.75in</property>
</column>
<column id="2570">
<property name="width">1.7395833333333333in</property>
</column>
<column id="2571">
<property name="width">1.125in</property>
</column>
<column id="2572">
<property name="width">2.53125in</property>
</column>
<row id="2573">
<property name="height">0.3125in</property>
<cell id="2574"/>
<cell id="2575"/>
<cell id="2576"/>
<cell id="2577">
<text id="2700">
<property name="fontSize">14px</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="###,##0.00 {RoundingMode=HALF_UP}">row["amount"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2593">
<property name="height">0.4895833333333333in</property>
<cell id="2594">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<text id="3723">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>params["NumberToWords"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2608">
<property name="height">0.3125in</property>
<cell id="2609">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<text id="3735">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>row["name"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="3724">
<cell id="3725"/>
<cell id="3726">
<property name="colSpan">2</property>
<property name="rowSpan">1</property>
<text id="3730">
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF>params["Wilaya"]</VALUE-OF>]]></text-property>
</text>
</cell>
<cell id="3728">
<text id="3729">
<property name="fontSize">12pt</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="dd/MM/yyyy">row["date"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
</grid>
</body>
</report>

View File

@@ -0,0 +1,386 @@
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.23" id="1">
<property name="createdBy">Eclipse BIRT Designer Version 4.8.0.v201806261756</property>
<list-property name="propertyBindings">
<structure>
<property name="name">odaURL</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["DBName"].value</expression>
</structure>
<structure>
<property name="name">odaUser</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["UserName"].value</expression>
</structure>
<structure>
<property name="name">odaPassword</property>
<property name="id">209</property>
<expression name="value" type="javascript">params["Password"].value</expression>
</structure>
<structure>
<property name="name">queryText</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">queryTimeOut</property>
<property name="id">3740</property>
</structure>
<structure>
<property name="name">rowFetchSize</property>
<property name="id">3740</property>
</structure>
</list-property>
<property name="units">in</property>
<property name="iconFile">/templates/blank_report.gif</property>
<property name="layoutPreference">auto layout</property>
<property name="bidiLayoutOrientation">ltr</property>
<property name="imageDPI">96</property>
<parameters>
<scalar-parameter name="PaymentVoucherId" id="570">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">true</property>
<property name="dataType">decimal</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="DBName" id="2479">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="UserName" id="2480">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Password" id="2481">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Locale" id="3676">
<property name="hidden">true</property>
<property name="valueType">static</property>
<property name="isRequired">false</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<simple-property-list name="defaultValue">
<value type="constant">fr</value>
</simple-property-list>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="concealValue">false</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="NumberToWords" id="3722">
<property name="hidden">false</property>
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
<scalar-parameter name="Wilaya" id="3742">
<property name="valueType">static</property>
<property name="dataType">string</property>
<property name="distinct">true</property>
<list-property name="selectionList"/>
<property name="paramType">simple</property>
<property name="controlType">text-box</property>
<structure name="format">
<property name="category">Unformatted</property>
</structure>
</scalar-parameter>
</parameters>
<data-sources>
<oda-data-source extensionID="org.eclipse.birt.report.data.oda.jdbc" name="Data Source" id="209">
<list-property name="privateDriverProperties">
<ex-property>
<name>disabledMetadataBidiFormatStr</name>
</ex-property>
<ex-property>
<name>disabledContentBidiFormatStr</name>
</ex-property>
<ex-property>
<name>contentBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
<ex-property>
<name>metadataBidiFormatStr</name>
<value>ILYNN</value>
</ex-property>
</list-property>
<property name="odaDriverClass">org.postgresql.Driver</property>
<property name="odaURL">jdbc:postgresql://localhost:5432/</property>
</oda-data-source>
</data-sources>
<data-sets>
<oda-data-set extensionID="org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" name="AccountInvoicePayment" id="3740">
<list-property name="columnHints">
<structure>
<property name="columnName">amount</property>
<property name="analysis">measure</property>
<text-property name="displayName">amount</text-property>
<text-property name="heading">amount</text-property>
</structure>
<structure>
<property name="columnName">name</property>
<property name="analysis">dimension</property>
<text-property name="displayName">name</text-property>
<text-property name="heading">name</text-property>
</structure>
<structure>
<property name="columnName">date</property>
<property name="analysis">dimension</property>
<text-property name="displayName">date</text-property>
<text-property name="heading">date</text-property>
</structure>
</list-property>
<list-property name="parameters">
<structure>
<property name="name">param_1</property>
<property name="paramName">PaymentVoucherId</property>
<property name="nativeName"></property>
<property name="dataType">decimal</property>
<property name="nativeDataType">-5</property>
<property name="position">1</property>
<property name="isInput">true</property>
<property name="isOutput">false</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="dataType">string</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="dataType">date</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">amount</property>
<property name="nativeName">amount</property>
<property name="dataType">decimal</property>
<property name="nativeDataType">2</property>
</structure>
<structure>
<property name="position">2</property>
<property name="name">name</property>
<property name="nativeName">name</property>
<property name="dataType">string</property>
<property name="nativeDataType">12</property>
</structure>
<structure>
<property name="position">3</property>
<property name="name">date</property>
<property name="nativeName">date</property>
<property name="dataType">date</property>
<property name="nativeDataType">91</property>
</structure>
</list-property>
<xml-property name="queryText"><![CDATA[select payment.amount , Partner.name ,payment.payment_date as "date"
from public.account_invoice_payment as payment
left join public.account_invoice as invoice on payment.invoice = invoice.id
left join public.base_partner as Partner on (invoice.partner = Partner.id)
where payment.id = ?
]]></xml-property>
</oda-data-set>
</data-sets>
<styles>
<style name="report" id="4">
<property name="fontFamily">sans-serif</property>
<property name="fontSize">10pt</property>
</style>
<style name="crosstab-cell" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="6">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<property name="leftMargin">0.16666666666666666in</property>
<property name="rightMargin">0.15625in</property>
<property name="headerHeight">0cm</property>
<property name="footerHeight">3cm</property>
</simple-master-page>
</page-setup>
<body>
<grid id="2568">
<property name="fontSize">12pt</property>
<property name="color">black</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<property name="height">1.6979166666666667in</property>
<property name="width">8.145833333333334in</property>
<property name="dataSet">AccountInvoicePayment</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">amount</property>
<text-property name="displayName">amount</text-property>
<expression name="expression" type="javascript">dataSetRow["amount"]</expression>
<property name="dataType">decimal</property>
</structure>
<structure>
<property name="name">name</property>
<text-property name="displayName">name</text-property>
<expression name="expression" type="javascript">dataSetRow["name"]</expression>
<property name="dataType">string</property>
</structure>
<structure>
<property name="name">date</property>
<text-property name="displayName">date</text-property>
<expression name="expression" type="javascript">dataSetRow["date"]</expression>
<property name="dataType">date</property>
</structure>
</list-property>
<column id="2569">
<property name="width">2.75in</property>
</column>
<column id="2570">
<property name="width">1.7395833333333333in</property>
</column>
<column id="2571">
<property name="width">1.125in</property>
</column>
<column id="2572">
<property name="width">2.53125in</property>
</column>
<row id="2573">
<property name="height">0.3125in</property>
<cell id="2574"/>
<cell id="2575"/>
<cell id="2576"/>
<cell id="2577">
<text id="2700">
<property name="fontSize">14px</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="###,##0.00 {RoundingMode=HALF_UP}">row["amount"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2593">
<property name="height">0.4895833333333333in</property>
<cell id="2594">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<property name="borderBottomStyle">none</property>
<property name="borderLeftStyle">none</property>
<property name="borderRightStyle">none</property>
<property name="borderTopStyle">none</property>
<text id="3723">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>params["NumberToWords"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="2608">
<property name="height">0.3125in</property>
<cell id="2609">
<property name="colSpan">4</property>
<property name="rowSpan">1</property>
<text id="3735">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<VALUE-OF>row["name"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
<row id="3724">
<cell id="3725"/>
<cell id="3726">
<property name="colSpan">2</property>
<property name="rowSpan">1</property>
<text id="3730">
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF>params["Wilaya"]</VALUE-OF>]]></text-property>
</text>
</cell>
<cell id="3728">
<text id="3729">
<property name="fontSize">12pt</property>
<property name="textAlign">right</property>
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<VALUE-OF format="dd/MM/yyyy">row["date"]</VALUE-OF>]]></text-property>
</text>
</cell>
</row>
</grid>
</body>
</report>

View File

@@ -435,4 +435,12 @@
<option value='2'>Closure</option>
</selection>
<selection name='account.invoice.payment.bank.select'>
<option value='CPA'>CPA</option>
<option value='ASB'>ASB</option>
<option value='BDL'>BDL</option>
<option value='BNA'>BNA</option>
<option value='SGA'>SGA</option>
</selection>
</object-views>

View File

@@ -128,11 +128,14 @@ import com.axelor.auth.db.repo.UserRepository;
import com.axelor.base.service.ical.ICalendarEventService;
import com.axelor.base.service.ical.ICalendarEventServiceImpl;
import com.axelor.team.db.repo.TeamTaskRepository;
import com.axelor.apps.base.service.ConvertNumberToFrenchWordsService;
import com.axelor.apps.base.service.ConvertNumberToFrenchWordsServiceImpl;
public class BaseModule extends AxelorModule {
@Override
protected void configure() {
bind(ConvertNumberToFrenchWordsService.class).to(ConvertNumberToFrenchWordsServiceImpl.class);
bind(SophalService.class).to(SophalServiceImpl.class);
bind(AddressService.class).to(AddressServiceImpl.class);
bind(AdvancedExportService.class).to(AdvancedExportServiceImpl.class);

View File

@@ -0,0 +1,26 @@
/*
* Axelor Business Solutions
*
* Copyright (C) 2020 Axelor (<http://axelor.com>).
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.axelor.apps.base.service;
public interface ConvertNumberToFrenchWordsService {
public String convert(long number);
}

View File

@@ -0,0 +1,217 @@
/*
* Axelor Business Solutions
*
* Copyright (C) 2020 Axelor (<http://axelor.com>).
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.axelor.apps.base.service;
import java.text.DecimalFormat;
public class ConvertNumberToFrenchWordsServiceImpl implements ConvertNumberToFrenchWordsService {
private final String[] dizaineNames = { "", //
"", //
"vingt", //
"trente", //
"quarante", //
"cinquante", //
"soixante", //
"soixante", //
"quatre-vingt", //
"quatre-vingt" //
};
private final String[] uniteNames1 = { "", //
"un", //
"deux", //
"trois", //
"quatre", //
"cinq", //
"six", //
"sept", //
"huit", //
"neuf", //
"dix", //
"onze", //
"douze", //
"treize", //
"quatorze", //
"quinze", //
"seize", //
"dix-sept", //
"dix-huit", //
"dix-neuf" //
};
private final String[] uniteNames2 = { "", //
"", //
"deux", //
"trois", //
"quatre", //
"cinq", //
"six", //
"sept", //
"huit", //
"neuf", //
"dix" //
};
private String convertZeroToHundred(int number) {
int laDizaine = number / 10;
int lUnite = number % 10;
String resultat = "";
switch (laDizaine) {
case 1:
case 7:
case 9:
lUnite = lUnite + 10;
break;
default:
}
String laLiaison = "";
if (laDizaine > 1) {
laLiaison = "-";
}
switch (lUnite) {
case 0:
laLiaison = "";
break;
case 1:
if (laDizaine == 8) {
laLiaison = "-";
} else {
laLiaison = " et ";
}
break;
case 11:
if (laDizaine == 7) {
laLiaison = " et ";
}
break;
default:
}
// dizaines en lettres
switch (laDizaine) {
case 0:
resultat = uniteNames1[lUnite];
break;
case 8:
if (lUnite == 0) {
resultat = dizaineNames[laDizaine];
} else {
resultat = dizaineNames[laDizaine] + laLiaison + uniteNames1[lUnite];
}
break;
default:
resultat = dizaineNames[laDizaine] + laLiaison + uniteNames1[lUnite];
}
return resultat;
}
private String convertLessThanOneThousand(int number) {
int lesCentaines = number / 100;
int leReste = number % 100;
String sReste = convertZeroToHundred(leReste);
String resultat;
switch (lesCentaines) {
case 0:
resultat = sReste;
break;
case 1:
if (leReste > 0) {
resultat = "cent " + sReste;
} else {
resultat = "cent";
}
break;
default:
if (leReste > 0) {
resultat = uniteNames2[lesCentaines] + " cent " + sReste;
} else {
resultat = uniteNames2[lesCentaines] + " cents";
}
}
return resultat;
}
public String convert(long number) {
if (number == 0) {
return "zero";
}
String snumber = Long.toString(number);
String mask = "000000000000";
DecimalFormat df = new DecimalFormat(mask);
snumber = df.format(number);
int lesMilliards = Integer.parseInt(snumber.substring(0, 3));
int lesMillions = Integer.parseInt(snumber.substring(3, 6));
int lesCentMille = Integer.parseInt(snumber.substring(6, 9));
int lesMille = Integer.parseInt(snumber.substring(9, 12));
String tradMilliards;
switch (lesMilliards) {
case 0:
tradMilliards = "";
break;
case 1:
tradMilliards = convertLessThanOneThousand(lesMilliards) + " milliard ";
break;
default:
tradMilliards = convertLessThanOneThousand(lesMilliards) + " milliards ";
}
String resultat = tradMilliards;
String tradMillions;
switch (lesMillions) {
case 0:
tradMillions = "";
break;
case 1:
tradMillions = convertLessThanOneThousand(lesMillions) + " million ";
break;
default:
tradMillions = convertLessThanOneThousand(lesMillions) + " millions ";
}
resultat = resultat + tradMillions;
String tradCentMille;
switch (lesCentMille) {
case 0:
tradCentMille = "";
break;
case 1:
tradCentMille = "mille ";
break;
default:
tradCentMille = convertLessThanOneThousand(lesCentMille) + " mille ";
}
resultat = resultat + tradCentMille;
String tradMille;
tradMille = convertLessThanOneThousand(lesMille);
resultat = resultat + tradMille;
return resultat;
}
}