Lieferantenreferenz:
@@ -35,7 +35,7 @@
                             
                                 Geplantes Lieferdatum:
                                 
+                                      t-options='{"format": "dd.MM.yyyy"}'/>
                             
                             
                                 Ansprechpartner:
diff --git a/ext/custom-addons/dp_reports_sale/models/report_helper.py b/ext/custom-addons/dp_reports_sale/models/report_helper.py
index 4f729e2a..5ae379e8 100644
--- a/ext/custom-addons/dp_reports_sale/models/report_helper.py
+++ b/ext/custom-addons/dp_reports_sale/models/report_helper.py
@@ -1,4 +1,4 @@
-
+# -*- coding: utf-8 -*-
 
 from odoo import api, models
 
diff --git a/ext/custom-addons/dp_reports_sale/reports/sale.xml b/ext/custom-addons/dp_reports_sale/reports/sale.xml
index c44cdb84..74b1df3a 100644
--- a/ext/custom-addons/dp_reports_sale/reports/sale.xml
+++ b/ext/custom-addons/dp_reports_sale/reports/sale.xml
@@ -38,19 +38,19 @@
                                  style="padding-right:2px;">
                                 Angebotsdatum:
                                 
+                                      t-options='{"format": "dd.MM.yyyy"}'/>
                             
                             
                                 Gültig bis:
                                 
+                                      t-options='{"format": "dd.MM.yyyy"}'/>
                             
                             
                                 Bestelldatum:
                                 
+                                      t-options='{"format": "dd.MM.yyyy"}'/>
                             
                             
                                 Ansprechpartner:
diff --git a/ext/custom-addons/dp_rest_to_rpc/__init__.py b/ext/custom-addons/dp_rest_to_rpc/__init__.py
new file mode 100644
index 00000000..f55a7281
--- /dev/null
+++ b/ext/custom-addons/dp_rest_to_rpc/__init__.py
@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    datenpol gmbh
+#    Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    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 .
+#
+##############################################################################
+
+from . import controllers
diff --git a/ext/custom-addons/dp_rest_to_rpc/__manifest__.py b/ext/custom-addons/dp_rest_to_rpc/__manifest__.py
new file mode 100644
index 00000000..da6d6bbd
--- /dev/null
+++ b/ext/custom-addons/dp_rest_to_rpc/__manifest__.py
@@ -0,0 +1,36 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    datenpol gmbh
+#    Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    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 .
+#
+##############################################################################
+
+# noinspection PyStatementEffect
+{
+    'name': 'datenpol Rest to RPC',
+    'category': 'Custom',
+    'version': '11.0.1.0.0',
+    'description': """
+    datenpol Rest to RPC. Wird als Mockup verwendet für die OdooRPC oder XMLRpc Aufrufe
+    """,
+    'author': 'datenpol gmbh',
+    'website': 'http://www.datenpol.at/',
+    'depends': [],
+    'data': [],
+    'installable': True,
+    'auto_install': False,
+}
diff --git a/ext/custom-addons/dp_rest_to_rpc/controllers/__init__.py b/ext/custom-addons/dp_rest_to_rpc/controllers/__init__.py
new file mode 100644
index 00000000..1180b385
--- /dev/null
+++ b/ext/custom-addons/dp_rest_to_rpc/controllers/__init__.py
@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    datenpol gmbh
+#    Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    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 .
+#
+##############################################################################
+
+from . import main
diff --git a/ext/custom-addons/dp_rest_to_rpc/controllers/main.py b/ext/custom-addons/dp_rest_to_rpc/controllers/main.py
new file mode 100644
index 00000000..eaa248a2
--- /dev/null
+++ b/ext/custom-addons/dp_rest_to_rpc/controllers/main.py
@@ -0,0 +1,75 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+#    datenpol gmbh
+#    Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+#    This program is free software: you can redistribute it and/or modify
+#    it under the terms of the GNU Affero General Public License as
+#    published by the Free Software Foundation, either version 3 of the
+#    License, or (at your option) any later version.
+#
+#    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 .
+#
+##############################################################################
+
+from odoo import http
+from odoo.http import request
+
+
+class MyController(http.Controller):
+    @http.route('/portal_create_partner', type='json', auth='none', methods=['POST'])
+    def handle_portal_create_partner(self, **post):
+        values = request.jsonrequest
+        partner_obj = request.env['res.partner'].sudo()
+        try:
+            partner_id = partner_obj.portal_create_partner(values)
+        except Exception as e:
+            return e.args[0]
+        return partner_id
+
+    @http.route('/pg_create_company', type='json', auth='none', methods=['POST'])
+    def handle_pg_create_company(self, **post):
+        values = request.jsonrequest
+        partner_obj = request.env['res.partner'].sudo()
+        try:
+            partner_id = partner_obj.pg_create_company(values)
+        except Exception as e:
+            return e.args[0]
+        return partner_id
+
+    @http.route('/pg_get_orders', type='json', auth='none', methods=['POST'])
+    def handle_pg_get_orders(self, **post):
+        values = request.jsonrequest
+        sale_order_obj = request.env['sale.order'].sudo()
+        try:
+            sale_order_id = sale_order_obj.pg_get_orders(values['line'], values['state'], values['limit'])
+        except Exception as e:
+            return e.args[0]
+        return sale_order_id
+
+    @http.route('/create_product', type='json', auth='none', methods=['POST'])
+    def handle_create_product(self, **post):
+        values = request.jsonrequest
+        product_obj = request.env['product.template'].sudo()
+        try:
+            product_id = product_obj.create_product(values)
+        except Exception as e:
+            return e.args[0]
+        return product_id
+
+    @http.route('/pg_create_quotation', type='json', auth='none', methods=['POST'])
+    def handle_pg_create_quotation(self, **post):
+        values = request.jsonrequest
+        sale_order_obj = request.env['sale.order'].sudo()
+        try:
+            sale_order_id = sale_order_obj.pg_create_quotation(values)
+        except Exception as e:
+            return e.args[0]
+        return sale_order_id
diff --git a/ext/custom-addons/dp_rest_to_rpc/static/description/icon.png b/ext/custom-addons/dp_rest_to_rpc/static/description/icon.png
new file mode 100644
index 00000000..8387d765
Binary files /dev/null and b/ext/custom-addons/dp_rest_to_rpc/static/description/icon.png differ
diff --git a/ext/custom-addons/dp_rest_to_rpc/static/src/img/favicon.ico b/ext/custom-addons/dp_rest_to_rpc/static/src/img/favicon.ico
new file mode 100644
index 00000000..3c33e99b
Binary files /dev/null and b/ext/custom-addons/dp_rest_to_rpc/static/src/img/favicon.ico differ
diff --git a/ext/custom-addons/dp_rest_to_rpc/static/src/img/logo.png b/ext/custom-addons/dp_rest_to_rpc/static/src/img/logo.png
new file mode 100644
index 00000000..32c1481d
Binary files /dev/null and b/ext/custom-addons/dp_rest_to_rpc/static/src/img/logo.png differ