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

Working with function module

Former Member
0 Likes
985

Hi Experts,

I'm working on PM related stuff, i need to send the order number and retrive lot of data like plant number, material number and much more for which i'm using bapi_alm_order_get_detail. so please give me any sort of code that uses this kind of function module,

I' unable to retrive the data from the exporting paramenters of this function module.

give me any sample code like this to use a function module.

2 REPLIES 2
Read only

Former Member
0 Likes
652

HI -

Please check the sort of code written here

INCLUDE <OBJECT>.

BEGIN_DATA OBJECT. " Do not change.. DATA is generated

  • only private members may be inserted into structure private

DATA:

" begin of private,

" to declare private attributes remove comments and

" insert private attributes here ...

" end of private,

BEGIN OF KEY,

NUMBER LIKE AUFK-AUFNR,

END OF KEY.

END_DATA OBJECT. " Do not change.. DATA is generated

BEGIN_METHOD OPERATIONGETDETAIL CHANGING CONTAINER.

DATA:

IVORDERID LIKE BAPI_ALM_ORDER_HEADER_E-ORDERID,

IVACTIVITY LIKE BAPI_ALM_ORDER_OPERATION_E-ACTIVITY,

IVSUBACTIVITY LIKE BAPI_ALM_ORDER_OPERATION_E-SUB_ACTIVITY,

ESOPERATION LIKE BAPI_ALM_ORDER_OPERATION_E,

RETURN LIKE BAPIRET2 OCCURS 0,

ETTEXT LIKE BAPI_ALM_TEXT OCCURS 0,

ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0.

SWC_GET_ELEMENT CONTAINER 'IvOrderid' IVORDERID.

SWC_GET_ELEMENT CONTAINER 'IvActivity' IVACTIVITY.

SWC_GET_ELEMENT CONTAINER 'IvSubActivity' IVSUBACTIV

CALL FUNCTION 'BAPI_ALM_OPERATION_GET_DETAIL'

EXPORTING

IV_ORDERID = IVORDERID

IV_ACTIVITY = IVACTIVITY

IV_SUB_ACTIVITY = IVSUBACTIVITY

IMPORTING

ES_OPERATION = ESOPERATION

TABLES

RETURN = RETURN

ET_TEXT = ETTEXT

ET_TEXT_LINES = ETTEXTLINES

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_ELEMENT CONTAINER 'EsOperation' ESOPERATION.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

SWC_SET_TABLE CONTAINER 'EtText' ETTEXT.

SWC_SET_TABLE CONTAINER 'EtTextLines' ETTEXTLINES.

END_METHOD.

BEGIN_METHOD COMPONENTGETDETAIL CHANGING CONTAINER.

DATA:

IVORDERID LIKE BAPI_ALM_ORDER_HEADER_E-ORDERID,

IVACTIVITY LIKE BAPI_ALM_ORDER_OPERATION_E-ACTI

IVRESERVNO LIKE BAPI_ALM_ORDER_COMPONENT_E-RESE

IVRESITEM LIKE BAPI_ALM_ORDER_COMPONENT_E-RES_I

IVRESTYPE LIKE BAPI_ALM_ORDER_COMPONENT_E-RES_T

ESCOMPONENT LIKE BAPI_ALM_ORDER_COMPONENT_E,

RETURN LIKE BAPIRET2 OCCURS 0,

ETTEXT LIKE BAPI_ALM_TEXT OCCURS 0,

ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0.

SWC_GET_ELEMENT CONTAINER 'IvOrderid' IVORDERID.

SWC_GET_ELEMENT CONTAINER 'IvActivity' IVACTIVITY.

SWC_GET_ELEMENT CONTAINER 'IvReservNo' IVRESERVNO.

SWC_GET_ELEMENT CONTAINER 'IvResItem' IVRESITEM.

SWC_GET_ELEMENT CONTAINER 'IvResType' IVRESTYPE.

IF SY-SUBRC <> 0.

MOVE SPACE TO IVRESTYPE.

ENDIF.

CALL FUNCTION 'BAPI_ALM_COMPONENT_GET_DETAIL'

EXPORTING

IV_ORDERID = IVORDERID

IV_ACTIVITY = IVACTIVITY

IV_ACTIVITY = IVACTIVITY

IV_RESERV_NO = IVRESERVNO

IV_RES_ITEM = IVRESITEM

IV_RES_TYPE = IVRESTYPE

IMPORTING

ES_COMPONENT = ESCOMPONENT

TABLES

RETURN = RETURN

ET_TEXT = ETTEXT

ET_TEXT_LINES = ETTEXTLINES

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_ELEMENT CONTAINER 'EsComponent' ESCOMPONENT.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

SWC_SET_TABLE CONTAINER 'EtText' ETTEXT.

SWC_SET_TABLE CONTAINER 'EtTextLines' ETTEXTLINES.

END_METHOD.

BEGIN_METHOD ORDERHEADGETLIST CHANGING CONTAINER.

DATA:

DATA:

DISPLAYPARAMETERS LIKE BAPI_ALM_LIST_NAVIGATION_IN,

NAVIGATIONDATA LIKE BAPI_ALM_LIST_NAVIGATION_RET,

ITRANGES LIKE BAPI_ALM_ORDER_LISTHEAD_RANGES OCCURS 0,

ETRESULT LIKE BAPI_ALM_ORDER_LISTHEAD_RESULT OCCURS 0,

ETTEMPLATE LIKE BAPI_ALM_ORDER_LISTHEAD_RANGES OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0.

SWC_GET_ELEMENT CONTAINER 'DisplayParameters' DISPLAYPARAMETERS.

SWC_GET_TABLE CONTAINER 'ItRanges' ITRANGES.

CALL FUNCTION 'BAPI_ALM_ORDERHEAD_GET_LIST'

EXPORTING

DISPLAY_PARAMETERS = DISPLAYPARAMETERS

IMPORTING

NAVIGATION_DATA = NAVIGATIONDATA

TABLES

IT_RANGES = ITRANGES

ET_RESULT = ETRESULT

ET_TEMPLATE = ETTEMPLATE

RETURN = RETURN

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_ELEMENT CONTAINER 'NavigationData' NAVIGATIONDATA.

SWC_SET_TABLE CONTAINER 'EtResult' ETRESULT.

SWC_SET_TABLE CONTAINER 'EtTemplate' ETTEMPLATE.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

END_METHOD.

BEGIN_METHOD ORDEROPERGETLIST CHANGING CONTAINER.

DATA:

DISPLAYPARAMETERS LIKE BAPI_ALM_LIST_NAVIGATION_IN,

NAVIGATIONDATA LIKE BAPI_ALM_LIST_NAVIGATION_RET,

ITRANGES LIKE BAPI_ALM_ORDER_LISTOPER_RANGES OCCURS 0,

ETRESULT LIKE BAPI_ALM_ORDER_LISTOPER_RESULT OCCURS 0,

ETTEMPLATE LIKE BAPI_ALM_ORDER_LISTOPER_RANGES OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0.

SWC_GET_ELEMENT CONTAINER 'DisplayParameters' DISPLAYPARAMETERS.

SWC_GET_TABLE CONTAINER 'ItRanges' ITRANGES.

CALL FUNCTION 'BAPI_ALM_ORDEROPER_GET_LIST'

EXPORTING

DISPLAY_PARAMETERS = DISPLAYPARAMETERS

IMPORTING

NAVIGATION_DATA = NAVIGATIONDATA

TABLES

IT_RANGES = ITRANGES

ET_RESULT = ETRESULT

ET_RESULT = ETRESULT

ET_TEMPLATE = ETTEMPLATE

RETURN = RETURN

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_ELEMENT CONTAINER 'NavigationData' NAVIGATIONDATA.

SWC_SET_TABLE CONTAINER 'EtResult' ETRESULT.

SWC_SET_TABLE CONTAINER 'EtTemplate' ETTEMPLATE.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

END_METHOD.

BEGIN_METHOD ORDERGETDETAIL CHANGING CONTAINER.

DATA:

ESHEADER LIKE BAPI_ALM_ORDER_HEADER_E,

ESSRVDATA LIKE BAPI_ALM_ORDER_SRVDAT_E,

ETPARTNER LIKE BAPI_ALM_ORDER_PARTNER OCCURS 0,

ETOPERATIONS LIKE BAPI_ALM_ORDER_OPERATION_E OCCURS 0,

ETCOMPONENTS LIKE BAPI_ALM_ORDER_COMPONENT_E OCCURS 0,

ETRELATIONS LIKE BAPI_ALM_ORDER_RELATION_EXPORT OCCURS 0,

ETTEXTS LIKE BAPI_ALM_TEXT OCCURS 0,

ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0,

ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0,

ETPRTS LIKE BAPI_ALM_ORDER_PRT_E OCCURS 0,

ETCOSTSSUM LIKE BAPI_ALM_ORDER_COSTS_SUM_E OCCURS 0,

ETCOSTSDETAILS LIKE BAPI_ALM_ORDER_COSTS_DETAIL_E OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0.

CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'

EXPORTING

NUMBER = OBJECT-KEY-NUMBER

IMPORTING

ES_HEADER = ESHEADER

ES_SRVDATA = ESSRVDATA

TABLES

RETURN = RETURN

ET_COSTS_DETAILS = ETCOSTSDETAILS

ET_COSTS_SUM = ETCOSTSSUM

ET_PRTS = ETPRTS

ET_TEXT_LINES = ETTEXTLINES

ET_TEXTS = ETTEXTS

ET_RELATIONS = ETRELATIONS

ET_COMPONENTS = ETCOMPONENTS

ET_OPERATIONS = ETOPERATIONS

ET_PARTNER = ETPARTNER

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC. ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0,

ETPRTS LIKE BAPI_ALM_ORDER_PRT_E OCCURS 0,

ETCOSTSSUM LIKE BAPI_ALM_ORDER_COSTS_SUM_E OCCURS 0,

ETCOSTSDETAILS LIKE BAPI_ALM_ORDER_COSTS_DETAIL_E OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0.

CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'

EXPORTING

NUMBER = OBJECT-KEY-NUMBER

IMPORTING

ES_HEADER = ESHEADER

ES_SRVDATA = ESSRVDATA

TABLES

RETURN = RETURN

ET_COSTS_DETAILS = ETCOSTSDETAILS

ET_COSTS_SUM = ETCOSTSSUM

ET_PRTS = ETPRTS

ET_TEXT_LINES = ETTEXTLINES

ET_TEXTS = ETTEXTS

ET_RELATIONS = ETRELATIONS

ET_COMPONENTS = ETCOMPONENTS

ET_OPERATIONS = ETOPERATIONS

ET_PARTNER = ETPARTNER

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC. ETTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0,

ETPRTS LIKE BAPI_ALM_ORDER_PRT_E OCCURS 0,

ETCOSTSSUM LIKE BAPI_ALM_ORDER_COSTS_SUM_E OCCURS 0,

ETCOSTSDETAILS LIKE BAPI_ALM_ORDER_COSTS_DETAIL_E OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0.

CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'

EXPORTING

NUMBER = OBJECT-KEY-NUMBER

IMPORTING

ES_HEADER = ESHEADER

ES_SRVDATA = ESSRVDATA

TABLES

RETURN = RETURN

ET_COSTS_DETAILS = ETCOSTSDETAILS

ET_COSTS_SUM = ETCOSTSSUM

ET_PRTS = ETPRTS

ET_TEXT_LINES = ETTEXTLINES

ET_TEXTS = ETTEXTS

ET_RELATIONS = ETRELATIONS

ET_COMPONENTS = ETCOMPONENTS

ET_OPERATIONS = ETOPERATIONS

ET_PARTNER = ETPARTNER

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_ELEMENT CONTAINER 'EsHeader' ESHEADER.

SWC_SET_ELEMENT CONTAINER 'EsSrvdata' ESSRVDATA.

SWC_SET_TABLE CONTAINER 'EtPartner' ETPARTNER.

SWC_SET_TABLE CONTAINER 'EtOperations' ETOPERATIONS.

SWC_SET_TABLE CONTAINER 'EtComponents' ETCOMPONENTS.

SWC_SET_TABLE CONTAINER 'EtRelations' ETRELATIONS.

SWC_SET_TABLE CONTAINER 'EtTexts' ETTEXTS.

SWC_SET_TABLE CONTAINER 'EtTextLines' ETTEXTLINES.

SWC_SET_TABLE CONTAINER 'EtPrts' ETPRTS.

SWC_SET_TABLE CONTAINER 'EtCostsSum' ETCOSTSSUM.

SWC_SET_TABLE CONTAINER 'EtCostsDetails' ETCOSTSDETAILS.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

END_METHOD.

BEGIN_METHOD ORDERMAINTAIN CHANGING CONTAINER.

DATA:

ITMETHODS LIKE BAPI_ALM_ORDER_METHOD OCCURS 0,

ITHEADER LIKE BAPI_ALM_ORDER_HEADERS_I OCCURS 0,

ITHEADERUP LIKE BAPI_ALM_ORDER_HEADERS_UP OCCURS 0,

ITHEADERSRV LIKE BAPI_ALM_ORDER_SRVDAT_E OCCURS 0,

ITHEADERSRVUP LIKE BAPI_ALM_ORDER_SRVDAT_UP OCCURS 0,

ITHEADERSRVUP LIKE BAPI_ALM_ORDER_SRVDAT_UP OCCURS 0,

ITUSERSTATUS LIKE BAPI_ALM_ORDER_USRSTAT OCCURS 0,

ITPARTNER LIKE BAPI_ALM_ORDER_PARTN_MUL OCCURS 0,

ITPARTNERUP LIKE BAPI_ALM_ORDER_PARTN_MUL_UP OCCURS 0,

ITOPERATION LIKE BAPI_ALM_ORDER_OPERATION OCCURS 0,

ITOPERATIONUP LIKE BAPI_ALM_ORDER_OPERATION_UP OCCURS

ITRELATION LIKE BAPI_ALM_ORDER_RELATION OCCURS 0,

ITRELATIONUP LIKE BAPI_ALM_ORDER_RELATION_UP OCCURS 0,

ITCOMPONENT LIKE BAPI_ALM_ORDER_COMPONENT OCCURS 0,

ITCOMPONENTUP LIKE BAPI_ALM_ORDER_COMPONENT_UP OCCURS

ITTEXT LIKE BAPI_ALM_TEXT OCCURS 0,

ITTEXTLINES LIKE BAPI_ALM_TEXT_LINES OCCURS 0,

EXTENSIONIN LIKE BAPIPAREX OCCURS 0,

RETURN LIKE BAPIRET2 OCCURS 0,

ETNUMBERS LIKE BAPI_ALM_NUMBERS OCCURS 0.

SWC_GET_TABLE CONTAINER 'ItMethods' ITMETHODS.

SWC_GET_TABLE CONTAINER 'ItHeader' ITHEADER.

SWC_GET_TABLE CONTAINER 'ItHeaderUp' ITHEADERUP.

SWC_GET_TABLE CONTAINER 'ItHeaderSrv' ITHEADERSRV.

SWC_GET_TABLE CONTAINER 'ItHeaderSrvUp' ITHEADERSRVUP.

SWC_GET_TABLE CONTAINER 'ItUserstatus' ITUSERSTATUS.

SWC_GET_TABLE CONTAINER 'ItPartner' ITPARTNER.

SWC_GET_TABLE CONTAINER 'ItPartnerUp' ITPARTNERUP.

SWC_GET_TABLE CONTAINER 'ItOperation' ITOPERATION.

SWC_GET_TABLE CONTAINER 'ItOperationUp' ITOPERATIONUP.

SWC_GET_TABLE CONTAINER 'ItOperationUp' ITOPERATIONUP.

SWC_GET_TABLE CONTAINER 'ItRelation' ITRELATION.

SWC_GET_TABLE CONTAINER 'ItRelationUp' ITRELATIONUP.

SWC_GET_TABLE CONTAINER 'ItComponent' ITCOMPONENT.

SWC_GET_TABLE CONTAINER 'ItComponentUp' ITCOMPONENTUP.

SWC_GET_TABLE CONTAINER 'ItText' ITTEXT.

SWC_GET_TABLE CONTAINER 'ItTextLines' ITTEXTLINES.

SWC_GET_TABLE CONTAINER 'ExtensionIn' EXTENSIONIN.

CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'

TABLES

ET_NUMBERS = ETNUMBERS

RETURN = RETURN

EXTENSION_IN = EXTENSIONIN

IT_TEXT_LINES = ITTEXTLINES

IT_TEXT = ITTEXT

IT_COMPONENT_UP = ITCOMPONENTUP

IT_COMPONENT = ITCOMPONENT

IT_RELATION_UP = ITRELATIONUP

IT_RELATION = ITRELATION

IT_OPERATION_UP = ITOPERATIONUP

IT_OPERATION = ITOPERATION

IT_PARTNER_UP = ITPARTNERUP

IT_PARTNER = ITPARTNER

IT_USERSTATUS = ITUSERSTATUS

IT_HEADER_SRV_UP = ITHEADERSRVUP

IT_HEADER_SRV = ITHEADERSRV

IT_HEADER_UP = ITHEADERUP

IT_HEADER = ITHEADER

IT_METHODS = ITMETHODS

EXCEPTIONS

OTHERS = 01.

CASE SY-SUBRC.

WHEN 0. " OK

WHEN OTHERS. " to be implemented

ENDCASE.

SWC_SET_TABLE CONTAINER 'Return' RETURN.

SWC_SET_TABLE CONTAINER 'EtNumbers' ETNUMBERS.

END_METHOD.

thanks ,Suresh

Read only

Former Member
0 Likes
652

*&----


**& Form f_select_orders

*&----


    • Form to select orders

*----


FORM f_select_orders .

  • orders which are created and released

IF cb_crtd = c_val AND cb_rel = c_val .

SELECT o~aufnr

o~auart

s~stat

INTO TABLE i_orders

FROM aufk AS o

INNER JOIN jest AS s ON

oobjnr = sobjnr

WHERE aufnr IN s_aufnr AND

auart IN s_auart AND

erdat IN s_date AND

( stat = c_crtd OR stat = c_rel ) .

IF i_orders IS INITIAL .

MESSAGE i007(zp1_am_000) .

EXIT .

ENDIF .

  • orders which are created

ELSEIF cb_crtd = c_val .

SELECT o~aufnr

o~auart

s~stat

INTO TABLE i_orders

FROM aufk AS o

INNER JOIN jest AS s ON

oobjnr = sobjnr

WHERE aufnr IN s_aufnr AND

auart IN s_auart AND

erdat IN s_date AND

( stat = c_crtd AND phas0 = c_val ) .

IF i_orders IS INITIAL .

MESSAGE i006(zp1_am_000) .

EXIT .

ENDIF .

  • orders which are released

ELSEIF cb_rel = c_val .

SELECT o~aufnr

o~auart

s~stat

INTO TABLE i_orders

FROM aufk AS o

INNER JOIN jest AS s ON

oobjnr = sobjnr

WHERE aufnr IN s_aufnr AND

auart IN s_auart AND

erdat IN s_date AND

stat = c_rel .

IF i_orders IS INITIAL .

MESSAGE i004(zp1_am_000) .

EXIT .

ENDIF .

ELSE .

*orders when status is not given

SELECT aufnr

auart

INTO TABLE i_orders

FROM aufk

WHERE aufnr IN s_aufnr AND

auart IN s_auart AND

erdat IN s_date .

ENDIF .

SORT i_orders BY aufnr .

DELETE ADJACENT DUPLICATES FROM i_orders COMPARING aufnr .

ENDFORM. " f_select_orders

&----


*& Form f_bapi_getdetail

&----


*

  • Form that takes the order numbers from the selection screen and

  • updates the operational work centers for the same .

*

----


FORM f_bapi_getdetail .

LOOP AT i_orders INTO wa_orders .

CLEAR : wa_head , wa_oper .

REFRESH : i_oper .

  • bapi to display the details of a particular order

CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'

EXPORTING

number = wa_orders-aufnr

IMPORTING

es_header = wa_head

TABLES

et_partner = i_part

et_operations = i_oper

et_components = i_comp

et_relations = i_real

et_texts = i_text

et_text_lines = i_line

et_prts = i_prts

et_costs_sum = i_sum

et_costs_details = i_det

return = i_ret.

IF wa_head-mn_wk_ctr IS INITIAL .

MESSAGE i005(zp1_am_000) .

CONTINUE .

ENDIF .

CLEAR : wa_meth , wa_hdt , wa_hdx ,wa_opt ,wa_opx , wa_ret .

REFRESH : i_meth , i_hdt , i_hdx ,i_opt , i_opx , i_ret .

  • checking whether the work center in operations is 'GEN-WC' .

IF wa_head-loc_wk_ctr EQ v_wkcntr .

wa_meth-refnumber = c_refnum .

wa_meth-objecttype = c_objtyp .

wa_meth-method = c_meth .

wa_meth-objectkey = wa_head-orderid.

APPEND wa_meth TO i_meth.

wa_hdt-orderid = wa_head-orderid .

IF p_wrkcnt IS INITIAL .

wa_hdt-loc_wk_ctr = wa_head-mn_wk_ctr .

ELSE .

wa_hdt-loc_wk_ctr = p_wrkcnt . " Take the work center provided at the selection screen

ENDIF .

APPEND wa_hdt TO i_hdt .

wa_hdx-orderid = wa_head-orderid.

wa_hdx-loc_wk_ctr = c_val.

APPEND wa_hdx TO i_hdx .

ENDIF .

LOOP AT i_oper INTO wa_oper .

IF wa_oper-work_cntr EQ v_wkcntr .

wa_opt-activity = wa_oper-activity .

wa_opt-sub_activity = wa_oper-sub_activity .

IF p_wrkcnt IS INITIAL .

wa_opt-work_cntr = wa_head-mn_wk_ctr .

ELSE .

wa_opt-work_cntr = p_wrkcnt .

ENDIF .

APPEND wa_opt TO i_opt .

CLEAR wa_opt.

wa_opx-work_cntr = c_val.

APPEND wa_opx TO i_opx .

CLEAR wa_opx.

wa_meth-refnumber = sy-tabix .

wa_meth-objecttype = c_objty .

wa_meth-method = c_meth .

CONCATENATE wa_head-orderid wa_oper-activity wa_oper-sub_activity INTO wa_meth-objectkey.

APPEND wa_meth TO i_meth .

ENDIF .

ENDLOOP.

IF NOT i_opt IS INITIAL OR NOT i_hdt IS INITIAL .

wa_meth-objecttype = c_objt .

wa_meth-method = c_met .

wa_meth-objectkey = wa_head-orderid .

APPEND wa_meth TO i_meth .

  • bapi to update the operational work centres

CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'

TABLES

it_methods = i_meth

it_header = i_hdt

it_header_up = i_hdx

it_operation = i_opt

it_operation_up = i_opx

return = i_ret1.

CLEAR v_err .

LOOP AT i_ret1 INTO wa_ret1 .

IF wa_ret1-type = 'E' OR wa_ret-type = 'A' .

v_err = c_val .

ENDIF .

WRITE : / wa_ret1-message .

ENDLOOP.

IF v_err IS INITIAL .

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .

ENDIF .

ENDIF .

ENDLOOP .

ENDFORM . "f_bapi_getdetail

&----


*& Form f_global_constant

&----


  • Get global constants

----


FORM f_global_constant .

CALL FUNCTION 'Z_H1_GLOB_CONSTANTS'

EXPORTING

p_programname = sy-cprog

TABLES

i_constant = i_const

EXCEPTIONS

records_not_found = 1

mandatory_parameter_req = 2

OTHERS = 3.

IF sy-subrc <> 0.

v_err = c_val .

ELSE .

LOOP AT i_const INTO wa_const .

CASE wa_const-field .

WHEN 'WORKCENTER'.

v_wkcntr = wa_const-low .

WHEN 'OTHERS'.

v_err = c_val .

ENDCASE.

ENDLOOP .

ENDIF .

ENDFORM . "f_global_constant