Here's my quandary. I've been informed by our team in China that is unusual to ask for first and last name separately in a form, so we need a single field for full name. Ideally, I would also like the data from that field to be broken up and split into the first and last name fields. I've considered a few options, but before jumping into any of them I'd like to see if any of you fine folks have run up against this problem already. Any thoughts?
Thanks in advance
-Andrew
Solved! Go to Solution.
Wouldn't use a webhook. This is completely something to do in JS on the form.
To the degree that you can apply reasonable logic to split the field (it will always fail in some, perhaps even many, cases) there's nothing that you can't do in JS as the form is submitted.
HI Andrew,
You can use a webhook to split the data and populate first and last name fields. Typical services for this will be:
-Greg
Wouldn't use a webhook. This is completely something to do in JS on the form.
To the degree that you can apply reasonable logic to split the field (it will always fail in some, perhaps even many, cases) there's nothing that you can't do in JS as the form is submitted.
I'd add that because of inevitable errors you might as well just store the entries from China as the Last Name, with the First Name empty. Think about how you'll be querying and displaying the data. Will you ever need to search the names separately (in a way that can tolerate rampant bad data)?
Also remember that if you want to push the lead to the CRM, the last name will always be required. This is a standard requirement in SFC and, AFAIk, in MSD as well. The first name will not be required, unless you have a custom setting in your CRM.
-Greg
Some background below. So I wouldn't be as simple as left = firstname, like in Europe. So if you create something it should be country specific and just limited to China. You could also consider using visibility rules, that when someone has filled out their full name 3 new fields appear (last, middle, first), then pre-poulated with javascript. And the form filler could simply correct it if there are any mistakes.
In the Chinese name 毛泽东 (Mao Ze Dong) the family name is Mao, ie. the first name when reading (left to right). The given name is Dong. The middle character, Ze, is a generational name, and is common to all his siblings (such as his brothers and sister, 毛泽民 (Mao Ze Min), 毛泽覃 (Mao Ze Tan), and 毛泽紅 (Mao Ze Hong)).
Among people who are not on familiar terms, Mao may be referred to as 毛泽东先生 (Mao Ze Dong xiān shēng) or 毛先生 (Mao xiān shēng) (xiān shēng being the equivalent of Mr.). Although not everyone has a generational name these days, especially in Mainland China, those who do have one expect it to be used together with their given name. Thus, if you are on familiar terms with someone called 毛泽东, you would normally refer to them using 泽东 (Ze Dong), not just 东 (Dong).
that when someone has filled out their full name 3 new fields appear (last, middle, first), then pre-poulated with javascript. And the form filler could simply correct it if there are any mistakes.
Thing is, displaying the 3 fields separately (even if not entered separately) is itself an intercultural communications mistake. It would be like, on a form for US audiences, splitting the name into three and labeling one of them Caste.. OK, maybe not quite that weird, but IMO if you have a chance to avoid rubbing someone the wrong way, do it.
In simplistic terms, anything you can do in Excel can be done via the free Excel Webhook
Example:
For first name it would be: =LEFT({Lead.Name},FIND(" ",{Lead.Name},1)-1)
last name would be: =RIGHT({Lead.Name},LEN({Lead.Name})-FIND(" ",{Lead.Name},1))
This seems to be a really common problem with no fully public, documented solution, so I wrote a blog post on how we fixed it today. Here it is:
Fix Full Names in First Name Field in Marketo | Northcutt
Sanford is correct that you should aim to fix the data before it even gets into the database. That's the idea scenario. I struggled finding a usable preexisting webhook dedicated to the task. I did accomplish it using an Excel webhook, but the formulas that Fab provided won't work (provided my working formulas within).
It still might present a challenge since you said you're in China. If it's entirely in China, you might be able to just reverse it. Or, use Smart Lists to apply different logic in the case of China. Not perfect, but it does get your data closer to where it should be, anyway, as a backup plan to sanitizing all forms.
Thanks all for your help! I forgot about this thread completely, but appreciate all the options and color regarding each one.
-Andrew