How to remove nodes in Message mapping

Hi XI friends,
in my idoc to file..
i have number of segments..all segments are optional...
i want to remove in resultanat xml file..
please tell me how to remove if the values are not exsisted for that Segment ..
i think its possible in message mapping..
please guide me..
Munna

Hi Munna,
Try Creating a UDF in your mapping name it like: "Create"
Paste the below mentioned code in it
========================
String str = a;
if(str != null && str.length()>0)
return "true";
else
return "false";
========================
2) Save this function .
3) Now Map like this
(Source Node->UDF Create)->Check if it returns a string "true"--> if yes Map it with source node->add this in the "then" of an "if with out else"---->Target node.
4) Test now in testing tool in Message mapping.
Try it.
it will work
regards
Pl: reward points if it worked

Similar Messages

  • How to use functions in Message Mapping

    Hi All,
           I am new to SAP XI. I don't know how to use functions in message mapping.     Can any body tell me how to use IF condition in message mapping.
         Please provide me a good link where I can get the details how to use those functions.
    Thanks,
    Srinivas.

    HI Srinivas
    Please take a look at these links,
    http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
    /people/sravya.talanki2/blog/2005/08/16/message-mapping-simplified--part-i
    /people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
    This will help you
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/190eb190-0201-0010-0ab3-e69f70b6c257
    http://help.sap.com/saphelp_nw04/helpdata/en/55/7ef3003fc411d6b1f700508b5d5211/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/a8/bfc6373c8fea43bdb3541535bcbd43/frameset.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/8a57d190-0201-0010-9e87-d8f327e1dba7
    This will give you a detailed Idea about Context
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db95f835c111d1829f0000e829fbfe/frameset.htm
    This will give more explanation on Queue
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/51a39490-0201-0010-5b9f-ae21e8b78195
    For understanding node functions this blog will help you
    /people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
    Not sure you can find a collection of all...
    Cheers..
    Vasu
    <i>** REward Points if found useful **</i>

  • How to do this with message mapping in PI  ?

    Hi All,
    Field 1 = 100 characters having values in  first fifty characters and last 50 characters blank . I need to remove all the first 50 characters with blank and pass 100 blank characters .How to do this with message mapping
    Thanks

    Adding to that, since usually a tab = 8 spaces. What you can do is to open notepad, press tab 4 times. Copy it and paste 3 times, afterwards press space 4 more times and you get 100 spaces.
    Regards,
    Mark

  • How to remove the statusbar message in panelCollecion ?

    Hi All,
    JDev ver 11.1.1.3.0
    How to remove the statusbar message in panelCollecion ?
    I am getting 'Columns hidden' in the status bar.. i want to remove that ?
    give suggestion..
    Regards
    Gops

    so ...
    Gops wrote:
    JDev ver 11.1.1.3.0
    Jan Vervecken wrote:about ...
    Navaneetha Krishnan Nataraj wrote:
    For the PanelCollection, add statusBar to FeaturesOff attribute.fyi, the "featuresOff " attribute is documented
    at http://download.oracle.com/docs/cd/E17904_01/apirefs.1111/e12419/tagdoc/af_panelCollection.html
    regards
    Jan- "Oracle Fusion Middleware Tag Reference for Oracle ADF Faces 11g R1 PS3 (11.1.1) E12419-05 "
    at http://download.oracle.com/docs/cd/E17904_01/apirefs.1111/e12419/toc.htm
    refers to http://download.oracle.com/docs/cd/E17904_01/apirefs.1111/e12419/tagdoc/af_panelCollection.html
    documenting the "featuresOff " attribute with valid value "statusBar "
    - "Oracle Fusion Middleware Tag Reference for Oracle ADF Faces 11g Release 1 (11.1.1) E12419-04 "
    at http://download.oracle.com/docs/cd/E14571_01/apirefs.1111/e12419/toc.htm
    refers to http://download.oracle.com/docs/cd/E14571_01/apirefs.1111/e12419/tagdoc/af_panelCollection.html
    documenting the "featuresOff " attribute not with valid value "statusBar "
    regards
    Jan

  • How to remove browser warning message in HTML 5 Cap 8 projects?

    How to remove browser warning message in HTML 5 Cap 8 projects?

    My conclusion after a morning struggling with this, is that there's no point in suppressing the message if your html5 content then goes on to misbehave in Firefox (like mine does).  I've chosen to keep the popup, but change the wording to refer Firefox users to a completely separate Flash version.  The wording of the popup is also in CPM.js.
    Before you all shout at me, no I can't use the multiscreen.html approach, because my Flash version will have to be non-rescaleable, because web objects don't rescale in Flash.

  • Missing node in Message Mapping when test mapping??

    Experts,
    I have the following Mapping Structures:
    Sender:
    <Recordset> 1-1
       <Records> 1:unbounded
            <field1>1:1
            <field2>1:1
    Receiver:
    <Recordset> 1-1
        <Header> 1-1
         <Records> 0-unbounded
               <field1>
               < field2>
         <Trailer> 1-1
    Mapping is completed for  all fields here.But one thing I notice is on Receiver side : all nodes are Green exept Records - it is Gray with some red smal dot in the gray..
    1.Question: What this means?Shouldn't all nodes turn green after mapping is done??
    2.When click on TEST on Message MApping I dont even see the Receiver Records node appearing on right(receiver side) But I was able to see Header and Trailer...Why the Records is missing??
    On the other hand the result from the test is successfull which is even more confusing ,How come it can be succesful since Records is not there...
    I can provide screenshots if needed for more clarity ..Any help is appreciated asap..Thanks much to all!
    J...

    Hi John,
       It is very simple and there is no complexity with this problem.
      <b> 1.Question: What this means?Shouldn't all nodes turn green after mapping is done??</b>
            If you mapped the source field to the correspoding target field..all the target fields get turn to green color. If you didn't mapp any target field that filed should appear with gray color..comming to the small circle in the recordset field...it is indicates that ..that field is "Unbounded".
       For resolving the above issue...do the mapping like this.
       <Recordset>---><Recordset>
       <Records>-------><Records>
       <field1>----><field1>
       <field2>-----> <field2>1
    Keep the empty constant value for the target field Header...
       empty constatnt---->Header.
    So once you done this check the mappping it will execute fine and even you able to see the recods node in the target structure.
      Please let me know if you have any queries...!
    Thanks and Regards,
    Chandu.

  • How to remove red pin om map app

    how do i remove red pin on map app,im talking about red pin not the blue pin?

    The label that is with the pin. Touch the blue arrow to the side of it and then touch where it says Remove Pin.
    EDIT: I just re-read what you said. If it is a red pin, it is from a searched address. In that one, you have to cancel the search and the pin will go away.
    Message was edited by: ChrisJ4203

  • How do I resolve error message "mapi was unable to load aplzod.dll"? Outlook2010 on Win7

    Attempts to open Outlook calendar files (apparently located) on iCloud result in the error message "MAPI was unable to load the information service C:\PROGRA~2\COMMON~1\Apple\Internet Services\APLZOD.dll". Be sure the service is correctly installed and configured."
    I am running Outlook 2010 on Windows 7. I have uninstalled and reinstalled iTunes with no apparent effect. Is this a problem with iTunes or Outlook, how do I resolve it?

    That's part of my problem - I was getting the error message when I tried to click on iCloud in the Calendar portion of Outlook 2010. I don't know where it was generated (iCloud, iTunes, or as an add-in to Outlook).
    After my original post I tried restoring my computer to a date when I knew this worked, the restoration worked, and I can access my calendar. So that problem resolved itself.
    I do have another question, but I'll post it separately. Thanks for your response.

  • How to implement validations in message mapping?

    Hi experts,
    I have a simple requirement:
    I have a simple synchronous scenario:
    SOAP -> XI -> RFC
    In a message mapping, one of the fields in the source message is of type String.
    However, the target application (RFC) does not expect a non-numeric characters in this string.
    My question is how can I perform the validation in XI and tell the sender that this field contains Non-numeric characters?
    Please help.
    Thanks.
    Ron

    > Ron,
    >
    > >>With a RunTime Exception thrown, how can I tell
    >  the sender an error has occured?
    >
    > Sure. You can do this with out a BPM. You need to
    > configure alerts for this. If you configure ALERTS
    > and SCOTT, this will send an email of the errors
    > occuring in your scenario.
    >
    > For configuring and trouble shooting alerts check
    > these
    >
    > https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/
    > 2327
    > https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/
    > 2328
    >
    > Regards,
    > Jai Shankar
    Hi Jai
    I already have alerts configured.
    But what I had in mind is to send a response to the sender (The sender is waiting for a reply since this is synchronous), instead of telling the sender through an alternative means such as email, sms, etc.
    Is this possible?

  • How to pass GUID in message mapping

    Hi ALL
    I would like to populate one of the target fields with SAP PI GUID or Message ID.
    Can you please let me know, how to get the GUID in my message mapping and map it to the target field.
    Thank you,
    Ritu

    Hi Ritu ,
    its simple you can pick the messageID from the streamtransformation constant and map it to ur target field .
    use this UDF it does not taes any input and its output can be mapped to target field where you want to populate the messageid.
    java.util.Map param = container.getTransformationParameters();
    String MSGID = (String) param.get (StreamTransformationConstants.MESSAGE_ID);
    return MSGID
    Regards,
    Saurabh

  • How to remove browser warning message in HTML 5 Cap 6 projects?

    Hello,
    Is there any way to remove the following pop-up message from published HTML 5 Captivate 6 projects?
    Adobe Captivate
    This browser does not support some of the content in the file you are trying to view. Use one of the following browsers:
    Internet Explorer 9 or later
    Safari 5.1 or later
    Google Chrome 17 or later
    Our Blackboard 9.1 tech analysts recommend that all students use Firefox, and I'd rather that they don't have to read the above warning message every time they open a module. (The module did work as expected, even in Firefox.)
    Thank you,
    JAB

    Changing .ini is the advice eventually given in the Phonegap forum. (Browser compatibility error in Captivate conversions).
    But there's a much simpler solution offered at the bottom of this page - just a few lines of code at the end of
    function initializeCP() { in the index.html file header.
    A More Mobile-Friendly Captivate HTML Template | Float Mobile Learning
    Even better, that blog post also shows how to remove the play button for autoplay and make touch response times faster (for mobiles) - refer to blog for how.
    var _onComplete = cp.complete;
    cp.complete = function() {
        _onComplete();
        $("#CPUnSupportedBrowserWarning_ID").remove(); // Removes browser warning
        setTimeout(function() {
            cp.movie.play(); // Skips the play button
        }, 1);

  • How to use Variable in message mapping

    Hi Experts,
    I have some problem using variable in message mapping.
    In one message mapping, since a block of logic is repeated for several fields, then i tried to use a variable instead.
    the repeated logic is: first if condition, then use a udf to form a queue which will be suppressed by its father node.
    i tried to assign the result queue to a variable after the UDF execution. (this variable is created after the father node)
    I am wondering is there any restriction of using variable?
    Can we assign the whole queue to a variable?
    Can we use UDF during the process of assigning value to variable?
    thanks in advance.

    I dont think you can assign a queue to a variable,I am not 100% sure, . and there is no restriction to useing a Zvariable, only u can use it after you declare at some parent level.
    Yes you can use a UDF in the process of assigning to a Zvariable.
    Check out this link and read the comments of the blog.
    SAP PI 7.1 Mapping Enhancements Series: Using Graphical Variable
    /people/william.li/blog/2008/02/13/sap-pi-71-mapping-enhancements-series-using-graphical-variable
    Edited by: Saiyog Gonsalves on Nov 6, 2010 6:40 PM

  • How to remove 'Network Unavailable' message?

    Ref How to remove annoying 'Network Unavailable' message.
    On my Apple iphone I clicked on Settings -  then clicked Carrier -  then patiently clicked time and time again the 'Automatic' option until a tick mark appeared.  Now the ' Network Unavailable' message has disappeared.  Hope this helps someone else.

    Hello Tokyo,
    The article linked below can help resolve this issue.
    iPhone: Troubleshooting No Service
    http://support.apple.com/kb/TS4429
    Cheers,
    Allen

  • How to export parameters from Message Mapping

    You can make use of this export parameter only in transformation step of Integration Process. You may use the following "Parameterized Mapping Programs"
    http://help.sap.com/saphelp_nwpi71/helpdata/en/27/db283fd0ca8443e10000000a114084/content.htm
    Regards,
    Prateek

    If you have defined the signature of your UDF then the return value of the UDF must be assigned to the Export paramter of message mapping.
    Basically import parametrs represents the inputs to be passed for that function(message mapping here)
    and export represents the output of that function.
    so in your case if you want toassign the value to Export parameter (ERROR_TEXT) in UDF catch block
    assign the error returned to the ERROR_TEXT field
    http://help.sap.com/saphelp_nwpi71/helpdata/en/43/c3e1fa6c31599ee10000000a1553f6/frameset.htm
    Check this link
    Hope this is clear
    Rajesh
    Edited by: Rajesh on Mar 13, 2009 5:31 PM

  • Remove segment in Message Mapping

    Hello,
    I am sending the ORDRSP.ORDERS05 to an external message ORDERS05 which is based on the
    same structure as the ORDERS05.
    However I should not be sending all E1EDP01 segments. If the item belongs to a higher level item, then it should not be sent. If the item belongs to a higher level item then the field E1EDP01-UEPOS exists and has a value. In that case I should not transfer the E1EDP01 segment.
    See example for what I mean. This would be the source message:
    - <E1EDP01 SEGMENT="1">
      <POSEX>000010</POSEX>
      <ACTION>000</ACTION>
      <MENGE>1.000</MENGE>
      <MENEE>PCE</MENEE>
      <PMENE>PCE</PMENE>
    - <E1EDP01 SEGMENT="1">
      <POSEX>000020</POSEX>
      <ACTION>000</ACTION>
      <MENGE>1.000</MENGE>
      <MENEE>PCE</MENEE>
      <PMENE>PCE</PMENE>
      <UEPOS>000010</UEPOS>
    - <E1EDP01 SEGMENT="1">
      <POSEX>000030</POSEX>
      <ACTION>000</ACTION>
      <MENGE>1.000</MENGE>
      <MENEE>PCE</MENEE>
      <PMENE>PCE</PMENE>
      <UEPOS>000010</UEPOS>
    This first item is the header item and does not contain the field UEPOS.
    The next two items belongs to item 000010 and should not be sent.
    In this case only the POSEX 000010 should be sent.
    The target message should then look like this:
    <E1EDP01 SEGMENT="1">
      <POSEX>000010</POSEX>
      <ACTION>000</ACTION>
      <MENGE>1.000</MENGE>
      <MENEE>PCE</MENEE>
      <PMENE>PCE</PMENE>
    I think this should be possible with the standard functions in Message Mapping, and I have been playing around with CREATEIF and EXISTS, but have had no success. Anybody has any idea what to do?
    Regards,
    Per Rune

    Hi Per,
    If I understood correctly ,Do like this and let us know.
    UEPOS---> Exists -----------> 
                                                and------>Not------->  IfWithoutElse --> E1EDP01----->E1EDP01
    UEPOS-> Equals -> POSEX
    Thanks!

Maybe you are looking for

  • HT4623 Unable to update already purchased downloads

    I Have 4 updates which I'm unable to do as I don't have any funds in my bank at the moment. All these updates are free. The strange thing is my partner has updated her iPhone with the same bank account. How does this work? Am I doing something wrong?

  • Trouble with Mobile Users using my cart

    Hello, I've had intermittent issues with my paypal cart and my customers trying to purchase through phones.  It's happening with "some" of both iPhones and Android users, where they add an item to cart and their phone either freezes or drops the item

  • Pls do the needful

    hi i have threee input parametres parametesr: p_matnr LIKE mara-matnr OBLIGATORY ,                p_charg LIKE mchb-charg OBLIGATORY,                p_werks LIKE marc-werks OBLIGATORY, in input selection i am entering the values. say  matnr  qm002   

  • Major issues with buttons

    I'm having a bit of an issue right now.  In the image below, the blue buttons are supposed to be circles (you can see them in the middle of the line).  They ended up coming in with extra color on the sides that was not there in the original psd file.

  • I am having a challenge freeing up space

    I am having a challenge freeing up space.  I have reviewed other discussions and while there are some similarities they do not seem to provide a solution to my issue. My main User account (Macintosh > Users > Admin Profile) shows that it is taking up