我正在創建一個與SAP集成的系統。與SAP集成
客戶給我的功能和參數,據他介紹,在SAP,但在我的代碼,通常是執行此功能時,我嘗試檢索參數,它返回我空。
這裏我的代碼
SAPFunctionsOCX.SAPFunctionsClass func = new SAPFunctionsOCX.SAPFunctionsClass();
func.Connection = connection;
SAPFunctionsOCX.IFunction ifunc = (SAPFunctionsOCX.IFunction)func.Add(functionName);
SAPTableFactoryCtrl.Tables tables = (SAPTableFactoryCtrl.Tables)ifunc.Tables;
SAPTableFactoryCtrl.Table objTable = (SAPTableFactoryCtrl.Table)tables[tableName];
//Paramters (Find one column "MATNR"
SAPTableFactoryCtrl.Columns cols2 = (SAPTableFactoryCtrl.Columns)objTable.Columns;
for (int i = 1; i <= cols2.Count; i++)
{
SAPTableFactoryCtrl.Column col = (SAPTableFactoryCtrl.Column)cols2[i];
Console.WriteLine(col.Name);
}
//Error here! matnr == null
SAPFunctionsOCX.IParameter matnr = (SAPFunctionsOCX.IParameter)ifunc.get_Exports("MATNR");
搜索互聯網發現類似地雷的幾個例子, here,here和here!
爲什麼方法。 get_Exports( 「MATNR」);返回null?
這是一個標準的功能模塊?我在代碼中看不到它。導出參數列表可以爲空,也許有需要檢查的表參數。 – 2011-03-01 15:01:10
functionName,tableName是分別包含函數名和表名的變量。 表參數無法恢復,有一個方法get_Exports和函數。 (請參閱[此處]的示例(http://forums.sdn.sap.com/thread.jspa?threadID=1425169),[這裏](http://sunhongwei2002.blog.163.com/blog/static/149007012201062165717737 /)和[這裏](http://blog.csdn.net/robaot/archive/2009/10/20/4704127.aspx) – ridermansb 2011-03-01 17:12:41
我不認爲例3是正確的。通常你指定導入參數不能導出參數。 – 2011-03-02 09:47:21