コラム詳細

Salesforceの文字コードのよくある課題と解決策とは

2024年01月15日

  • Salesforce
  • 定着・活用
  • 設定・管理

はじめに
セラクCCCのSalesforce推進部のNです。Salesforceでは、文字コードを設定できる機能があります。しかし、Salesforceの標準文字コードはUTF-8であり、UTF-8で作成や編集したファイルやメールでないと文字化けなどの不具合が起こるかもしれません。Salesforceを使用している企業の担当者の中には、文字が正しく表示されないことにお困りの方もいるのではないでしょうか。本記事では、Salesforceにおける文字コードについて詳しく解説します。

 

Salesforceの文字コードとは?

コンピュータは「あ」や「A」などの文字をそのまま認識できません。文字コードで文字を番号に変換すると、コンピュータは文字を認識できます。文字コードの種類によって変換できる文字や変換方法が異なり、正確に変換できなければ「文字化け」というエラーが起こるかもしれません。

 

Salesforceのデフォルトの文字コードは「UTF-8」です。Salesforceの機能によってはUTF-8以外の文字コードも使用できますが、標準画面では文字コードを設定できる項目はありません。そのため、標準画面ではUTF-8以外の文字コードの利用は難しいでしょう。

 

Salesforceで文字コードを気にしなければならない場面

基本的にSalesforceで使用できる文字コードはUTF-8となりますが、機能によっては文字コードを選択可能です。ここでは、Salesforce内で文字コードを意識したほうがよい場面について紹介します。

 

データローダ使用時

データローダとは、Salesforceにデータを一括でインポートもしくはエクスポートするためのアプリケーションです。文字を含むデータをやり取りするため、文字コードの設定は重要になります。

 

データローダがあれば、オブジェクト内にあるレコードを個別に登録や編集、削除をする必要はなく、一括でデータ操作が可能です。ただ、データの出し入れ時に文字が表示されない可能性があります。

 

メール

Lightning Experienceというオプションを使用し、所属企業がメールドメインを所有していれば、Salesforceを使用して直接メールの送受信ができます。

 

メールは文字データのやり取りであるため、文字コードによる変換が必要です。日本語の場合、メール機能では、UTF-8のほか「Shift-JIS」「JIS」を選択できます。

 

HTTPリクエストなどのエンコード

HTTPリクエストとは、ホームページからファイルを送受信するときに必要なものです。Salesforceで外部サービスを利用するときに活用します。外部の郵便番号検索サービス、在庫管理システムなどを使用するときに便利でしょう。

 

SalesforceへHTTPリクエストを送信するときには、エンコードした文字が利用されます。そのため、Salesforceに適した文字コードを選択しないと、適切にHTTPリクエストができません。

 

Salesforceで起きがちな文字コードに関する問題と解決方法

Salesforceで文字データを扱う機能を使用したとき、さまざまな問題が起こる可能性があります。ここでは、起こりがちな問題の代表例と、その解決方法について紹介するので、文字エラーでお悩みの方は参考にしてください。

 

データローダ使用時に文字化けする

データローダを使用しているときに、文字化けなどの不安定な動作が発生することがあります。具体的には以下のようなエラーです。

 

  • ・データローダでエクスポートしたCSVファイルに変更を加えてインポートすると、正しくマッピングされない
  • ・データローダの設定を「UTF-8」にしてもインポートをすると文字化けが発生する

 

こういったときには、次のような対策を試してみてください。

 

  • 1.メモ帳でUTF-8 や Unicodeを使ってインポート予定のCSVファイルを編集しない
  • 2.インポート予定のCSVファイルをExcelで保存する(このとき文字化けの有無を確認)
  • 3.データローダで、「Read all CSVs with UTF-8 encoding」「Write all CSVs with UTF-8 encoding」「Use Bulk API」をオフにする

 


<データローダでオフにする>

 

Salesforceから送信されたメールに無意味な記号が混ざる

Salesforceを介して送信したメールに、作成時には入れていなかったはずの「?」や「$」などの記号が入ってしまうことがあります。このようなときは、文字コードの設定が適切でないことが原因かもしれません。Salesforceからメールを送信する際の文字コードの選び方は、以下の表を参考にしてください。

 

文字コード 特徴
ISO-8859-1
  • ・すべてのラテン文字を表せる
  • ・ほぼすべてのメールソフトウェアで認識可能
  • ・英語、その他ヨーロッパ言語でメールを書くユーザが使用する
UTF-8
  • ・ほぼすべての国の文字を表せる
  • ・古いメーラーではサポートされていない
  • ・ラテン文字以外を使用する人向け
Shift_JIS、EUC-JP、ISO-2022-JP
  • ・日本語に最適な文字コード
  • ・日本語以外は使用しない

 

取り込んだメールが文字化けする

メール-to-ケースという機能を使用してメールを取り込むとき、文字化けが起こり文章が読めなくなるときがあります。メール-to-ケースとは、メールをSalesforceに取り込むと、自動的にケース項目の作成・入力が行われる便利な機能です。

 

たとえば、iPhoneからのメールに特定の文字列が含まれていると、文字コードがCP932でエンコードされるため文字化けが発生します。文字コードCP932はSalesforceにとって非標準式の形式であり、2023年8月現在サポートされていません。

 

解決策は、メール送信時に文字コードをUTF-8として送信することです。また、Salesforceでは対応していない特定の文字列の使用は控えましょう。

 

エンコードがUTF-8でないと正しく表示できない

Salesforceでは文字コードを選択できる機能もあるのですが、結局UTF-8でなければ正しく文字が表示されないケースは多くあります。現状、特殊文字まですべて正しく表示するためには、UTF-8を選択することが重要です。また、出力したファイルを編集するときは、必ずUTF-8の文字コードを使用するようにしてください。

 

代表的なソフトウェアでUTF-8としてエンコードする方法は以下の通りです。

 

Excel

  • ・ツール→Webオプション→エンコーディングに移動
  • ・「このドキュメントに名前を付けて保存」をドロップダウンして「Unicode (UTF-8)」を選択

 


<「名前をつけて保存」の画面>

 

Open Office

  • ・「名前を付けて保存」をクリック
  • ・「ファイルタイプ」からドロップダウンし「テキスト CSV (.csv)」を選択
  • ・「フィルター設定の編集」にチェックを入れて「保存」をクリック
  • ・「テキスト ファイルのエクスポート」が表示されるため、「文字セット」をドロップダウンし「Unicode (UTF-8)」を選択

 

まとめ

Salesforceは便利なソフトウェアですが文字コードが原因でCSVファイルの文字化けが起こる、正しくメールを送受信できない場合があります。基本的には文字コードをUTF-8に変更すれば解決できますが、それでも問題が解消されないケースも珍しくありません。このような場合は当社へご相談ください。当社には300名(23年5月時点)を超える専門コンサルタントが在籍し、お客様側の視点からSalesforceのサポートサービスを行っています。効率的なSalesforceの活用を、当社のカスタマーサクセスチームがサポートいたします。お気軽に無料相談からお問い合わせください。

Salesforceでお悩みなら、
まずはお気軽に
お問い合わせください

Salesforceでお悩みなら、
まずはお気軽に
お問い合わせください