Anda di halaman 1dari 4

Insert Data in SAP using .Net Connector 3.0 | The ASP.

NET Forums

Page 1 of 4

ASP.NET
Home
Get Started
Learn
Hosting
Downloads
Community
Forums
Help
Home / ASP.NET Forums / Community / Component Discussions / Insert Data in SAP using .Net Connector 3.0

Insert Data in SAP using .Net Connector


3.0
0 replies
Last post Apr 23, 2012 05:04 AM by prateektiwari14

Insert Data in SAP using .Net Connector 3.0


Apr 23, 2012 05:04 AM | prateektiwari14

Hi, I'm facing one problem while inserting data into SAP using .Net Connetor 3.0
I'm trying to call Z-BAPI to create a sales document in SAP. This BAPI takes some input parameters in form of
structure or tables. Here is my C# code which I have written to accomplish this task...
RfcRepository repo = destination.Repository;
IRfcFunction salesDoc = repo.CreateFunction
("ZSD_SALESDOCUMENT_CREATE_TEST");
IRfcFunction salesDocCommit = repo.CreateFunction
("BAPI_TRANSACTION_COMMIT");
IRfcStructure salesHeader = salesDoc.GetStructure("SALES_HEADER_IN");
IRfcStructure salesHeaderINX = salesDoc.GetStructure
("SALES_HEADER_INX");
IRfcTable
IRfcTable
IRfcTable
IRfcTable
IRfcTable
("SALES_CONDITIONS_INX");
IRfcTable

salesItems = salesDoc.GetTable("SALES_ITEMS_IN");
salesItemsINX = salesDoc.GetTable("SALES_ITEMS_INX");
salesPartners = salesDoc.GetTable("SALES_PARTNERS");
salesCondition = salesDoc.GetTable("SALES_CONDITIONS_IN");
salesConditionINX = salesDoc.GetTable
errorTable = salesDoc.GetTable("RETURN");

IRfcStructure salesItemsStruct =

http://forums.asp.net/t/1795830.aspx?Insert+Data+in+SAP+using+Net+Connector+3+0

11/24/2015

Insert Data in SAP using .Net Connector 3.0 | The ASP.NET Forums

Page 2 of 4

salesItems.Metadata.LineType.CreateStructure();
IRfcStructure salesItemsINXStruct =
salesItemsINX.Metadata.LineType.CreateStructure();
IRfcStructure salesPartnersStruct =
salesPartners.Metadata.LineType.CreateStructure();
IRfcStructure salesPartnersStructRow2 =
salesPartners.Metadata.LineType.CreateStructure();
IRfcStructure salesConditionStruct =
salesCondition.Metadata.LineType.CreateStructure();
IRfcStructure salesConditionINXStruct =
salesConditionINX.Metadata.LineType.CreateStructure();
//Sales Header
salesHeader.SetValue("DOC_TYPE", "YCCD");
salesHeader.SetValue("SALES_ORG", "1100");
salesHeader.SetValue("DISTR_CHAN", "02");
salesHeader.SetValue("DIVISION", "10");
salesHeader.SetValue("SALES_GRP", "514");
salesHeader.SetValue("SALES_OFF", "7000");
salesHeader.SetValue("PURCH_DATE", System.DateTime.Now);
salesHeader.SetValue("REF_1", "TEST");
salesHeader.SetValue("BILL_BLOCK", "");
salesHeader.SetValue("ORD_REASON", "C04");
salesHeader.SetValue("PRICE_DATE", System.DateTime.Now);
salesHeader.SetValue("PURCH_NO_C", "CLT01");

//Sales Header INX


salesHeaderINX.SetValue("UPDATEFLAG", "X");
salesHeaderINX.SetValue("SALES_ORG", "X");
salesHeaderINX.SetValue("DISTR_CHAN", "X");
salesHeaderINX.SetValue("DIVISION", "X");
salesHeaderINX.SetValue("SALES_GRP", "X");
salesHeaderINX.SetValue("SALES_OFF", "X");
salesHeaderINX.SetValue("PURCH_DATE", "X");
salesHeaderINX.SetValue("REF_1", "X");
salesHeaderINX.SetValue("BILL_BLOCK", "X");
salesHeaderINX.SetValue("ORD_REASON", "X");
salesHeaderINX.SetValue("PRICE_DATE", "X");
salesHeaderINX.SetValue("PURCH_NO_C", "X");
//Sales Items
salesItemsStruct.SetValue("ITM_NUMBER", "10");
salesItemsStruct.SetValue("MATERIAL", "YCCD4");
salesItemsStruct.SetValue("TARGET_QTY", "10");
salesItemsStruct.SetValue("TARGET_QU", "UN");

// Sales Items INX


salesItemsINXStruct.SetValue("ITM_NUMBER", "10");

http://forums.asp.net/t/1795830.aspx?Insert+Data+in+SAP+using+Net+Connector+3+0

11/24/2015

Insert Data in SAP using .Net Connector 3.0 | The ASP.NET Forums

Page 3 of 4

salesItemsINXStruct.SetValue("UPDATEFLAG", "X");
salesItemsINXStruct.SetValue("MATERIAL", "X");
salesItemsINXStruct.SetValue("TARGET_QTY", "X");
salesItemsINXStruct.SetValue("TARGET_QU", "X");

//Partners
for(int i=0; i<1; i++)
{
if (i == 0)
{
PartyDetails = "SP";
}
else if (i == 1)
{
PartyDetails = "BP";
}
salesPartners.Append();
salesPartners.SetValue("PARTN_ROLE", PartyDetails);
salesPartners.SetValue("PARTN_NUMB", "0001000122");
}
salesConditionStruct.SetValue("ITM_NUMBER", "10");
salesConditionStruct.SetValue("COND_ST_NO", "1");
salesConditionStruct.SetValue("COND_TYPE", "YCDC");
salesConditionStruct.SetValue("COND_VALUE", "100");
salesConditionStruct.SetValue("CURRENCY", "INR");
salesConditionINXStruct.SetValue("ITM_NUMBER", "10");
salesConditionINXStruct.SetValue("COND_ST_NO", "1");
salesConditionINXStruct.SetValue("COND_TYPE", "YCDC");
salesConditionINXStruct.SetValue("UPDATEFLAG", "X");
salesConditionINXStruct.SetValue("COND_VALUE", "X");
salesConditionINXStruct.SetValue("CURRENCY", "X");
RfcSessionManager.BeginContext(destination);
salesDoc.Invoke(destination);
salesDocCommit.Invoke(destination);
RfcSessionManager.EndContext(destination);
}
catch (RfcCommunicationException e)
{
}
catch (RfcLogonException e)
{
// user could not logon...
}
catch (RfcAbapRuntimeException e)
{

http://forums.asp.net/t/1795830.aspx?Insert+Data+in+SAP+using+Net+Connector+3+0

11/24/2015

Insert Data in SAP using .Net Connector 3.0 | The ASP.NET Forums

Page 4 of 4

// serious problem on ABAP system side...


}
catch (RfcAbapBaseException e)
{
// The function module returned an ABAP exception, an ABAP message
// or an ABAP class-based exception...
}

Whenever I try to execute the above code, I will get the following error : Please enter sold-to party or ship-to
party.
Please help me out to resolve this issue. Quick response is highly appreciated and helpful for me.

This site is managed for Microsoft by Neudesic, LLC. | 2015 Microsoft. All rights reserved.

http://forums.asp.net/t/1795830.aspx?Insert+Data+in+SAP+using+Net+Connector+3+0

11/24/2015

Anda mungkin juga menyukai