Rifakat (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-addons/6.0-opw-18001-rha into 
lp:openobject-addons/6.0.

Requested reviews:
  nel (nel-tinyerp)
Related bugs:
  Bug #604661 in OpenERP Addons: "Payment Order Cancelation"
  https://bugs.launchpad.net/openobject-addons/+bug/604661

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-18001-rha/+merge/86002

Hello,

Added cancel button on done state of payment order.

Kindly review it.

Regards,
Rifakat
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/6.0-opw-18001-rha/+merge/86002
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-addons/6.0-opw-18001-rha.
=== modified file 'account_payment/account_payment.py'
--- account_payment/account_payment.py	2011-12-14 12:19:22 +0000
+++ account_payment/account_payment.py	2011-12-16 07:15:35 +0000
@@ -23,6 +23,7 @@
 
 from osv import osv, fields
 import netsvc
+from tools.translate import _
 
 class payment_mode(osv.osv):
     _name= 'payment.mode'
@@ -108,6 +109,7 @@
         self.write(cr, uid, ids, {'state': 'draft'})
         wf_service = netsvc.LocalService("workflow")
         for id in ids:
+            wf_service.trg_delete(uid, 'payment.order', id, cr)
             wf_service.trg_create(uid, 'payment.order', id, cr)
         return True
 
@@ -119,6 +121,16 @@
                 reference = ir_seq_obj.get(cr, uid, 'payment.order')
                 self.write(cr, uid, order['id'], {'reference':reference})
         return True
+    
+    def action_cancel(self, cr, uid, ids, *args):
+        for order in self.browse(cr, uid, ids):
+            for line in order.line_ids:
+                if line.bank_statement_line_id:
+                    raise osv.except_osv(_('Warning !'),
+                    _('Payment order line "%s" is already imported in Bank statement "%s".')\
+                    %(line.name, line.bank_statement_line_id.statement_id.name,))
+        self.write(cr, uid, ids, {'state': 'cancel'})
+        return True
 
     def set_done(self, cr, uid, ids, *args):
         wf_service = netsvc.LocalService("workflow")

=== modified file 'account_payment/account_payment_view.xml'
--- account_payment/account_payment_view.xml	2011-12-15 13:31:38 +0000
+++ account_payment/account_payment_view.xml	2011-12-16 07:15:35 +0000
@@ -160,7 +160,7 @@
                     <field name="date_done"/>
                     <field name="state" readonly="1" select="1"/>
                     <group col="4" colspan="2">
-                         <button name="cancel" states="draft,open" string="Cancel" icon="gtk-cancel"/>
+                         <button name="cancel" states="draft,open,done" string="Cancel" icon="gtk-cancel"/>
                          <button name="open" states="draft" string="Confirm Payments"  icon="gtk-apply"/>
                          <button name="set_done" states="open" string="Make Payments" type="object" icon="gtk-execute"/>
                          <button name="set_to_draft" states="cancel" string="Set to draft" type="object" icon="gtk-convert"/>

=== modified file 'account_payment/account_payment_workflow.xml'
--- account_payment/account_payment_workflow.xml	2011-12-14 12:19:22 +0000
+++ account_payment/account_payment_workflow.xml	2011-12-16 07:15:35 +0000
@@ -26,12 +26,11 @@
             <field name="wkf_id" ref="wkf_payment_order"/>
             <field name="action">write({'state':'done'})</field>
             <field name="kind">function</field>
-            <field name="flow_stop">True</field>
         </record>
         <record id="act_cancel" model="workflow.activity">
             <field name="name">cancel</field>
             <field name="wkf_id" ref="wkf_payment_order"/>
-            <field name="action">write({'state':'cancel'})</field>
+            <field name="action">action_cancel()</field>
             <field name="kind">function</field>
             <field name="flow_stop">True</field>
         </record>
@@ -58,6 +57,11 @@
             <field name="act_to" ref="act_cancel"/>
             <field name="signal">cancel</field>
         </record>
+        <record id="trans_done_cancel" model="workflow.transition">
+            <field name="act_from" ref="act_done"/>
+            <field name="act_to" ref="act_cancel"/>
+            <field name="signal">cancel</field>
+        </record>
 
     </data>
 </openerp>

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to