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

bapi BAPI_SALESORDER_CREATEFROMDAT2 not working urgent

Former Member
0 Likes
688

helo all,

i am using BAPI_SALESORDER_CREATEFROMDAT2 for creation of sales order with ref to another sales order when i am testing it is giving error as item number 000000 is error,i tried giving 00010 and 00001 also even its givibng the same error plz help me its urgent.......

2 REPLIES 2
Read only

Former Member
0 Likes
435

Hi

Refer to the following code:

REPORT z_bapi .

TYPE-POOLS: slis.

SELECTION-SCREEN BEGIN OF BLOCK b1.

PARAMETERS: psalesor LIKE vbak-vkorg,

pdistch LIKE vbak-vtweg,

pdiv LIKE vbak-spart,

pdoctype LIKE vbak-auart,

path TYPE rlgrap-filename.

SELECTION-SCREEN END OF BLOCK b1.

DATA: saldocno LIKE vbak-vbeln.

  • declaration for fieldcatalog

DATA: catalog TYPE slis_t_fieldcat_alv.

  • wa_fieldcat TYPE slis_fieldcat_alv.

DATA: BEGIN OF itabgui OCCURS 10,

shipto LIKE vbak-kunnr,

soldto LIKE vbpa-kunnr,

mat LIKE vbap-matwa,

quan LIKE vbap-kwmeng,

END OF itabgui.

DATA: BEGIN OF itabop OCCURS 10,

ship LIKE vbak-kunnr,

sold LIKE vbpa-kunnr,

ordno LIKE vbak-vbeln,

numlin LIKE sy-tfill,

mess LIKE bapiret2-type,

mtext LIKE bapiret2-message,

END OF itabop.

DATA: gt_data LIKE bapisdhd1.

gt_data-sales_org = psalesor.

gt_data-distr_chan = pdistch.

gt_data-division = pdiv.

gt_data-doc_type = pdoctype.

DATA: orderit LIKE bapisditm OCCURS 0 WITH HEADER LINE,

sch LIKE bapischdl OCCURS 0 WITH HEADER LINE,

part LIKE bapiparnr OCCURS 0 WITH HEADER LINE.

DATA:l_path TYPE string,

ret TYPE bapiret2 OCCURS 0 WITH HEADER LINE.

l_path = path.

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = l_path

filetype = 'ASC'

has_field_separator = 'X'

  • HEADER_LENGTH = 0

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • IMPORTING

  • FILELENGTH =

  • HEADER =

TABLES

data_tab = itabgui

EXCEPTIONS

file_open_error = 1

file_read_error = 2

no_batch = 3

gui_refuse_filetransfer = 4

invalid_type = 5

no_authority = 6

unknown_error = 7

bad_data_format = 8

header_not_allowed = 9

separator_not_allowed = 10

header_too_long = 11

unknown_dp_error = 12

access_denied = 13

dp_out_of_memory = 14

disk_full = 15

dp_timeout = 16

OTHERS = 17

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

IF sy-subrc = 0.

LOOP AT itabgui.

WRITE: itabgui-mat.

ENDLOOP.

MESSAGE i001(z68416msg).

ENDIF.

*********************************************************

READ TABLE itabgui INDEX 1.

part-partn_numb = itabgui-shipto.

part-partn_role = 'WE'.

APPEND part.

part-partn_numb = itabgui-soldto.

part-partn_role = 'AG'.

APPEND part.

LOOP AT itabgui.

orderit-material = itabgui-mat.

sch-req_qty = itabgui-quan.

APPEND orderit.

APPEND sch.

CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'

EXPORTING

  • salesdocumentin =

order_header_in = gt_data

  • ORDER_HEADER_INX =

  • SENDER =

  • BINARY_RELATIONSHIPTYPE =

  • INT_NUMBER_ASSIGNMENT =

  • BEHAVE_WHEN_ERROR =

  • LOGIC_SWITCH =

  • TESTRUN =

  • CONVERT = ' '

IMPORTING

salesdocument = saldocno

TABLES

return = ret

order_items_in = orderit

  • ORDER_ITEMS_INX =

order_partners = part

order_schedules_in = sch

  • ORDER_SCHEDULES_INX =

  • ORDER_CONDITIONS_IN =

  • ORDER_CONDITIONS_INX =

  • ORDER_CFGS_REF =

  • ORDER_CFGS_INST =

  • ORDER_CFGS_PART_OF =

  • ORDER_CFGS_VALUE =

  • ORDER_CFGS_BLOB =

  • ORDER_CFGS_VK =

  • ORDER_CFGS_REFINST =

  • ORDER_CCARD =

  • ORDER_TEXT =

  • ORDER_KEYS =

  • EXTENSIONIN =

  • PARTNERADDRESSES =

.

DESCRIBE TABLE orderit LINES sy-tfill.

  • orderit-lines = sy-tfill.

itabop-ship = itabgui-shipto.

itabop-sold = itabgui-soldto.

itabop-ordno = saldocno.

  • itabop-mat = itabgui-mat.

itabop-numlin = sy-tfill.

itabop-mess = ret-type.

itabop-mtext = ret-message.

APPEND itabop.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

wait = space.

  • IMPORTING

  • RETURN =

ENDLOOP.

**IF sy-subrc = 0.

**

    • WRITE:/ ret-type.

    • WRITE: saldocno.

**

**ELSE.

**

    • WRITE: 'error'.

**

**ENDIF.

**

**

LOOP AT itabop.

WRITE: / itabop-ship,

itabop-sold,

itabop-ordno,

itabop-numlin,

itabop-mess,

itabop-mtext.

ENDLOOP.

REFRESH: catalog.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

EXPORTING

i_program_name = 'Z_BAPI_68416'

i_internal_tabname = 'ITABOP'

  • I_STRUCTURE_NAME =

  • I_CLIENT_NEVER_DISPLAY = 'X'

i_inclname = 'Z_BAPI_68416'

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE =

CHANGING

ct_fieldcat = catalog

EXCEPTIONS

inconsistent_interface = 1

program_error = 2

OTHERS = 3

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE = ' '

  • I_CALLBACK_PROGRAM = ' '

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_STRUCTURE_NAME =

  • IS_LAYOUT =

it_fieldcat = catalog

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

TABLES

t_outtab = itabop

EXCEPTIONS

program_error = 1

OTHERS = 2

.

IF sy-subrc <> 0.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

Message was edited by:

Vasudha L

Message was edited by:

Vasudha L

Read only

Former Member
0 Likes
435

Hi,

Check this sample code threads -

http://www.saptechies.com/bapi_salesorder_createfromdat2/

Hope this helps.

ashish