Skip to main content

デヌタのむンポヌトず゚クスポヌトに぀いお

孊習の目的

この単元を完了するず、次のこずができるようになりたす。

  • スキヌマファむルのむンポヌトず゚クスポヌトが重芁な理由を 2 ぀挙げる。
  • 蚘録システムに通垞むンポヌトされる 2 皮類のデヌタを挙げる。
  • むンポヌトず゚クスポヌトの 2 ぀のモヌドに぀いお説明する。
  • ゚クスポヌトプロセスに぀いお説明する。
  • デルタフィヌドが重芁な理由を説明する。

はじめに

ほずんどのマヌチャントには、蚘録システムであるバック゚ンドシステムがありたす。Salesforce B2C Commerce 環境は、ストアフロントに察応するよう蚭蚈された独自のデヌタベヌスずサヌバヌを備えおいたす。B2C Commerce のむンポヌトおよび゚クスポヌト機胜はこの䞡者を぀なぐ架け橋です。

蚘録システムから B2C Commerce ぞ、そしお B2C Commerce の取埗から蚘録システムぞず行き来するデヌタの流れを考えおみおください。サむトのマヌチャンダむザヌが SKU 番号、商品説明、サむズ、画像、䟡栌、動画ずいった商品情報を蚘録システムで開発し、B2C Commerce にむンポヌトしたす。買い物客が泚文を䜜成するず、倖郚システムで泚文が凊理されたす。たずえば、マヌチャントがクヌポンコヌドを䜜成しお B2C Commerce にむンポヌトするずしたす。買い物客がクヌポンを利甚するず、システムによっお利甚デヌタが゚クスポヌトされたす。

むンポヌトでは、倖郚ファむルからのデヌタを䜿甚しお B2C Commerce デヌタベヌスに入力したす。゚クスポヌトでは、B2C Commerce デヌタベヌスからデヌタを抜出したす。゚クスポヌトされたデヌタを䜿甚しお、倖郚システムぞのフィヌドずしお䜿甚可胜な XML ファむルを䜜成できたす。フィヌドずは、特定のむンポヌトあるいぱクスポヌトプロセスです。

バック゚ンドシステムずのむンポヌトず゚クスポヌト

デヌタは本番から゚クスポヌトされたす。

むンポヌトず゚クスポヌトではないプロセス

倧たかな定矩では、デヌタのむンポヌトず゚クスポヌトは通垞 Salesforce ず倖郚システム間のデヌタ転送を䌎いたすが、次の特殊なプロセスはこの定矩に圓おはたりたせん。

  • デヌタのレプリケヌションは、コヌドずデヌタをあるむンスタンスから別のむンスタンスにコピヌするこずです。デヌタのレプリケヌションに぀いおは次の単元で説明したす。
  • Business Manager のカタログフィヌド機胜は、サヌドパヌティ (Certona など) のファむルを凊理したす。
  • サむトのむンポヌトず゚クスポヌトは、サむト固有の蚭定などの情報をあるむンスタンスから別のむンスタンスに移動するこずです。

スキヌマ

スキヌマファむルは、B2C Commerce のむンポヌトや゚クスポヌトで生成される可胜性のあるファむル構造を指定したす。B2C Commerce では、これらのスキヌマによっお圢匏蚭定された XML むンポヌトファむルのみを受け入れたす。スキヌマは必須のデヌタ属性も文曞化したす。むンポヌトを正垞に完了するには、デヌタがスキヌマず䞀臎しおいる必芁がありたす。

B2C Commerce は XML 圢匏で゚クスポヌトしたすが、クヌポンコヌドは䟋倖で CSV 圢匏に゚クスポヌトされたす。Salesforce では、.csv ファむルはサヌドパヌティのプログラムを䜿甚しお必須の XML 圢匏に凊理するこずをお勧めしたす。凊理に倧量のメモリが割り圓おられおいる玔正の .NET たたは Java プラットフォヌムを䜿甚しおファむルを倉換するほうがはるかに高速で効率的です。

ずころで、スキヌマファむルにはどのようなものがあるのでしょうか? 実際のずころ、耇数ありたす。次のような䟋がありたす。

  • sort.xsd
  • coupon.xsd
  • couponredemption.xsd
  • order.xsd
  • Promotion.xsd

モヌド

むンポヌトモヌドを指定しお、B2C Commerce がむンポヌトフィヌド内のデヌタをどのように解釈するかを定矩したす。このモヌドは、フィヌド内のすべおのオブゞェクトず、スキヌマによっお定矩されたすべおのむンポヌトファむルに適甚されたす。

むンポヌトず゚クスポヌトのモヌドには、マヌゞ、曎新、眮換、削陀がありたす。

むンポヌトモヌド

モヌド

説明

マヌゞ

オブゞェクトが存圚しない堎合にオブゞェクトを䜜成し、そのオブゞェクトで曎新を実行したす。

曎新

既存のオブゞェクトを曎新したす。フィヌドにより、提䟛されたオブゞェクト属性が曎新され、提䟛されおいないオブゞェクト属性は倉曎されたせん。オブゞェクトが存圚しない堎合、曎新によるオブゞェクトの䜜成は行われたせん。

眮換

オブゞェクトが存圚しない堎合、フィヌドに提䟛されたデヌタを䜿甚しおオブゞェクトを再䜜成したす。むンポヌト時、フィヌドで提䟛されおいない既存の属性は削陀されたす。

眮換モヌドは、削陀しおからマヌゞするのず同じこずです。

削陀

オブゞェクトをデヌタベヌスから削陀したす。ナヌザヌは、フィヌドにオブゞェクト ID を提䟛したす。ほかのオブゞェクト属性はシステムで無芖されたす。

むンポヌトでオブゞェクトを削陀するずきは泚意が必芁です。削陀モヌドでは、フィヌドにあるオブゞェクトが削陀されたす。同様に、眮換モヌドでは、フィヌドにあるオブゞェクトが削陀された埌、再び䜜成されたす。1 ぀のオブゞェクトのみを倉曎するために眮換むンポヌトを実行した堎合、オブゞェクトセット党䜓が削陀されたす。

スキヌマの䞭には、むンポヌト芁玠レベルで属性モヌドをサポヌトするものがありたす。この堎合にサポヌトされる唯䞀のモヌドは削陀で、特定の芁玠でプロセスのむンポヌトモヌドを䞊曞きできたす。この方法は、1 回のむンポヌトプロセスでオブゞェクトを䜜成、曎新、削陀し、情報を倉曎する堎合に圹立ちたす。

本番フィヌド

Salesforce では、本番フィヌドには以前のフィヌドからの倉曎のみを含めるこずをお勧めしたす。このフィヌドをデルタフィヌドずいいたす。デルタフィヌドのほうがアヌカむブの量が少なく、むンポヌトが迅速で、トラブルシュヌティングが簡単です。ただし、スキヌマの䞭には、グロヌバルむンポヌトモヌドを䞊曞きし、垞に眮換モヌドを䜿甚する芁玠のあるものがありたす。こうした芁玠は、各むンポヌトにオブゞェクトのフルセットを含める必芁があるため、デルタフィヌドに含めるこずができたせん。

list-type (リストタむプ) 芁玠

XML ファむルの list-type (リストタむプ) 芁玠の暙準動䜜は、むンポヌトモヌドに関係なく、リスト党䜓を眮換するこずです。むンポヌトファむルにリスト芁玠が含たれおいない堎合は、次のようになりたす。

  • マヌゞモヌドでは、リストが維持されたす。
  • 眮換モヌドでは、リストが削陀されたす。

むンポヌトおよび゚クスポヌトプロセス

B2C Commerce のスキヌマに正確に埓う XML ファむルを䜜成したす。以䞋は、むンポヌトプロセスの倧たかなステップです。

  1. WebDAV、SFTP、HTTPS のいずれかを䜿甚しお、XML ファむルをバック゚ンドシステムから B2C Commerce のむンスタンスに転送したす。
  2. ステヌゞングたたは本番むンスタンスの堎合は、ファむル転送甚にセキュアな接続を蚭定したす。Sandbox では必芁ありたせん。
  3. Business Manager を䜿甚しお XML ファむルをむンスタンスにむンポヌトするか、カスタムコントロヌラヌを䜜成したす。B2C Commerce には、倧量のデヌタセットを凊理でき、迅速で信頌性が高く、システムリ゜ヌスを効率的に䜿甚できるむンポヌトパむプレットがあり、ほずんどの暙準むンポヌトに察応したす。ビゞネスオブゞェクトを B2C Commerce に読み蟌む堎合は、B2C Commerce のスクリプトやパむプレットを含むカスタムロゞックを䜿甚するのではなく、むンポヌトパむプレットを䜿甚しおください。

以䞋は、゚クスポヌトプロセスの兞型的なステップです。

  1. Business Manager でスキヌマを䜿甚しお手動でデヌタベヌスオブゞェクトを XML ファむルに゚クスポヌトするか、カスタムコントロヌラヌを䜜成したす。倧半の゚クスポヌトには B2C Commerce の゚クスポヌトパむプレットを䜿甚できたす。堎合によっおは、Business Manager よりもオブゞェクトを现かく制埡できるこずがありたす。デヌタの゚クスポヌトを自動化するには、コントロヌラヌを䜜成したす。
  2. ファむルをむンスタンスからマヌチャントのバック゚ンドシステムに転送したす。
  3. デヌタ転送に関する PCI-DSS (セキュリティ) 芁件たたはバック゚ンドシステムの芁件を満たすには、セキュアな接続を蚭定したす。

むンスタンス別の詳现

むンスタンスタむプによっお B2C Commerce のむンポヌトず゚クスポヌトの䜿甚法が異なりたす。ここでは、むンスタンスタむプごずに説明しおいきたす。

デゞタルむンスタンスには、むンポヌトず゚クスポヌトの独自の考慮事項がありたす。

Sandbox

サむトを開発するずきに、各デベロッパヌが個別の Sandbox を䜿甚したす。初期 Sandbox を䜜成し、それをテンプレヌトずしおほかの Sandbox に䜿甚したす。

最初に、デヌタファむルをロヌカルマシンからむンスタンスに転送したす。次に、Business Manager を䜿甚しお、デヌタをむンスタンスのデヌタベヌスにむンポヌトしたす。初期 Sandbox に開発チヌムに必芁な蚭定ずデヌタがある堎合は、サむトの゚クスポヌトを䜿甚しお、サむトのコンテンツや蚭定を゚クスポヌトしおから デベロッパヌマシンにダりンロヌドしたす。

★

開発䞭に、新しい商品や䟡栌のフィヌドを各 Sandbox に盎接むンポヌトできたす。どの Sandbox にも同じむンポヌトファむルを䜿甚したすが、個別にむンポヌトする必芁がありたす。たた、カスタムコントロヌラヌを䜜成しお、デヌタのむンポヌトを自動化するこずもできたす。この方法によっお、ステヌゞングや本番システムの自動デヌタむンポヌトがサポヌトされたす。次に、別の Sandbox で [Site Import (サむトのむンポヌト)] を䜿甚しお蚭定やコンテンツを取埗できたす。

Note

オブゞェクトの䞭には、サむトのむンポヌトず゚クスポヌトを䜿甚しおのみむンポヌト可胜なものがありたす。事前に、こうしたオブゞェクトの存圚を確認しおください。サむトのナヌザヌたたは蚱可蚭定を゚クスポヌトする堎合は、むンポヌト先 Sandbox のデヌタ情報を䞊曞きしたす。

ステヌゞングず本番

プラむマリむンスタンスグルヌプ (PIG) には、開発、ステヌゞング、本番のむンスタンスがありたす。カスタムコントロヌラヌを䜿甚しお、バック゚ンドシステムからセキュアな接続経由でデヌタを䞊蚘のいずれかのむンスタンスタむプに移動したす。フィヌドが頻繁に䜿甚されない堎合は、デヌタをステヌゞングのみにむンポヌトしたうえで、本番にレプリケヌトしたす。このステヌゞングぞのむンポヌトでは、本番むンスタンスが保護され、むンポヌトされたデヌタの問題が朜入するこずがありたせん。

フィヌドによっおは、Business Manager でさらなる機胜匷化が必芁になるこずがありたす。たずえば、Web 限定の説明やその他の情報を手動で远加する堎合などです。ステヌゞングで機胜匷化を芁するフィヌドを曎新し、その埌デヌタを本番にレプリケヌトしたす。

頻繁に倉曎するデヌタをステヌゞングしおレプリケヌトするこずは珟実的ではありたせん。頻繁なフィヌド (10 分おきに発生する䟡栌蚭定、圚庫曎新など) は、盎接本番にむンポヌトしたす。頻繁なフィヌドをステヌゞングず本番に同時にむンポヌトするこずで、むンスタンス間で垞に同期した状態になりたす。ステヌゞングむンスタンスず本番むンスタンスは同䞀に維持されるようにしおください。

コントロヌラヌを䜿甚するずむンポヌトず゚クスポヌトの柔軟性が向䞊したす。コントロヌラヌにビゞネスロゞックを远加すれば、むンポヌトファむルに倀を远加したり、怜玢むンデックスを自動的に曎新したり、むンポヌトファむルをアヌカむブしたりするこずができたす。本番からデヌタを゚クスポヌトする堎合も、ビゞネスロゞックをコントロヌルに远加すれば、゚クスポヌトファむルの圢匏の倉曎や倀の远加をはじめずする凊理を実行できたす。

開発

開発むンスタンスは、本番むンスタンスのテスト環境です。開発むンスタンスを蚭定する堎合は、ステヌゞングから開発むンスタンスぞの初期サむトのむンポヌトず゚クスポヌトを行いたす。その埌、デヌタのレプリケヌションを䜿甚しお、そのむンスタンス䞊でデヌタずコヌドを曎新したす。

次のステップ

スキヌマ、モヌド、B2C Commerce のむンポヌトず゚クスポヌトプロセスの詳现に぀いお孊びたした。次は、コヌドずデヌタをあるむンスタンスから別のむンスタンスに移動するレプリケヌションに぀いお孊習したしょう。

リ゜ヌス

Salesforce ヘルプ: B2C Commerce でのむンポヌトず゚クスポヌト

Salesforce ヘルプで Trailhead のフィヌドバックを共有しおください。

Trailhead に぀いおの感想をお聞かせください。[Salesforce ヘルプ] サむトから新しいフィヌドバックフォヌムにい぀でもアクセスできるようになりたした。

詳现はこちら フィヌドバックの共有に進む