2011-11-15 14 views
3

BAPIテーブルに2行を渡そうとしていますが、私のコードは2行目のみを常に取っています。IRfcTableに複数の行を追加する方法

私のようにデータを渡している。

6 7 8 
6 7 8 

の代わり:

1 2 3 
6 7 8 

は、ここで私が試したものです:

IRfcFunction bapiTEST = _rfcDest.Repository.CreateFunction(strBapi); 

IRfcStructure structImport = _rfcDest.Repository.GetStructureMetadata("ZBAPI_A_STRU_ORDER_CLICK").CreateStructure(); 

structImport.SetValue("NUM1", "000001"); 
structImport.SetValue("NUM2", "000002"); 
structImport.SetValue("NUM3", "000003"); 

IRfcTable tblImport = bapiTEST.GetTable("IMPORT"); 
tblImport.Insert(structImport); 

structImport.SetValue("NUM1", "000006"); 
structImport.SetValue("NUM2", "000007"); 
structImport.SetValue("NUM3", "000008"); 

tblImport.Insert(structImport); 
bapiTEST.SetValue("IMPORT", tblImport); 

RfcSessionManager.BeginContext(_rfcDest); 
bapiTEST.Invoke(_rfcDest); 
+0

カスタムbapiのソースコードにアクセスできないとしますか?私の最初の推測では、暗黙的な作業領域を持つテーブルが必要であり、リモート呼び出しが正しく処理していないということです。しかし、私はC#の経験がありません。 –

答えて

2

私はあなたがstructImportを再利用していると思います、 2回目の呼び出しでSetValueも最初のに影響しています0を挿入しました。間に別のCreateStructure()を呼び出してみてください。

+0

はい。レネありがとう。それは私の問題を解決しました。どうもありがとうございました。 – Venky

関連する問題