ADO.NET Provider for SAP ERP

Build 23.0.8839

DataAdapter を使用したクエリ

CData ADO.NET Provider for SAP ERP では、次の2つのネイティブ.NET インターフェースを使用して、SAP ERP からデータを取得できます。SAPERPDataAdapter オブジェクトおよびSAPERPDataReader オブジェクト。各オブジェクトは同じタスク(データの取得)を実行しますが、実行方法が異なります。SAPERPDataAdapter オブジェクトはクエリに一致するすべてのデータを取得しますが、SAPERPDataReader オブジェクトは必要に応じてインクリメントしながら一部のデータだけをフェッチします。

SAPERPDataAdapter の使用

アダプターのFill メソッドを使用して、データソースからデータを取得します。空のDataTable インスタンスがFill メソッドへの引数として渡されます。このメソッドが戻ってきたとき、DataTable インスタンスにはクエリされたデータが設定されています。Fill メソッドは、戻る前にデータソースからすべてのデータを取得する必要があるため、SAPERPDataAdapter はSAPERPDataReader よりも時間がかかります。

次の例は、MARA テーブルのMANDT カラムとMATNR カラムを選択します。

C#

string connectionString = "Host=sap.mydomain.com;User=EXT90033;Password=xxx;Client=800;System Number=09;ConnectionType=Classic;";

using (SAPERPConnection connection = new SAPERPConnection(connectionString)) {
  SAPERPDataAdapter dataAdapter = new SAPERPDataAdapter(
  "SELECT MANDT, MATNR FROM MARA", connection);

  DataTable table = new DataTable();
  dataAdapter.Fill(table);

  Console.WriteLine("Contents of MARA.");

  foreach (DataRow row in table.Rows) {
    Console.WriteLine("{0}: {1}", row["MANDT"], row["MATNR"]);
  }
}

VB.NET

Dim connectionString As String = "Host=sap.mydomain.com;User=EXT90033;Password=xxx;Client=800;System Number=09;ConnectionType=Classic;"

Using connection As New SAPERPConnection(connectionString)
  Dim dataAdapter As New SAPERPDataAdapter("SELECT MANDT, MATNR FROM MARA", connection)

  Dim table As New DataTable()
  dataAdapter.Fill(table)

  Console.WriteLine("Contents of MARA.")

  For Each row As DataRow In table.Rows
    Console.WriteLine("{0}: {1}", row("MANDT"), row("MATNR"))
  Next
End Using

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839