Odoo Help

1

Phone Number in 'XXX-XXX-XXXX' format

By
ASP
on 7/4/14, 10:20 AM 194,161 views

Hi All,

I'm looking for a solution to add phone numbers in the above said format. Is there any module or any hint how to achieve this? :)

I had tried with a module named "bss_phone_numbers" and it is suggesting to take field type as "phonenumber", but no luck,

It's throwing an error "Undefined widget............". Please help me on this. I don't need any restriction or validation for phone number.
I just want to create and display a field for phone number, where user can input the number in 'XXX-XXX-XXXX' format.

Any help would be appreciated. :)

Cheers
ASP :)

3
Ray Carnes
On 7/4/14, 11:38 AM

The best module I have found for this purpose is https://www.odoo.com/apps/7.0/base_phone/

You need to install the Python library first, ie: sudo pip install phonenumbers

That module really helped, thanks Ray! By the way, it changes, by default, all numbers to +XXXXXXXXXXX. Is there any config I could make to format, say, XX (XXX) XXXXX-XXXX

Igor MF
on 7/4/14, 1:53 PM

The numbers are in the format "+441132345678" during edit mode, but change to "+44 113 234 5678" when they are saved - is that what you are seeing? To change what the widget displays, change the function used in base_phone/static/src/js/phone_widget.js which leverages the library at base_phone/static/lib/js/PhoneFormat.js

Bista Solutions US, Ray Carnes
on 7/5/14, 2:45 PM

Hey Ray, Thanks for the reply :) It worked fine for all partners. But for my custom module where I have phone fields, it didn't reformat the numbers. So I just added "Widget" attribute as 'phone' to those fields in my custom module. Now a link has been added for click to dial, but number is till not formatted. In edit mode it looks fine 'xxx-xxx-xxxx' but after save 'xxxxxxxxxx'. Please help me with this :)

ASP
on 7/7/14, 4:23 AM

In the Python file, change ['phone', 'partner_phone', 'fax', 'mobile'] to ['phone', 'partner_phone', 'fax', 'mobile',’YOUR_FIELD1’,’YOUR_FIELD2’] so that the code knows to apply the same validation to the extra phone field(s).

 

From: ASP [mailto:aspalit10@gmail.com]
Sent: Monday, July 07, 2014 1:24 AM
To: Followers of False
Subject: Re: False

 

Hey Ray, Thanks for the reply :) It worked fine for all partners. But for my custom module where I have phone fields, it didn't reformat the numbers. So I just added "Widget" attribute as 'phone' to those fields in my custom module. Now a link has been added for click to dial, but number is till not formatted. In edit mode it looks fine 'xxx-xxx-xxxx' but after save 'xxxxxxxxxx'. Please help me with this :)

--
ASP Sent by OpenERP S.A. using OpenERP. Access your messages and documents in Odoo

Bista Solutions US, Ray Carnes
on 7/7/14, 6:28 PM

In the Python file, change ['phone', 'partner_phone', 'fax', 'mobile'] to ['phone', 'partner_phone', 'fax', 'mobile',’YOUR_FIELD1’,’YOUR_FIELD2’] so that the code knows to apply the same validation to the extra phone field(s).

Bista Solutions US, Ray Carnes
on 7/7/14, 6:40 PM

Hi Ray, the extra phone fields (phone, fax) are in my custom module and not in res_partner. So how to add those to the list? and how it'll recognize the fields from which module? :)

ASP
on 7/8/14, 2:08 AM

If you added those fields to the res.partner model, then just adding them to the python code in base_phone will be enough.

 

Once you add your fields, all modules that use res.partner will see them, including base_phone.


Ray.

 

From: ASP [mailto:aspalit10@gmail.com]
Sent: Monday, July 07, 2014 11:08 PM
To: Followers of False
Subject: Re: False

 

Hi Ray, the extra phone fields (phone, fax) are in my custom module and not in res_partner. So how to add those to the list? and how it'll recognize the fields from which module? :)

--
ASP Sent by OpenERP S.A. using OpenERP. Access your messages and documents in Odoo

Bista Solutions US, Ray Carnes
on 7/8/14, 2:29 PM
0
alanz
On 7/17/17, 6:49 AM

agree that you  should install the Python library to do that

0
alanz
On 7/17/17, 6:49 AM

agree that you  should install the Python library to do that

0
Igor Kurilko
On 7/11/17, 10:44 AM

This one works great for me:

     https://github.com/menecio/odoo-addons/tree/master/web_fields_masks

It was build for Odoo7, but still works great with 8 and 9 versions.

It adds widget which you can use in your xml views like this:

<field name="masked_field" data-inputmask="'mask': '99-9999999'" />
Masking definition:

- 9: numeric value
- a: alphabetical value
- *: alphanumeric value

     

0
Igor Kurilko
On 7/11/17, 10:43 AM

This one works great for me:

     https://github.com/menecio/odoo-addons/tree/master/web_fields_masks

It was build for Odoo7, but still works great with 8 and 9 versions.

It adds widget which you can use in your xml views like this:

<field name="masked_field" data-inputmask="'mask': '99-9999999'" />
Masking definition:

- 9: numeric value
- a: alphabetical value
- *: alphanumeric value

     

0
0
Pascal Tremblay
On 3/7/17, 9:09 AM

For my part, I use this plugin :

https://igorescobar.github.io/jQuery-Mask-Plugin/

With this one, you can manage any format on any textbox. Easy to install. I like this one.

I finally think this last one works only for input box on the frontend.

Pascal Tremblay
on 4/4/17, 2:50 PM
0
Ludo - Neobis
On 7/4/14, 10:40 AM

I don't know of a single field type (other than maybe a char field with a regular expression), but if it absolutely needs to be strictly input like that, try to make 3 char fields. One for each section with a certain size (size=3) and in your view somehow put the dashes in manually.

Does that help?

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register

Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

69 follower(s)

Stats

Asked: 7/4/14, 10:20 AM
Seen: 194161 times
Last updated: 10/21/17, 1:15 AM