Idoc conversion rule

Hi,
What is idoc conversion rule? Why we need this?
While upgrading from 4.7 to ECC 6.0 what all precautions need to be taken for the existing standard idocs and custom idocs in the system.
Thanks & Regards,
Soumya.

Hi,
ALE allows the user to perform an SAP transaction in the sending system, after-which the following steps occur:
1 or more communication IDocs (intermediate documents: container for the application data) are created in the sending system database. An ALE distribution model, that needs to have been configured, determines which systems the IDocs are to be sent
These communication IDocs, that contain the relevant application data of the transaction that was performed, are then passed to the ALE communication layer
This layer performs an RFC call, using the port definition and an RFC destination determined through the customer model
The IDocs are then transferred to the respective receiving systems. These could be SAP R/3, R/2 or external systems
If the receiving system is an SAP system then:
In the case of master data distribution the same transaction that was performed on the sending system is again performed on the receiving system with the data contained in the IDoc. This allows the data to go through the SAP checks before posting occurs
In the case of transaction scenarios the relevant data is passed to the respective transactions in order to load the required application document. Eg. A PO is loaded on the sending side, yet a SO is created on the receiving system
Master data has another difference:
It can be set up in such a way that any changes made to specific fields in master data tables can automatically trigger off the ALE distribution process for that particular master data object
If a master data object is created or changed on a sending system and distributed to another system the respective transaction is used to either create or change that respective master data object on the receiving system
In general, if standard SAP can't perform the task required then neither can ALE. It doesn't add functionality, it merely decouples it and allows you to distribute it onto other remote systems.
The Detail as described by SAP
In the output processing one of the function modules of the application creates an IDoc, the so-called master IDoc. This IDoc is sent to the ALE layer where the following processing steps are applied:
Outbound processing
Receiver determination
An IDoc is similar to a normal letter in that it has a sender and a receiver. If the receiver has not been explicitly identified by the application, then the ALE layer uses the customer distribution model to help determine the receivers for the message.
The ALE layer can find out from the model whether any distributed systems should receive the message and, if so, then how many. The result may be that one, several or no receivers at all are found.
For each of the distributed systems that have been ascertained to be receiver systems, the data that is specified by the filter objects in the customer distribution model is selected from the master IDoc. This data is then used to fill an IDoc, and the appropriate system is entered as receiver.
Data selection
Segment filtering
Individual segments can be deleted from the IDoc before dispatch by selecting Functions for the IDoc processing -> Settings for filtering in ALE Customizing. The appropriate setting depends on the sending and receiving logical R/3 System.
Field conversion
Receiver-specific field conversions are defined under Functions for the IDoc processing -> Conversions.
General rules can be specified for field conversions; these are important for converting data fields to exchange information between R/2 and R/3 Systems. For example, the field "plant" can be converted from a 2-character field to a 4-character field.
The conversion is done using general EIS conversion tools (Executive Information System).
Version change
SAP ensures that ALE functions between different R/3 System releases. By changing the IDoc format you can convert message types of different R/3 releases. SAP Development use the following rules when converting existing message types:
Fields may be appended to a segment type;
Segments can be added;
ALE Customizing keeps a record of which version of each message type is in use for each receiver. The correct version of the communication IDoc is created in the ALE output.
The resulting IDocs (it is possible that several IDocs could be created in the receiver determination) are referred to as communication IDocs and are stored in the database. The dispatch control then decides which of these IDocs should be sent immediately. These are passed to the communications layer and are sent either using the transactional Remote Function Call (RFC) or via file interfaces (e.g. for EDI).
If an error occurs in the ALE layer, the IDoc containing the error is stored and a workflow is created. The ALE administrator can use this workflow to process the error.
Inbound processing
After an IDoc has been successfully transmitted to another system, inbound processing is carried out in the receiver system, involving the following steps in the ALE layer:
Segment filtering
Segment filtering functions the same way in inbound processing as in outbound processing.
Field conversion
Specific field conversions are defined in ALE Customizing.
The conversion itself is performed using general conversion tools from the EIS area (Executive Information System).
Generalized rules can be defined. The ALE implementation guide describes how the conversion rules can be specified.
One set of rules is created for each IDoc segment and rules are defined for each segment field.
The rules for converting data fields from an R/2-specific format to an R/3 format can be defined in this way. An example of this R/2 - R/3 conversion is the conversion of the plant field from a 2 character field to a 4 character field.
Data transfer to the application
Input control
When the IDocs have been written to the database, they can be imported by the receiver application.
IDocs can be passed to the application either immediately on arrival or can follow in batch.
You can post an inbound IDoc in three ways:
by calling a function module directly: A function is called that imports the IDoc directly. An error workflow will be started only if an error occurs.
by starting a SAP Business Workflow. A workflow is the sequence of steps to post an IDoc.
by starting a work item A single step performs the IDoc posting.
The standard inbound processing setting is that ALE calls a function module directly. For information about SAP Business Workflow alternatives refer to the online help for ALE programming.

Similar Messages

  • Send custom error message using IDoc conversion rule?

    Hello,
    I am using an Idoc conversion rule in BD79 to load cost centers.  In my conversion rule I use a conversion exit function module to concatenate 2 specific characters and sending cost center value together and then this output value placed in the receiving cost center field.  This works fine, but now I want to send a custom error message to the idoc and fail the idoc if the sending cost center value is greater than 8 digits. 
    Does anyone know how to send an error message or update an idoc with an error message using a conversion rule (bd79)?
    Thank you,
    Rhonda

    Hi Rhonda,
    Any luck on the below.. i have a similar issue...
    Sorry to hijack your thread...

  • Idoc Conversion rule, Change pointers and Filters

    Hi Experts,
        Please any one can help me out, i need material or clear picture about Idoc Conversion rule, Change pointers and Filters where we can use these concepts what is the befit for these concepts.
    Thanks in advance,
    Ramesh.

    Hi,
    Check this link. It has got some of the tutorials you are looking for.
    http://www.****************/Tutorials/ALE/ALEMainPage.htm
    Cheers
    VJ

  • Idoc Conversion Rules

    Hi all,
    Good Morning Friends. I am looking for proper documentation which can help me to understand the concept of <b>Idoc conversion rules</b>. I search a lot in help.sap.com and also google resources, but couldn't figure out any. I am very much interested in comprehending this concept from quite a long time. Can anyone help me to find out good doc's on this concept. If you have any documents you can plz forward them to <b>[email protected]</b>.
    Any kind of help will be appreciated and will be awarded points without failing.
    Have a nice day !!
    Thanks and Regards,
    Varun.

    HI Ferry LIanto,
    Thanks for your immediate reply. I have gone through this. I also want to learn the theoritical aspects behind this concept. Is there any documentation available in help.sap.com regarding this or are there any other resources available to learn this very much in detail ? I have tried rigorously, but couldnt trace any. If possible can you please help me in this regard ?
    Thanks and Regards,
    Varun.
    Message was edited by: varun sonu

  • ALE IDoc Conversion Rule or BADI

    Hi,
    I'm new to ALE IDoc. I have a requirement to hide some sensitive data field for the HR information when outbound the Idoc.
    Example, I need to outbound the IT8 Basic Pay with payscale area etc but not with the basic pay amount. I can convert the basic pay amount to zero when the idoc is being created.
    I've searched through some information and found out that there are several ways to achieve it. However, I'm not sure which one is a better way.
    Is it using the Conversion Rule (BD62) or using Badi or Idoc Reduction method is better?
    Kindly give me some hints as I'm very confuse of which one is the better solution.
    Many thanks in advance.

    No user exit is needed for conversion rule.
    However, you should remember that conversion rules are applied segment fields for a particular message type. So wherever the IDoc message type is used the rule will be applied. If you want to associate the rule for any other condition in addition to message type better to go with a BADI
    These are steps to create and apply a conversion rule to a message type:
    1. Transaction BD62 - Create conversion rule and assign it to a IDoc segment
    2. Transaction BD79 - Define the conversion rule by selecting your field and clicking display button. Once inside you can use various options like set constant to map 0 to the basic pay
    3. Finally assign the conversion rule to your message type using BD55
    As for BADIs, IDOC_DATA_MAPPER is also suited for your requirement, the method PROCESS, allows you to manipulate your IDoc fields whichever way you want. You get the control record, data records, using which you can restrict your manipulation to specific message type or other conditions
    To above post, BADI IDOC_CREATION_CHECK should not be used for mappings/conversions as its specific purpose is to stop creation of an IDoc under required conditions

  • BD79 Idoc Conversion Rule

    Hi,
    I have a requirement where I have a Inbound Idoc which has two segments say E1EDP03 and E1EDP20. Both are date fields.
    now I want to map date from E1EDP03 if Qualif is Z01 to E1EDP20 using conversion rule.
    E1EDP03 (Qualif. Z01) - DATUM  -
    >>> E1EDP20-EDATU
    Is it possible to do this using conversion rule?
    Thanks,

    Hi Shital ,
    Thank U very much for replying to my question.
    But when I m trying to create the same , by clicking Use general rule & specifying special conversion routine ZBLNK , it is throwing the following error "Conversion exit ZBLNK does not exist".
    Please can u help me out.
    Thanks,
    Gyanaraj

  • Can we write code using BD79(ALE IDoc Conversion Rule)

    Hi -
    I had created a conversion rule that specifies for the field account group (KTOKD) on KNA1:   I need to include the following logic :
    if the customer number (KNA1-KUNNR) is in the range 0010000000-0019999999 or 0140000000 to 0149999999, then change the account group value to u201CSKIPu201D.
    So I had created a conversion rule using BD62.
    In BD79, I had set the constant to SKIP.
    But where to include the following logic :
    if the customer number (KNA1-KUNNR) is in the range 0010000000-0019999999 or 0140000000 to 0149999999, then change the account group value to u201CSKIPu201D.
    Thanks,
    Gyanaraj

    Hi Shital ,
    Thank U very much for replying to my question.
    But when I m trying to create the same , by clicking Use general rule & specifying special conversion routine ZBLNK , it is throwing the following error "Conversion exit ZBLNK does not exist".
    Please can u help me out.
    Thanks,
    Gyanaraj

  • Help with BD79 - IDOC conversion rules

    Hi, I'm looking for a "How to" guide to help me with this transaction.
    I need to do a very simple rule for segment E1MTXHM, in ABAP it can be done like this:
    IF EMTXHM-TDID = 'IVER'.
      E1MTXHM-TDSRPAS = 'Z'
    ELSE.
    * Source field
    ENDIF.
    But I expect that it's not necessary to write code to do that simple conversion in BD79, so can anyone help me?
    Thank you.

    Thanks  Pawan,
    It's a very interesting blog, I already know how to do the first part of the blog but maybe someday I didn't know how to use a user exit.
    In my scenario I need to create a more simple rule, but I don't know how to use transaction BD79. But I think with "Try and Error" I will get my expected result.

  • Data records in an IDoc getting erased, when conversion rules are defined

    Hello ,
    We are sending IDocs of message type GLMAST & COELEM from a system(version 4.7) to another system (version 4.6B).
    The segment data in the IDocs are changed using the user exit enhancement KKCD0001. The function exits used are EXIT_SAPFKCIM_001 and EXIT_SAPFKCIM_002.
    If there is no conversion rule defined in the receiver system, for the segments, the IDocs are posted correctly in the receiving system.  But if we define conversion rules , then the data records for all the segments for which conversion rule is defined are getting erased, and an error occurs during processing of IDocs
    Please let me know what can be the the reason behind this issue..And how to solve this..
    Thanks in advance,
    Afsar

    Issue solved

  • IDOC inbound conversion Rules

    Hi to all,
    I'm Implementing an Inbound Interface for Cost Centers using idoc message COSMAS and IDOC type COSMAS01.
    I want to modify IDOC data changing the cost center code by another one stored locally in a param table (Z*). 
    I think the best way to do this is by creating a conversion rule in BD72 than maintain and assign to Message type. The problem is that i have to select data from the Z* Table i need two parameters from the IDOC(LogicalSystem and cost center). How can I create a custom conversion routine or something to get this data from the Z table into the IDOC field (KOSTL).
    The conversion exits only have one import parameter and one export parameter.
    Do anyone had one problem like this?
    Thanks in advance to all.

    Hi,
    Please check the documentation in WE60 tcode and see if the fields are required to be passed...
    Regards,
    Nagaraj

  • IDOC reprocessing with new conversion rules

    Hi All,
    we've created IDOCs and after the creation the conversion rules are changed. Now we want to reprocess the IDOC's and in the reprocessing we want to use the new conversion rules.
    I've tried just reprocessing, I also tried WE19, but with these 2 the conversion rules seem to left untouched.
    Has anyone a solution were I can reprocess making use of the new rules?
    kind regards,
    Pieter

    Hi,
    I've debugged the reprocessing of the idoc and it seems indeed I had to change the status, however not all statusses result in reprocessing of the rules. Status '29' Error in ALE Service works. So my problem is solved.
    Thank you.
    kind regards,
    Pieter

  • Reduced message type - Idoc without conversion rules

    Hi Friends,
    Am facing a strange situation while converting the Material Master data from 4.7b to ECC using BD21 transaction with reduced custom message type. I have reduced the standard msg type MATMAS05 using BD53 for the required field mapping both systems and I written the code using the exit EXIT_SAPLMV01_002 based on client req.
    The situation is that sometimes IDocs are failing and the error shows that some fields which I have not selected in E1MARAM segment of the reduced msg type are populated with some values(ex: zeroes-0, slash-/,spaces)
    Note: Conversion rules are not needed for this scenario.
    Please help me out how to get rid of this '/ ' or spaces which appear for unselected fields in outbound Idoc using reduced message type ?
    Thanks
    Saravanan

    Hi,
    Please check the documentation in WE60 tcode and see if the fields are required to be passed...
    Regards,
    Nagaraj

  • Conversion rule in ALE/IDocs

    Hi,
       I have a requirement to make use of conversion rules in ALE/IDocs.
       For a particular field, I need to concatenate the values of two other fields in the IDOC segment
       and populate the value. The other direct options like setting a constant or changing a field's value
       work fine.
       But I was not able to figure out how to implement this option. Does anyone have an idea?
    Regards,
    Sudeep

    Hi sudeep
    Could you let me know  the exact steps you did to  create the conversion rule for idocs.
    Thanks in Advance

  • IDOC reprocessing including conversion rules

    with BD87 you can reprocess a IDOC, which was not properly processed because of any reasons.
    For me it looks like that using BD87 conversion rules maintained for the IDOC message type are not reprocessed again. Is there any way to force the system to include the processing of conversion rules in the reprocess step.
    Thanks for any help
    Marita

    Hi Marita,
    Have you tried with the application RBDMANI2
    Shylesh

  • Conversion rule executed in sender and receiver system?

    Hello experts,
    I want to send an Idoc from one SAP system to another.
    Both systems are in the same transport line.
    In the sender system I want to execute a field conversion. There
    Therefore I maintained BD62 (Define Conversion Rule), BD55 (activate Conversion Rule for Sender/Receiver combination) and BD79 (Specifie Conversion).
    The mapping works perfectly.
    The creation of the IDoc and the field conversion work perfectly.
    But I get an error in the receiver system.
    It seems that this system also tries to execute the fieldmapping, because it has the same BD55 (sender/receiver) settings.
    The conversion rule itself does not exist in the receiver system, as these settings are not contained in a transport request.
    What is the correct way? Can I customize BD55 not to generate a transport request and maintain this setting only in the relevant system?
    Or do I need to maintain BD79 and BD62 also manually in the receiver system?
    any hints
    Barbara

    Hi Barbara,
    you have to maintain BD79 and BD62  manually in all receiver Systems.
    Kind regards
    Werner

Maybe you are looking for

  • New player freezes with Linux+Firefox+Firebug.

    Any page (or tab) playing a flash video (youtube for example) freezes firefox when closed when firebug is loaded as a module. This only applies to flash video's being played and intermittently fails to crash. This message is cross posted to the bug r

  • How to install Leopard on external Hard-drive

    hi can somebody tell-me how to install Mac OS X 10.5 on to my external Hard drive????

  • BAM Data Control - Group query with Active Data Service

    Trying to get a group query from a BAM data control to work with Active Data Service in an ADF application (JDeveloper 11.1.1.4.0). With a flat query, as the data changes, I can see DataChangeEvents fired, resulting in a data push to the client - <BA

  • N1 and port conflict

    Hi all, i try to install N1 1.3 but i have an error. Solaris 10 U6 There is no 8083 port in /etc/services. Nothing in netstat -an and nothing in lsof. Could you help me please? N1SM Installer (version 1.3 on SunOS) 1. Install OS packages. [Completed]

  • Error printing large photo to HP Officejet K8600 when using PSE7

    I am running PSE7 on a Toshiba laptop using XP home SP3.  I have 1.5 gb of memory.  I have a large color photo scanned in that is 14x10.  I tried printing it out using MS Office Picture manager and HP photo essentials.  Neither program would allow fo