2017-10-13 18 views
2

Je crée un module bancaire, où les clients peuvent acheter des prêts auprès de la banque. Dans ce que je veux imprimer une déclaration de rapport. Avant d'imprimer les enregistrements d'un client particulier, je veux filtrer les dates. Je veux filtrer en donnant De date à date. Ainsi, le montant du prêt où le client a acheté à la banque dans les dates données devrait imprimer.Comment puis-je ajouter De date à date pour imprimer un ensemble d'enregistrements dans le rapport dans odoo 10?

Merci,

espoir j'acquérir des connaissances.

+0

vous demandant qui xls ou un rapport pdf? – KLN

+1

je pense que vous demandez à ce type de méthode [https://i.imgur.com/wrpNsN7.png] – KLN

+0

rapport pdf, et oui, je le veux comme dans cette image @KLN – Naveen

Répondre

1

ci-dessous pour le code assistant

class BankCustomer(models.TransientModel): 
    _name = 'bank.customer' 
    _description = 'Bank Customer Report' 


    date_from = fields.Date(string='From date', required=True,default=lambda *a: time.strftime('%Y-%m-01')) 
    date_to = fields.Date(string='To date', required=True,default=lambda *a: str(datetime.now() + relativedelta.relativedelta(months=+1, day=1, days=-1))[:10]) 


@api.multi 
def pdf_bank_customer_report(self): 
    data = self.read()[0] 
    datas = { 
     'ids': [], 
     'model': 'bank.customer', 
     'form': data 
    } 
    return self.env['report'].with_context(landscape=True).get_action(self, 'module_name.template_name', data=datas)  




class BankCustomerReport(models.AbstractModel): 
    _name = 'report.module_name.template_name 



def get(self): 
    self.env.cr.execute(""" you query """+ datas['date_from'],datas['date_to'])) 

    line_list = [i for i in self.env.cr.dictfetchall()] 
    finallist = [] 

    import datetime 
    for fin in line_list: 
     #sale_date = datetime.datetime.strptime(fin['date'], '%Y-%m-%d').strftime('%d-%m-%y') 
     finallist.append({ 
      'date': fin['date'], 
'here gat you requirened field from query' 
     }) 
     finally pass thislist to report template 

    return finallist 

@api.model 
def render_html(self, docids, data=None): 
    Report = self.env['report'] 
    sale_report = Report._get_report_from_name('module_name.report_template_name') 
    context = dict(self._context or {}) 
    active_ids = context.get('active_ids', []) 
    register = self.env['bank.customer'].browse(active_ids) 
    docargs = { 
     'doc_ids': self.ids, 
     'doc_model': sale_report.model, 
     'docs': register, 
     'details':self.get_det, 

    } 
    return Report.render('module_name.report_template_name', docargs) 
+0

Merci ...... – Naveen