Cancel Message Mapping...

Hi,
I have an Order Interface to 3rd Party and get SAP value in format header, order, positions. In my Header part their is a flag that indicate if some data have been provided or not.
So what I like to do (or like to know) - is their a possibility (may within a java function) to exit the hole message mapping depending on the value in my header structure?
Thanks Matthias

Hi,
The best thing i would suggest is to use JAVA Mapping. You can easily solve the problem.
For more info on JAVA Mapping, go thro these blogs:
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
/people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
Hope this helps.
regards,
P.Venkat

Similar Messages

  • Automatically Cancel Message after error detected in Mapping

    Hello experts,
    I have a message mapping that does some validation on data from sender (file) and if not valid, the mapping errors out as I generate an alert. Production support then manually cancels the message from SXMB_MONI.
    My question is: Is there a way to cancel the message automatically as soon as the alert is generated instead of the additional manual step for Production support personnel to do it.
    Thanks
    JB

    Hi,
    >any person looking at this thread would have expected you to respond to the issue/problem discussed,
    in case you didn't notice I gave you the best answer I got - "it's not possible in standard" - short, maybe sad but true - all the rest is development
    which is possible and you can do EVERYTHING with it as you may or may not know
    >speculate on which name or nickname appeared on it
    don't know if you noticed but in case you didn't I'm a moderator of this forum
    so I try to keep it both: 1) clean and 2) healthy which means:
    1) if there is someone who's is affraid to tell his own name it means two things for me:
    a) either he/she was blocked on forums and come back with a different name
    b) is so highly valued prof (in his mind) that wishes not to show his real name
    as others might find out that he/she does not know something
    in both cases I'm always very carefull with such forum members
    (only as a moderator) as I cannot expect anything good from it
    which is actually true in your case as you don't expect our forum
    *rules of engagement * for example:
    Step 4: Thank Others by Giving Points
    and you never gave points .... none of your
    34 questions was ever awarded by you with even one point
    so who is playing fair ?
    2)
    if someone who has a funny nick cannot understand a little joke
    then I honestly don't care and it has nothing to do with my arrogance
    >your response shows your prejudiced approach and a sense of arrogance.
    please, let other people who read this judge on that, ok?
    and let's not continue this anymore
    anyway good luck in your attitudes too
    Regards,
    Michal Krawczyk

  • Message Mapping error in UDF

    I am receiving errors when trying to activate my MM.  I believe the issues are in one of two UDF's.  These UDF's do work in another MM without error.  Below are the error's and UDF's.
    ERRORS:
    Activation of the change list canceled Check result for Message Mapping MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE | http://wawa.com/xi/erp/pos:  Starting compilation  Source code has syntax error:  /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map5420e070cabe11dcab4b00306ef38da9/source/com/sap/xi/tf/_MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_.java:3291: cannot resolve symbol symbol : variable container location: class com.sap.xi.tf._MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_ map = container.getTransformationParameters(); ^ /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Map5420e070cabe11dcab4b00306ef38da9/source/com/sap/xi/tf/_MM_WPDBBY_WPDBBY01_TO_POS_WAWAFILE_.java:3293: cannot return a value from method whose result type is void return constant; ^ 2 errors
    UDF's:
    public String getSender(Container container){
    String constant;
    java.util.Map map;
    // get constant map
    map = container.getTransformationParameters();
    constant = (String) map.get (StreamTransformationConstants.SENDER_SERVICE);
    return constant;
    IMPORTS:  com.sap.xi.mapping.parse.dom.;javax.xml.parsers.;java.io.;com.sap.aii.mapping.lookup.;org.w3c.dom.*;
    public String getSeqNum(String fileType,String objNum,String Sender,Container container){
    String request = "<ns0:ZRFC_NUMBER_GET_NEXT xmlns:ns0=\"urn:sap-com:document:sap:rfc:functions\"><NR_RANGE_NR>" + fileType + "</NR_RANGE_NR><OBJECT>" + objNum + "</OBJECT><QUANTITY/></ns0:ZRFC_NUMBER_GET_NEXT>";
    InputStream isRequest = new ByteArrayInputStream(request.getBytes());
    SystemAccessor accessor = null;
    String num  = null;
    try{
         // 1. Determine a channel.
         Channel channel = LookupService.getChannel(Sender, "R_RFC_ERP");
         // 2. Get a system accessor for the channel.
         accessor = LookupService.getSystemAccessor(channel);
         // 3. Create a payload according to the data type which the adapter expects.
         //    Use service.getBinaryPayload() for binary payload,
         //    and service.getTextPayload() for text payloads.
         Payload payload = LookupService.getXmlPayload(isRequest);
         // 4. Execute lookup.
         Payload response = accessor.call(payload);
         //Parse response
         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
         DocumentBuilder builder = factory.newDocumentBuilder();
         InputStream resStream = response.getContent();
         Document doc = builder.parse(resStream);
         Element sequence = doc.getDocumentElement();
         NodeList number = sequence.getElementsByTagName("NUMBER");
         //Extract Number
         num = DOMUtil.getSimpleElementText((Element) number.item(0));
    } catch (Exception e) {
         return e.getMessage();
    } finally {
         try {
              if (accessor != null) accessor.close();
         } catch (Exception e) {
              return e.getMessage();
    GlobalContainer gc = container.getGlobalContainer();
    gc.setParameter("Num", num);
    return num;
    Any help is appreciated.
    Regards,
    Darrell

    Fauver,
    Just to narrow down the problem first remove the first udf and only use the 2nd user defined function. Also in the 2nd udf you have to change this line:
    try{
    // 1. Determine a channel.
    Channel channel = LookupService.getChannel(Sender, "R_RFC_ERP");
    In the above line instead of Sender you use the business service or business system where R_RFC_ERP RFC communication channel is created in Integration Directory. So you are hardcoding it first.
    Once you have done this changes do save and test it once again. If this works then you can change back to original and your first udf needs to be checked.
    Regards,
    ---Satish

  • Error in message Mapping(file to file scenario)

    Hi friends,
    In file to file scenario i am getting error like this while activating standard change list in IR.
    Activation of the change list canceled Check result for Message Mapping MM_file2filejuly27 | URN:file2fileJuly27.com: 
    Starting compilation 
    Compilation complete
    Check result for Software Component Version praba.com | PRABA.COM | 2007 | 0: 
    The standard error type ExchangeLogData is not defined for the namespace URN:file2fileJuly27.com  
    Save the software component version definition again. The object is then saved automatically
    could you help me out how to correct this error?

    Prabha,
    You should  not delete any existing standard  Data types provided by SAP.  ExchangeLogData and  ExchangeDaultData are standard data types get created when you create new namespace.
    If you have already deleted then copy them from other Namespace to your namespace. Activate your default data type first and then your objects.
    Hope this will solve your problem.
    Nilesh

  • Activation error in message mapping

    Hi,
    while activating Message mapping i am getting the error like this.
    how to get rid of this error?
    error:
    Activation of the change list canceled Check result for Message Mapping MM_XXXXXX | http://www.xyerxd.com/mm
      Imported source message has invalid reference IDoc
    DEBMAS.DEBMAS06 | urn:sap-com:document:sap:idoc:messages  
    Imported target message has invalid reference Message Type MT_Receiver  | http://www.xyerxd.com/mm

    hi
    Hope you are using the inactive versions of message/Idoc types for mapping.
    First activate the message/Idoc types used in the message mapping.
    Then open the message mapping, from the menu choose refresh.
    Complete the mapping and test.
    Now do the activation.
    rgds,
    Arun

  • ABAP program to Cancel messages in Scheduled/Recorded status?

    Hi,
    Thanks for reading my post...
    Can anyone tell me whether there is an ABAP program available (or a variant) that will Cancel messages that are in Scheduled (or Recorded) status?
    Messages to be sent from ECC to PI were not sent and are left in Recorded status in ECC.  I cannot find the documentation to explain what this status is, but I'm presuming that it's similar to the Scheduled status in PI (though there's not much documentation about that either - for example, what's the difference between the 'green flag' Scheduled and the 'green flag' Released for Processing (WS)? ).  {Note to SAP: Could we have a state transition diagram please? Simple, concise and effective.}
    Anyway, the 'tick-pencil' button in SXMB_MONI (aka. CTRL-F8) can be used to cancel the messages in Scheduled/Recorded status.  But I'm looking for an ABAP program to do this.  The documentation seems to 'suggest' that this button might do the same thing as the ABAP program RSXMB_CANCEL_MESSAGES.  However, this ABAP program does not cancel messages in Scheduled status (only the messages in Error), whereas the SXMB_MONI CTRL-F8 'tick-pencil' will cancel messages in Scheduled status if they are selected.
    Is there another ABAP program available to cancel messages in Scheduled status - or is it possible to create a variant of RSXMB_CANCEL_MESSAGES that will do this?  (I'm not an ABAP programmer and I've never created a variant, but looking at the code, it seemed it might be possible to get the program to read messages in Scheduled status rather than Error status.)
    Many thanks for any help.
    Mark

    Messages are in scheduled status because they still in the queue in either 'READY' status or 'EXECUTING' status (see SMQ1/SMQ2). You don't want to automatically cancel messages that are in scheduled status because that means you are also going to cancel good messages. However, in some cases, you may want to cancel such messages especially when the message in the queue has been in 'Executing' status for long time (happens in case of long running mapping program or dropped connection etc). Such cases warrant manual intervention and hence the behavior as noted by you.
    If you can tell me why exactly you want to cancel messages that are in scheduled status, I can help you more.
    Thanks
    KK

  • XI 2.0 Message Mapping Activation Problem

    Hi All,
    When I attempt to activate a message mapping, I receive the following message:
    Activation of change list cancelled
    Check Result for Object Message Mapping ZHRMD_A05toEAI | http://com.sl.xi:
    *Starting Compilation
    *Error while Compiling
    This is a rather large IDoc, so I'm wondering if it's a memory problem. Do you know where I can "Check Result"? The actual mapping is very routine, so I don't think it's a syntax problem.
    Any help is greatly appreciated!
    Kind Regards,
    Jeff
    Message was edited by: Jeff Kocur

    It does appear to be a resource issue. Following your suggestion, I ran a test and received this message:
    Messages:C:\jdk1.3.1_11\bin\javac -encoding UTF8   -classpath .;.\system-lib\boot.jar;.\system-lib\jaas.jar -extdirs .\additional-lib;.\services\deploy\work\applications\ExchangeRepository -d C:\WINNT\TEMP\12_9_21_22_10_2004 C:\WINNT\TEMP\12_9_21_22_10_2004\com\sap\xi\tf\_ZHRMD_A05BtoEAIZHRMD_A05B_.java
    The system is out of resources.
    Consult the following stack trace for details.
    java.lang.OutOfMemoryError
         <<no stack trace available>>
    Compilation error

  • Unable to activate Message Mapping (Until i restart PI )

    Dear all,
    I am using PI 7.1.
    I am trying to activate the message mapping objects in ESR. but it is not getting activated.
    I see the following error message in the process log:
    Activation of the change list canceled
    Check result for Message Mapping: MMtest | urn:test
                    Starting compilation
         Source text of object Message Mapping: MMtest | urn:test has syntax errors:
         Source code has syntax error  
    The message mapping objects are simple one, and does not contain any UDFs.
    Infact these message mapping object was successfully activated before.
    when this occured for the first time yesterday, I restarted the PI server. then it worked.
    But today, this problem is occuring again. I again restarted, it got activated.
    I worked for sometime, and tried editing and activating, but again i see the same error message.
    I am sure, it will work if i restart PI, but i cannot afford to restart these many times.
    Has anyone faced this error message.
    any inputs/help appreciated.
    thanks
    Ganesh

    we have not changed the jdk version,
    it seems that.. while compiling the message mapping into java classes, some conflicts are going on.
    now to relplicate the problem, i need not try activating the message mapping object.
    I can see the same error message when a do "Check" (F7) of the message mapping object.
    Immediately after restarting the PI server, the MessageMapping compliation process seems to pick up the right classes/jars, so is successful.
    but as the time goes on after we PI started and as we use PI, some of the mapping classes/jars values might be getting changed .. to disallow further compilation of message mapping
    hmm.. thats the thought.. may need to investigate in 7.1
    Ganesh

  • Cancel message with errors - How to automate this?

    XI / PI SDN Community
    I think that because of basis team settings every time a message fails to pass through the pipeline (for example a mapping error) XI tries to process this message over and over again for days!
    Assuming that basis is not going to change any configuration on their end: Is therer a way to create a job (TCODE sm36) to do this cancel for me? - I mean I have access to go and manually cancel the message with errors tru the moni.
    Regards,
    José Francisco

    Dear Jose,
    Hi this is Tarang ...
    For cancelling messages on Java engine ( ones that you see on RWB )
    1. There is no standard program which would allow you to cancel the messages here
    2. you can only set a maxim retry interval...i.e how many times a meesage in error should be retried foe sending...this setting can be done in transaction sxmb_adm....there is a parameter called IS_RETRY for this..
    For cancelling the messages on ABAP engine ( ones that you see in MONI)
    1. You can cancel them using the report rsxmb_cancel_messages ...but  dont use this report independently...
        coz there are some chances ..due to which you are getting a message in error in moni ..but the message is restartable......then if you directly cancel it , it is not correct
    2. you cna club the above report with rsxmb_restart_messages...i.e you can create a job sequence where 1 step would be scheduling thee program rsxmb_restart_messages and then the ones that are not restarted properly ...yu can cancle using the second step in the sequence ....i.e rsxmb_cancel_messages
    But be it ABAP / JAVA engine every XI landscape has many of the EOIO interfaces where in the concept is that if the first message in the queue gets stuck ...the message behind that should also get stuck....if you cancel message automatically (say using the above report), there are chances that particular message was configured for EOIO and the message behind that is actuaaly not meant to move ahead..but once you cancel the first message3 the other will go.....which is wrong and against the laws of EOIO...
    hence SAP suggests " no automatic cancellation of message neither at ABAP nor at JAVA level should be done"
    SAP says that manual cancellation of messages is included in the daily maintenance task of XI
    you can obviously play with the number of retries using entry IS_retry
    Hope this helps
    Edited by: Tarang Shah on Mar 6, 2009 11:07 AM

  • Error while activating any message mapping in IR: very strange

    hi forum i m getting an error in IR while activating any messageMapping.
    the error is too long to be posted....i m posting a few lines of that:
    •     Internal error while checking object Message Mapping MM_sdptestFileToFile | http://sdzpoc.com.test/sdptest (ZPOC_TEST, 1.0 of zpoctest); see details (CHECK_EXCEPTION)
    •     Internal error while checking object Message Mapping MM_sdptestFileToFile | http://sdzpoc.com.test/sdptest (ZPOC_TEST, 1.0 of zpoctest); see details (CHECK_EXCEPTION)
    •     /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapdddd0cb0100311dca6090012799eddc6/source/com/sap/xi/tf/_MM_sdptestFileToFile_.java (No such file or directory (errno:2))
    •     /usr/sap/XID/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapdddd0cb0100311dca6090012799eddc6/source/com/sap/xi/tf/_MM_sdptestFileToFile_.java (No such file or directory (errno:2))

    Sudeep,
    Let we try this way. I'm sure you might have some existing mapping objects in IR.
    Try to change that object(Description give some name) and activate again the object.
    Reply your results whether you are getting the same error.
    One sec before changing the object just test the mapping and change the object.
    Best regards,
    raj.

  • Error while activating message mapping

    Hi,
    We are trying to activate message mappings and getting error as CHECK_EXCEPTION and in error details its showing that usr/sap/server.........................../classpath_resolver/Map.......................no such file or directory.........
    What can be the issue?We can activate all other objects(DT,MT,IM,etc)
    Best Regards,
    Harleen Kaur Chadha

    Hi
    Check this thread you can find the reason for this error CHECK_EXCEPTION solved here
    Activating Object in IR - Getting Null Pointer Exception
    Re: mapping test error
    Internal error while checking object Message Mapping...
    Problem Activating Mappings in the IR
    Message Mapping activation Error
    Regards
    Abhishek

  • Error while opening Message Mapping

    Hi All,
    I have one MM in ESR, IDoc to EDI, it has been developed before, and the interface is working successfully.But when I open this MM in ESR, it given a STOP error with desc as 'For input string: ""'.
    and then there is nothing displayed on Screen under Definition,Test and Functions tab of MM.The Signature tab content is visible properly.
    I am working on PI 7.1.
    Is this issue is because of version comapatibilty or missing object. Please provide your inputs to resolve this issue,
    Thanks,
    Ruchi

    Hi All,
    I have checked with my basis team, but they suggested that the patches can not be installed as this problem is happening with single message mapping.
    When I open this MM, it gives the same STOP error :For input string: "". and when I click on Message Mapping -> Check button, it prompts a message 'Parameter #ParamName# has the invalid value null'.
    Please help me to resolve this.As the mapping itself is not getting loaded, so not getting how to set this parameter value(if it is used in MM).

  • PI 7.11: IDoc Message mapping

    Hi there,
    I'm currently working on a graphical message mapping using IDoc HRMD_A06 as source structure (HR master data transferred via PFAL).
    In my result structure I have to fill a field CostCenter with the following logic:
    If field KOSTL (cost center) is filled in node E1P0315, map this field to CostCenter in result structure, otherwise take KOSTL of node E1P0001.
    The end date (ENDDA) has to be '99991231' in each case.
    This is how the result structure looks like:
    <e>                       [1...1]
      <CostCenter>            [1...1]
    </e>
    This is the simplified source structure:
    <E1PLOGI SEGMENT="1">
      <E1PITYP SEGMENT="1">                        [0...n]
         <E1P0001 SEGMENT="1">                     [0...n]
           <INFTY>0001</INFTY>                     [0...1]
           <ENDDA>99991231</ENDDA>                 [0...1]
           <KOSTL>0000012345</KOSTL>               [0...1]
        </E1P0001>
      </E1PITYP>
      <E1PITYP SEGMENT="1">                        [0...n]
        <E1P0315 SEGMENT="1">                      [0...n]
          <INFTY>0315</INFTY>                      [0...1]
          <ENDDA>99991231</ENDDA>                  [0...1]
          <KOSTL>0000024001</KOSTL>                [0...1]
        </E1P0315>
      </E1PITYP>
    </E1PLOGI>
    How can I do the check if field KOSTL of node E1P0315 is null?
    I've tried an existence check for the whole node (E1P0315->exists), but then it fails, because all E1PITYP nodes are processed.
    I hope my problem is clear to you.
    Would it be better to use another mapping type?
    As I'm an ABAP developer, I would of course prefer some lines of code to this graphical drag&drop thing.
    Thanks in advance!

    Cheers, guys!
    I did it now like that:
    http://www.abload.de/image.php?img=mappingflknz.jpg
    Click on the image to enlarge it!
    The logic is as following (ABAP Pseudo-code ):
    IF 0315_KOSTL and 0315_ENDDA are populated.
      IF 0315_ENDDA equals '99991231'.
        map 0315_KOSTL to Cost_Center.
      ENDIF.
    ELSE.
      IF 0001_KOSTL and 0001_ENDDA are populated.
        IF 0001_ENDDA equals '99991231'.
          map 0001_KOSTL to Cost_Center.
        ENDIF.
      ENDIF.
    ENDIF.
    Is that a good way to do that mapping?
    Do I also have to use the removeContexts function or is it ok like that?
    Could I also do that with an ABAP mapping program?
    Thanks in advance!

  • Message Mapping activation error-Source code has syntax errors in UDF

    Hi all,
    I wrote a small UDF for sum of 2 numbers:
    import
    udf.*
    public String getsum(String a, String b, Container container) throws StreamTransformationException{
    int c = Integer.parseInt(a);
    int d = Integer.parseInt(b);
    int e = packageDemo.getSum(c,d);
    return e+"";}
    In imported archives, i imported pack.jar
    In D:\udf , I have packageDemo.java, packageDemo.class, aii_map_api.jar, pack.jar(has the other 3)
    packageDemo.java :-
    package udf;
    public class packageDemo{   
        public static int getSum(int a,int b)
            int c= a+b;
            return c;
    Did i miss anything?? Icant activate message mapping for 2 errors:-
    1.package udf does not exist
    2.Function getsum, Line 3:
    cannot find symbol symbol : variable packageDemo location: class com.sap.xi.tf._xml_mm_int e = packageDemo.getSum(c,d); ^Note: /usr/sap/P7R/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapd4214d3099dc11dd9470001d090e4bbe/source/com/sap/xi/tf/_xml_mm_.java uses or overrides a deprecated API.Note: Recompile with -Xlint:deprecation for details.Note: /usr/sap/P7R/DVEBMGS00/j2ee/cluster/server0/./temp/classpath_resolver/Mapd4214d3099dc11dd9470001d090e4bbe/source/com/sap/xi/tf/_xml_mm_.java uses unchecked or unsafe operations.Note: Recompile with -Xlint:unchecked for details.2 errors
    Edited by: NagaDurga Nannapaneni on Oct 16, 2008 1:07 PM

    Hi ,
    Think the error is coming because the content in imported archive is not being taken into message mapping at all...so package, class, method ..nothing is identified.
    Can anyone suggest the solution..
    Thanks,
    Durga

  • USER Cancelled message while navigating report.

    Post Author: sreeraj_vinod
    CA Forum: General
    One of our clients are facing a peculiar problem. We have a VB 6 application with crystal report 9 reports assocaited to it. When the user generates a report which has a large amount of data, and he tries to navigate to the next page, he gets and message "User Cancelled". If it is sent to printer directly, it says "Error printing".  This report has 3 small sub reports embeded into it.
    Request you to let us know, what could be casing this issue.
    Thanks in advance.
    Sreeraj

    Post Author: ygregersen
    CA Forum: General
    It's possible that one of the items in your scenario has a time out limit. When it goes beyond that limit the error message defaults to a 'user canceled' message. This happens in Access all the time because the queries in there default to 60 seconds - your scenario seems to be a similar issue. Maybe look for something about a time out limit.

Maybe you are looking for

  • Old imac needs a new keyboard!

    I have the old imac-- PowerPC G4 running on Mac Os X version 10.4.11. I need a new keyboard, but don't necessarily want to upgrade the software to 10.5.... any suggestions? Or do I need to upgrade? Also, what would I need to get to upgrade? This is w

  • Change log issue in BRF process workflow SRM 7.0

    Hi Experts, I am new to SRM workflow. At the moment I have a requirement in SRM 7.0 BRF process control workflow.My requirement is to capture the changes done by the shopping cart approver's and also the changes done by shopping cart requestor. Below

  • Error of VBA program

    Hi,allI have a VBA program developed in Excel 2000.When this program running,EssVConnect() and EssVSetSheetOption() are OK,but EssVZoomIn() has an error occured.It alerted a message "The range is not valid" and return a local failure "5" which can no

  • How do you save the info that you write into apps?

    I have entered a lot of info into List Master, and don't want to lose it. Is there an app or program that can save this information?

  • "Warning" items in my Disk Utility's Repair Permissions report.

    Having some problems with my USB ports going out of commission, I have run Disk Utility > Repair Permissions on my main HD. Here are a few items in the Repair Permissions report that sound ominous, and look like they may be related to my USB problem.