Accessing XI logical system in message mapping

Hi All,
How can I retrieve the current PI logical system name in my mapping. I need to map it as part of the payload.
Is there a java api that I can use?
Thanks,
Harsh

Hi
  Glad to know that it helped you..
  we used this in one of our scenarios earlier.. but I dont know if there is any good doc on this.
check if this helps
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/72e26432-0701-0010-19ba-abc05de7360b
Our scenario was something like this.
The customer had only Two systems (one Prod + other for dev/test/QA etc). since we cannot adjust mappings other than Dev, we used the above way & looked up values to generate the exact target location.
I shall update this link for better doc, if I find any. (also for client info)
- just try "SAPSYSTEM" if it works
Cheers
Regards
Vishnu

Similar Messages

  • Dynamically change Receiver Business system in message mapping

    Dear all,
    I would like to change the receiver business system in the message mapping that is used in the interface determination. I do understand there is an enhanced receiver determination where I can use a mapping but that is not what I am looking for.
    I think this should be possible if we can change the appropriate value in the SOAP(message) header.
    Possible candidates I can think of by looking at the SOAP header in SXMB_MONI are
    1. SOAP:Header- SAP:Main- SAP:Receiver- SAP:Service
    2. SOAP:Header- SAP:OutboundBinding - SAP:OutboundBindingEntry - SAP:ToServiceName
    Q1. Which one of the above is relevant while identifying the receiver agreement ?
    Q2. What is the best way to access them from the mapping(preferably from a UDF) ?
    Thanks in advance.
    Cheers
    danus
    PS: I have tried to set "http://sap.com/xi/XI/System","ReceiverService" in Dynamic config & ReceiverService, BusinessSystemReceiver and ReceiverSystem in the Container’s Transformation Parameters, but didn't get the expected result.

    Chidambaram,
    You use an enhanced receiver determination to have a mapping program determine the receivers of the message dynamically at runtime. Instead of creating the receivers in the receiver determination manually, you assign a mapping to the receiver determination and this returns a list of receivers at runtime.
    A typical usage case is if you do not yet know the names of the receivers at configuration time. In this case, you can define a mapping program, for example, which reads a list of receivers from a table or from the payload of the message at runtime.
    Go through the following link:
    [Receiver Determination enhancement|http://www.****************/Tutorials/XI/RecvDetermination/Enhancement.htm]
    Hope your problem gets resolved.
    Regards,
    Kiran Bobbala
    Edited by: kiran Bobbala on May 7, 2008 5:47 PM

  • Accessing Element's name in Message mapping

    Hi,
       I need to Access the Element's name in Message mapping (Using graphical tool or in user defined function).
    For Example:
    Element: <Company_Name>XYZ Co </Company_Name>
    I need to access the Element's name(i.e.)<b>"Company_Name"</b>. So that I can map it as
    <Element>Company_Name</Element>
    <Element_Value>XYZ Co </Element_Value>
    in the target message.
    Kindly provide your inputs.

    Hi Santhosh,
    I am not sure if this can be done using your Graphical Mapping, but this is possible using JAVA mapping. Your SAX and DOM parsers for JAVA mapping provides methods like getChildNodes, getElementName using which you can get the name of the element.
    Check this link for the methods available for Java Mapping,
    http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/parsers/package-summary.html
    I think the same can also be done using XSL mapping. Though, I am not sure what method should be used for the same.
    Hope this helps,
    Regards,
    Bhavesh

  • Require some complex logic scenario in message mapping

    Hi all,
                 I need some complex logic scenarios for practice in message mapping . Kindly forward some links for message mapping logic scenarios.
    Thank you so much in advance.

    always search sdn first....
    http://wiki.sdn.sap.com/wiki/display/XI/MappingConceptsinSAPXI

  • How to get the message ID generated by the PI system during message mapping

    Hi All,
    I have a file to file scenario, where during the mapping, I want to map and send the Message ID generated by PI.
    Can anyone please help me with this?
    Kind regards,
    Joe

    Hi,
    You have write UDF for this.
    Please see the below code .
    java.util.Map map = container.getTransformationParameters();
    String MesID = (String)map.get(StreamTransformationConstants.MESSAGE_ID);
    return MesID;
    Hope this helps to you.
    Regards,
    P.Rajesh

  • Logical system name in the message

    Hi,
    I am sending a file from non SAP system to XI, which is than converted to Idocs and goes to a SAP system. Sender File system is created in SLD and a logical system name is assigned to it. My requirement is to know that logical system name during mapping. Can anybody guide me to find this in the incoming message.
    Thanks !

    Dehra,
    Am not sure if this will help, but if you want, you can get the details like Sender Business System , sender Service etc in your mapping.
    If this is what you want , take a look at this link,
    http://help.sap.com/saphelp_nw04/helpdata/en/b3/9a2aeb24dc4ab6b1855c99157529e4/content.htm
    Also, can you please elaborate on why you need to access this Logical Name from mapping? Just curious..!!
    Regards,
    Bhavesh

  • Mapped logical system

    Hi Experts,
    I have a confusion to use the type of RFC connection like when
    to use ABAP connection and TCP/IP connections etc...
    I have defined one logical system and define one RFC destination and when  i am trying connect this two it is asking me to give Standard RFC destination for BAPI and dialog calls to connect to the logical system. i would like to know what is this ? why we need to give this?.
    and we assign this logical system to the Mapped logical system. i d like to know what is this mapped logical system and when we need to assign the logical system to this mapped system.
    Can anybody please clarify all my doubts.
    Thanks, Izaz.

    Hi Izaz,
    ABAP connections are given between 2 SAP systems and TCP/IP is used between ABAP and JAVA.
    Regards,
    Suman

  • Accessing container variable of BPM in Message Mapping function

    Hi,
    I have a scenario in BPM where i have a container variable that is used as a loop counter.I want to access that counter defined , every time when i go around the loop and perform certain actions based on that counter. so how can i access that variable in my message Mapping function.

    Hi Sudharshan,
    check these links, hope they give you the required information (i think there is some problem with SDN site, check these links after a while)
    Re: How to use Container Variable across Maps
    Container object in Message Mapping
    Copy value of container (abstract interface) to an other container
    Regards
    Vishnu

  • Message determination and Partner function LS (Logical system) for PO

    Hi,
    I have worked in the past with vendors (VN) as partner roles in a PO, with the message to create an EDI outpout to Partner Type: LI (Vendor), and this works succesfully.
    Now, the idea was to use in EDI, a Partner Type: LS (Logical system) as a receiver of EDI messages (message types: ORDERS) for inbound Purchase Orders to the Partner.
    So, we have set up a respective message condition, with Partner Function: LS  (Logical System), in transaction: MN04 (Create Output-condition records).
    A. When we use ME59N and create a PO with ref. from a PR (created from a sales order), the message determination works well, it reads the condition set in MN04 (condition records for messages), and creates a message (with output type for EDI , medium: 6, and partner function LS: Logical system). Message is created and idoc is sent to partner.
    B. When we try with ME21N, ME21 and we create the PO with ref. to the same PR, either by entering manually the PR in the document overview of ME21N or by selecting the PR (without entering the PR number), i.e with date, the message is not created in the PO.
    Company code is assigned to purchase organization, and so is purchase organization to plant.
    Any idea why there is no automatic message determination in the case of the transaction: ME21N?
    There is a single message condition that is to be read for both cases (trans: ME59N and ME21N).
    Note: If I try ME21N, and enter the output type and partner (=Logical System), manually, I receive a warning message :
    VN006 (Partner XXXX does not exist for partner function LS). If I accept this warning message, then message is saved- idoc is sent.
    However you can not assign a partner function LS to a vendor, in vendor master data, because of message CZ 327 (Can not use this partner role).
    Anyone with similar experience? Thank you for your advice.

    Hi,
    I well understand that the receiving partner can be a partner: Vendor (LI).
    I have seen that working.
    However, in the Partner Profiles (trans: WE20), the receiver was created as a Logical System (LS).
    We want the partner Logical system (LS) to receive the idoc for purchase order (ORDERS).
    After that, I think that the idea is that the LS can generate an idoc for a sales order creation that will then outbound to another partner.  I think that this is the concept.
    The issue is that I have seen that the POs created with transaction: ME59N, have received from message determination (trans: MN04) the message with partner LS (automatically), and the idoc of the purchase order (ORDERS) have reached the partner LS.
    The question is why the message determination fails when creating the PO from trans: ME21N or ME21, with reference to the PR. Message condition is the same and message determination procedure is the same for both cases.
    There is no issue with customizing for the LS in trans: WE20
    (Port processing agent is Active for LS and ORDERS have the proper processing code for application EF).
    I hope I am helping more with this.

  • Need Clarification on Looping in Message Mapping.

    Hi All,
      I'm trying to implement the Dynamic emailing as explained in the Michals blog.
    /people/michal.krawczyk2/blog/2005/03/07/mail-adapter-xi--how-to-implement-dynamic-mail-address
    I have this partially working for the scenario I have.
    XI will be receiving a ORDRSP IDoc from an external system and XI needs to do the following.
    1) Check the value of <b> E1EDP01-ABGRU </b> equals to Z2. If any of the E1EDP01-ABGRU has a value of Z2, it should do the following
             a) Get the email address from the E1EDKA1-ILNNR and map it to the TO field as shown in the blog.
              b) Get the values of BELNR-E1EDK01, MENEE, VPREI, POSEX, PEINH, ABGRT from the E1EDP01 segment and concatenate them all and map it to the Content tag as explained in Michals blog.
      I have this process partially working. The XI interface is only mapping for the first occurrence of E1EDP01 and not the subsequent occurrences of E1EDP01 which matches the criteria ( E1EDP01-ABGRU = Z2)
    Any help in getting fixing this problem??
    Thanks

    Make sure to define multiple target messages in your message and interface mappings, for the mail package message definition (occurrence = 0...unbounded).
    Also, in the logic of your message mapping, you need to create a new mail package message only if  E1EDP01-ABGRU = 'Z2'. Use it like this:
    ABGRU   ---   EqualS   ---   createIf   ---   Mail
    Constant[Z2]
    Regards,
    Henrique.

  • Manipulate Dates in XI Message Mapping

    Hello all,
    I have a problem in which I need to take a  date from my source file and manipulate this date to help produce my target structure.
    <i><b>This is not my actual XML</b></i>
    <source root>
      <field 1>A</field 1>
      <field 2>Any value</field 2>
      <field 3>Next value</field 3>
      <field 4>20070201</field4>
    </source root>
    Consider the above XML as my source.  I would like to have logic in the message mapping that will check the value of a field (field 1) and based on it's value add or subtract days from the date value provided.
    This would be my output for adding ten (10) days if '<b>field 1</b>' has a value of '<b>A</b>'
    <target root>
      <target 1>A</target 1>
      <target 2>Any Value</target 2>
      <target 3>Next Value</target 3>
      <target 4>20070211</target 4>
    </target root>
    This would be my output for subtracting five (5) days if '<b>field 1</b>' has a value of '<b>B</b>' (Same source file)
    <target root>
      <target 1>B</target 1>
      <target 2>Any Value</target 2>
      <target 3>Next Value</target 3>
      <target 4>20070127</target 4>
    </target root>
    As you can see there is a field in my source system that will tell me what type of logic to perform.  The problem that I am having now is that the message mapping functions that currently exist are not helping me satisfy this requirement.  I have viewed several forums and tried several of the suggestions given but nothing seems to help.  Does anyone know how to solve this problem?  Is there a UDF that anyone has used that would help me in solving this requirement?  The solution should be dynamic to account for leap years as well as for the different days that each month has.
    Answers received will be rewarded with points.
    Thanks in advance for the help that you provide.

    Hi,
    Here i am sending UDF code,which takes date(format:yyyyMMdd) as input and does addition or subtraction operations based on <field 1> value,return the result date(format:yyyyMMdd) as string value.
    public String GenerateDate(String date_input, String field1,Container container){
    //Here "date_input" and "field1" are inputs for this UDF
    int date = Integer.parseInt(date_input);
    Calendar cal;
    int day = date % 100;
    int month = (date/100) % 100 - 1;
    int year = date / 10000;
    cal = Calendar.getInstance();
    cal.set(year, month, day);
    /implement addition or subtraction logic here as your needs/
    if (field1 == "A")          
      cal.add(Calendar.DATE, 10);
    else if(field == "B")
      cal.add(Calendar.DATE, -5);
    day = cal.get(Calendar.DATE);
    month = cal.get(Calendar.MONTH)+ 1;
    year = cal.get(Calendar.YEAR);
    date = year * 10000 + month * 100 + day;
    return (""+date);
    if you need any other details regarding this UDF, plz let me know.
    Cheers,
    Jag

  • ATTRIBUTE_INV_SND_SERV (partner number different of SLD logical system)

    Hi,
    I'm implementing an interface with XI 3.0. In my scenario, I've created one IDOC communication channel. and i try to send some data from file (File --> XI --> IDOC R/3)
    I am using a XSL mapping to build an Idoc-XML from this input file and I'm filling the sender and receiver partner name (different of the default logical system of SLD)
    In a first test, the Idoc adapter changed the partners name by the default ALE name of SLD, then when Idoc couldn't be processed in R/3 system because EDI partner was not customized. We would like to use the logical system of our mapping instead of the logical system froM SLD.
    Then, I've applied next changes:
    - I've checked "Apply Control Record Value from Payload"
    - I've changed the Header mapping, indicating:
            Sender service as XPath = ..../SNDPRN
         receiver service as XPath = .... /RCVPRN
    - The schema as ALE#LS
    But althought these modifications, we are having this error in the monitoring (SXMB_MONI)
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_INV_SND_SERV</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Unable to convert sender service to an ALE logical system</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
      Please, i would really appreciate if anybody of you can help me to fix this problem.
    Thanks in advance,
    Gerardo

    Hi michal,
        I've reviewed your weblog and it's very helpful as verifications guide.
        We've imported the Business system from the SLD, but we don't want to use its logical name. We would like to use the logical name of our XSL mappings.
        We've also checked the receiver agreements in SXI_CACHE, and both seems to be ok:
    ReceiverService     /.../IDOC/EDI_DC40/RCVPRN
    SenderService     /.../IDOC/EDI_DC40/SNDPRN
        And as last step, we've applied oss note 791181, but i have still the same error message ATTRIBUTE_INV_SND_SERV.
       Anyway, thanks a lot for you help. Please, if you have any more idea, please, i would really appreciate your help.
    Regards,
    Ger

  • SWO1 - No destination could be determined for logical system

    Hi there,
    I am trying to call a remote transaction via SWO1, but I am getting the following error:
    No destination could be determined for logical system TSTCLNT120
    Message no. OL860
    Diagnosis
    You attempted to instantiate an object with the specified logical system within the distributed runtime environment. However, an RFC destination has not been defined for this logical system.
    System Response
    The object instance cannot be generated.
    Procedure
    Define the RFC destination or use the local runtime environment.
    I go to SW01 --> Type an object name "TSTC" --> Click TEST --> New Dialog window Clicked on the Full key --> Entered the Logical Name for remote system (ECC), and also Entered Key: SU01 --> When I click on the continue, I am getting the above mentioned error.
    I can clearly see that it is looking for mapping Destination for that Logical name. Can someone please tell me what t-code or table I need to go and map the Logical Name with a RFC destination?
    Thanks in Advance
    Kumar

    hi
    try these links
    Re: R/3 Connections in RFC destination node.
    Assign a logical system in RFC
    Regards
    Sajid

  • An RFC destination could not be specified for the logical system

    Hello Experts,
    I am trying post goods receipt in EWM system in a simple inbound delivery process. It is not getting posted back in ECC. I have my RFC connection setup properly(I assume since I was able to transfer inbound delivery to EWM in first place).It seems some setting related to Outbound queue in EWM is missing.Can anyone tell me in detail what settings are required?Is it something to do with WE20 transaction?I am not sure what settings should be done there.The error log is as below-
    An RFC destination could not be specified for the logical system
    SB3CLNT011
    Message No. B1550
    Diagnosis
    An RFC destination should be specified for the logical system SB3CLNT011.
    This could not be done in this case. SB3CLNT011 is not your local logical system
    and this system is not included in the relevant Customizing tables.
    Procedure
    Check:
    RFC
    destination
    Port
    definitions
    oubound partner profile of
    message type SYNCH for this logical system
    Regards,
    Khushboo

    Hi Oritra and Suraj,
    I have checked remote connection in SM59 for both the logical system.It works fine.I understand this is more of a technical issue,but I don't have A local basis team to help me so reaching out to experts here.Can you guide me what technical settings could be checked for EWM-->ECC connection?When I execute BD82 for SB3CLNT011 it shows me green status with message "No messages have been defined for the selection conditions in the model".
    Although when I do this for EWM logical system SB3CLNT012 it shows me this with all green status-
    System SB3CLNT011 as a partner type already exists
    System SB3CLNT012 as a partner type already exists
    Port A000000018 with RFC destination SB3CLNT011 already exists
    Outbound parameters for message type SHP_IBDLV_CHANGE SHP_IBDLV_CHANGE01 already
    Outbound parameters for message type SHP_IBDLV_SAVE_REPLICA SHP_IBDLV_SAVE_REPLI
    Outbound parameters for message type SYNCH SYNCHRON already exist
    Am I missing something in WE20?
    Regards,
    Khushboo

  • Logical System for Transaction Launcher??

    Dear all,
    Should we define logical system for Transaction Launcher to call transactions from back end ECC system. If yes, why we do this and where we maintain the logical systems?
    Can we use existing ECC logical system, whcih mapped with SAP CRM system?
    Where can we define the logical system for Transaction Launcher?
    Please clarify my doubts to complete this process successfully, your suggestions will be highly appreciated.
    Thank you
    Raghu ram.

    Hi Raghu Ram
    In order to call an transaction from ECC, you should choose the logical system of the ECC System itself. You will get the information regarding the logical name assigned to your ECC System using the tcode SM59. The logical system must have been defined for the ECC System before you integrated CRM to backend ECC.
    Check the tcode SM59 and you will find logical name of your ECC System there.
    And yes, you are suppose to use the existing ECC logical system, which is mapped with SAP CRM system.
    Hope this helps
    Regards
    Rekha Dadwal

Maybe you are looking for

  • Uninstall 10.4.8 nightmare = how-to

    I am tired of 10% max of my Apple software working after 10.4.8 joke on my Mac mini espc. Front Row. Solution = Redneck Apple fix = Search your hd of your apple for 10.4.8 , you are looking for a file in " hd-library-receipts " as this folder holds a

  • Artist photo missing from some artists

    I recently realized that the music artists on my iPhone(5s) have pictures of themselves. But not all of them. Sometimes, at first they don't have a picture (it just shows the album artwork) but it appears after some time. What should I do if I want a

  • To modify the existing form of custom invoice into  Proforma Invoice form

    We need to modify thye existing custom invoice form in to proforma invoice form by inputting the below details 1) Suppling plant details 2) LST/CST of receiving plant 3) LST/CST of delivering plant Appreciated if any one can kindly let me know the lo

  • Kernel Panic Lion 10.0.1 iMac GPU DumpGPURestart

    I posted the message below to the iMac forum - but it is clearly not a hardware problem, and also, clearly, a Lion 10.7.1 problem. I know this because I've now booted the same machine from my special Snow Leopard disk (I have it so I can run applicat

  • WRT54G2 won't get an IP

    Recently my mom started complaining that she couldn't get online wirelessly. At first it was intermittent but in the last two weeks it has gone out completely. She was able to connect tot he router but no internet. When I checked it out I found the f