cancel
Showing results for 
Search instead for 
Did you mean: 

BAPI_NETWORK_COMP_ADD

Former Member
0 Kudos

this is my code in FoxPro, can uguide me where i am doing wrong.

i want to create reservation same as CN22. for said material.

******************code**********************

SET DEFAULT TO E:\sap_add_comp_network

SET EXCLUSIVE OFF

CLOSE ALL

CLOSE ALL

SET EXCL OFF

SET STRICTDATE TO 0

SET DELE ON

CLOSE DATA

Functions = CREATEOBJECT("SAP.Functions")

Functions.CONNECTION.ApplicationServer ='10.25.0.66'

Functions.CONNECTION.SYSTEM = '00'

Functions.CONNECTION.tracelevel=6

Functions.CONNECTION.client = '400'

Functions.CONNECTION.USER = 'P10021331'

Functions.CONNECTION.PASSWORD = 'P@ssword4'

Functions.CONNECTION.language = 'EN'

IF Functions.CONNECTION.Logon(0,.f.)=.f. Then

RETURN

ENDIF

RfcCallTransaction = Functions.ADD("BAPI_NETWORK_COMP_ADD")

RfcCallTransaction.call

RfcCallTransaction.Exports("number")="500000000954"

RfcCallTransaction.tables.Item("I_COMPONENTS_ADD")

objtable=RfcCallTransaction.tables("I_COMPONENTS_ADD")

readtext = functions.Add("RFC_READ_TEXT")

Tableobj = READtext.tables.Item("TEXT_LINES")

?objtable.rowcount,objtable.ColumnCount,

RfcCallTransaction.exports("ACTIVITY")="0010"

RfcCallTransaction.Exports("TYPE_OF_PUR_RESV")="3"

RfcCallTransaction.Exports("ITEM_NUMBER")="0350"

RfcCallTransaction.Exports("MATERIAL")="000000002000884889"

RfcCallTransaction.Exports("PLANT")="JGE2"

RfcCallTransaction.Exports("ENTRY_QUANTITY")=5.000

RfcCallTransaction.Exports("BASE_UOM")="EA"

RfcCallTransaction.Exports("BASE_UOM_ISO")="EA"

RfcCallTransaction.Exports("ITEM_CAT")="L"

RfcCallTransaction.Exports("ITEM_TEXT")="PIPING MATERIAL ISSUE"

RfcCallTransaction.Exports("COST_RELEVANT")="X"

RfcCallTransaction.Exports("STGE_LOC")="JMPC"

RfcCallTransaction.Exports("WBS_ELEMENT")=00274971

RfcCallTransaction1 = Functions.ADD("BAPI_TRANSACTION_COMMIT")

RfcCallTransaction1.call

Create table ('E:\sap_add_comp_network\E_MESSAGE_TABLE') ; &&Change as required

(a1 C(100),a2 C(100),a3 c(100),a4 c(100),a5 c(100),a6 c(100),a7 c(100),a8 char(100),;

a9 C(100),a10 C(100),a11 c(100),a12 c(100),a13 c(100),a14 char(100),a15 t,a16 char(100),;

a17 C(100),a18 C(100),a19 c(100),a20 c(100),a21 c(100),a22 c(100),a23 c(100),a24 char(100),;

a25 C(100),a26 C(100),a27 c(100),a28 c(100),a29 c(100),a30 c(100),a31 c(100),a32 char(100),;

a33 C(100),a34 C(100),a35 c(100),a36 c(100),a37 c(100),a38 c(100),a39 c(100),a40 char(100),;

a41 C(100),a42 C(100),a43 c(100),a44 c(100),a45 c(100),a46 c(100),a47 c(100),a48 char(100),;

a49 C(100),a50 C(100),a51 c(100),a52 c(100),a53 c(100),a54 c(100),a55 c(100),a56 char(100),;

a57 C(100),a58 C(100),a59 c(100),a60 c(100),a61 c(100),a62 c(100),a63 c(100),a64 c(100),a65 c(100),;

a66 C(100),a67 C(100),a68 c(100),a69 c(100),a70 c(100),a71 c(100),a72 c(100),a73 c(100),a74 c(100),;

a75 C(100),a76 C(100),a77 c(100),a78 c(100),a79 c(100),a80 c(100),a81 c(100),a82 c(100),a83 c(100),a84 c(100),;

a85 c(100),a86 c(100),a87 c(100))

CLOSE TABLES

IF RfcCallTransaction.call=.t.

USE E_MESSAGE_TABLE

FOR i1 = 1 TO objtable.rowcount

APPEND BLANK

FOR j1=1 TO objtable.ColumnCount

mm1="a"+ALLTRIM(STR(j1))

chck=objtable.cell(i1,j1)

?chck,"CELL",MM1,"CO_CODE","ROW:",I1,"COLUMN",J1

replace &mm1 WITH objtable.cell(i1,j1)

ENDFOR

ENDFOR

ENDIF

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member203108
Active Contributor
0 Kudos

Dear, I dont think PS forum can help you on your Foxpro code. We discuss functional related issues here.

Former Member
0 Kudos

if VB code is possible i can manage.

Former Member
0 Kudos

i have done it with code.

it add componets to network,

but only proble is item added by this method dots shows in TC-YPSYM08.

HOW TO DO THAT?

***********

SET DEFAULT TO E:\sap_add_comp_network

SET EXCLUSIVE OFF

CLOSE ALL

CLOSE ALL

SET EXCL OFF

SET STRICTDATE TO 0

SET DELE ON

CLOSE DATA

Functions = CREATEOBJECT("SAP.Functions")

Functions.CONNECTION.ApplicationServer ='10.25.0.66'

Functions.CONNECTION.SYSTEM = '00'

Functions.CONNECTION.tracelevel=6

Functions.CONNECTION.client = '400'

Functions.CONNECTION.USER = 'P10021331'

Functions.CONNECTION.PASSWORD = 'P@ssword4'

Functions.CONNECTION.language = 'EN'

IF Functions.CONNECTION.Logon(0,.f.)=.f. Then

RETURN

ENDIF

RfcCallTransaction = Functions.ADD("BAPI_NETWORK_COMP_ADD")

RfcCallTransaction.Exports("number")="500000000954"

RfcCallTransaction.tables.Item("I_COMPONENTS_ADD")

objtable1=RfcCallTransaction.tables("I_COMPONENTS_ADD")

readtext1 = functions.Add("RFC_READ_TEXT")

Tableobj1 = readtext1.tables.Item("TEXT_LINES")

USE mattab

FOR i=1 TO RECCOUNT()

objtable1.appendrow

FOR j=1 TO FCOUNT()

GOTO i

mm2="a"+ALLTRIM(STR(j))

?&mm2

objtable1.CELL(1,j)=&mm2

endfor

endfor

RfcCallTransaction.call

?objtable1.rowcount,objtable1.ColumnCount

RfcCallTransaction.tables.Item("E_MESSAGE_TABLE")

objtable=RfcCallTransaction.tables("E_MESSAGE_TABLE")

readtext = functions.Add("RFC_READ_TEXT")

Tableobj = READtext.tables.Item("TEXT_LINES")

RfcCallTransaction = Functions.ADD("BAPI_TRANSACTION_COMMIT")

RfcCallTransaction.call

Create table ('E:\sap_add_comp_network\E_MESSAGE_TABLE') ; &&Change as required

(a1 C(100),a2 C(100),a3 c(100),a4 c(100),a5 c(100),a6 c(100),a7 c(100),a8 char(100),;

a9 C(100),a10 C(100),a11 c(100),a12 c(100),a13 c(100),a14 char(100),a15 t,a16 char(100),;

a17 C(100),a18 C(100),a19 c(100),a20 c(100),a21 c(100),a22 c(100),a23 c(100),a24 char(100),;

a25 C(100),a26 C(100),a27 c(100),a28 c(100),a29 c(100),a30 c(100),a31 c(100),a32 char(100),;

a33 C(100),a34 C(100),a35 c(100),a36 c(100),a37 c(100),a38 c(100),a39 c(100),a40 char(100),;

a41 C(100),a42 C(100),a43 c(100),a44 c(100),a45 c(100),a46 c(100),a47 c(100),a48 char(100),;

a49 C(100),a50 C(100),a51 c(100),a52 c(100),a53 c(100),a54 c(100),a55 c(100),a56 char(100),;

a57 C(100),a58 C(100),a59 c(100),a60 c(100),a61 c(100),a62 c(100),a63 c(100),a64 c(100),a65 c(100),;

a66 C(100),a67 C(100),a68 c(100),a69 c(100),a70 c(100),a71 c(100),a72 c(100),a73 c(100),a74 c(100),;

a75 C(100),a76 C(100),a77 c(100),a78 c(100),a79 c(100),a80 c(100),a81 c(100),a82 c(100),a83 c(100),a84 c(100),;

a85 c(100),a86 c(100),a87 c(100))

CLOSE TABLES

IF RfcCallTransaction.call=.t.

USE E_MESSAGE_TABLE

FOR i1 = 1 TO objtable.rowcount

APPEND BLANK

FOR j1=1 TO objtable.ColumnCount

mm1="a"+ALLTRIM(STR(j1))

chck=objtable.cell(i1,j1)

?chck,"CELL",MM1,"CO_CODE","ROW:",I1,"COLUMN",J1

replace &mm1 WITH objtable.cell(i1,j1)

ENDFOR

ENDFOR

ENDIF

CLOSE ALL

Former Member
0 Kudos

Hi Gautam,

Its not about whether you can manage this in FoxPro or VB. Thing is in this forum issues related to funtional PS are discussed, as mentioned by Mohammed. Please raise your issue in the appropriate forum.

Regards,

Gokul Pillai

Edited by: Gokul Pillai on Jan 24, 2011 3:25 PM