Skip to Content
Menu
This question has been flagged
1 Reply
536 Views

Can someone please explain the advantage of removing an existing and used field with a database update? 

The value of the field is "logged" in the chatter. Very nice but totally unuseable and within a few weeks no one will find this value any more, because of other events which are logged there. I will avoid any update to v18.2 until this might be corrected.

Avatar
Discard
Author

Hello Ray, thank you very much for your quick answer and the explanation.

But I must say that I don't think that this is the right way. The aim of designing a realtional database should always be to avoid redundant data and before, Odoo was very good in it. A "Contact"-contact for examplae has no postal adress, but instead refers to the postal adresse of the parent company contact. Very good. If the company is moving, only one dataset has to be edited.

Now let's say there is a contact "Andreas Brinkmann" as a contact at the "Company Ltd." and as you suggest, we verate another contact "Andreas Brinkmann" holding his mobile number. In CRM-App you can only connect one contact with a chance. So, when you try to reach Andreas by phone and he doesn't answer you have to navigate with the internal link to "Andreas Brinkmann (Phone) -> "company" -> "Andreas Brinkmann (mobile)" to take another try.

Well, let's imagine, not you, but one of your collegues reached him finally on his mobile. And at the end of the call he tells you, that he changed his job. Still working for Comany Ltd. but from now on three days a week from his home office. Therefore you should note his private number and therefore you must create a third contact for the same person.

As time goes by, after several weeks someone is talking to him on his private phone number and gets the information, that he is now married and changed his name to "Andreas Someone". You are now forced to investigate how many contacts "Andreas Brinkmann" exists and change them all to the new name.

I bet a hundred EURO that the quality of the datasets will get bad because no one is doing this. Especially in a hectic office situation while working on a telephone marketing campaign.

There must be another solution.

Hope you have a nice day
Andreas Brinkmann (still me :-) 

I agree that this is a problem for many companies who will be forced to add back a custom field for mobile to avoid losing data.
I think a better solution would have been to keep the field but to hide it in the view based on certain logic, but removing the field entirely was not good practice IMO.

Author

Someone marked this thread as "solved" but I can't find any solution for it. I administrate an Odoo databases at our company with something about 50k contacts and I guess something about 30% of them contains more then one phone number. That means lost of data within 15.000 datasets with an update to v18.2. And the need to create 15.000 new datasets of contacts, just to store the mobile number by copy paste processing from the chatter.

Not to mention all the sh... of things from my first answer. So, where is the solution?

Create a new custom field, move the mobile phone numbers prior to migration. You can then script the creation of new contacts.

Run this 3 times:

partners_with_mobile = env['res.partner'].search([('x_mobile', '!=', False)],limit=5000)

for partner in partners_with_mobile:
new_partner = env['res.partner'].create({
'name': partner.name + " (Mobile)",
'phone': partner.x_mobile,
'type': 'contact',
})
partner['x_mobile'] = False

Author

Hello Ray,

It's commendable that you're trying to offer a personalized solution here. But that can't change the fact that this approach is fundamentally wrong.

I'll just list my thoughts on this.

1. Your approach assumes the "Custom" license is being used, as Studio is only available there.

I manage a second database for a nonprofit organization that wanted to save the additional costs for Studio. This organization maintains contacts across Europe, and it's essential that we store multiple phone numbers for one contact. These contacts work in local governments for a limited time, but their roles also change. To maintain an overview, we must avoid creating redundant contact details.

2. You suggest naming the second contact "Name (mobile)." But if there's only one mobile number, do I enter it in the phone number field? Do I create another contact for this? Do I enter the mobile number in the phone field? What do I do if I subsequently receive a landline number? New contact - copy the mobile number over - enter the landline number. If the procedure is not clear from the design of the database, the database is set up incorrectly.

3. If the contact is of type "Other Address", how can I ensure that the other address is updated in the "Original Contact" and not in the Contact (Mobile) (see also 2. for this). Ambiguous approach = Wrong database design

4. New contact means there's also an "Email" field. How do I ensure that only one email address is entered here if the original contact doesn't have one yet? How do I ensure that a change is reflected everywhere? If I only enter the address for one contact, I can't send a message for processes that reference the other contact (opportunities).

5. There's already a field called "Street" and "Street2." Based on the current reasoning, this would also have to be eliminated and separated into a second data set if necessary, right?

My suggestion: Why doesn't Odoo simply leave the field where it is and recommend the method with a second contact record "Name (Mobile)" for anyone who has problems with multiple phone number fields? They can leave the "Mobile" field blank. So nobody has to loose data within an update.

I understand everything you are posting. There is a lot I agree with.

Nothing I posted requires Odoo Studio.

I work in the part of Odoo that helps people understand and use what we have, even when it is "incorrect" and "wrong" and "a problem" and "not good practice" and "fundamentally wrong".

I sympathize but can only recommend you work out how to live with this change.

Our own internal sales team requested we revert this change and that request was declined, so the chances of it being "corrected" are almost none.

Best Answer

A lot of Users reported trouble when they had to WhatsApp, SMS or Schedule appointments with Contacts that had more than one phone number.

We don't have a "which number?" feature in the framework so this is how we are resolved those issues, there is now just a single phone number per contact.

You can still store "Andreas Brinkmann, 555 123 1234" and "Andreas Brinkmann (mobile), 555 678 7758" as two separate Contacts and everything that was tricky before will now work without any confusion or frustration. 

Integration with other communication tools, most of which are designed to work with a single phone number is now easier. 

Searching for contacts is faster since you only need to search one field.


I was not involved with the decision to make this change, I am simply sharing this information so you understand (but go ahead and leave a polite reply or downvote the answer if it will make you feel better).

Our own internal sales team requested we revert this change and that request was declined, so the chances of it being "corrected" are almost none.

Avatar
Discard
Related Posts Replies Views Activity
2
Jun 23
5200
5
Apr 23
10304
0
Jul 20
1964
0
Jun 17
1993
1
Apr 16
12317