0

AX に単純なカスタム テーブルがあり、外部システムがデータを入力できるように Web サービスを作成する必要があります。関連するすべての Axd* および Ax* オブジェクトを含むドキュメント サービスを作成しました。次に、簡単なコンソール アプリケーションを作成して、ダミー データの入力を試みました。興味深いのは、文字列データ型の列にのみデータを入力できることです。Int、Real、Date、Enums などは通過しません。

以下のコードでは、両方とも文字列であるため、StoreItemId 列と Barcode 列のみを取得しています。Cost は実数、ErrorType は Enum、DocketDate は日付で、いずれも値を取得しません。私はこの問題について多くの同僚と話し合ってきましたが、何が起こっているのか誰も知りません。誰かが知っているか、私を新しい方向に向けることができますか? どうもありがとう。

追伸 - 私は AIF の経験が限られているため、何か基本的なことが抜けている場合は、申し訳ありませんがお知らせください。ありがとう。

AxdEntity_MMSStagingSalesImport stagingSalesImport = new AxdEntity_MMSStagingSalesImport();
stagingSalesImport.StoreItemId = "9999";
stagingSalesImport.Barcode = "1234546";
stagingSalesImport.Cost = 22;
stagingSalesImport.ErrorType = AxdEnum_MMSImportErrorType.Posting;
stagingSalesImport.DocketDate = new DateTime(2014, 4, 4);
stagingSalesImport.IsDuplicate = AxdEnum_NoYes.Yes;
4

2 に答える 2

1

一部の型では、値を設定したことを指定して、AX が null 値と設定された値の違いを認識できるようにする必要があります。

stagingSalesImport.Cost = 22;
stagingSalesImport.CostSpecified = true;
stagingSalesImport.ErrorType = AxdEnum_MMSImportErrorType.Posting;
stagingSalesImport.ErrorTypeSpecified = AxdEnum_MMSImportErrorType.Posting;
于 2014-04-07T14:00:10.163 に答える
0

Klaas さん、返信ありがとうございます。あなたのブログも気に入っています。

もっと早くに対応すべきでしたが、問題を解決しました。Klaas のオプションは試しませんでしたが、インバウンド ポートのデータ ポリシーを調べたところ、どの列も有効になっていないことがわかりました。必要なものを有効にし、それらのほとんども必須にしました。そして、それはうまくいったと思います。デフォルトで列が有効になっているはずだと思っていました。

于 2014-04-12T04:57:18.727 に答える