Skip to Content
0
Former Member
Nov 26, 2014 at 12:45 PM

SAP NCo 3.0 Problem , Import two table to SAP RFC

304 Views

Hello, i have a problem.

Because i must two table import to my rfc function.

But didnt worked this method.

My code part is below.

AppServerHost = servername;

SystemNumber = "96";

User = "USER"

Password = "password";

Client = "210";

Language = "TR";

PoolSize = "1";

MaxPoolSize = "1";

IdleTimeout = "0";

CreateFunction = "ZTMTR_WAS_02";

try

{

RfcDestinationManager.RegisterDestinationConfiguration(new MyBackendConfig());

}

catch

{

}

RfcDestination prd = RfcDestinationManager.GetDestination("PRD_000");

RfcRepository repo = prd.Repository;

IRfcFunction companyBapi = repo.CreateFunction(CreateFunction.ToString());

IRfcTable import2 = companyBapi.GetTable("ZBASLIK");

for (int i = 0; i < dtbaslik.Rows.Count; i++)

{

import2.Append();

import2.SetValue("PERNR", dtbaslik.Rows[i]["pernr"].ToString());

import2.SetValue("SCHEMT", dtbaslik.Rows[i]["SCHEMT"].ToString());

import2.SetValue("BEGDA", dtbaslik.Rows[i]["begda"].ToString());

import2.SetValue("ENDDA", dtbaslik.Rows[i]["endda"].ToString());

import2.SetValue("KUNDE", dtbaslik.Rows[i]["kunde"].ToString());

import2.SetValue("ZORT1", dtbaslik.Rows[i]["zort1"].ToString());

import2.SetValue("ZLAND", dtbaslik.Rows[i]["zland"].ToString());

import2.SetValue("REINR", dtbaslik.Rows[i][7].ToString());

import2.SetValue("PERIO", dtbaslik.Rows[i][8].ToString());

import2.SetValue("PDVRS", dtbaslik.Rows[i][9].ToString());

}

IRfcTable import = companyBapi.GetTable("ZBELEG");

for (int i = 0; i < dtbeleg.Rows.Count; i++)

{

import.Append();

import.SetValue("BELNR", dtbeleg.Rows[i]["BELNR"].ToString());

import.SetValue("SPKZL", dtbeleg.Rows[i]["SPKZL"].ToString());

import.SetValue("BEART", dtbeleg.Rows[i]["BEART"].ToString());

import.SetValue("MWSKZ", dtbeleg.Rows[i]["MWSKZ"].ToString());

import.SetValue("BETRG", dtbeleg.Rows[i]["BETRG"].ToString());

import.SetValue("BLDAT", dtbeleg.Rows[i]["BLDAT"].ToString());

import.SetValue("BTEXT", dtbeleg.Rows[i]["BTEXT"].ToString());

import.SetValue("WAERS", dtbeleg.Rows[i]["WAERS"].ToString());

import.SetValue("KURSB", dtbeleg.Rows[i]["KURSB"].ToString());

import.SetValue("FFACT", dtbeleg.Rows[i]["FFACT"].ToString());

import.SetValue("TFACT", dtbeleg.Rows[i]["TFACT"].ToString());

import.SetValue("ANZFR", dtbeleg.Rows[i]["ANZFR"].ToString());

import.SetValue("LNDFR", dtbeleg.Rows[i]["LNDFR"].ToString());

import.SetValue("BERFR", dtbeleg.Rows[i]["BERFR"].ToString());

import.SetValue("RGION", dtbeleg.Rows[i]["RGION"].ToString());

import.SetValue("TXJCD", dtbeleg.Rows[i]["TXJCD"].ToString());

import.SetValue("PAYOT", dtbeleg.Rows[i]["PAYOT"].ToString());

import.SetValue("PAYCURR", dtbeleg.Rows[i]["PAYCURR"].ToString());

import.SetValue("ABOVE_LIMIT", dtbeleg.Rows[i]["ABOVE_LIMIT"].ToString());

import.SetValue("PROTECT", dtbeleg.Rows[i]["PROTECT"].ToString());

import.SetValue("pernr", dtbeleg.Rows[i]["pernr"].ToString());

}

companyBapi.SetValue("FUNCTION", "3");

companyBapi.Invoke(prd); // i didnt get any error.But rfc didnt worked.

IRfcTable test = companyBapi.GetTable("LOGTAB");

Normally , test table should contains rows.But didnt return any rows.

Not error or warning .

Could you help me please?