Application Development 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: 

what is the use of IBIP Transaction?

Former Member
0 Kudos

Hi All,

I need a bit detils about IBIP Transaction.

Why we r using IBIP and what is its use..

Can anyone reply me.

Thanks & Regards,

Venkat N

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi

The transaction <b>IBIP</b> provides test tools and enables the interactive processing of data. Incorrect internal data can be corrected immediately.

Using the ABAP version <b>RIIBIP00</b>, you have the option of generating a background job to perform the data transfer regularly and with a constant setting.

<b>Chck this link.</b>

http://help.sap.com/saphelp_45b/helpdata/en/35/a47db0763e0392e10000009b38f9b7/content.htm

<b>Regards,

Jackie.</b>

Message was edited by:

Jackie

4 REPLIES 4

Former Member
0 Kudos

Hi

The transaction <b>IBIP</b> provides test tools and enables the interactive processing of data. Incorrect internal data can be corrected immediately.

Using the ABAP version <b>RIIBIP00</b>, you have the option of generating a background job to perform the data transfer regularly and with a constant setting.

<b>Chck this link.</b>

http://help.sap.com/saphelp_45b/helpdata/en/35/a47db0763e0392e10000009b38f9b7/content.htm

<b>Regards,

Jackie.</b>

Message was edited by:

Jackie

Former Member
0 Kudos

IBIP is a data migration tool that is specific to the PM & CS modules. Unfortunatley it is not too easy to use. The structures of your files need to be dead on and I have had some trouble going directly through IBIP.

However - a number of items that IBIP loads are visible inside LSMW. Meaning you can use LSMW to generate the right structure based on source data in flat sequential .txt files.

I have created a load routine in LSMW for task lists. You will see in LSMW there are three objects for task lists. Unfortunatley the default settings are incorrect - you may have to change the TCODE in the field mapping and conversion rules.

Other than that it is straight forward LSMW.

Former Member
0 Kudos

Hii Venkat

IBIP is basically used to upload the data in the PM module . We can directly upload the data from flat file as it provides various Structres to upload data .

like for uploading data in measuring point transaction IK05 it provides IBIPMEAS structure.

Regards

HItesh

Vijay
Active Contributor
0 Kudos

hi

IBIP is used to upload data for various PM transactions like :

IE01

CA10

IL01

IL02

etc

there is a standard FM as well which serves the same purpose as ibip

'IBIP_BATCH_INPUT'

you just need to pass data to it in a paricular structure and it will upload the same.

example:

________________________________________________________________

[code]

TYPES: BEGIN OF ty_stat_no,

estat TYPE tj30t-estat,

END OF ty_stat_no.

*----


  • INTERNAL TABLES

*----


DATA: it_l_tab_records TYPE TABLE OF ibiprec, " For IBIP data transfer

it_l_mess TYPE TABLE OF ibipmess, " For Messages

it_ret TYPE TABLE OF bapiret2, " for Messages

it_stat_no TYPE TABLE OF ty_stat_no, " FOR STATUS NO

*----


  • VARIABLES

*----


v_l_objnr TYPE equi-objnr, " FOR OBJECT NO

v_l_equi TYPE equnr , " FOR EQUIPMENT NO

v_l_equnr TYPE char18, " FOR CONVERTED EQUNR

v_msg TYPE char255,

*----


  • WORK AREAS

*----


wa_l_tab_records TYPE ibiprec, " For Data Transfer

wa_l_params TYPE ibipparms, " Data transfer parameters

wa_l_mess TYPE ibipmess, " For Batch Input Messages

wa_l_ret TYPE bapiret2 , " FOR MESSAGES

wa_l_status TYPE ty_stat_no. " FOR STATUS NO

" call transaction parameters

CONSTANTS: c_calltran TYPE calltran VALUE 'X',

c_true TYPE char1 VALUE 'X',

c_inttab TYPE inttab_flg VALUE 'X',

c_callmode TYPE callmode VALUE 'N',

c_error TYPE char1 VALUE 'E',

c_updatemode TYPE updatemode VALUE 'S'.

REFRESH : it_l_tab_records ,

it_l_mess.

  • This piece of code is commented for testing of User status updation

  • as status profile ZFLEETEQ has no user status to be assigned

"" VALIDATING THE STATUS PROFILE

" IF v_statprof NE 'ZFLEETEQ'.

" wa_l_ret-type = c_error.

" MESSAGE e106(ZPM1) INTO v_msg.

" wa_l_ret-id = 'ZPM1'.

" wa_l_ret-number = '000'.

" wa_l_ret-message = v_msg.

" append wa_l_ret to it_ret.

" APPEND lines of it_ret TO it_return.

" REFRESH it_ret.

" EXIT.

  • ENDIF.

*Fill Data Table with Header Data

wa_l_tab_records = p_equirecord. "#EC ENHOK

APPEND wa_l_tab_records TO it_l_tab_records.

CLEAR wa_l_tab_records.

  • Fill parameters

wa_l_params-calltran = c_calltran.

wa_l_params-inttab = c_inttab. " To Indicate Data is contained in Internal Table

wa_l_params-callmode = c_callmode.

wa_l_params-updatemode = c_updatemode.

wa_l_params-dark = c_true.

wa_l_params-log_mess = c_true.

wa_l_params-ind_bal = space.

*FM IBIP_BATCH_INPUT will be used to create Equipments.

*It requires data in internal table of type IBIPREC.

  • Call IBIP using FM and pass Data Table

CALL FUNCTION '<b>IBIP_BATCH_INPUT</b>'

EXPORTING

ibipparms_imp = wa_l_params

IMPORTING

ibipmess_exp = wa_l_mess

TABLES

  • BDCDATA_EXP =

int_tab_imp = it_l_tab_records

message_tab = it_l_mess

EXCEPTIONS

customizing_table_error = 1

data_access_error = 2

exactly_one_mode_not_defined = 3

exactly_one_source_not_defined = 4

int_tab_more_than_one_trans = 5

invalid_data_structure = 6

no_source_data = 7

sapindx_not_found = 8

transaction_not_supported = 9

unix_data_can_not_be_deleted = 10

OTHERS = 11

.

IF sy-subrc <> 0.

wa_l_ret-type = c_error.

  • Fill error table

PERFORM error_handling CHANGING it_ret.

APPEND LINES OF it_ret TO it_return.

REFRESH it_ret.

ELSE.

CLEAR : v_l_equi,

v_l_equnr,

v_l_objnr.

v_l_equi = wa_l_mess-msgv1. "assigning equipment number generated to a variable

" Converting equipment generated into the required format

CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'

EXPORTING

input = v_l_equi

IMPORTING

output = v_l_equnr.

" Fetching object number for the equipment number

SELECT SINGLE objnr

INTO v_l_objnr

FROM equi

WHERE equnr = v_l_equnr .

IF sy-subrc EQ 0.

UPDATE jsto

SET stsma = v_statprof WHERE objnr = v_l_objnr.

ENDIF.

"fetching the User Status for the user status text.

IF it_status[] IS NOT INITIAL.

SELECT estat

INTO TABLE it_stat_no

FROM tj30t

FOR ALL ENTRIES IN it_status

WHERE txt04 = it_status-txt04

AND stsma = v_statprof

AND spras = sy-langu.

ENDIF.

IF NOT it_stat_no[] IS INITIAL.

" updating the status by looping at the status table

LOOP AT it_stat_no INTO wa_l_status.

" FM updating the user status

CALL FUNCTION 'ZPM1_BAPI_STATUS_CHANGE_EXTERN'

EXPORTING

  • PIM_CHECK_ONLY = ' '

  • PIM_CLIENT = SY-MANDT

pim_objnr = v_l_objnr

pim_user_status = wa_l_status-estat

  • PIM_SET_INACT = ' '

  • PIM_SET_CHGKZ =

  • PIM_NO_CHECK = ' '

  • IMPORTING

  • PEX_STONR =

  • PEX_RETURN =

EXCEPTIONS

object_not_found = 1

status_inconsistent = 2

status_not_allowed = 3

OTHERS = 4

.

IF sy-subrc NE 0.

wa_l_ret-type = c_error.

  • Fill Error table

PERFORM error_handling CHANGING it_ret. " to catch the messages

APPEND LINES OF it_ret TO it_return.

REFRESH it_ret.

ENDIF.

CLEAR wa_l_status.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'

EXPORTING

wait = 'X'

  • IMPORTING

  • RETURN =

.

ENDLOOP.

ENDIF."NOT it_stat_no[] IS INITIAL

ENDIF.

  • Fill up internal table for messages

LOOP AT it_l_mess INTO wa_l_mess. " storing the messages to

wa_l_ret-type = wa_l_mess-msgty. " the return table

wa_l_ret-id = wa_l_mess-msgid.

wa_l_ret-number = wa_l_mess-msgno.

wa_l_ret-message = wa_l_mess-msgli.

wa_l_ret-message_v1 = wa_l_mess-msgv1.

wa_l_ret-message_v2 = wa_l_mess-msgv2.

wa_l_ret-message_v3 = wa_l_mess-msgv3.

wa_l_ret-message_v4 = wa_l_mess-msgv4.

APPEND wa_l_ret TO it_return.

CLEAR : wa_l_mess,

wa_l_ret.

ENDLOOP.

[\code]

regards

vijay

<b>reward points if helpful</b>