Merge lp:~matjaz-6/openerpsl/openerpsl_04_29 into lp:openerpsl/7.0

Proposed by Matjaz Kalic
Status: Merged
Merged at revision: 396
Proposed branch: lp:~matjaz-6/openerpsl/openerpsl_04_29
Merge into: lp:openerpsl/7.0
Diff against target: 997 lines (+944/-0)
9 files modified
account_receivables_payables/__init__.py (+23/-0)
account_receivables_payables/__openerp__.py (+38/-0)
account_receivables_payables/report/__init__.py (+21/-0)
account_receivables_payables/report/rec_pay_report.py (+38/-0)
account_receivables_payables/report/rec_pay_report.rml (+274/-0)
account_receivables_payables/wizard/__init__.py (+22/-0)
account_receivables_payables/wizard/rec_pay_wizard (copy).py (+182/-0)
account_receivables_payables/wizard/rec_pay_wizard.py (+297/-0)
account_receivables_payables/wizard/rec_pay_wizard_view.xml (+49/-0)
To merge this branch: bzr merge lp:~matjaz-6/openerpsl/openerpsl_04_29
Reviewer Review Type Date Requested Status
Mentis Pending
Review via email: mp+217590@code.launchpad.net

Description of the change

[ADD] new module account_receivables_payables

To post a comment you must log in.
396. By Dušan Laznik (Mentis)

[ADD] new module account_receivables_payables

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'account_receivables_payables'
2=== added file 'account_receivables_payables/__init__.py'
3--- account_receivables_payables/__init__.py 1970-01-01 00:00:00 +0000
4+++ account_receivables_payables/__init__.py 2014-04-29 12:39:30 +0000
5@@ -0,0 +1,23 @@
6+# -*- coding: utf-8 -*-
7+##############################################################################
8+#
9+# OpenERP, Open Source Management Solution
10+# Copyright (C) 2014 Mentis d.o.o.
11+#
12+# This program is free software: you can redistribute it and/or modify
13+# it under the terms of the GNU Affero General Public License as
14+# published by the Free Software Foundation, either version 3 of the
15+# License, or (at your option) any later version.
16+#
17+# This program is distributed in the hope that it will be useful,
18+# but WITHOUT ANY WARRANTY; without even the implied warranty of
19+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20+# GNU Affero General Public License for more details.
21+#
22+# You should have received a copy of the GNU Affero General Public License
23+# along with this program. If not, see <http://www.gnu.org/licenses/>.
24+#
25+##############################################################################
26+
27+import wizard
28+import report
29
30=== added file 'account_receivables_payables/__openerp__.py'
31--- account_receivables_payables/__openerp__.py 1970-01-01 00:00:00 +0000
32+++ account_receivables_payables/__openerp__.py 2014-04-29 12:39:30 +0000
33@@ -0,0 +1,38 @@
34+# -*- coding: utf-8 -*-
35+##############################################################################
36+#
37+# OpenERP, Open Source Management Solution
38+# Copyright (C) 2014 Mentis d.o.o. (<http://www.mentis.si>)
39+#
40+# This program is free software: you can redistribute it and/or modify
41+# it under the terms of the GNU Affero General Public License as
42+# published by the Free Software Foundation, either version 3 of the
43+# License, or (at your option) any later version.
44+#
45+# This program is distributed in the hope that it will be useful,
46+# but WITHOUT ANY WARRANTY; without even the implied warranty of
47+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
48+# GNU Affero General Public License for more details.
49+#
50+# You should have received a copy of the GNU Affero General Public License
51+# along with this program. If not, see <http://www.gnu.org/licenses/>.
52+#
53+##############################################################################
54+
55+{
56+ "name": "Receivables & Payables card of customer",
57+ "version": "1.0",
58+ "author": "Mentis d.o.o.",
59+ "category": "Accounting",
60+ "depends": ['account'],
61+ "description": """ Receivables & Payables card of customer
62+
63+ """,
64+ "init_xml": [],
65+ "update_xml": [
66+ 'wizard/rec_pay_wizard_view.xml',
67+ ],
68+ "demo_xml": [],
69+ "active": False,
70+ "installable": True,
71+}
72
73=== added directory 'account_receivables_payables/report'
74=== added file 'account_receivables_payables/report/__init__.py'
75--- account_receivables_payables/report/__init__.py 1970-01-01 00:00:00 +0000
76+++ account_receivables_payables/report/__init__.py 2014-04-29 12:39:30 +0000
77@@ -0,0 +1,21 @@
78+# -*- coding: utf-8 -*-
79+##############################################################################
80+#
81+# OpenERP, Open Source Management Solution
82+# Copyright (C) 2014 Mentis d.o.o.
83+#
84+# This program is free software: you can redistribute it and/or modify
85+# it under the terms of the GNU Affero General Public License as
86+# published by the Free Software Foundation, either version 3 of the
87+# License, or (at your option) any later version.
88+#
89+# This program is distributed in the hope that it will be useful,
90+# but WITHOUT ANY WARRANTY; without even the implied warranty of
91+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
92+# GNU Affero General Public License for more details.
93+#
94+# You should have received a copy of the GNU Affero General Public License
95+# along with this program. If not, see <http://www.gnu.org/licenses/>.
96+#
97+##############################################################################
98+import rec_pay_report
99
100=== added file 'account_receivables_payables/report/rec_pay_report (another copy_single_line).sxw'
101Binary files account_receivables_payables/report/rec_pay_report (another copy_single_line).sxw 1970-01-01 00:00:00 +0000 and account_receivables_payables/report/rec_pay_report (another copy_single_line).sxw 2014-04-29 12:39:30 +0000 differ
102=== added file 'account_receivables_payables/report/rec_pay_report (copy).sxw'
103Binary files account_receivables_payables/report/rec_pay_report (copy).sxw 1970-01-01 00:00:00 +0000 and account_receivables_payables/report/rec_pay_report (copy).sxw 2014-04-29 12:39:30 +0000 differ
104=== added file 'account_receivables_payables/report/rec_pay_report.py'
105--- account_receivables_payables/report/rec_pay_report.py 1970-01-01 00:00:00 +0000
106+++ account_receivables_payables/report/rec_pay_report.py 2014-04-29 12:39:30 +0000
107@@ -0,0 +1,38 @@
108+# -*- coding: utf-8 -*-
109+##############################################################################
110+#
111+# OpenERP, Open Source Management Solution
112+# Copyright (C) 2014 Mentis d.o.o.
113+#
114+# This program is free software: you can redistribute it and/or modify
115+# it under the terms of the GNU Affero General Public License as
116+# published by the Free Software Foundation, either version 3 of the
117+# License, or (at your option) any later version.
118+#
119+# This program is distributed in the hope that it will be useful,
120+# but WITHOUT ANY WARRANTY; without even the implied warranty of
121+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
122+# GNU Affero General Public License for more details.
123+#
124+# You should have received a copy of the GNU Affero General Public License
125+# along with this program. If not, see <http://www.gnu.org/licenses/>.
126+#
127+##############################################################################
128+
129+import time
130+from openerp.report import report_sxw
131+from openerp.osv import osv
132+from openerp import pooler
133+
134+class rec_pay(report_sxw.rml_parse):
135+ _name = 'receivable.payable.report'
136+ def __init__(self, cr, uid, name, context):
137+ super(rec_pay, self).__init__(cr, uid, name, context=context)
138+ self.localcontext.update({
139+ 'time': time,
140+ })
141+
142+
143+#
144+report_sxw.report_sxw('report.receivable.payable.report','res.partner','addons/account_receivables_payables/report/rec_pay_report.rml',parser=rec_pay)
145+
146
147=== added file 'account_receivables_payables/report/rec_pay_report.rml'
148--- account_receivables_payables/report/rec_pay_report.rml 1970-01-01 00:00:00 +0000
149+++ account_receivables_payables/report/rec_pay_report.rml 2014-04-29 12:39:30 +0000
150@@ -0,0 +1,274 @@
151+<?xml version="1.0"?>
152+<document filename="test.pdf">
153+ <template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
154+ <pageTemplate id="first">
155+ <frame id="first" x1="0.0" y1="57.0" width="538" height="728"/>
156+ </pageTemplate>
157+ </template>
158+ <stylesheet>
159+ <blockTableStyle id="Standard_Outline">
160+ <blockAlignment value="LEFT"/>
161+ <blockValign value="TOP"/>
162+ </blockTableStyle>
163+ <blockTableStyle id="Table_Address_detail">
164+ <blockAlignment value="LEFT"/>
165+ <blockValign value="TOP"/>
166+ <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/>
167+ </blockTableStyle>
168+ <blockTableStyle id="Table2">
169+ <blockAlignment value="LEFT"/>
170+ <blockValign value="TOP"/>
171+ </blockTableStyle>
172+ <blockTableStyle id="Table_picking_info">
173+ <blockAlignment value="LEFT"/>
174+ <blockValign value="TOP"/>
175+ </blockTableStyle>
176+ <blockTableStyle id="Table1">
177+ <blockAlignment value="LEFT"/>
178+ <blockValign value="TOP"/>
179+ </blockTableStyle>
180+ <blockTableStyle id="Move_Line_Contect_Assign_State">
181+ <blockAlignment value="LEFT"/>
182+ <blockValign value="TOP"/>
183+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="0,0" stop="0,-1"/>
184+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="0,0" stop="0,0"/>
185+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="0,-1" stop="0,-1"/>
186+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="1,0" stop="1,-1"/>
187+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="1,0" stop="1,0"/>
188+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="1,-1" stop="1,-1"/>
189+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="2,0" stop="2,-1"/>
190+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="2,0" stop="2,0"/>
191+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="2,-1" stop="2,-1"/>
192+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="3,0" stop="3,-1"/>
193+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="3,0" stop="3,0"/>
194+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="3,-1" stop="3,-1"/>
195+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="4,0" stop="4,-1"/>
196+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="4,0" stop="4,0"/>
197+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="4,-1" stop="4,-1"/>
198+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="5,0" stop="5,-1"/>
199+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="5,0" stop="5,0"/>
200+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="5,-1" stop="5,-1"/>
201+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="6,0" stop="6,-1"/>
202+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="6,0" stop="6,0"/>
203+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="6,-1" stop="6,-1"/>
204+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="7,0" stop="7,-1"/>
205+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="7,0" stop="7,0"/>
206+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="7,-1" stop="7,-1"/>
207+ <lineStyle kind="LINEBEFORE" colorName="#cccccc" start="8,0" stop="8,-1"/>
208+ <lineStyle kind="LINEAFTER" colorName="#cccccc" start="8,0" stop="8,-1"/>
209+ <lineStyle kind="LINEABOVE" colorName="#cccccc" start="8,0" stop="8,0"/>
210+ <lineStyle kind="LINEBELOW" colorName="#cccccc" start="8,-1" stop="8,-1"/>
211+ </blockTableStyle>
212+ <initialize>
213+ <paraStyle name="all" alignment="justify"/>
214+ </initialize>
215+ <paraStyle name="P1" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
216+ <paraStyle name="P2" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
217+ <paraStyle name="P3" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
218+ <paraStyle name="P4" fontName="Helvetica-Bold" fontSize="11.0" leading="14" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
219+ <paraStyle name="P5" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
220+ <paraStyle name="P6" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
221+ <paraStyle name="P7" fontName="Helvetica-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
222+ <paraStyle name="P8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
223+ <paraStyle name="P9" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
224+ <paraStyle name="P10" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
225+ <paraStyle name="Standard" fontName="Helvetica"/>
226+ <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
227+ <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
228+ <paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
229+ <paraStyle name="Caption" fontName="Helvetica-Oblique" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
230+ <paraStyle name="Index" fontName="Helvetica"/>
231+ <paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
232+ <paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="12.0" leading="15" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
233+ <paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
234+ <paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
235+ <paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
236+ <paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
237+ <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
238+ <paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
239+ <paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
240+ <paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
241+ <paraStyle name="Table Contents" fontName="Helvetica"/>
242+ <paraStyle name="Footer" fontName="Helvetica"/>
243+ <paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
244+ <paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
245+ <paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
246+ <paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
247+ <paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
248+ <paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
249+ <paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
250+ <paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
251+ <paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
252+ <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
253+ <paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
254+ <paraStyle name="terp_default_2" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
255+ <paraStyle name="terp_default_5cm_Above_Space" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="0.0"/>
256+ <paraStyle name="terp_default_1cm_above_space" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="3.0" spaceAfter="0.0"/>
257+ <images/>
258+ </stylesheet>
259+ <story>
260+ <para style="P3">[[ repeatIn(data['form'], 'o') ]]</para>
261+ <para style="P3">[[ setLang(o['lang']) ]]</para>
262+ <para style="P3">
263+ <font color="white"> </font>
264+ </para>
265+ <blockTable colWidths="269.0,269.0" style="Table_Address_detail">
266+ <tr>
267+ <td>
268+ <para style="P5">
269+ <font color="white"> </font>
270+ </para>
271+ </td>
272+ <td>
273+ <para style="terp_header">Kartica kupca</para>
274+ </td>
275+ </tr>
276+ </blockTable>
277+ <blockTable colWidths="264.0,273.0" style="Table2">
278+ <tr>
279+ <td>
280+ <para style="P4">
281+ <font color="white"> </font>
282+ </para>
283+ <para style="P4">[[ o['address_name'] ]]</para>
284+ <para style="P4">[[ o['address_street'] ]]</para>
285+ <para style="P4">
286+ <font color="white"> </font>
287+ </para>
288+ <para style="P4">[[ o['address_zip'] ]] [[ o['address_city'] ]]</para>
289+ </td>
290+ <td>
291+ <blockTable colWidths="101.0,167.0" style="Table_picking_info">
292+ <tr>
293+ <td>
294+ <para style="P1">Konto:</para>
295+ </td>
296+ <td>
297+ <para style="P1">[[ o['account'] ]]</para>
298+ </td>
299+ </tr>
300+ <tr>
301+ <td>
302+ <para style="P1">Obdobje:</para>
303+ </td>
304+ <td>
305+ <para style="P1">[[ o['period'] ]]</para>
306+ </td>
307+ </tr>
308+ <tr>
309+ <td>
310+ <para style="P1">
311+ <font color="white"> </font>
312+ </para>
313+ </td>
314+ <td>
315+ <para style="P1">
316+ <font color="white"> </font>
317+ </para>
318+ </td>
319+ </tr>
320+ <tr>
321+ <td>
322+ <para style="P1">Skupaj debet:</para>
323+ </td>
324+ <td>
325+ <para style="P1">[[ o['sum_debit'] ]]</para>
326+ </td>
327+ </tr>
328+ <tr>
329+ <td>
330+ <para style="P1">Skupaj kredit:</para>
331+ </td>
332+ <td>
333+ <para style="P1">[[ o['sum_credit'] ]]</para>
334+ </td>
335+ </tr>
336+ </blockTable>
337+ <para style="P6">
338+ <font color="white"> </font>
339+ </para>
340+ </td>
341+ </tr>
342+ </blockTable>
343+ <para style="terp_default_5cm_Above_Space"/>
344+ <para style="terp_default_5cm_Above_Space">
345+ <font color="white"> </font>
346+ </para>
347+ <blockTable colWidths="85.0,85.0,57.0,57.0,51.0,51.0,51.0,40.0,41.0" repeatRows="1" style="Table1">
348+ <tr>
349+ <td>
350+ <para style="P8">Račun</para>
351+ <para style="P8">
352+ <font color="white"> </font>
353+ </para>
354+ </td>
355+ <td>
356+ <para style="P8">Temeljnica</para>
357+ </td>
358+ <td>
359+ <para style="P8">Dat. dog.</para>
360+ </td>
361+ <td>
362+ <para style="P9">Dat. val.</para>
363+ </td>
364+ <td>
365+ <para style="P9">Debet</para>
366+ </td>
367+ <td>
368+ <para style="P9">Kredit</para>
369+ </td>
370+ <td>
371+ <para style="P9">Saldo</para>
372+ </td>
373+ <td>
374+ <para style="P9">Rec.</para>
375+ </td>
376+ <td>
377+ <para style="P9">Partial_rec.</para>
378+ </td>
379+ </tr>
380+ </blockTable>
381+ <section>
382+ <para style="P2">
383+ <font face="Helvetica" size="8.0">[[ repeatIn(o['moves'], 'line') ]]</font>
384+ </para>
385+ <blockTable colWidths="86.0,85.0,57.0,57.0,51.0,51.0,51.0,40.0,40.0" style="Move_Line_Contect_Assign_State">
386+ <tr>
387+ <td>
388+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['document'] ]]</para>
389+ </td>
390+ <td>
391+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['move'] ]]</para>
392+ </td>
393+ <td>
394+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['date'] ]]</para>
395+ </td>
396+ <td>
397+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['date_due'] ]]</para>
398+ </td>
399+ <td>
400+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['debit'] ]]</para>
401+ </td>
402+ <td>
403+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['credit'] ]]</para>
404+ </td>
405+ <td>
406+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['saldo'] ]]</para>
407+ </td>
408+ <td>
409+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['reconcile'] ]]</para>
410+ </td>
411+ <td>
412+ <para style="P7">[[ (line[1]['document']=='--&gt;' and setTag('para','para',{'fontName':"Helvetica"})) or removeParentNode('font') ]] [[ line[1]['reconcile_part'] ]]</para>
413+ </td>
414+ </tr>
415+ </blockTable>
416+ </section>
417+ <para style="terp_default_Bold_9">
418+ <font color="white"> </font>
419+ </para>
420+ <para style="terp_default_9">
421+ <font color="white"> </font>
422+ </para>
423+ </story>
424+</document>
425
426=== added file 'account_receivables_payables/report/rec_pay_report.sxw'
427Binary files account_receivables_payables/report/rec_pay_report.sxw 1970-01-01 00:00:00 +0000 and account_receivables_payables/report/rec_pay_report.sxw 2014-04-29 12:39:30 +0000 differ
428=== added directory 'account_receivables_payables/wizard'
429=== added file 'account_receivables_payables/wizard/__init__.py'
430--- account_receivables_payables/wizard/__init__.py 1970-01-01 00:00:00 +0000
431+++ account_receivables_payables/wizard/__init__.py 2014-04-29 12:39:30 +0000
432@@ -0,0 +1,22 @@
433+# -*- coding: utf-8 -*-
434+##############################################################################
435+#
436+# OpenERP, Open Source Management Solution
437+# Copyright (C) 2014 Mentis d.o.o.
438+#
439+# This program is free software: you can redistribute it and/or modify
440+# it under the terms of the GNU Affero General Public License as
441+# published by the Free Software Foundation, either version 3 of the
442+# License, or (at your option) any later version.
443+#
444+# This program is distributed in the hope that it will be useful,
445+# but WITHOUT ANY WARRANTY; without even the implied warranty of
446+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
447+# GNU Affero General Public License for more details.
448+#
449+# You should have received a copy of the GNU Affero General Public License
450+# along with this program. If not, see <http://www.gnu.org/licenses/>.
451+#
452+##############################################################################
453+
454+import rec_pay_wizard
455
456=== added file 'account_receivables_payables/wizard/rec_pay_wizard (copy).py'
457--- account_receivables_payables/wizard/rec_pay_wizard (copy).py 1970-01-01 00:00:00 +0000
458+++ account_receivables_payables/wizard/rec_pay_wizard (copy).py 2014-04-29 12:39:30 +0000
459@@ -0,0 +1,182 @@
460+# -*- coding: utf-8 -*-
461+##############################################################################
462+#
463+# OpenERP, Open Source Management Solution
464+# Copyright (C) 2014 Mentis d.o.o.
465+#
466+# This program is free software: you can redistribute it and/or modify
467+# it under the terms of the GNU Affero General Public License as
468+# published by the Free Software Foundation, either version 3 of the
469+# License, or (at your option) any later version.
470+#
471+# This program is distributed in the hope that it will be useful,
472+# but WITHOUT ANY WARRANTY; without even the implied warranty of
473+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
474+# GNU Affero General Public License for more details.
475+#
476+# You should have received a copy of the GNU Affero General Public License
477+# along with this program. If not, see <http://www.gnu.org/licenses/>.
478+#
479+##############################################################################
480+
481+#####
482+# Wizard trigers a report, that shows a receivable & payable card of customer
483+#####
484+
485+
486+from osv import fields, osv
487+from tools.translate import _
488+import time
489+
490+class receivable_payable_wizard(osv.osv_memory):
491+ _name = "receivable.payable.wizard"
492+ _description = "Receivable Payable Wizard"
493+
494+ def _get_fiscalyear(self, cr, uid, context=None):
495+ """Return default Fiscalyear value"""
496+ return self.pool.get('account.fiscalyear').find(cr, uid, context=context)
497+
498+ _columns = {
499+ 'account': fields.selection([('payable','Payable'),
500+ ('receivable','Receivable'),
501+ ('payable,receivable','Payable & Receivable'),], 'Account', required=True),
502+ 'fiscalyear': fields.many2one('account.fiscalyear', \
503+ 'Fiscal year', \
504+ help='Keep empty for all open fiscal years'),
505+ 'period_from': fields.many2one('account.period', 'Start period'),
506+ 'period_to': fields.many2one('account.period', 'End period'),
507+ }
508+ _defaults = {
509+ 'fiscalyear': _get_fiscalyear,
510+ }
511+
512+ def onchange_fiscalyear(self, cr, uid, ids, fiscalyear_id=False, context=None):
513+ res = {}
514+ if fiscalyear_id:
515+ start_period = end_period = False
516+ cr.execute('''
517+ SELECT * FROM (SELECT p.id
518+ FROM account_period p
519+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
520+ WHERE f.id = %s
521+ ORDER BY p.date_start ASC
522+ LIMIT 1) AS period_start
523+ UNION ALL
524+ SELECT * FROM (SELECT p.id
525+ FROM account_period p
526+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
527+ WHERE f.id = %s
528+ AND p.date_start < NOW()
529+ ORDER BY p.date_stop DESC
530+ LIMIT 1) AS period_stop''', (fiscalyear_id, fiscalyear_id))
531+ periods = [i[0] for i in cr.fetchall()]
532+ if periods and len(periods) > 1:
533+ start_period = periods[0]
534+ end_period = periods[1]
535+ res['value'] = {'period_from': start_period, 'period_to': end_period}
536+ else:
537+ res['value'] = {'period_from': False, 'period_to': False}
538+ return res
539+
540+ def execute(self, cr, uid, ids, context=None):
541+ if context is None:
542+ context = {}
543+
544+ #copy_num = self.browse(cr,uid,ids)[0].copy_num
545+ active_ids = context.get('active_ids',[])
546+ data = self.read(cr, uid, ids, [], context=context)[0]
547+ account = data.get('account', False) and data['account'] or False
548+ period_from = data.get('period_from', False) and data['period_from'][0] or False
549+ period_from_desc = data.get('period_from', False) and data['period_from'][1] or False
550+ period_to = data.get('period_to', False) and data['period_to'][0] or False
551+ period_to_desc = data.get('period_to', False) and data['period_to'][1] or False
552+ period_ids = self.pool.get('account.period').build_ctx_periods(cr, uid, period_from, period_to)
553+
554+
555+
556+ partner_obj = self.pool.get('res.partner')
557+ invoice_obj = self.pool.get('account.invoice')
558+ list_data = []
559+ i = 1
560+
561+ for partner in partner_obj.browse(cr, uid, active_ids):
562+ dict_moves = {}
563+
564+ invoice_ids = invoice_obj.search(cr, uid, [
565+ ('partner_id','=',partner.id),
566+ ('period_id','in',period_ids),
567+ ('account_id.type','in',[account]),
568+ ], order='number desc')
569+ for inv_line in invoice_obj.browse(cr, uid, invoice_ids): #za vsak strankin racun preverimo placila
570+
571+# if inv_line.move_id.id in dict_moves: #dokument je ze zapisan/uporabljen v temeljnici
572+# continue
573+
574+ dict_temp = {}
575+ dict_temp['invoice'] = inv_line.number
576+ dict_temp['move'] = ''
577+ dict_temp['date'] = inv_line.date_invoice
578+ dict_temp['date_due'] = inv_line.date_due
579+ dict_temp['debit'] = inv_line.amount_total
580+ dict_temp['credit'] = ''
581+ dict_temp['saldo'] = ''
582+ dict_temp['sort'] = i
583+ #dict_moves[i] = dict_temp
584+ dict_moves[inv_line.move_id.id] = dict_temp
585+ i = i+1
586+
587+ temp_ids = invoice_obj._compute_lines(cr, uid, [inv_line.id], None, None) #placila za dano fakturo
588+ payment_ids = temp_ids.values()[0]
589+
590+ #omejitev po periodi
591+ payment_ids = self.pool.get('account.move.line').search(cr, uid, [
592+ ('id','in',payment_ids),
593+ ('period_id','in',period_ids)])
594+
595+ j = len(payment_ids)
596+ for account_line in self.pool.get('account.move.line').browse(cr, uid, payment_ids):
597+ dict_temp = {}
598+ dict_temp['invoice'] = '-->'
599+ dict_temp['move'] = account_line.move_id.name
600+ dict_temp['date'] = account_line.date
601+ dict_temp['date_due'] = account_line.date
602+ dict_temp['debit'] = ''
603+
604+ if account_line.credit > 0:
605+ dict_temp['credit'] = account_line.credit
606+ else:
607+ dict_temp['credit'] = account_line.debit
608+
609+ if j == 1:
610+ if account_line.amount_to_pay == 0:
611+ dict_temp['saldo'] = '0'
612+ else:
613+ dict_temp['saldo'] = abs(account_line.amount_to_pay)
614+ else:
615+ dict_temp['saldo'] = ''
616+
617+ dict_temp['sort'] = i
618+ #dict_moves[i] = dict_temp
619+ dict_moves[account_line.move_id.id] = dict_temp
620+ i = i+1
621+ j = j-1
622+
623+ sorted_list = sorted(dict_moves.iteritems(), key=lambda (x, y): y['sort'])
624+
625+ dict_data = {}
626+ dict_data['moves'] = sorted_list
627+ dict_data['address_name'] = partner.name
628+ dict_data['address_street'] = partner.street
629+ dict_data['address_zip'] = partner.zip
630+ dict_data['address_city'] = partner.city
631+ dict_data['lang'] = partner.lang
632+ dict_data['account'] = account
633+ dict_data['period'] = period_from_desc + ' - ' + period_to_desc
634+
635+ list_data.append(dict_data)
636+
637+ data = {'form':list_data}
638+ return {'type': 'ir.actions.report.xml', 'report_name': 'receivable.payable.report', 'datas': data}
639+
640+receivable_payable_wizard()
641+
642
643=== added file 'account_receivables_payables/wizard/rec_pay_wizard.py'
644--- account_receivables_payables/wizard/rec_pay_wizard.py 1970-01-01 00:00:00 +0000
645+++ account_receivables_payables/wizard/rec_pay_wizard.py 2014-04-29 12:39:30 +0000
646@@ -0,0 +1,297 @@
647+# -*- coding: utf-8 -*-
648+##############################################################################
649+#
650+# OpenERP, Open Source Management Solution
651+# Copyright (C) 2014 Mentis d.o.o.
652+#
653+# This program is free software: you can redistribute it and/or modify
654+# it under the terms of the GNU Affero General Public License as
655+# published by the Free Software Foundation, either version 3 of the
656+# License, or (at your option) any later version.
657+#
658+# This program is distributed in the hope that it will be useful,
659+# but WITHOUT ANY WARRANTY; without even the implied warranty of
660+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
661+# GNU Affero General Public License for more details.
662+#
663+# You should have received a copy of the GNU Affero General Public License
664+# along with this program. If not, see <http://www.gnu.org/licenses/>.
665+#
666+##############################################################################
667+
668+#####
669+# Wizard trigers a report, that shows a receivable & payable card of customer
670+#####
671+
672+
673+from osv import fields, osv
674+from tools.translate import _
675+import time
676+
677+class receivable_payable_wizard(osv.osv_memory):
678+ _name = "receivable.payable.wizard"
679+ _description = "Receivable Payable Wizard"
680+
681+ def _get_fiscalyear(self, cr, uid, context=None):
682+ """Return default Fiscalyear value"""
683+ return self.pool.get('account.fiscalyear').find(cr, uid, context=context)
684+
685+ _columns = {
686+ 'account': fields.selection([('payable','Payable'),
687+ ('receivable','Receivable')], 'Account', required=True),
688+ 'reconcile': fields.selection([('full','Reconciled'),
689+ ('partial','Partial')], 'Reconcile'),
690+ 'filter': fields.selection([('filter_date', 'Date'), ('filter_period', 'Periods')], "Filter date by"),
691+ 'fiscalyear_id': fields.many2one('account.fiscalyear', \
692+ 'Fiscal year', \
693+ help='Keep empty for all open fiscal years'),
694+ 'period_from': fields.many2one('account.period', 'Start period'),
695+ 'period_to': fields.many2one('account.period', 'End period'),
696+ 'date_from': fields.date("Start Date"),
697+ 'date_to': fields.date("End Date"),
698+ 'sort': fields.selection([('name','Name'),
699+ ('date','Date')], 'Sort'),
700+ }
701+ _defaults = {
702+ 'account': 'receivable',
703+ 'fiscalyear_id': _get_fiscalyear,
704+ }
705+
706+ def onchange_fiscalyear(self, cr, uid, ids, fiscalyear_id=False, context=None):
707+ res = {}
708+ if fiscalyear_id:
709+ start_period = end_period = False
710+ cr.execute('''
711+ SELECT * FROM (SELECT p.id
712+ FROM account_period p
713+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
714+ WHERE f.id = %s
715+ ORDER BY p.date_start ASC
716+ LIMIT 1) AS period_start
717+ UNION ALL
718+ SELECT * FROM (SELECT p.id
719+ FROM account_period p
720+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
721+ WHERE f.id = %s
722+ AND p.date_start < NOW()
723+ ORDER BY p.date_stop DESC
724+ LIMIT 1) AS period_stop''', (fiscalyear_id, fiscalyear_id))
725+ periods = [i[0] for i in cr.fetchall()]
726+ if periods and len(periods) > 1:
727+ start_period = periods[0]
728+ end_period = periods[1]
729+ res['value'] = {'period_from': start_period, 'period_to': end_period}
730+ else:
731+ res['value'] = {'period_from': False, 'period_to': False}
732+ return res
733+
734+ def onchange_filter(self, cr, uid, ids, filter='filter_no', fiscalyear_id=False, context=None):
735+ res = {'value': {}}
736+ if not filter:
737+ res['value'] = {'period_from': False, 'period_to': False, 'date_from': False ,'date_to': False}
738+ if filter == 'filter_date':
739+ res['value'] = {'reconcile': False, 'period_from': False, 'period_to': False, 'date_from': time.strftime('%Y-01-01'), 'date_to': time.strftime('%Y-%m-%d')}
740+ if filter == 'filter_period' and fiscalyear_id:
741+ start_period = end_period = False
742+ cr.execute('''
743+ SELECT * FROM (SELECT p.id
744+ FROM account_period p
745+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
746+ WHERE f.id = %s
747+ AND p.special = false
748+ ORDER BY p.date_start ASC, p.special ASC
749+ LIMIT 1) AS period_start
750+ UNION ALL
751+ SELECT * FROM (SELECT p.id
752+ FROM account_period p
753+ LEFT JOIN account_fiscalyear f ON (p.fiscalyear_id = f.id)
754+ WHERE f.id = %s
755+ AND p.date_start < NOW()
756+ AND p.special = false
757+ ORDER BY p.date_stop DESC
758+ LIMIT 1) AS period_stop''', (fiscalyear_id, fiscalyear_id))
759+ periods = [i[0] for i in cr.fetchall()]
760+ if periods and len(periods) > 1:
761+ start_period = periods[0]
762+ end_period = periods[1]
763+ res['value'] = {'reconcile': False, 'period_from': start_period, 'period_to': end_period, 'date_from': False, 'date_to': False}
764+ return res
765+
766+ def execute(self, cr, uid, ids, context=None):
767+ if context is None:
768+ context = {}
769+
770+ active_ids = context.get('active_ids',[])
771+ data = self.read(cr, uid, ids, [], context=context)[0]
772+ db_account = data.get('account', False) and data['account'] or False
773+ if db_account == 'payable':
774+ db_debcred = 'credit'
775+ else:
776+ db_debcred = 'debit'
777+
778+ reconcile = data.get('reconcile', False) and data['reconcile'] or False
779+ if reconcile == 'full':
780+ db_reconcile = 'reconcile_id'
781+ elif reconcile == 'partial':
782+ db_reconcile = 'reconcile_partial_id'
783+ else:
784+ db_reconcile = 'AML.id'
785+
786+ period_from = data.get('period_from', False) and data['period_from'][0] or False
787+ period_from_desc = data.get('period_from', False) and data['period_from'][1] or False
788+ period_to = data.get('period_to', False) and data['period_to'][0] or False
789+ period_to_desc = data.get('period_to', False) and data['period_to'][1] or False
790+ period_ids = self.pool.get('account.period').build_ctx_periods(cr, uid, period_from, period_to)
791+
792+ db_sort = data.get('sort', False) and data['sort'] or False
793+ if not db_sort:
794+ db_sort = 'AML.id'
795+
796+ #Date Filter
797+ db_filter = data.get('filter', False) and data['filter'] or False
798+ if not db_filter:
799+ db_date_period = ''
800+ elif db_filter == 'filter_date':
801+ db_date_from = data.get('date_from', False) and data['date_from'] or False
802+ db_date_to = data.get('date_to', False) and data['date_to'] or False
803+ db_date_period = 'AND AML.date >= \'{0}\' AND AML.date <= \'{1}\''.format(db_date_from, db_date_to)
804+ elif db_filter == 'filter_period':
805+ period_str = ','.join(str(x) for x in period_ids)
806+ db_date_period = 'AND AML.period_id in ({0})'.format(period_str)
807+
808+
809+ partner_obj = self.pool.get('res.partner')
810+ acc_move_line_obj = self.pool.get('account.move.line')
811+ list_data = []
812+ i = 1
813+
814+ for partner in partner_obj.browse(cr, uid, active_ids):
815+ dict_moves = {}
816+
817+ query_string = """SELECT
818+ AML.id,
819+ AML.date,
820+ CASE
821+ WHEN AM.name LIKE \'OTV-%\'
822+ THEN AML.name
823+ ELSE AM.name
824+ end as name
825+ FROM account_move_line AML
826+ LEFT JOIN account_move AM on AML.move_id = AM.id
827+ LEFT JOIN account_account AA on AML.account_id = AA.id
828+ WHERE
829+ AML.partner_id = {0}
830+ AND AA.type in (\'{1}\')
831+ AND {2} > 0
832+ AND {3} is not null
833+ {4}
834+ ORDER BY {5}""".format(partner.id, db_account, db_debcred, db_reconcile, db_date_period, db_sort)
835+
836+ cr.execute(query_string)
837+ res_ids = [(r[0]) for r in cr.fetchall()]
838+
839+# acc_move_line_ids = acc_move_line_obj.search(cr, uid, [
840+# ('partner_id','=',partner.id), X
841+# ('period_id','in',period_ids),
842+# ('account_id.type','in',[account]), X
843+# (db_debcred, '>',0), X
844+# (db_reconcile, '!=', None) X
845+# ], order=db_sort) X
846+
847+ sum_debit = 0
848+ sum_credit = 0
849+ for move_line in acc_move_line_obj.browse(cr, uid, res_ids): #za vsak strankin racun preverimo placila
850+
851+ dict_temp = {}
852+ if move_line.move_id.name[:3] == "OTV":
853+ dict_temp['document'] = move_line.name
854+ else:
855+ dict_temp['document'] = move_line.move_id.name
856+ dict_temp['move'] = ''
857+ dict_temp['date'] = move_line.date
858+ dict_temp['date_due'] = move_line.date_maturity
859+ dict_temp['debit'] = move_line.debit
860+ sum_debit = sum_debit + move_line.debit
861+ dict_temp['credit'] = move_line.credit
862+ dict_temp['saldo'] = ''
863+ dict_temp['reconcile'] = move_line.reconcile_id.id
864+ dict_temp['reconcile_part'] = move_line.reconcile_partial_id.id
865+ dict_temp['sort'] = i
866+ dict_moves[i] = dict_temp
867+ #dict_moves[move_line.id] = dict_temp
868+ i = i+1
869+
870+ if not move_line.reconcile_id.id and not move_line.reconcile_partial_id.id:
871+ continue
872+
873+
874+ #-----------------------------Poiscemo placila, ki ustrezajo izbranim dokumetom-------------------
875+ query_lst = [('reconcile_id','=',move_line.reconcile_id.id),
876+ ('reconcile_partial_id','=',move_line.reconcile_partial_id.id),
877+ ('id','!=',move_line.id)]
878+ if db_filter == 'filter_date':
879+ query_lst.append(('date','>',db_date_from))
880+ query_lst.append(('date','<',db_date_to))
881+ elif db_filter == 'filter_period':
882+ query_lst.append(('period_id','in',period_ids))
883+ payment_ids = self.pool.get('account.move.line').search(cr, uid, query_lst)
884+
885+ j = len(payment_ids)
886+ sub_sum_credit = 0
887+ for account_line in self.pool.get('account.move.line').browse(cr, uid, payment_ids):
888+ dict_temp = {}
889+ dict_temp['document'] = '-->'
890+ dict_temp['move'] = account_line.move_id.name
891+ dict_temp['date'] = account_line.date
892+ dict_temp['date_due'] = account_line.date
893+ dict_temp['debit'] = ''
894+
895+ if account_line.credit > 0:
896+ dict_temp['credit'] = account_line.credit
897+ sum_credit = sum_credit + account_line.credit
898+ sub_sum_credit = sub_sum_credit + account_line.credit
899+ else:
900+ dict_temp['credit'] = account_line.debit
901+ sum_credit = sum_credit + account_line.debit
902+ sub_sum_credit = sub_sum_credit + account_line.debit
903+
904+ if j == 1:
905+ dict_temp['saldo'] = str(round(move_line.debit - sub_sum_credit,2))
906+ else:
907+ dict_temp['saldo'] = ''
908+
909+ dict_temp['reconcile'] = account_line.reconcile_id.id
910+ dict_temp['reconcile_part'] = account_line.reconcile_partial_id.id
911+ dict_temp['sort'] = i
912+ dict_moves[i] = dict_temp
913+ #dict_moves[account_line.move_id.id] = dict_temp
914+ i = i+1
915+ j = j-1
916+
917+
918+ sorted_list = sorted(dict_moves.iteritems(), key=lambda (x, y): y['sort'])
919+
920+ dict_data = {}
921+ dict_data['moves'] = sorted_list
922+ dict_data['address_name'] = partner.name
923+ dict_data['address_street'] = partner.street
924+ dict_data['address_zip'] = partner.zip
925+ dict_data['address_city'] = partner.city
926+ dict_data['lang'] = partner.lang
927+ dict_data['account'] = db_account
928+ if not db_filter:
929+ dict_data['period'] = ''
930+ elif db_filter == 'filter_date':
931+ dict_data['period'] = db_date_from + ' - ' + db_date_to
932+ elif db_filter == 'filter_period':
933+ dict_data['period'] = period_from_desc + ' - ' + period_to_desc
934+ dict_data['sum_debit'] = sum_debit
935+ dict_data['sum_credit'] = sum_credit
936+
937+ list_data.append(dict_data)
938+
939+ data = {'form':list_data}
940+ return {'type': 'ir.actions.report.xml', 'report_name': 'receivable.payable.report', 'datas': data}
941+
942+receivable_payable_wizard()
943+
944
945=== added file 'account_receivables_payables/wizard/rec_pay_wizard_view.xml'
946--- account_receivables_payables/wizard/rec_pay_wizard_view.xml 1970-01-01 00:00:00 +0000
947+++ account_receivables_payables/wizard/rec_pay_wizard_view.xml 2014-04-29 12:39:30 +0000
948@@ -0,0 +1,49 @@
949+<?xml version="1.0" encoding="utf-8"?>
950+<openerp>
951+ <data>
952+ <record id="receivable_payable_wizard_view" model="ir.ui.view">
953+ <field name="name">Receivable Payable Card</field>
954+ <field name="model">receivable.payable.wizard</field>
955+ <field name="arch" type="xml">
956+ <form string="Receivable Payable Card - view" version="7.0">
957+ <group colspan="4">
958+ <group>
959+ <field name="account"/>
960+ <field name="reconcile" attrs="{'invisible':['|',('filter','=','filter_date'),('filter','=','filter_period')]}"/>
961+ </group>
962+ <group>
963+ <field name="filter" on_change="onchange_filter(filter, fiscalyear_id)"/>
964+ <field name="sort"/>
965+ </group>
966+ </group>
967+ <group string="Dates" attrs="{'invisible':[('filter','!=','filter_date')], 'required':[('filter', '=', 'filter_date')]}">
968+ <field name="date_from"/>
969+ <field name="date_to"/>
970+ </group>
971+ <group string="Periods" attrs="{'invisible':[('filter','!=','filter_period')], 'required':[('filter', '=', 'filter_period')]}">
972+ <field name="fiscalyear_id" on_change="onchange_fiscalyear(fiscalyear_id)" />
973+ <field name="period_from"/>
974+ <field name="period_to"/>
975+ </group>
976+
977+ <footer>
978+ <button name="execute" string="Natisni" type="object" class="oe_highlight"/>
979+ or
980+ <button special="cancel" string="Prekliči" class="oe_link"/>
981+ </footer>
982+ </form>
983+ </field>
984+ </record>
985+
986+ <act_window name="Pay Rec"
987+ res_model="receivable.payable.wizard"
988+ src_model="res.partner"
989+ view_mode="form"
990+ target="new"
991+ key2="client_action_multi"
992+ id="action_receivable_payable"/>
993+ <!--
994+ <menuitem action="action_sale_orders_journal" id="menu_sale_orders_journal" parent="base.menu_sales" sequence="10"/>
995+ -->
996+ </data>
997+</openerp>

Subscribers

People subscribed via source and target branches