@@ -41,7 +41,7 @@ def _compute_vat_discriminated(self):
4141
4242 @api .depends ('company_id' )
4343 def _compute_sale_checkbook (self ):
44- for rec in self :
44+ for rec in self . filtered ( lambda x : not x . sale_checkbook_id ) :
4545 if self .env .user .has_group ('l10n_ar_sale.use_sale_checkbook' ) and rec .company_id :
4646 rec .sale_checkbook_id = rec ._get_sale_checkbook ()
4747 else :
@@ -57,14 +57,18 @@ def _get_sale_checkbook(self):
5757
5858 @api .model_create_multi
5959 def create (self , vals ):
60+ """"
61+ En caso de la creacion de una OV totalmente nueva consumimos el numero de la secuencia
62+ """
6063 for val in vals :
6164 if self .env .user .has_group ('l10n_ar_sale.use_sale_checkbook' ) and \
62- val .get ('name' , _ ('New' )) == _ ('New' ) and \
63- val .get ('sale_checkbook_id' ):
64- sale_checkbook = self .env ['sale.checkbook' ].browse (
65- val .get ('sale_checkbook_id' ))
66- val ['name' ] = sale_checkbook .sequence_id and \
67- sale_checkbook .sequence_id ._next () or _ ('New' )
65+ val .get ('sale_checkbook_id' ):
66+ sale_checkbook = self .env ['sale.checkbook' ].browse (val .get ('sale_checkbook_id' ))
67+ if val .get ('name' , _ ('New' )) == _ ('New' ):
68+ val ['name' ] = sale_checkbook .sequence_id ._next ()
69+ else :
70+ number_next = sale_checkbook .sequence_id .number_next_actual
71+ val ['name' ] = sale_checkbook .sequence_id .get_next_char (number_next )
6872 return super (SaleOrder , self ).create (vals )
6973
7074 def _compute_tax_totals (self ):
0 commit comments