Skip to Content
Menu
This question has been flagged
2415 Views

I have a problem for days and I can not solve, it turns out that I want to make a ledger so I want to tell me the accounts that I have in my system and that in them separate the debit and credit where these fields are already specified as attributes but that before having a date filter so that according to the range of dates that one puts the movements are shown. It is because of the above that I have the following code and method that I have tried to perform but the data does not appear in the report. Another problem I have is that because the dates are placed in the detail_movement table as I explain below and not in the table it counts how to call that attribute so that it is shown in the method that I perform more at the end. Then I leave a link on an image of the expected result: \https://ibb.co/WkwXKq9

 class detail_document. Here is the date on which the account was moved.  

class Document_Detail (models.Model):    

_name = 'project_rc.detalle_documento'   

 date = fields.Date (string = "Date", default = lambda self: date.today (), required = True)    

account_id = fields.Many2one (asdel_name = 'project_rc.account', string = 'Account') account table. In this is the name of the accounts and a computed attribute which adds all the debts and credits. 

 class Account (models.Model):    

_name = 'project_rc.account'   

title = fields.Char (string = "Name")   t

otal_account_debe = fields.Float (string = "Total account must", compute = "_ total_deccount_deb")    

total_cuenta_haber = fields.Float (string = "Total account have", compute = "_ total_cuenta_haber")

 document_document_ids = fields.One2many (as del_name = 'project_rc.detail_document', inverse_name = 'account_id', string = 'Document detail',       required = True) 

Now start the py to be able to make the report: 

 class Book (models.TransientModel): 

 _name = 'project_rc.book' start_date = fields.Date (string = "Start date", required = True) 

 end_date = fields.Date (string = "End date", required = True) 

 @api.multi 

 def get_report (self):      

data = {

      'ids': self.ids,          

      'model': self._name,

      'form': { 'date_start': self.date_start, 'date_end': self.date_term, 

 }, 

 } 

 return self.env.ref ('project_rc.report_ledger'). report_action (self, data = data)

class Reportledger (models.AbstractModel): 

 _name = 'reports.proyecto_rc.ledger_view' 

 

@api.model
     def _get_report_values ​​(self, docids, data = None):
         start_date = data ['form'] ['start_date']
         end_date = data ['form'] ['end_date']
        

        docs = []
         accounts = self.env ['project_rc.detalle_documento']. search ([
             'date', '> =', start_date.strftime (DATETIME_FORMAT),
             'date', '<=', end_date.strftime (DATETIME_FORMAT)
         ])
         for title in accounts:
             items = self.env ['project_rc.account']. search ([
                         ('title', '=', account.id),                         
                         ('debit', '=', account.total_credit_count),                         
                         ('credit', '=', account.total_custom_count),             
                           ])              
                       docs.append ({                 
                      'title': detail_document.account.title,
                       'date': detail_document.date,
                     'debit': detail_document.account_id.total_account_debit,
                    'credit': detail_document.account_id.total_account_credit,             
                  })          
               return {
               'doc_ids': data ['ids'],
               'doc_model': data ['model'],
                'start_date': start_date,
                'end_date': end_date,
                 'docs': docs,
                 }
Avatar
Discard
Related Posts Replies Views Activity
0
Dec 19
1702
2
Nov 22
4363
1
Jun 22
6763
1
Sep 21
2040
0
Aug 21
95