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

Net_price Error in BAPI

Former Member
0 Likes
558

Hi ,

I am new to BAPI. I am getting error in the return table of BAPI BAPI_PO_CREATE1 that "net price should be greater than 0 " .Until i call the BAPI the value is greater than zero , but when i call the BAPI the net_price(TYPE BAPICUREXT) is becoming automatically zero. I am not able to know why the the value net_price is changing at the item level.

So no purchase Order is created . Why the net_price is changing and how can i overcome this.

Hi ,

I am new to BAPI. I am getting error in the return table of BAPI BAPI_PO_CREATE1 that "net price should be greater than 0 " .Until i call the BAPI the value is greater than zero , but when i call the BAPI the net_price(TYPE BAPICUREXT) is becoming automatically zero. I am not able to know why the the value net_price is changing at the item level.

So no purchase Order is created . Why the net_price is changing and how can i overcome this.

2 REPLIES 2
Read only

Former Member
0 Likes
482

Are you passing this...???


BAPIMEPOITEMX-NET_PRICE = 'X'.

Greetings,

Blag.

Read only

0 Likes
482

hi ,

yes i am passing BAPIMEPOITEMX-net_price = 'x'.

i am passing 'x' for every item level data.

here is my code .........

&----


*& Report ZBAPI_TRY

*&

&----


*&

*&

&----


REPORT ZBAPI_TRY.

***********************exporting parameters***********************

TYPES : BEGIN OF EXPORT_STRUCT ,

  • HEADER LEVEL DATA

COM_CODE TYPE BUKRS,

VENDOR TYPE LIFNR ,

LANGU(2) ,

PURCH_ORG TYPE EKORG,

PURCH_GROUP TYPE BKGRP,

DOC_DATE(10),

*item level data,

PO_ITEM TYPE EBELP,

MAT_NO TYPE MATNR,

SHORT_TEXT TYPE TXZ01,

QUANTITY TYPE BSTMG,

PLANT TYPE EWERK,

MATL_GROUP TYPE MATKL,

NET_PRICE TYPE BAPICUREXT,

END OF EXPORT_STRUCT.

*TABLE TYPES

TYPES : DAT_TYPE1 TYPE STANDARD TABLE OF EXPORT_STRUCT,

RET TYPE STANDARD TABLE OF BAPIRET2.

*INTERNAL TABLES

DATA : IT_UPLOAD TYPE DAT_TYPE1, "THIS TABLE GETS THE DATA FROM PRESEN.SERVER

IT_PO_HEADER TYPE BAPIMEPOHEADER, " BAPIMEPOHEADER, " PO_HEADER

IT_PO_HEADERX TYPE BAPIMEPOHEADERX ,"PO_HEADERX

IT_ITEM TYPE BAPIMEPOITEM OCCURS 0 WITH HEADER LINE," PO_ITEM , "

IT_ITEMX TYPE BAPIMEPOITEMX OCCURS 0 WITH HEADER LINE, " PO_ITEMX , "

IT_RET TYPE RET. " BAPIRET2 . " OCCURS 0 WITH HEADER LINE.

*WORK AREAS

DATA : WA TYPE EXPORT_STRUCT,

WA_TEMP TYPE EXPORT_STRUCT,

WA_ITEM TYPE BAPIMEPOITEM,

WA_ITEMX TYPE BAPIMEPOITEMX.

*PARAMETRS

PARAMETERS : FILPATH(30) TYPE C.

  • FILPATH1(30) TYPE C.

DATA : F_PATH TYPE STRING,

F_PATH1 TYPE STRING,

X TYPE C VALUE 'X',

CNT TYPE I VALUE '1'.

DATA : TRUN LIKE BAPIFLAG-BAPIFLAG.

START-OF-SELECTION.

F_PATH = FILPATH.

*F_PATH1 = FILPATH1.

*GUI_UPLOAD FOR HEADER LEVEL DATA

CALL FUNCTION 'GUI_UPLOAD'

EXPORTING

filename = F_PATH

FILETYPE = 'ASC'

HAS_FIELD_SEPARATOR = 'X'

  • HEADER_LENGTH =

  • READ_BY_LINE = 'X'

  • DAT_MODE = ' '

  • CODEPAGE = ' '

  • IGNORE_CERR = ABAP_TRUE

  • REPLACEMENT = '#'

  • CHECK_BOM = ' '

  • VIRUS_SCAN_PROFILE =

  • NO_AUTH_CHECK = ' '

  • IMPORTING

  • FILELENGTH =

  • HEADER =

tables

data_tab = IT_UPLOAD

  • 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.

LOOP AT IT_UPLOAD INTO WA.

WA_TEMP = WA.

********POPULATING THE HEADER DATA *********************

IF WA_TEMP-PURCH_ORG IS NOT INITIAL.

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = WA_TEMP-VENDOR

IMPORTING

OUTPUT = WA_TEMP-VENDOR.

*

IT_PO_HEADER-COMP_CODE = WA_TEMP-COM_CODE.

IT_PO_HEADER-doc_tyPE = 'NB'.

IT_PO_HEADER-LANGU = WA_TEMP-LANGU.

IT_PO_HEADER-VENDOR = WA_TEMP-VENDOR.

IT_PO_HEADER-PURCH_ORG = WA_TEMP-PURCH_ORG.

IT_PO_HEADER-PUR_GROUP = WA_TEMP-PURCH_GROUP.

*****MARK X *****

IT_PO_HEADERX-PO_NUMBER = X.

IT_PO_HEADERX-DOC_TYPE = X.

IT_PO_HEADERX-COMP_CODE = X.

IT_PO_HEADERX-LANGU = X.

IT_PO_HEADERX-VENDOR = X.

IT_PO_HEADERX-PURCH_ORG = X.

IT_PO_HEADERX-PUR_GROUP = X.

ENDIF.

*ENDLOOP.

*********populating item leve data ***********

*LOOP AT IT_UPLOAD_ITEM INTO WA_IT.

*WA_IT2 = WA_IT.

AT NEW PO_ITEM.

*C1 = C1 + 1.

IT_ITEM-PO_ITEM = WA_TEMP-PO_ITEM.

IT_ITEM-MATERIAL = WA_TEMP-MAT_NO.

IT_ITEM-SHORT_TEXT = WA_TEMP-SHORT_TEXT.

IT_ITEM-PLANT = WA_TEMP-PLANT.

IT_ITEM-QUANTITY = WA_TEMP-QUANTITY.

IT_ITEM-NET_PRICE = WA_TEMP-NET_PRICE.

APPEND IT_ITEM.

********MARK X************

IT_ITEMX-PO_ITEM = WA_TEMP-PO_ITEM.

IT_ITEMX-PO_ITEMX = 'X'.

IT_ITEMX-MATERIAL = 'X'.

IT_ITEMX-SHORT_TEXT = 'X'.

IT_ITEMX-PLANT = 'X'.

IT_ITEMX-QUANTITY = 'X'.

IT_ITEMX-NET_PRICE = 'X'.

APPEND IT_ITEMX.

ENDAT.

ENDLOOP.

CALL FUNCTION 'BAPI_PO_CREATE1'

EXPORTING

poheader = IT_PO_HEADER

POHEADERX = IT_PO_HEADERX

  • POADDRVENDOR =

TESTRUN = TRUN

  • MEMORY_UNCOMPLETE =

  • MEMORY_COMPLETE =

  • POEXPIMPHEADER =

  • POEXPIMPHEADERX =

  • VERSIONS =

  • NO_MESSAGING =

  • NO_MESSAGE_REQ =

  • NO_AUTHORITY =

  • NO_PRICE_FROM_PO =

  • IMPORTING

  • EXPPURCHASEORDER =

  • EXPHEADER =

  • EXPPOEXPIMPHEADER =

TABLES

RETURN = IT_RET

POITEM = IT_ITEM

POITEMX = IT_ITEMX.

  • POADDRDELIVERY =

  • POSCHEDULE =

  • POSCHEDULEX =

  • POACCOUNT =

  • POACCOUNTPROFITSEGMENT =

  • POACCOUNTX =

  • POCONDHEADER =

  • POCONDHEADERX =

  • POCOND =

  • POCONDX =

  • POLIMITS =

  • POCONTRACTLIMITS =

  • POSERVICES =

  • POSRVACCESSVALUES =

  • POSERVICESTEXT =

  • EXTENSIONIN =

  • EXTENSIONOUT =

  • POEXPIMPITEM =

  • POEXPIMPITEMX =

  • POTEXTHEADER =

  • POTEXTITEM =

  • ALLVERSIONS =

  • POPARTNER =

.

*

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

WAIT = 'X'.

  • IMPORTING

  • RETURN =

*endat.

*CLEAR : IT_ITEM , IT_ITEMX.

*ENDLOOP.

WRITE : 'end'.