Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

using bapi BAPI_CUSTOMER_CREATEFROMDATA1 to create customer

Former Member
0 Likes
1,193

hi guys,

i am using BAPI_CUSTOMER_CREATEFROMDATA1 bapi to create a customer ,

CALL FUNCTION 'BAPI_CUSTOMER_CREATEFROMDATA1'

EXPORTING

PI_PERSONALDATA = gt_PERSONALDATA

PI_COPYREFERENCE = GT_COPYREFERENCE

IMPORTING

CUSTOMERNO = gs_CUSTOMERNO

TABLES

return = gt_return.

GT_COPYREFERENCE is of the type

types: begin of gs_itab,

vkorg TYPE VKORG,

vtweg TYPE VTWEG,

spart TYPE SPART,

REFKUNNR TYPE REFKUNNR,

end of gs_itab.

when i run the program i am getting an error, type is correct but length is incorrect whereas i have checked the structure of pi_copyrefernce its the same.

what is the solution to this?

2 REPLIES 2
Read only

Former Member
0 Likes
662

Hi Nishant,

Define Your structure GT_COPYREFERENCE with type BAPIKNA102.

Regards,

Sandeep

Read only

0 Likes
662

i tried that it still showing length error.

this is my code ..i am uploading a flat file which conatins data

data : gs_customerno like BAPIKNA103-CUSTOMER ,

gs_PERSONALDATA type BAPIKNA101_1,

gt_PERSONALDATA type standard table of BAPIKNA101_1,

gwa_PERSONALDATA type BAPIKNA101_1,

gt_return type standard table of BAPIRETURN1,

gwa_bapiret2 type BAPIRETURN1,

gs_COPYREFERENCE TYPE BAPIKNA102,

gt_COPYREFERENCE TYPE standard table of BAPIKNA102,

gwa_COPYREFERENCE TYPE BAPIKNA102.

types: begin of gty_itab1,

AD_NAMEFIR(40),

AD_CITY2(40),

AD_PSTCD1(10),

LAND1(3),

REGIO(3),

end of gty_itab1.

data: gt_itab1 type standard table of gty_itab1 , "INTERNAL TABLE

gwa_itab1 type gty_itab1. " WORK AERA

types: begin of gty_itab3,

abc(132),

end of gty_itab3.

data: gt_itab3 type standard table of gty_itab3, "INTERNAL TABLE

gwa_itab3 type gty_itab3. "WORK AREA

parameter: p_SORG TYPE BAPIKNA102-SALESORG,

P_DCHNL TYPE BAPIKNA102-DISTR_CHAN,

P_DIV TYPE BAPIKNA102-DIVISION,

P_KUNR TYPE BAPIKNA102-REF_CUSTMR.

start-of-selection.

gs_COPYREFERENCE-SALESORG = p_sorg.

gs_COPYREFERENCE-DISTR_CHAN = p_dchnl.

gs_COPYREFERENCE-DIVISION = p_div.

gs_COPYREFERENCE-REF_CUSTMR = p_KUNR.

append gs_COPYREFERENCE TO GT_COPYREFERENCE.

call function 'UPLOAD'

exporting

filename = 'c:\'

filetype = 'ASC'

tables

data_tab = gt_itab3

exceptions

conversion_error = 1

invalid_table_width = 2

invalid_type = 3

no_batch = 4

unknown_error = 0

gui_refuse_filetransfer = 5.

loop at gt_itab3 into gwa_itab3.

gwa_itab1 = gwa_itab3-abc+0(132).

append gwa_itab1 to gt_itab1.

endloop.

loop at gt_itab1 into gwa_itab1.

* FIRST NAME

gs_PERSONALDATA-FIRSTNAME = gwa_itab1-AD_NAMEFIR.

  • DISTRICT

gs_PERSONALDATA-DISTRICT = gwa_itab1-AD_CITY2.

  • POSTAL CODE

gs_PERSONALDATA-POSTL_COD1 = gwa_itab1-AD_PSTCD1.

  • COUNTRY

gs_PERSONALDATA-COUNTRY = gwa_itab1-LAND1.

  • REGION

gs_PERSONALDATA-REGION = gwa_itab1-REGIO.

append gs_PERSONALDATA to gt_PERSONALDATA.

endloop.

CALL FUNCTION 'BAPI_CUSTOMER_CREATEFROMDATA1'

EXPORTING

PI_PERSONALDATA = gt_PERSONALDATA

PI_COPYREFERENCE = GT_COPYREFERENCE

IMPORTING

CUSTOMERNO = gs_CUSTOMERNO

TABLES

return = gt_return.

* Check the return table.

loop at gt_return into gwa_bapiret2.

if gwa_bapiret2-type = 'S' and

gwa_bapiret2-number = '311'.

* Success message.

write: gwa_bapiret2-message.

call function 'BAPI_TRANSACTION_COMMIT'.

elseif gwa_bapiret2-type = 'E' or

gwa_bapiret2-type = 'A'.

* Error / Abend message

write: / 'Error Message:', gwa_bapiret2-message.

call function 'BAPI_TRANSACTION_ROLLBACK'.

endif.

endloop.

Edited by: nishant patel on Jul 24, 2008 10:33 AM

Edited by: nishant patel on Jul 24, 2008 10:34 AM