How to extend IDOC type "HRMD_A" for infotype 2001?

Hi,
I'm trying to send infotype 2001 to another SAP system via ALE and since it is not part of message type "HRMD_A" I have tried to create an extension. I've already created a new segment(we31) and put this segment into the extension(we30). And I've assigned the extension to the message and basic type (we82) but it still doesn't work. Is there anything else I have to do?
Many thanks in advance
Christopher

Hello Christopher,
I don't think any coding is required in your case if I understand your issue correctly.
Just create a Z segment (say Z1P2001...make it same structure as P2001) then insert it as a child segment type of E1PITYP in your customer extension which should be attached to Basic Type HRMD_XX (as per your SAP release).
Make sure in the partner profile you have specified the name of your customer extension and in table T777D you have maintained the value of your Z segment (Z1P2001) in the field IDOC segment.
Now, as long as you have change pointers activated globally as well as for the message type you are using, change pointers will be auto triggered for infotype 2001 and when you run BD21 to process the change pointer, you'll see the system has automatically populated your customer segment Z1P2001.
Let me know if it solved your case.
Cheers,
Sougata.
Edited by: Sougata Chatterjee on May 23, 2008 1:41 PM

Similar Messages

  • EXTEND BASIC TYPE HRMD_A FOR TRANSFER IDOC DATA (HR MODULE)

    Hi,
    I'm trying to various infotype 2001,2002,2006 ecc to another SAP system via ALE and since they are not part of message type "HRMD_A" I have created the extension ZHRMD_A06. I've already created the new segments(we31) and put these segments (with names Z1P2001, Z1P2002 ecc ecc) into the extension(we30). And I've assigned the extension to the message and basic type (we82).
    The new segment are processed correctly in the idoc creation via transaction PFAL, but via transaction BD21 i meet the abend message : B1 070 - Internal Error : program....command... for argument Z1P2001 (for example)
    In other words, BD21 do not process the custom segment but the PFAL yes...how it is possible?
    I've activate the change pointer in every customizing table intersting.
    Many thanks in advance for any reply
    Achille

    unfortunately, the standard do not provide the infotypes for the HR-TM (Time Management), that
    are between the structures i must send in the other system sap.
    Ok, I have never delt with Time data in HRMD_A. Probably this is the case then
    Ok,now i've checked the filter in BD64 and the tables BDCP2, CDHDR and CDPOS but it seems
    all correct!!
    By checking Filters I mean that confirm if you have added Time Infotypes there (just
    making sure). If data is appearing in BDCP2 that means there is no problem in Change
    pointer creation, Just ruling out possibility.
    Try with an user exit it's a good idea, but why in the PFAL the idoc (with the custom segments)
    is created without problems and in the BD21 no??? This is very strange
    1) Well BD21 uses the Function module (TBDME for HRMD_A) which read change pointers and
    create IDOCs. So now if you have extended Segment you have to add your population code
    here somewhere.
    2) PFAL is Push program, my assimption here is you have wriiten some piece of code to
    populate Additinal segments data here? Otherwise IDOC will not be populated
    automatically.
    Let me know what you think.

  • How to reduce idoc type HRMD_A?

    Dear All,
    We need to reduce the HRMD_A idoc. We have taken the following steps:
    1- created message type ZHRMD_A using transaction BD53 (Idoc reduction maintenance) wit reference to HRMD_A message type
    2- Activated the segments and fields of the required segments
    3- Activated change pointers using the “Active Change Pointers” push button on the initial screen of BD53
    We can see that our ZHRMD_A message type is active in table TBDA2 (using transaction BD50. Message type HRMD_A is still active in the same table.
    When we run transaction BD21 (to evaluate change pointers) with message type ZHRMD_A, we do not get any idocs created. However BD21 will generate idocs when run with HRMD_A message type.
    Are we missing a step in our configuration?
    We are on ERP 2005 (WAS 7:00) SPS 6
    Thx/Farshad

    Fatin,
    Have you activated Change Pointers - Generally? If no then in Customizing for Distribution (ALE), choose Modeling and Implementing Business Processes -> Master Data Distribution -> Replication of Modified Data -> Activate Change Pointers - Generally. Set the change pointer status to Active, and save this setting.
    Choose Modeling and Implementing Business Processes ® Master Data Distribution -> Replication of Modified Data -> Activate Change Pointers for Message Types. Set the change pointer status to Active for the appropriate message type (which is ZHRMD_A in this example), and save this setting.
    Also do not forget to maintained Distribution model ( TC : BD64) & partner profile(WE20) for message type ZHRMD_A.
    Cheers,
    Nilesh

  • How to extend Idoc

    Hi,
    We need to  pass revision level field from MM to SUS in PO . We checked the message type for this is ORDERS. Now, in this message type there is no revision level field.
    Our scenario is from MM the idoc goes to XI and from XI XML goes to SRM SUS.
    So, now how do we proceed to acheive this.
    Thanks in Advance,
    Manu

    Hello Christopher,
    I don't think any coding is required in your case if I understand your issue correctly.
    Just create a Z segment (say Z1P2001...make it same structure as P2001) then insert it as a child segment type of E1PITYP in your customer extension which should be attached to Basic Type HRMD_XX (as per your SAP release).
    Make sure in the partner profile you have specified the name of your customer extension and in table T777D you have maintained the value of your Z segment (Z1P2001) in the field IDOC segment.
    Now, as long as you have change pointers activated globally as well as for the message type you are using, change pointers will be auto triggered for infotype 2001 and when you run BD21 to process the change pointer, you'll see the system has automatically populated your customer segment Z1P2001.
    Let me know if it solved your case.
    Cheers,
    Sougata.
    Edited by: Sougata Chatterjee on May 23, 2008 1:41 PM

  • Extending IDOC type

    Hi,
    Iam using the business object BUS20001 (CRMXIF_ORDER_SAVE_M) to create service order in CRM 3.1 system using LSMW. We have an addfiled in the order hence extended the IDOC type (ZCRMXIF_ORDER_SAVE_M02B), creating a new segment and attaching to the IDOC type. When i look into this extended IDOC type in the transaction WE30, all the segments has mapped to a field in the structure  CRMXIF_BUS_TRANS. But the newly created segment has no mapping. This unmapped field is not getting updated in the order created.
    Do i have to extended the structure CRMXIF_BUS_TRANS when i extend the IDOC type.Please advise if i miss any steps in extending the IDOC type.
    Regards
    Dhanapal S

    Hi Dhanapal,
    When there is a change in IDoc structure, you need to re-import in Repository.
    Also, in IDX1 transaction delete the existing meta data for the IDoc and import the meta data once again.
    Regards,
    Uma

  • IDoc type "DELVRY03" for INBOUND delivery confirmation and Outbound Deliver

    Hi ,
    We have a requirement where we have to send Inbound delivery confirmation as well as outbound delivery notification to our same customer. (3PL case)
    We have a EDI partner who is receiving our messages and transforming them before sending it to customer.
    Now my problem is , since I am using same idoc type (DELVRY03) for both cases therefore wondering how my EDI partner will differentiate whether received message is a INBOUND delivery confirmation or OUTBound delivery notification.
    regards
    Shrey

    Thx for your reply ...
    Wondering about the impacts , if I create a new message type like ZDESADV and attach it to DELVRY03.
    In this i could have two message types DESADV and ZDESADV.
    Will it impact anywhere ?
    Regards
    Shrey

  • How to garantee IDOC types are the same on two communicating sap systems.

    Hi all:
        how to garantee IDOC types are the same on two communicating sap systems,  including segments and versions, using bd64?
        what's more, what bd64 using for besides generating parter profiles,  must we use bd64 for outbound idocs?
        Thank you very much
    best regards ?

    Hi jingying Sony 
    You can compare the Idoc type and Version between Sender System and Reciver System.
    Use TCode SCMP and Compare the Table EDIMSG in Both System.
    This will solve your issue.
    Thanks
    Ramesh

  • How to get File type icon for files store on Amazons3

    Hi,
    i want to know about how to get file type icons for files that we store on Amazons3.i am a devloper ,i want to make gui for accessing amazons3.
    so ,i want to know about how to get file type icons for files that we store on Amazons3.
    thanx in advance.

    hi,
    have u heard amazon simple storage service,that provides storage space for
    storing files, i am a devloper,i want to know the files that we store on amazon,how we can get file type icon for that files.
    i want to sample code in java for this.
    thanx in advance.

  • How to extend the time line for the premiere on mac pro mavericks

    how to extend the time line for the premiere on mac pro mavericks

    Wrong place.
    Try the Adobe Premiere forum.
    http://forums.adobe.com/community/premiere
    Good luck,
    x

  • Basic Idoc type  used for Credit memo  processing

    Hi ,
    I am  working  to  automate the processing of Credit Memos ,Subsequent  debits and credits  .Can any body suggest me for the Idoc type used for posting of credit memos, which  will do the same function of transaction 'MIRO'  .Please  help  me for the above  .
    Please send the reply  on [email protected]
    Regards ,
    Shilpa

    Hi,
    You can use invoic message type with invoic01/invoic02 type of IDoc whichever is suitable for your requirement.
    Thanks.
    Mark points if helpful.

  • How to extend  breadth first Search for Binary Tree to any kind of Tree??

    Dear Friends,
    I am thinking a problem, How to extend breadth first Search for Binary Tree to any kind of Tree?? ie each node has more than 2 leaves such as 1, 2,3,4 or any,
    I have following code to successfully apply for breadth first Search in Binary Tree as follows,
    package a.border;
    import java.util.ArrayList;
    import java.util.LinkedList;
    public class Tree
        int root;
        Tree left;
        Tree right;
        static ArrayList<Integer> list = new ArrayList<Integer>();
        static ArrayList<Tree> treeList = new ArrayList<Tree>();
        private static LinkedList<Tree> queue = new LinkedList<Tree>();
         * @param root root value
         * @param left left node
         * @param right right node
        public Tree(int root, Tree left, Tree right)
            this.root = root;
            this.left = left;
            this.right = right;
        /** Creates a new instance of Tree
         * You really should know what this does...
         * @param root
        public Tree(int root)
            this.root = root;
            this.left = null;
            this.right = null;
         * Simply runs a basic left then right traversal.
        public void basicTraversal()
            //Check if we can go left
            if (left != null)
                left.basicTraversal();
            //Add the root
            list.add(root);
            //Check if we can go right
            if (right != null)
                right.basicTraversal();
        public ArrayList<Integer> getBreadthTraversal(ArrayList<Integer> list)
            //Add the root to the arraylist, we know it is always the first entry.
            list.add(root);
            //Basically we add the first set of nodes into the queue for
            //traversing.
            //Query if left exists
            if (left != null)
                //Then add the node into the tree for traversing later
                queue.add(left);
            //Same for right
            if (right != null)
                queue.add(right);
            //Then we call the traverse method to do the rest of the work
            return traverse(list);
        private ArrayList<Integer> traverse(ArrayList<Integer> list)
            //Keep traversing until we run out of people
            while (!queue.isEmpty())
                Tree p = queue.remove();
                //Check if it has any subnodes
                if (p.left != null)
                    //Add the subnode to the back of the queue
                    queue.add(p.left);
                //Same for left
                if (p.right != null)
                    //Same here, no queue jumping!
                    queue.add(p.right);
                //Append to the ArrayList
                list.add(p.root);
            //And return
            return list;
         * Makes a tree and runs some operations
         * @param args
        public static void main(String[] args)
             *                             4
             *          t =           2       6
             *                      1   3    5   7
            Tree leaf6 = new Tree(1);
            Tree leaf7 = new Tree(3);
            Tree leaf8 = new Tree(5);
            Tree leaf9 = new Tree(7);
            Tree t4 = new Tree(2, leaf6, leaf7);
            Tree t5 = new Tree(6, leaf8, leaf9);
            Tree t = new Tree(4, t4, t5);
            t.basicTraversal();
            System.out.println("Here is basicTraversal ="+list.toString());
            list.clear();
            t.getBreadthTraversal(list);
            System.out.println("getBreadthTraversal= " +list.toString());
            list.clear();
        }Can Guru help how to update to any kind of tree??
    here this code is for the tree like:
             *                             4
             *          t =           2       6
             *                      1   3    5   7
             */But i hope the new code can handle tree like:
             *                             4
             *                           /   | \
             *                          /     |   \
             *          t =            2     8   6
             *                        / |  \    |    /| \
             *                      1 11  3 9   5 10  7
             */Thanks

    sunnymanman wrote:
    Dear Friends,
    I am thinking a problem, How to extend breadth first Search for Binary Tree to any kind of Tree?? ...The answer is interfaces.
    What do all trees have in common? And what do all nodes in trees have in common?
    At least these things:
    interface Tree<T> {
        Node<T> getRoot();
    interface Node<T> {
        T getData();
        List<Node<T>> getChildren();
    }Now write concrete classes implementing these interfaces. Let's start with a binary tree (nodes should have comparable items) and an n-tree:
    class BinaryTree<T extends Comparable<T>> implements Tree<T> {
        protected BTNode<T> root;
        public Node<T> getRoot() {
            return root;
    class BTNode<T> implements Node<T> {
        private T data;
        private Node<T> left, right;
        public List<Node<T>> getChildren() {
            List<Node<T>> children = new ArrayList<Node<T>>();
            children.add(left);
            children.add(right);
            return children;
        public T getData() {
            return data;
    class NTree<T> implements Tree<T> {
        private NTNode<T> root;
        public Node<T> getRoot() {
            return root;
    class NTNode<T> implements Node<T> {
        private T data;
        private List<Node<T>> children;
        public List<Node<T>> getChildren() {
            return children;
        public T getData() {
            return data;
    }Now with these classes, you can wite a more generic traversal class. Of course, every traversal class (breath first, depth first) will also have something in common: they return a "path" of nodes (if the 'goal' node/data is found). So, you can write an interface like this:
    interface Traverser<T> {
        List<Node<T>> traverse(T goal, Tree<T> tree);
    }And finally write an implementation for it:
    class BreathFirst<T> implements Traverser<T> {
        public List<Node<T>> traverse(T goal, Tree<T> tree) {
            Node<T> start = tree.getRoot();
            List<Node<T>> children = start.getChildren();
            // your algorithm here
            return null; // return your traversal
    }... which can be used to traverse any tree! Here's a small demo of how to use it:
    public class Test {
        public static void main(String[] args) {
            Tree<Integer> binTree = new BinaryTree<Integer>();
            // populate your binTree
            Tree<Integer> nTree = new NTree<Integer>();
            // populate your nTree
            Traverser<Integer> bfTraverser = new BreathFirst<Integer>();
            // Look for integer 6 in binTree
            System.out.println("bTree bfTraversal -> "+bfTraverser.traverse(6, binTree));
            // Look for integer 6 in nTree
            System.out.println("bTree bfTraversal -> "+bfTraverser.traverse(6, nTree));
    }Good luck!

  • How to extend the costing view for a material

    How to extend the costing view for a material

    Use MM01 Trxn code and Select Material and Select Costing Views and Maintain, Save it.
    Else Use MM50 and Select Material and Mainenance Status as G Costing and Execute, Maintain & Save.

  • How to extend AVK to scan for other vendor-specific APIs?

    All--
    How do I extend AVK to scan for other vendor specific APIs.
    I tried adding another <name> element underneath the
    appropriate the <unsupported> tag in the asmt-config.xml file,
    e.g.
    <websphere50>
    <supported>
    </supported>
    <unsupported>
    <name>com.ibm.ws.activity.ActivityConstants</name>
    .......... other <name> elements were left alone ..........
    </unsupported>
    </websphere50>
    But when I scanned the source code it didn't find an import of that API.
    Note: it did find an import of the APIs that were pre-defined in the asmt-
    config file; just not the one that I added.
    Is adding a <name> to the asmt-config.xml file the right approach?
    If so, how does the SourceScan ant task know where to find the asmt-
    config.xml file. Currently, I left it in the %JAVKE_HOME%/config folder.
    Is that the right place for that file?
    Any comments on how to extend AVK to scan for other vendor
    specific APIs would be greatly appreciated.

    Oops!
    Its probably bad form to answer your own question, but after
    sending out the original post, I treid:
    1. opening a new shell
    2. running the %JAVKE_HOME%/bin/javke_setenv.bat
    3. then ran the "asant code-scan" from that shell and viola it worked ...
    Sorry for any confusion.

  • Disable Delete Button for infotype 2001 subtype 0025

    I want to Disable Delete Button for infotype 2001 subtype 0025 only in PA30/61.
    Is there any EXIT available

    Hi
    Try it .
    Somebody already given this type of answers.
    Pls first use Search then post.
    Well FYI,
    <b>There is a standard User Exit for PA30 / 40 for PBO and PAI events.
    ZXPADU01 for PBO and
    ZXPADU02 for PAI events.
    By writing proper code in here for the IT2001, you can write your rules.
    PBAS0001 ( PA: Pers.Admin./Recruitment: Default values and checks ),</b>
    Manoj Shakya.

  • IT2001 error, no time constraint reachion for infotype 2001 with tm const00

    Dear Seriors,
    When I try to add any absence, it show the below given error message (red colour), but if I hit the enter button it allows me to mark absence.
    no time constraint reachion for infotype 2001 with time constraint class 001
    What might be the reason?
    Regards
    ET

    The time constraint class is used to check for collisions between Time Management infotypes (2001 to 2012). It allows you to specify different regulations for checking for collisions between individual subtypes.
    The views Time Constraint Reaction to Time Management Infotypes (V_554Y_B) and Global Time Constraint Reaction (V_T554Y) contain rules for the collision check.
    Please explore on this.

Maybe you are looking for

  • I can't remove my credit card details from app store

    Hey all, i added my visa electron credit card to my apple id a few days ago, now it says its invalid, i cant remove it and i cant download any apps. Help?

  • New topics are compiled in but don't display when help button is pressed

    Folks, I'm using RoboHelp HTML Build 6. I am the only writer who uses RH and have been using this build for 2 years or so. I recently got a new map file from the developer containing 2 new map IDs. I used the same steps to import the map file, create

  • Livecycle Designer v. Omni Form

    I need to know of any possible advantages of using Adobe Livecycle in creating forms versus using Omni form. Can anyone provide me with an objective view? Thanks!

  • Insertion in a DefaultTableModel

    I have made a DefaultTableModel which has rows and columns (in a format like a excel sheet which has DATES in the rows and TIMES in the columns like a calender) and i want to enter some string data on the cells which will be stored somehow, in a data

  • Application server architecture 2

    Hello guys, I have few questions about application server architecture� I already was asking similar question (http://forum.java.sun.com/thread.jspa?threadID=654898) and got few replies which were looking for me quite ok, but after reading more docs