‎2008 Feb 13 4:41 PM
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.
‎2008 Feb 13 4:56 PM
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
‎2008 Feb 13 5:30 PM
*&----
**& 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