電話番号形式
salesforceは電話番号を保存するデータ型を選択できる。
09012345678でも090-1234-5678でも電話番号と認識してくれる。
これを検索したときにどうなるのか試してみた。
試したこと
取引先責任者の携帯項目に「09012345678」「090-1234-5678」の値をもつレコードをそれぞれ作成して検索結果がどうなるか試してみる。
グローバル検索
09012345678で検索
それぞれ結果が表示された。
090-1234-5678で検索
これもそれぞれ表示された
レポート
抽出条件:携帯が次の文字列と一致する「09012345678」
抽出条件:携帯が次の文字列と一致する「090-1234-5678」
SOQL
SELECT Id FROM Contact WHERE MobilePhone = '09012345678'
SELECT Id FROM Contact WHERE MobilePhone = '090-1234-5678'
開発者コンソールでSOSL
09012345678で検索
090-1234-5678で検索
ApexでSOQL
電話番号をバインドして実行してみる
xxxにそれぞれ番号を入れて検索してみた。
String phone_number = 'xxx';
List<List<SObject>> soql_result = [
FIND :phone_number IN Phone Fields
RETURNING Contact(FirstName,LastName,MobilePhone)
];
List<Contact> cons = (List<Contact>)soql_result[0];
System.debug(cons.size());
09012345678
090-1234-5678
個人的な結論
電話番号はハイフンなしで登録するのがよさそう。