本記事では、ソアスクの支払データをD3Workerを用いて会計フリー(会計freee)へ登録する方法をご紹介します。
請求データを登録する方法については【TECH COLUMN】ソアスクと会計フリーを連携する(売上編)をご覧ください。
目次
事前準備
支払データ
仕入レコードに紐づく支払レコードを使用してください。
以下の項目値を、会計フリーとの連携で使用します。
項目名が「-」となっているものについては、D3Workerのエンベロープパラメータに空の値を渡します。
項目名 | 対応する取引データのパラメータ |
---|---|
- | 出入金明細.出入金額 |
- | 出入金明細.口座ID |
- | 出入金明細.口座区分 |
- | 出入金明細.日付 |
- | 収支明細.セグメント1ID |
- | 収支明細.セグメント2ID |
- | 収支明細.セグメント3ID |
- | 収支明細.メモタグID |
支払明細.仕入明細.備考 | 収支明細.備考 |
支払明細.仕入明細.科目マスタマッピング.科目マスタ.会計システム勘定科目ID* | 収支明細.勘定科目ID |
支払明細.仕入明細.仕入金額 + 支払明細.仕入明細.税額* | 収支明細.取引金額 |
支払明細.仕入明細.品目マスタ.会計システム品目ID | 収支明細.品目ID |
支払明細.仕入明細.税額 | 収支明細.消費税額 |
支払明細.仕入明細.税率マスタ.会計連携用税区分コード* | 収支明細.税区分コード |
支払明細.仕入明細.仕入.部門.会計システム部門ID | 収支明細.部門ID |
expense (固定値)* | 取引ヘッダー.収支区分 |
支払.支払番号 | 取引ヘッダー.取引の識別子 |
支払.取引先.会計システム取引先ID | 取引ヘッダー.取引先ID |
- | 取引ヘッダー.取引先コード |
支払.支払期日 | 取引ヘッダー.期日 |
支払.支払通知書発行日* | 取引ヘッダー.発生日 |
支払.支払番号 | 取引ヘッダー.管理番号 |
※末尾に「*」が付いている項目は連携において必須の項目ですので、値が入っていることを確認した上で会計フリーにデータを連携してください。
※会計システム勘定科目ID、会計システム品目ID、会計連携用税区分コード、会計システム部門ID、会計システム取引先IDの情報は、会計フリーに登録されているマスタデータのIDと同じものを入力してください。
D3Workerの設定
サービスの設定
「ダミー文書」サービス と「会計フリー 取引登録」サービス、「Salesforce Files [配送]」サービスを使用します。
各サービスの設定方法は、以下の記事をご参照ください。
Salesforce Files [配送] サービスでは、会計フリー連携に関する支払レコードの項目を更新します。
項目のAPI参照名には支払オブジェクトの「会計システム連携済み」項目のAPI参照名「appsfs__fs_AccountingCooperated__c」と「会計システム連携日時」項目のAPI参照名「appsfs__fs_AccountingCooperationDate__c」を入力します。
エンベロープの設定
エンベロープの名称とメモを入力し、お好みで属性を指定したら、文書化サービスに「ダミー文書」を基に作成したサービスを、配送サービスに「会計フリー 取引登録」を基に作成したサービスと「Salesforce Files [配送] 」を基に作成したサービスを指定します。
・文書化サービス
・配送サービス
「会計フリー 取引登録」を基に作成したサービスを選択したら、「エンベロープパラメータの一括設定」をクリックして各項目のエンベロープパラメータを作成します。
「Salesforce Files [配送] 」を基に作成したサービスを指定したら、オブジェクトのAPI参照名、オブジェクトレコードのID、項目部分を入力します。
「appsfs__Payment__c」「{Salesforce支払ID}」「{連携日時}」「true」については、文字を変えずにこの通り入力してください。
また、ファイルの添付は「しない」に設定します。
ワークの設定
名称とメモを入力したら、「エンベロープ」タブに移動します。
「エンベロープパラメータからデータソースを構築」をクリックすることで、エンベロープパラメータに対応するデータソースのフィールドが自動で生成され、それらがエンベロープパラメータの値として挿入されます。
以下のデータソースが作成されます。
※エンベロープの文書化サービスはダミー文書サービスを基に作成されているので、「文書とデータのマッピング」タブでの設定事項はありません。
ViewFramerの設定
ここでは大まかな設定方法のみ紹介します。
D3Workerと連携するためのViewFramerの設定の詳細については、こちらの記事をご参照ください。
ビューの作成
リレーション設定
使用するオブジェクトのリレーション設定は以下です。
出力項目設定
選択した各オブジェクトについて、以下の項目をD3Workerへの連携対象とします。
「項目」の「項目ビルダー」をクリックしたときに表示される内容と、「出力項目名」の対応は以下です。
「項目ビルダー」をクリックしたときに表示される内容 |
出力項目名 |
---|---|
'' | C1.出入金明細.出入金額 |
'' | C1.出入金明細.口座ID |
'' | C1.出入金明細.口座区分 |
'' | C1.出入金明細.日付 |
TitleMaster.appsfs__fs_AccountingAccountTitleId__c | C1.収支明細.勘定科目ID |
'' | C1.収支明細.セグメント1ID |
'' | C1.収支明細.セグメント2ID |
'' | C1.収支明細.セグメント3ID |
'' | C1.収支明細.メモタグID |
InboundDeliveryDetail.appsfs__fs_Note__c | C1.収支明細.備考 |
FORMAT_NUMBER( InboundDeliveryDetail.appsfs__fs_TotalCost__c + InboundDeliveryDetail.appsfs__fs_Tax__c , '0' ) | C1.収支明細.取引金額 |
Product.appsfs__fs_AccountingProductId__c | C1.収支明細.品目ID |
FORMAT_NUMBER( InboundDeliveryDetail.appsfs__fs_Tax__c, '0' ) | C1.収支明細.消費税額 |
TaxRateMaster.appsfs__fs_AccountingCooperationTaxCode__c | C1.収支明細.税区分コード |
Sector.appsfs__fs_AccountingSectorId__c | C1.収支明細.部門ID |
'expense' | P.取引ヘッダー.収支区分 |
Payment.Name | P.取引ヘッダー.取引の識別子 |
Account.appsfs__fs_AccountingAccountId__c | P.取引ヘッダー.取引先ID |
'' | P.取引ヘッダー.取引先コード |
FORMAT_DATE( Payment.appsfs__fs_PaymentDate__c, 'yyyy/MM/dd' ) | P.取引ヘッダー.期日 |
FORMAT_DATE( Payment.appsfs__fs_PaymentNoticeDate__c, 'yyyy/MM/dd' ) | P.取引ヘッダー.発生日 |
Payment.Name | P.取引ヘッダー.管理番号 |
FORMAT_DATE( NOW(), 'yyyy/MM/dd HH:mm:ss' ) | 連携日時 |
Payment.Id | Salesforce支払ID |
後の設定のため、ビューの「出力項目名」は、ワークのデータソースフィールド名と同じにしてください。
出力条件設定
- 支払.会計システム連携済がオフ
- 支払.会計システム連携日時が空値
である支払レコードのみを会計フリーへのデータ連携対象とするために、出力条件を以下のように設定します。
条件設定をするのは支払明細(PaymentDetail)、支払(Payment)、仕入明細(InboundDeliveryDetail)、仕入(InboundDelivery)、取引先(Account)です。
※「パラメーター」の
- PaymentIds
- InboundDeliveryIds
- PaymentAccountIds
は、ViewFramerがレコードを効率的に取得するためのパラメーターになります。
マッピングの作成
作成したビューをD3Workerのワークに紐づけます。
帳票タイプに「一覧型」を選択し、「取得」をクリックします。最大件数には500000を指定します。
以上が済んだら「次へ」をクリックします。
「D3Worker」タブをクリックし、「URL」に以下のURLを入力したら、作成したワークを選択します。
https://d3w.ap.oproarts.com/d3w/api/{お客様用テナント}/
選択したワークのデータソースにビューの項目を対応させたら、「配備」をクリックしてマッピングを使用可能な状態にします。
「自動マッピング」をクリックすることで、ワークのデータソースフィールドにビューの出力項目が自動で対応付けられます。
※「自動マッピング」をするためにはビューの出力項目名とワークのデータソースフィールド名を同じにする必要があります。
取引登録ボタンの設置
支払データを会計フリーに登録するためのアクションボタンを作成します。
本記事最下部に添付されているVisualforceページ雛形をダウンロードし
mappingNm:'マッピング名',
の「マッピング名」を作成したマッピング名(この記事で言うと「freee_purchase_mapping」)で置き換えたVisualforceページを作成します。
編集したVisualforceページを基にリストボタンを作成し、支払オブジェクトのリストビューに設置してください。
支払レコードのリストビューで対象レコードにチェックを入れ、作成したボタンをクリックすると、、、
会計フリーに取引データが登録されました。
支払レコードの「会計システム連携済み」項目、「会計システム連携日時」項目も更新されています。
注意点
- 上の画像では支払レコードは1件のみでしたが、リストビューで複数の支払にチェックを入れればチェックを入れた全ての支払についてデータの連携が行われます。
- 「会計システム連携済み」がオフかつ「会計システム連携日時」が空である支払のみが会計フリーへ連携されます。
- 登録後は「会計システム連携済み」がオンに、「会計システム連携日時」がViewFramerへリクエストした日時に更新されるため、同じ支払データを再度連携してしまうことを防ぐことができます。
おわりに
クラウド会計サービスとのシームレスな連携が実現されたことにより、ソアスクのデータを更に柔軟に活用することができるようになりました。
本記事がソアスクと会計フリーを連携する際の参考になれば幸いです。