Generate Context for Contract code # Aliases self = record partner = self.partner_id # res.partner partner_bank = partner.bank_ids[0] # res.partner.bank seller = self.company_id seller_bank = seller.bank_ids[0] months = ["", "января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря", ] date = self.get_date_context() # ctx keys must be declared in this xml ctx = { "contract_number": self.name, "dd": date.get('dd'), "mm": date.get('mm'), "MM": date.get('MM'), "yy": date.get('yy'), "yyyy": date.get('yyyy'), "seller_name": seller.name, "seller_company_form": seller.company_form, "seller_representer_name": seller.representative_id.name, "seller_representer_name_parent": seller.representative_id.name_parent_case, "seller_representer_name_initials": seller.representative_id.name_initials_case, "seller_representer_document_parent": seller.representative_id.representative_document, "seller_inn": seller.vat, "seller_kpp": seller.iec, "seller_ogrn": seller.psrn, "seller_business_address": seller.full_address, "seller_phone": seller.phone, "seller_email": seller.email, "partner_name": partner.name, "partner_inn": partner.vat, "partner_business_address": partner.full_address, "partner_phone": partner.phone, "partner_email": partner.email, } if partner_bank: ctx.update({ "partner_rs": partner_bank.acc_number, "partner_ks": partner_bank.bank_id.corr_account, "partner_bic": partner_bank.bank_id.bic, }) if seller_bank: ctx.update({ "seller_rs": seller_bank.acc_number, "seller_ks": seller_bank.bank_id.corr_account, "seller_bic": seller_bank.bank_id.bic, }) # Person if not partner.is_company: ctx.update({ "partner_name_initials": partner.name_initials_case, # TODO: remove 'case' "partner_passport_number": partner.passport_number, "partner_passport_date": partner.passport_date, "partner_passport_department": partner.passport_department, }) else: # Company ctx.update({ "partner_company_form": partner.company_form, "partner_representer_name": partner.representative_id.name, "partner_representer_name_parent": partner.representative_id.name_parent_case, "partner_representer_name_initials": partner.representative_id.name_initials_case, "partner_representer_document_parent": partner.representative_id.representative_document, }) if partner.company_form == 'sp': # Sole Proprietor ctx.update({ "partner_ip_number": partner.sp_register_number, "partner_ip_date": partner.sp_register_date, "partner_ogrnip": partner.psrn_sp, }) if partner.company_form == 'plc': # Private Limited Company ctx.update({ "partner_kpp": partner.iec, "partner_ogrn": partner.psrn, }) action = ctx Generate Context for Contract code # Aliases self = record order = self.order_id seller = self.contract_id.company_id partner = self.contract_id.partner_id # Functions modf = self.modf # ctx keys must be decalared in this xml ctx = { "contract_number": self.contract_id.name, "amount_whole": 0, "amount_fractional": 0, "payment_term": False, "delivery_time": False, "seller_company_name": seller.name, "seller_representer_name": seller.representative_id.name, "seller_representer_function": seller.representative_id.function, "partner_company_name": partner.name, "partner_representer_name": partner.representative_id.name, "partner_representer_function": partner.representative_id.function, } if order: amount = modf(order.amount_total) fractional, whole = amount payment_term = order.payment_term_id.name payment_term = payment_term and payment_term.lower() delivery_time = order.delivery_time ctx.update({ "amount_whole": whole, "amount_fractional": fractional, "payment_term": payment_term, "delivery_time": delivery_time, }) action = ctx Contract Number contract_number Day dd Month mm Month Word MM Year Short yy Year Full yyyy Amount Whole Part amount_whole Amount Fractional Part amount_fractional Delivery Time delivery_time Payment Term payment_term Seller Name seller_name Seller Institutional-Legal Form seller_company_form Seller Business Address seller_business_address Seller Representer Name seller_representer_name Seller Representer Parent Name seller_representer_name_parent Seller Representer Initials Name seller_representer_name_initials Seller Representer Document Parent seller_representer_document_parent Seller Representer Function seller_representer_function Seller Representer Function Parent Case seller_representer_function_parent Seller Representer Passport Number seller_representer_passport_number Seller Representer Passport Date seller_representer_passport_date Seller Representer Passport Department seller_representer_passport_department Seller IP Number seller_ip_number Seller IP Date seller_ip_date Seller INN seller_inn Seller KPP seller_kpp Seller BIC seller_bic Seller PSRN seller_ogrn Seller Bank Name seller_bank Seller Bank Account seller_bank_account Seller Phone seller_phone Seller Email seller_email Partner Name partner_name Partner Institutional-Legal Form partner_company_form Partner Business Address partner_business_address Partner Representer Name partner_representer_name Partner Representer Parent Name partner_representer_name_parent Partner Representer Initials Name partner_representer_name_initials Partner Representer Document Parent partner_representer_document_parent Partner Representer Function partner_representer_function Partner Representer Function Parent Case partner_representer_function_parent Partner Representer Passport Number partner_representer_passport_number Partner Representer Passport Date partner_representer_passport_date Partner Representer Passport Department partner_representer_passport_department Partner IP Number partner_ip_number Partner IP Date partner_ip_date Partner INN partner_inn Partner KPP partner_kpp Partner BIC partner_bic Partner PSRN partner_ogrn Partner Bank Name partner_bank Partner Bank Account partner_bank_account Partner Phone partner_phone Partner Email partner_email