Conditional step in interface determination

Hi All,
The Scenario is a proxy to file server..
we are sending datas to different service based on File Content Conversion..
Depending on the data on a certain field the records are delivered to different location.adapter we use is a file adapter.
For this we need to give the conditional step in interface determination..
the sender is a message system and the receiver is a business service.
The issue here is when i try to give the condition in interface determination the error below appears.
"<b>Message interface does not exist in any software components installed on this business system</b>"
due to this we are not able to get the structure of the specified message type in the condition editor...
What can be done here to give the conditions in the condition step?

Hey
The error occurs if the GUID of the software component at the SLD is different to the one at the repository. Please compare the GUID at the SLD -> Administration -> Content Maintenance -> Dropdown "Component Version" -> Dropdown "Software Component Version". At the Integration Repository you select the Software Component Version at at the tab "Keys" you find the related GUID.
The error occured because the Software component has been created manually at the system. The repository content came from another system via import with own SLD (and because of that with another GUID for the software component).
source:https://forums.sdn.sap.com/click.jspa?searchID=3574640&messageID=945384
Thanx
Ahmad

Similar Messages

  • Problem with condition editor in Interface determination

    Hi,
    I have 5 receivers for an interface. There are some conditions based on which the message should be processed.
    one of my condition is:
    If field A = CIT* and (field B != IDP or field C != IDP*) then message should be processed to a particular InterfaceMap(Messaeg Map).
    I am facing problems when giving the condition with != in the condition editor of InterfaceDetermiantion.
    When I send a message that is not satisfying the above condition, even then an output file with 0kb is getiitng created. But in this case, the condition should obstruct the message going to Message mapping.
    I thought this could be the problem with != operator in condition editor.
    Can any one suggest if there is any other way that i can proceed.
    Thanks in advance,
    Minisha.

    Hi Suraj,
    Thanks for the suggestion.
    But it didnt work for me.
    Even when i give empty-message handling to ignore, the empty file is getting generated.
    Not even the condition is working.
    I tried only giving (field A u2248 CIT* AND field B != IDP EX ), which should work in this case. As expected, the message is not processed beyond this as the condition is false. But problem is when i tested with other testfile with which the condition given is true, still the message is not being processed. it is now completely obstructing the message even if the condition is true.
    Thanks,
    Mnisha.
    Edited by: Minisha Uthaman on Sep 10, 2009 4:12 PM

  • PI 7.1 Condition in interface-determination

    Hi everybody,
    I want to process interface determinations depending on payload. But when opening the condition editor in interface determination, the interface on which to apply the condition is not obtained!
    What could be the reason?
    Thanks
    Regards Mario

    Hey Mario .. that's a bug. Thanks for pointing this out. Never noticed till now
    Regards,
    Neetesh

  • Condition in Interface Determination giving problem - URGENT!

    Hello experts,
    In my scenario I have one idoc posted from the SAP R/3 and I need to write max of 3 files in the same receiver file system based on some condition i.e. based on the value of some field in the incoming idoc.
    What I have done is in my interface determination, I have given that condition for all the 3 inbound interface. that is in the condition field in interface determination, for each inbound interface I chose that perticular field in idoc and gave the condition for which that interface should run.
    Now when I am pusing an idoc, if that idoc contains only one condition than my interface is working fine by creating only that file. I have checked this for all 3 files by sending 3 different conditions in 3 idocs. It creates 3 different files for 3 idocs.
    But if I send all 3 conditions in one idoc (since idocs can have multiple segments - in few segments i am giving one condition and in few others the 2nd conditon and in the rest the 3rd condition), I expect all 3 files to be created in my file system with data fulfilluing only that perticular condition. but this is not happening. In interface determination only one of the 3 is getting executed. Rest 2 is ignored and i cannot trace it anywhere (RWB, SXI_MONITOR etc)
    I have tried all possible combinations but this is not working if i send in 1 single idoc?
    Please help me in solveing this as this is a production issue and they cannot send 3 diffent idoc for 3 conditions. Where am i going wrong?
    Waiting for your responses.
    Thanks,
    Yash

    Hi Jakub,
    My scenario is one idoc say IDOC 1 and 3 files says FILE1, FILE2 and FILE3. Now the target message type for these three files are MT_FILE1, MT_FILE2 and MT_FILE3 (3 different message types).
    The only catch point here is i have 2 different interface for creating FILE3 (same message type but different mapping, interface etc). Each interface is based on a condition.
    Now when I send one doc which includes condition for only FILE1 and FILE2, it creates 2 file.
    If I have condition of only FILE3 (one condition of FILE 3 as FILE3 has 2 conditions) and FILE2, it creates both files.
    If I have both condition for FILE3 and FILE2, it creates FILE3 with only one condition and FILE2.
    If i have condition for FILE1, FILE2 and both conditions for FILE3, it creates FILE1 and FILE2 both no FILE3 at all.
    I guess the problem might be that I have same message type for both conditions for FILE3 but I m not sure. Let me try by creating seperate message type for both and see. But is there any other problem?
    Yash

  • Xpath condition in interface determination

    Hi all,
    I have a scenario where i have two Interface mappings between same source and target. I need to define a condition based on if a field exists, then first one should be executed and if the field doesn't exists, then second.
    How should i define a condition that if field doesn't exists,  the second mapping should be executed.
    Can any body please suggest.
    Thanks,
    Kalyani.

    Thanks for your replies . But this condition is not working for our requirement .
    Below is our exact requirement.
    Source structure  is the xsd which we have imported into ExternalDefinition.This External Definition has 2 other external references(namespaces are also different).
    The field which we need to check is in the external reference. This field is not visible in interface determination condition editor.
    We have manually added the xpath condition in the interface determination.
    1)The Xpath for EXIST condition looks like
    (/p1:ABC_Responses/p1:ABC_Response/p1:ABCResponses/p1:ABCResponse/p6:Fault/p6:ID EX).
    This is working fine.
    2) The XPath for Not Exists condition looks like
    (/p1:ABC_Responses/p1:ABC_Response/p1:ABCResponses/p1:ABCResponse/p6:Fault[not(p6:ID] EX).
    This is not working.
    Hope iam clear with the requirement now.
    Edited by: kalyani uppari on Feb 11, 2010 10:30 AM

  • Runtime flow sequence of receiver or interface determinations is based on

    There is interface whose message flows as mentioned below.
    System A <=> System B <=> System c
    BPM: Receive -> sync send 1 -> sync send 2 -> async send
    System A sends the sync message to System B, System b response as request to System c and System C
    response as response to System A
    Receiver/interface determinations:
           i: RD/ID: System A to IP
          ii: RD/ID: IP to System B  (Operation mapping from IP to System B)
         iii: RD/ID: IP to system C  (Operation mapping from IP to System C)
    No conditions in Receiver/interface determination
    My query is how IE determines after i:RD/ID execution it should go to ii/iii: RD/ID ?
    Is it based on Message interface(Message type) i.e Receiver IP message interface should be similar to sender
    IP message interface ?
    Otherwise based on the sequence of creation of RD/ID in Configuration scenario ?

    Source Mesage interface in 2nd RD/ID is not dependent on previous target Message interface of RD/ID. Both interfaces can be any message interfaces ?
    So you are asking me if it's possible - then I would say yes.
    Let consider this - You have received a message in the BPM and this message has to be called on two different systems synchronously. In this case Both the synch step will have the Source interface as the message received in BPM correct? Does the 2nd Synch step Source Interface is dependant on 1st Synch step Target Interface? - NO.
    I hope it clears a bit.
    I'm not understanding your other question...

  • Complex interface determination fails for 0-N mappings

    We have a mapping question for the following scenario in PI 7.1: One message needs to be mapped into two target structures, it comes from the same sender and goes to same receiver. We need to call two different BAPI in the same SAP end system simultaneously.
    This is set up in one interface determination (same sender & receiver) where we use two different operation mappings with different receiver interface names. If the mapping have multiplicity 1, everything works fine and the message gets mapped to both receiver interfaces simultaneously. But, when the multiplicity of the mappings is 0-N (split mapping), then we get error message during interface determination phase:
    Error when determining the inbound interface: Inbound interface found several times (for same sender and receiver) for the outbound interface http://sending/namespace.sndInterfaceName
    How can we set up our scenario with two 0-N mappings without getting error message? One option would be combining two mappings in one, but this can not work in our case because of the high complexity.
    Any comments appreciated. Thanks, Sanjay.
    Edited by: Sanjay Gupta on Oct 21, 2010 10:50 PM

    Thanks for taking the time to look into this. See my comments below.
    1. Are you using multi mapping? Source Message type 1 and Traget message types 2 (added from messages tab in the mapping)
    We have two mappings, both create only a single output type, however, they are split mappings, meaning the mapping result message multiplicity is 0-N. So the answer is NO, this are no multi mappings
    2. At any time, can both the target messages be created or are they mutually exclusive?
    both targets will always be created, they are NOT mutually exclusive
    3. With in each message type that gets generated on the target side, is the occurance 1..1 or 1..unbounded?
    Don't fully get the question, but I assume you ask if the mapping is defined as a 1:1 or 1..N mapping. The latter is true.
    4. Is there any condition in the interface determination?
    Answer is No.
    5. How many operation mappings did you design.
    We have two operation mappings, each containing a different mapping to the different receiver interface type.
    Being said that, the ideal way should be, You need to create only one message mapping by adding multiple message types on the target side. I fully understand and agree with this statement, but due to the complexity of the mapping we need to separate it out into two mappings.
    It is confusing, that the described scenario works if the multiplicity of the mapping objects used is 1, but as soon as the multiplicity is 0-N (when using a split mapping instead), we start getting the error message.

  • Interface Determination doubt

    Hi guys,
    I have a file with the following example source:
    80
    80
    56
    25
    32
    80
    56
    … The target is an R/3 and the interface is IDoc. All lines with value “80” should map to RPLMAS02 and the others values to ARTMAS 05. So, is two different mappings based on content field for the same target service “R/3”.
    I already have two different mappings for each IDoc type, and I’m using the function “createIf” to exclude the lines that I don’t want to add in each IDoc. But, I can’t do it using XPath conditions in the Interface Determination, because both mappings are always performed…
    Which is the best way to achieve this issue?
    Thanks in advance,
    Ricardo.

    Hi folks,
    Thanks a lot for your prompt answers.
    Aamir: Take my source code as an example, I have several lines with different key field values. Based on these key field values I want to route both contents to different mappings. The lines with 80 value to RPLMAS mapping and the rest (different from 80) to ARTMAS mapping. But, from my understanding, at Interface Determination level, one message is considered and the XPath conditions only checks where 80 value exists or not. As I've a message with both values 80 and !=80), both mappings are performed and the last one is generated empty with error.
    Saravana: I didn't understood where this "workaround" solve my issue above?
    Resuming: I want to route lines for two different mappings and not an entire message. I mean, I want to put lines 80 in one mapping and the rest in another every thing at the same execution time.
    Thanks in advance,
    Ricardo.

  • Dynamic interface determination based on file content

    Dear all,
    I am trying for a while to solve my issue, but wasn't able to find the answer. Maybe you could point me in the right direction whether using standard or BPM...
    I've got one file with multiple entries. Dependend on a field value, I would like to call the right interface and Idoc.
    Sample message:
    <customers>
         <customer>
              <name>ABC</name>
              <city>XYZ</city>
              <trigger>A</trigger>
         </customer>
         <customer>
              <name>DEF</name>
              <city>QRT</city>
              <trigger>A</trigger>
         </customer>
         <customer>
              <name>GHI</name>
              <city>JKL</city>
              <trigger>B</trigger>
         </customer>
         <customer>
              <name>MKN</name>
              <city>TZG</city>
              <trigger>A</trigger>
         </customer>
    </customers>
    Dependend on the content of field "trigger" I would like to send the message to the correct interface (Idoc). I was able to trigger the interface selection in my interface determination based on a condition. So I am looking for field trigger and if = A -> Interface A is called and if = B -> interface B is called. However, it seems it is only checking for the first entry of my payload and then sending all customers to the same interface, no matter what I've got in the trigger field. What I would need is a message split and then only posting the correct rows to the selected interface.
    Any ideas would be highly appreciated.
    Thanks a lot,
    Jens

    Hi Jens,
    I can think of two options:
    1) The logical expression (condition) in the Interface Determination can hold a XPath expression. In your case, it could be complex, as one single XPath has to loop at all the line times for an occurrance.
    Some XPath help is available at: http://www.w3schools.com/xpath/xpath_functions.asp#sequence
    /people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination
    The objective will be to remove the contexts on the trigger node to get a sequence consisting only of the trigger values, and then performing an 'index-of' function on value 'A'. If the result is a null value, then that trigger does not exist and the interface determination will not pass for 'A'. Similar condition can be used for other values of trigger.
    2) Create a separate receiver system / service for each interface A, B etc. Then you can use the enhanced Receiver Determination feature in the IR itself if you are on SP16. Check this:
    /people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16
    Good luck,
    Bhanu

  • Interface determination issue.

    Hi Experts,
    We are using Idoc(Matmas) to file scenario wherein we are facing the below issue
    SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="IF_DETERMINATION">NO_IIF_CASE_ASYNC</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Unable to find an inbound interface</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    The condition used in Interface determination is /Zmatmas05/idoc/e1maram/mstae=mw
    Please let me know how to rectify this issue.
    Thanks & Regards,
    Ranganath.

    Hello,
    Try using double slash in your xPath (for PI7.1) instead of just one, so from
    /Zmatmas05/idoc/e1maram/mstae=mw
    to
    //Zmatmas05/idoc/e1maram/mstae=mw
    Hope this helps,
    Mark

  • Xpath condition not working for determining receivers

    hello all
    am writing a xpath expression for a simple structure
    <doc>
       <status>
       <id>
    </doc>
    status is attribute field.and will have value 'error' and some other value for no error. I want to choose one receiver if error and other receiver if no error
    so I wrote an xpath expression
    /Doc[@status='Error']   EX    --> Error receiver
    count(/Doc[@status='Error']) = '0'   --> no error receiver
    it was working couple of days ago but suddenly stopped working
    whats going on? thx
    mike

    But xpath is not working properly..
    Are you using this in the condition editor of Interface Determination (it should not be a cause of concern though)
    Can you confirm that the condition that you have specified is proper ....does it work when you specify only one condition?
    Regards,
    Abhishek.

  • Condition Based Interface Determination in ICO (AAE) - PI 7.1 EHP1

    Hi Friends,
    We have PI 7.1 EHP1 - SP 04.
    In our scenario, we have 1 outbound interface and 2 inbound interface. Based on condition, it needs to select the first inbound interface or second inbound interface.
    In the normal configuration, we are able to select. (By click + icon and add condition in the Receiver Interfaces in Interface Determination Step)
    When we create configuration using ICO (Integrated Configuration), there is no option in "Receiver Interfaces" Tab to add two inbound interfaces with condition.
    Could you please clarify how do we do this in ICO?
    Kind regards,
    Jegathees P.

    IMHO, condition based interface determination is not possible in ICO.
    Use Multiple inbound service interfaces... You can handle in design level .. ESR level. 
    Check the Abhishek's blog... This  might be helpful.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90dcc6f4-0829-2d10-b0b2-c892473f1571?quicklink=index&overridelayout=true
    Note: Since in your case you need two receiver agreements, you cannot handle through ICO. The above link might be helpful to do multimapping without BPM.
    Edited by: Baskar Gopal on Apr 26, 2011 9:53 AM

  • Condition based Interface determination

    Hi ,
    Environment : PI 7.1.
    Scenario : File to Proxy.
    In this scenario , We have a single file interface which reads a file and routes the data to two different inbound interfaces.
    Steps followed to do this -
    >>Defined two inbound interfaces interface1 & interface2.
    >>Both interfaces are pointed to same ECC system.
    >>Read the file using a single sender file communication channel.
    >>Define receiver ECC in the receiver determination.
    >> Define interface determination based on a value of a field in the file structure(source structure). Used XPATH to define this content based routing and selected operation mapping specific to the interface.
    1 sender agreement
    1 receiver determination ( not using enhaced receiver determination because we have only one receiver)
    1 interface determination which has two receiving interfaces based on XPATH condition ( maintain order runtime is checked)
    2 Receiver agreements.
    2 Communication channels.
    For example if you have 10 lines in a file , out of which if 5 lines has a value related to interface 1 & 5 lines has a value related to interface 2. It should push the data into two different proxies as configured.
    We are facing a problem in this scenario -
    There is no consistency in the logic. Some times it runs interface 1 & some time it executes interface 2.
    based on condition 1 it routes the data to interface 1 successfully but the structure is not getting created for interface 2 so it is giving an error stating the interface 2 structure is not available.
    In SXMB_MONI the branching steps show two subnodes but if you see the log it shows that in subnode 1 the sender is sender interface & the receiver is interface 1 based on the filter condition. If you see the log for subnode 2 then it shows the sender is sender & the receiver as interface 2 below that it shows another entry which shows the reciver interface is interface2.
    Please evaluate and let us know if the approach we are following works or not. If there is any limitations please let us know how to achive this.
    Regards,
    Reddy

    Hi,
    Your design is correct but here you missed one point. Here the message is send either to receiver1 or receiver2  depending on the condition but not both. As this does not result in multiple messages with the same payload because only one condition can ever be true at runtime. For more details see the below link
    http://help.sap.com/saphelp_nw04/helpdata/en/46/8015de950e6be3e10000000a155369/frameset.htm
      If you want to create multiple message then you need do 1:n mapping :
    http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3417700)ID2056393550DB10021342992851308291End?blog=/pub/wlg/2927
    Shweta.

  • Error while specifying condition in  Interface Determination

    Hi all,
    I am facing a typical problem
    It's a proxy to file scenario with mutiple receivers.
    In the interface determination when we are trying to specify the condition, it gives the following error.
    "Message interface does not exist in any software components installed on this business system".
    Detailed solution would be highy helpful.
    regards.
    younus

    Hi Yonus,
    It seems that u have made changes in SWCV after doing the configuration.
    Try out thess:
    STEP1->In ID
    Go to menu :--> Enviorment->clear SLD cache
    Step2->In IR
    Go to menu :-->Tools->Transfer from SLD->Update application component and then step 1
    Step3->IN SLD
    Check the the SWCV u r using is associated with the Business system u are using. Check for the checkbox for SWCV in Business System.
    Sachin
    Message was edited by:
            Sachin Dhingra

  • Receiver Determination and Interface Determination Condition conflict in ICO

    Hi,
    I found a strange issue today while configuring two receivers using the Receiver and Interface Determination conditions.
    Sender - Proxy Service
    Receiver1 - ReceiverA
    Receiver2 - ReceiverB
    Receiver Determination Condition : When Field1 = 100, message should flow to ReceiverA and ReceiverB
    Interface Determination Condition (ReceiverA) : When Field1=100 and Field2=50 message should flow to a specific interface in ReceiverA
    There is no Interface Determination condition for ReceiverB, for all messages having Field1=100, it should go to ReceiverB.
    Test Scenarios:
    1) Field1=100, Field2=50 : Message flows successfully to ReceiverA and ReceiverB
    2) Field1=100, Field2=89 : Message fails to process from ECC itself throwing Interface Determination not found error. Ideally this is a positive scenario for ReceiverB and it should send the message to ReceiverB without any errors. But, this did not happen in this case
    I tried the same by configuring the conditions completely in Receiver Determination itself without using the Interface Determination, it worked perfectly fine. But, just wanted to understand that if this is an expected behavior.

    Hi Sherin,
    As there are two receivers Receiver A and Receiver B.You need to create two bussiness components and two communcication channels for two receivers and one Reciver Determination, two Interface Determination,two Receiver Agreement.In Receiver Determination you need to keep the below and condition.
    In the above screenshot the two receiver are Receiver B and Receiver C and Field 1 is Key_Value and Field2 is Emp_ID.
    If the Key_Value=100 and Emp_ID =22 then the message should go to both the receivers B & C by keeping the following AND condition
    If the Key_Value=100 and Emp_ID is not equal to 22 then the message should go only to Receiver B by keeping the following condition
    You need not keep any condition in Interface Determination just create 2 Interface determination for two receivers.
    Hope this helps you.
    Thanks,
    Durga.

Maybe you are looking for