跳至内容
菜单
此问题已终结
1 回复
12410 查看

Hi guys

Where exactly can I modify the default behaviour that formats the address?
Currently when you create a customer and do not add a country it will print out the following structure:

But I want the ZIP code before the city.. So, where should I change the code so that the ZIP is printed in front of the city when no country is filled in?
res_partner.py seems to be responsible for the layout in the menu (https://github.com/odoo/odoo/blob/8.0/openerp/addons/base/res/res_partner.py#L61-77) but where can I modify it for all reports / everywhere at once?

Note: I do not want to configure this per country in the country list. It has to be set automaticly when a customer has no country filled in to ZIP address in place of adress ZIP.

With kind regards
Yenthe

形象
丢弃

Maybe you can try: Setting -> Companies -> Your Company -> Edit -> Report configuration?

编写者

Thanks for the suggestion Mathias. Are you talking about the RML header etc here? Sadly these fields are for V7 and no longer used in V8 since I use the QWeb reports.. So can't use this.

最佳答案

Address format is predefined in Country - go to Sales/Address Book/Localization/Countries

UPDATED:

or in res_partner.py, method  _display_address(...)

        # get the information that will be injected into the display format
        # get the address format
        address_format = address.country_id.address_format or \
              "%(street)s\n%(street2)s\n%(city)s %(state_code)s %(zip)s\n%(country_name)s"

 

 

 

形象
丢弃
编写者

Zbik I'm aware of that but there must be some Python code that fills up a default format because when you do not fill in a country it will still take the format City - ZIP and I want it to be ZIP - City. I'd like to change this logic if no country is filled in.

answer updated

编写者

Thank you Zbik! Modifying the format in the display_address method did the job. Excellent answer as always :)

相关帖文 回复 查看 活动
0
3月 15
6626
0
3月 15
3886
14
5月 22
46916
8
3月 21
30611
0
6月 17
4041