Acumatica
Acumatica コネクタを使用すると、Acumatica データベースで、挿入、削除、更新、読み取りオペレーションを実行できます。
準備
Acumatica コネクタを使用する前に、次の作業を行います。
- Google Cloud プロジェクトで次の操作を行います。
- ネットワーク接続が設定されていることを確認します。ネットワーク パターンの詳細については、Network Connectivity をご覧ください。
- コネクタを構成するユーザーに roles/connectors.admin IAM ロールを付与します。
- コネクタに使用するサービス アカウントに、次の IAM ロールを付与します。
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
サービス アカウントは特別なタイプの Google アカウントで、Google API のデータにアクセスするのに認証を受ける必要がある人間以外のユーザーを表します。サービス アカウントがない場合は、サービス アカウントを作成する必要があります。詳細については、サービス アカウントを作成するをご覧ください。
- 次のサービスを有効にします。
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(Connectors API)
サービスを有効にする方法については、サービスを有効にするをご覧ください。
以前にプロジェクトでこうしたサービスを有効にしていない場合は、コネクタを構成するときにそれを有効にすることを求められます。
Acumatica を構成する
Acumatica ERP のインストールについては、Acumatica ERP をインストールするをご覧ください。
Acumatica ERP インスタンスには、システムへのログインに使用できるデフォルトのユーザー アカウントが付属しています。デフォルト ユーザーのパスワードを変更したら、Acumatica ERP の使用を開始できます。
- アプリケーション インスタンスを起動するには、Acumatica ERP 構成ウィザードのウェルカム ページで [アプリケーション メンテナンスの実行] をクリックします。
- Acumatica ERP プログラム グループで自動生成されたリンクをクリックします。
- ウェブブラウザで http://localhost/INSTANCE_NAME に移動し、構成時に仮想ディレクトリ フィールドで指定した名前 INSTANCE_NAME を入力します。
- ログインページで次のように入力します。
- ユーザー名: ユーザー名として「admin」と入力します。
- パスワード: パスワードを入力します。
- [Sign In] をクリックします。
- [新しいパスワード] 列に新しいパスワードを入力し、[パスワードを確認] をクリックします。
- [Acumatica ユーザー契約] をクリックして、ユーザー契約を確認します。
- [こちらにチェックを入れる] を選択して、Acumatica ユーザー契約の利用規約を読み、同意したことを示すとともに、ユーザー契約の利用規約に同意します。
- [Sign In] をクリックします。
インスタンスのデプロイ時に仮想ディレクトリのデフォルト名を使用した場合は、http://localhost/AcumaticaERP/ を使用します。
http://localhost/INSTANCE_NAME の URL は、Acumatica ERP Tools がインストールされているローカル コンピュータでのみ機能します。Acumatica ERP インスタンスにリモートでアクセスするには、URL で localhost の代わりにサーバーの完全修飾ドメイン名(FQDN)を使用します。
コネクタを構成する
コネクタを構成するには、データソース(バックエンド システム)への接続を作成する必要があります。接続はデータソースに特有です。つまり、多数のデータソースがある場合は、データソースごとに別々の接続を作成する必要があります。接続を作成する手順は次のとおりです。
- Cloud コンソールで、[Integration Connectors] > [接続] ページに移動し、Google Cloud プロジェクトを選択または作成します。
- [+ 新規作成] をクリックして [接続の作成] ページを開きます。
- [ロケーション] セクションで、接続のロケーションを選択します。
- リージョン: プルダウン リストからロケーションを選択します
サポートされているすべてのリージョンの一覧については、ロケーションをご覧ください。
- [NEXT] をクリックします。
- リージョン: プルダウン リストからロケーションを選択します
- [接続の詳細] セクションで、次の操作を行います。
- コネクタ: 使用可能なコネクタのプルダウン リストから [Acumatica] を選択します。
- コネクタのバージョン: 使用可能なバージョンのプルダウン リストからコネクタのバージョンを選択します。
- [接続名] フィールドに、接続インスタンスの名前を入力します。
接続名は次の条件を満たす必要があります。
- 接続名には英字、数字、ハイフンを使用できます。
- 文字は小文字のみを使用できます。
- 接続名の先頭には英字を設定し、末尾には英字または数字を設定する必要があります。
- 接続名は 49 文字以内で指定してください。
- 必要に応じて、接続インスタンスの [説明] を入力します。
- 必要に応じて、Cloud Logging を有効にして、ログレベルを選択します。デフォルトのログレベルは
Error
に設定されています。 - サービス アカウント: 必要なロールを持つサービス アカウントを選択します。
- 必要に応じて、接続ノードの設定を構成します。
- ノードの最小数: 接続ノードの最小数を入力します。
- ノードの最大数: 接続ノードの最大数を入力します。
ノードは、トランザクションを処理する接続の単位(またはレプリカ)です。1 つの接続でより多くのトランザクションを処理するには、より多くのノードが必要になります。逆に、より少ないトランザクションを処理するには、より少ないノードが必要になります。ノードがコネクタの料金に与える影響については、接続ノードの料金をご覧ください。値を入力しない場合は、デフォルトで最小ノード数は 2 に設定され(可用性を高めるため)、最大ノード数は 50 に設定されます。
- Company: ご利用の Acumatica Company。
- Endpoint Name: アクセスする Acumatica WebService のエンドポイントの名前。使用可能なエンドポイントは、Acumatica ERP の Web Service Endpoints フォームで確認できます。
- Endpoint Version: エンドポイントのバージョン。使用可能なエンドポイントは Acumatica ERP の Web Service Endpoints フォームで、そのバージョンは Endpoint Version で確認できます。
- Inquiry Tables: カンマ区切りの問い合わせテーブル。Contract 3 Acumatica API バージョン 17.200.001 の問い合わせテーブルは、AccountByPeriodInquiry、AccountBySubaccountInquiry、AccountDetailsInquiry、AccountSummaryInquiry、InventoryAllocationInquiry、InventorySummaryInquiry、InvoicedItemsInquiry、SalesPricesInquiry、VendorPricesInquiry です。
- Schema: 使用する Acumatica API を指定するために使用。デフォルトは REST Contact API です。OData を指定すると、OData API が使用され、OData を介して公開されたすべての汎用問い合わせが動的に取得されます。
- Use proxy: このチェックボックスを選択して、接続用のプロキシ サーバーを構成し、次の値を構成します。
-
Proxy Auth Scheme: プロキシ サーバーで認証する認証タイプを選択します。次の認証タイプがサポートされています。
- 基本: 基本的な HTTP 認証。
- ダイジェスト: ダイジェスト HTTP 認証。
- Proxy User: プロキシ サーバーでの認証に使用されるユーザー名。
- プロキシ パスワード: ユーザーのパスワードの Secret Manager シークレット。
-
Proxy SSL Type: プロキシ サーバーへの接続時に使用する SSL タイプ。次の認証タイプがサポートされています。
- 自動: デフォルトの設定。URL が HTTPS URL の場合は、[トンネル] オプションが使用されます。URL が HTTP URL の場合、[なし] オプションが使用されます。
- 常に: 接続は常に SSL 対応です。
- なし: 接続は SSL に対応していません。
- トンネル: 接続はトンネリング プロキシ経由で行われます。プロキシ サーバーがリモートホストへの接続を開き、トラフィックはプロキシを経由するようになります。
- [Proxy Server] セクションで、プロキシ サーバーの詳細を入力します。
- [+ 宛先を追加] をクリックします。
- [宛先の種類] を選択します。
- Host address: 宛先のホスト名または IP アドレスを指定します。
バックエンドへのプライベート接続を確立する場合は、次のようにします。
- PSC サービス アタッチメントを作成します。
- エンドポイント アタッチメントを作成し、続いて [Host address] フィールドにあるエンドポイント アタッチメントの詳細を入力します。
- Host address: 宛先のホスト名または IP アドレスを指定します。
- 必要に応じて、[+ ラベルを追加] をクリックして Key-Value ペアの形式でラベルを接続に追加します。
- [NEXT] をクリックします。
- [宛先] セクションに、接続するリモートホスト(バックエンド システム)の詳細を入力します。
- 宛先の種類: 宛先の種類を選択します。
- リストから [ホストアドレス] を選択し、宛先のホスト名または IP アドレスを指定します。
- バックエンド システムへのプライベート接続を確立する場合は、リストからエンドポイント アタッチメントを選択し、次にエンドポイント アタッチメントリストから必要なエンドポイント アタッチメントを選択します。
セキュリティをさらに強化してバックエンドシステムへのパブリック接続を確立する場合は、接続用の静的アウトバウンド IP アドレスの構成を検討してから、特定の静的 IP アドレスのみを許可リストに登録するようファイアウォール ルールを構成します。
他の宛先を入力するには、[+ 宛先を追加] をクリックします。
- [NEXT] をクリックします。
- 宛先の種類: 宛先の種類を選択します。
-
[認証] セクションで、認証の詳細を入力します。
- [認証タイプ] を選択し、関連する詳細を入力します。
Acumatica 接続でサポートされる認証タイプは次のとおりです。
- ユーザー名とパスワードを指定する
- [NEXT] をクリックします。
これらの認証タイプを構成する方法については、認証を構成するをご覧ください。
- [認証タイプ] を選択し、関連する詳細を入力します。
- Review: 接続と認証の詳細を確認します。
- [作成] をクリックします。
認証を構成する
使用する認証に基づいて詳細を入力します。
-
ユーザー名とパスワード
- ユーザー名: コネクタのユーザー名
- パスワード: コネクタに関連付けられたパスワードを含む Secret Manager の Secret。
接続構成のサンプル
このセクションでは、Acumatica 接続の作成時に構成するさまざまなフィールドのサンプル値を示します。
REST 接続タイプ
フィールド名 | 詳細 |
---|---|
ロケーション | europe-west1 |
コネクタ | Acumatica |
コネクタのバージョン | 1 |
接続名 | Acumatica |
Cloud Logging を有効にする | False |
サービス アカウント | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
詳細レベル | 5 |
ノードの最小数 | 2 |
ノードの最大数 | 50 |
ホスト | https://examplepetstore.com |
ユーザー名 | USERNAME |
パスワード | パスワード |
シークレットのバージョン | 1 |
OData 接続タイプ
フィールド名 | 詳細 |
---|---|
ロケーション | europe-west1 |
コネクタ | Acumatica |
コネクタのバージョン | 1 |
接続名 | Acumatica |
Cloud Logging を有効にする | False |
サービス アカウント | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
会社 | 組織の例 |
Endpoint Version | 22.200.001 |
お問い合わせテーブル | PX_Objects_AP_APInvoice |
スキーマ | OData |
詳細レベル | 5 |
ノードの最小数 | 2 |
ノードの最大数 | 50 |
ホスト | https://examplepetstore.com |
ユーザー名 | USERNAME |
パスワード | パスワード |
シークレットのバージョン | 1 |
エンティティ、オペレーション、アクション
すべての Integration Connectors が、接続されたアプリケーションのオブジェクトを抽象化するレイヤを提供します。アプリケーションのオブジェクトには、この抽象化を通じてのみアクセスできます。抽象化は、エンティティ、オペレーション、アクションとして公開されます。
- エンティティ: エンティティは、接続されているアプリケーションやサービスのオブジェクト、またはプロパティのコレクションと考えることができます。エンティティの定義は、コネクタによって異なります。たとえば、データベース コネクタでは、テーブルがエンティティであり、ファイル サーバー コネクタでは、フォルダがエンティティです。また、メッセージング システム コネクタでは、キューがエンティティです。
ただし、コネクタでいずれのエンティティもサポートされていない、またはエンティティが存在しない可能性があります。その場合、
Entities
リストは空になります。 - オペレーション: エンティティに対して行うことができるアクティビティです。エンティティに対して次のいずれかのオペレーションを行うことができます。
使用可能なリストからエンティティを選択すると、そのエンティティで使用可能なオペレーションのリストが生成されます。オペレーションの詳細については、コネクタタスクのエンティティ オペレーションをご覧ください。ただし、コネクタがいずれかのエンティティ オペレーションをサポートしていない場合、サポートされていないオペレーションは
Operations
リストに含まれません。 - アクション: コネクタ インターフェースを介して統合で使用できる主要な関数の一つです。アクションを使用すると、1 つまたは複数のエンティティに対して変更を加えることができます。また、使用できるアクションはコネクタごとに異なります。通常、アクションには入力パラメータと出力パラメータがあります。ただし、コネクタがどのアクションもサポートしていない可能性があります。その場合は、
Actions
リストが空になります。
システムの上限
Acumatica コネクタは、ノードごとに 1 秒あたり 1 件のトランザクションを処理することができ、この上限を超えるトランザクションすべてをスロットルします。デフォルトでは、Integration Connectors は、接続に 2 つのノードを割り当てます(可用性を高めるため)。
Integration Connectors に適用される上限の詳細については、上限をご覧ください。
アクション
このセクションには、コネクタでサポートされているアクションが一覧表示されます。アクションの構成方法については、アクションの例をご覧ください。
ExecuteAction アクション
このアクションにより、アクションを実行できます。
ExecuteAction アクションの入力パラメータ
パラメータ名 | データ型 | 必須 | 説明 |
---|---|---|---|
ActionName | 文字列 | × | 実行するアクションの名前。 |
EntityRecord | 文字列 | × | JSON 形式のエンティティ レコード、またはアクションを適用するエンティティ レコードの一時テーブル。 |
パラメータ | 文字列 | × | アクションのパラメータ(JSON 形式)。 |
TopLevelEntity | 文字列 | × | アクションを実行するエンティティ タイプの名前。 |
ExecuteAction アクションの出力パラメータ
このアクションにより、ExecuteAction の確認メッセージが返されます。
ExecuteAction
アクションの構成例については、例をご覧ください。
アクションの例
例 - アクションを実行する
このアクションは、指定されたアクションを実行します。
- [
Configure connector task
] ダイアログで、[Actions
] をクリックします。 - [
ExecuteAction
] アクションを選択してから、[完了] をクリックします。 - [コネクタ] タスクの [タスク入力] セクションで、
connectorInputPayload
をクリックし、Default Value
フィールドに次のような値を入力します。{ "ActionName": "PrintSalesOrder", "TopLevelEntity": "SalesOrder" "EntityRecord": "{ "Type": { "value": "IN" }, "OrderNbr": { "value": "000007" }, "CustomerID": { "value": "CANDYY" }, "LocationID": { "value": "MAIN" }}}"
アクションが成功すると、ExecuteAction
タスクの connectorOutputPayload
レスポンス パラメータの値は次のようになります。
[{ "Status": "Success", "AffectedRecords": "1" }]
エンティティ オペレーションの例
このセクションでは、このコネクタでエンティティ オペレーションの一部を実行する方法について説明します。
例 - すべての顧客を一覧表示する
この例では、Customer
エンティティ内のすべての顧客を一覧表示します。
- [
Configure connector task
] ダイアログで、[Entities
] をクリックします。 Entity
からCustomer
を選択します。- [
List
] オペレーションを選択してから、[完了] をクリックします。 - 必要に応じて、コネクタタスクの [タスク入力] セクションでフィルタ句を指定して、結果セットをフィルタリングできます。 フィルタ句の値は、常に単一引用符(')内で指定します。
例 - PurchaseOrder を取得する
- [
Configure connector task
] ダイアログで、[Entities
] をクリックします。 Entity
リストから PurchaseOrder を選択します。- [
Get
] オペレーションを選択してから、[完了] をクリックします。 - エンティティ ID を「単一の注文書を取得」に設定します。エンティティ ID を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに
000001
を入力し、EntityId をローカル変数として選択します。
例 - アカウントを削除する
- [
Configure connector task
] ダイアログで、[Entities
] をクリックします。 Entity
リストから [アカウント] を選択します。- [
Delete
] オペレーションを選択してから、[完了] をクリックします。 - エンティティ ID を「アカウントを削除」に設定します。エンティティ ID を設定するには、[データ マッピング] の [データ マッパー] セクションで [データ マッピング エディタを開く] をクリックし、[入力値] フィールドに
10250
を入力し、EntityId をローカル変数として選択します。
例 - ジャーナル トランザクションを作成する
この例では、JournalTransaction
エンティティに レコードを作成します。
- [
Configure connector task
] ダイアログで、[Entities
] をクリックします。 Entity
からJournalTransaction
を選択します。- [
Create
] オペレーションを選択してから、[完了] をクリックします。 - [コネクタ] タスクの [タスク入力] セクションで、
connectorInputPayload
をクリックし、Default Value
フィールドに次のような値を入力します。{ "Description": "go again", "BatchNbr": "000008", "CurrencyID": "INR", "Module": "GL" }
統合に成功すると、コネクタタスクの
connectorOutputPayload
フィールドの値は次のようになります。[{ "BatchNbr": "000016", "Module": "GL" }]
例 - 販売注文を更新する
この例では、SalesOrder
エンティティに レコードを作成します。
- [
Configure connector task
] ダイアログで、[Entities
] をクリックします。 Entity
からSalesOrder
を選択します。- [
Update
] オペレーションを選択してから、[完了] をクリックします。 - [コネクタ] タスクの [タスク入力] セクションで、
connectorInputPayload
をクリックし、Default Value
フィールドに次のような値を入力します。{ "Approved": true, "Description": "SO--0014" }
- [entityID] をクリックし、[デフォルト値] フィールドに「
000025
」と入力します。統合に成功すると、コネクタタスクの
connectorOutputPayload
フィールドの値は次のようになります。[{ "OrderNbr": "000025", "OrderType": "CS" }]
インテグレーションで Acumatica 接続を使用する
接続を作成すると、Apigee Integration と Application Integration の両方で使用できるようになります。この接続は、コネクタタスクを介して統合で使用できます。
- Apigee Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。
- Application Integration で Connectors タスクを作成して使用する方法については、Connectors タスクをご覧ください。
Google Cloud コミュニティの助けを借りる
Google Cloud コミュニティの Cloud フォーラムで質問を投稿したり、このコネクタについてディスカッションしたりできます。次のステップ
- 接続を一時停止して再開する方法を確認する。
- コネクタの使用状況をモニタリングする方法を確認する。
- コネクタログを表示する方法を確認する。