BPM: XPath-Condition in Switch Step

Hello,
I have the following requirement in BPM.
There is a switch step with five branches, and I have the following document structure:
<Root>
<Segment>
   <Docnum> 12345 </Docnum>
</Segment>
<Segment>
   <Docnum> 12346 </Docnum>
</Segment>
</Root>
The switch condition is done based on the last digit of the first Docnum element. So in this case the value would be 5.
I tried to work with a substring as the total number of digits of docnum is always 5.
How would an XPath expression look like to retrieve the substring from the first <Segment> element? I tried different combinations but none of them really worked.
Example what I tried: p1:/root/Segment[1]/substring(docnum, 4,1)
Any advise on this?
Thank you very much

Try this...
substring(/p1:/root/Segment[1]/docnum,4,1)
for more info see
http://www.w3.org/TR/xpath
Message was edited by:
        Alex

Similar Messages

  • Checking condition in switch step of BPM

    hi all,
    i am doing an 1to1 transformation where: i am converting my source into a target. the target has
    header 1
    lineitem 1..unbouneded.
    lets say there are three line items:
    header1
    lineitem
    lineitem
    lineitem
    i am using a send step where i am sending this target msg to a switch step. in the switch step i am checking for a condition.i am checking for the occurence of a field in the line item. but when specifying in the condition editor, it allows only to choose from the root of the structure. how can i check the ocuurence of a particuler field for the lineitem alone??
    is there a way to to do it??
    Any help will be greatly appreciated.
    Thanks

    Hello,
    This is the condition i have currently given: but if i have 2 or more lineitems in the incoming msg does this condition also check for :
    MI_DOC./p1:SRC_ROOT.lineitem/itemfield2 EX
    MI_DOC./p1:SRC_ROOT.lineitem/itemfield3 EX
    etc...
    and in one of the line item the field may EX and some it does`nt. when it doesn`t i am cancelling the process, if the field EX then it is sent to further processing.so if i have 3 lineitems in which two of the line items the field EX and in the other one the field does the EX, are the msgs split accordingly??
    Message was edited by: Aarthi R

  • Condition in switch step is not getting checked

    Hi Friends,
    My requirement is to send the input msg to two receivers based on a condition and get the response. If the condition is true it will either goto both or anyone of the receiver.
    I defined two branches in a switch step. In each branch i defined condition using XPath. Under that branchs i defined the sync send step to send the msg to receiver and get response.
    If i give input that is true for any one of the receiver, it executs successfully. But if my input satisfies the condition of both branchs, instead of sending the message to two receivers it is sending the msg to only receiver.
    Pls help me in resolving this issue.
    Thanks & Regards,
    Senthil.

    Senthil,
    Please confirm your process looks like this:
        /-- item name CE 'X' -- [send] --\    /-- item name CE 'Y' -- [send] --\
    Or, if you follow patrick's suggestion
         /-- item name CE 'X' AND item name CE 'Y' -- [send] -- [send] --\
    ---   -- item name CE 'X' -- [send] ---------------------------------   ---
    Kind regards,
    Koen

  • Condition in switch step

    Hi:
    Somebody help me with some information about how to Configurate the switch step (Condition, left operand) in BPM

    Even though this forum says BPM and WF, but for your question XI forum will be right place.
    Regards, IA

  • Testing switch step conditions

    Hi
    Is there a way to test conditions in switch step?
    With real data when the process is executed... it seems that the condition does not work... but I can not see more details to investigate what is wrong.
    Has anybody ideas how to test switch conditions?
    Thanks for any input,
    Heiko

    Ok sorry, I thought you were maintaining a Business Workflow, not an XI process..
    I haven't worked with ccBPM or the integration/workflow builder myself, but could you go to the graphical builder, drill down to the switch step and see what's available there? In the business workflow builder you can see a small simulation button in the bottom together with create test data button.
    -Mikko

  • Prblem with Switch step in BPM

    Hi all,
    I have a problem with a switch step in my BPM. The condition on my BPM is that I have an xpath and that should have a particular constant value. If true, then proceed or else passs through the otherwise branch. The success branch has a transformation and a send step. The otherwise has a control step with an Alert category defined.
    So the BPM is like
    Receive message --> Switch (XPath condition a particular node must have a value not equal to zero.) --> if tru then transformation and send step otherwise control step.
    This all works fine as expected when I pass in the correct message format. The problem is, if I send in a message of a completely different structure, it is still going through the otherwise step of the switch case and not erroring out. The BPM is not erroring out no matter what message I pass in.
    Ideally I am expecting it to error out and send an alert message according to the category.
    could somebody please help me on this?
    Thanks
    Karthik

    Thanks for your reply. I already did go through that thread. The switch case works fine for correct conditions and wrong conditions. The problem is, there is no error being generated when the input message is not in a recognizable structure. Switch goes on to otherwise path is I just pass in some random file.
    My question is, why dint the BPM error out when the XPath itself failed..meaning the structure itself is wrong?
    Please reply.
    Thanks
    Karthik

  • Problem with Switch Step in BPM

    Hi,
    I am using Switch Step in BPM, to check a condition. I created following condition (App_Resp./p1:App_Resp_MT/Response = true). The mentioned is correct and it should succeed but it is failing. Its going thru OTHERWISE branch. Can anybody help me to solve this out?
    Thanks,
    Yaseen.

    HI,
    I checked in the workflow the xml file generated contains value 'true'.
    Its not multiline and looks xpath reflects for the changes made.
    I think it may be problem that needs to deploy any OSS notes.
    Please throw some idea.
    Thanks,
    Yaseen.

  • BMP: Condition Editor for SWITCH Step

    Hi
    Can anyone tell me how I stipulate the following conditions for a switch step in BPM:
    >, <, <=, >=
    The only options that seem to be available are:
    =, !=, Existence check and contains a particular string pattern...which is very limiting?
    Surely SAP has given the options for the greater than, less than etc oprands....hopefully i simply missing a service pack or something like that.
    Cheers
    Yackeen

    Hi
    One way could be to use XPATH expressions & XPATH functions in your condition editor. Chk whether an element has a value greater than or less than some value in the XPATH expression itself.
    The result of this check now can be compared to a true or false(that is your rt hand operand). My 2 cents.
    -Saravana

  • SWITCH step in BPM

    Hi,
    I am designing one BPM.
    In my incoming payload there is one field,on the basis of this field I have to decide receiver in runtime.
    Please guide me to disgn this BPM.
    I have put switch step ,but I am getting error in BPM.
    Waiting for reply.

    Hi,
    Check this links
    /people/daniel.graversen/blog/2006/09/07/using-a-bpm-to-collect-messages-for-a-set-interval-of-time
    This is really a good document about BPM
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/c071d7bb-0601-0010-d6b8-f4e4dc7f1e20
    Thanks,
    Prakash

  • Switching Step based on Send Step Acknowledgement in BPM

    Hello Everyone,
    We have an inteface scenario to read a file, send the message to an R/3 system, check the return code and generate an email if the acknowledgement is not OK.  NT file -> SAP XI -(asyn ABAP proxy)-> R/3.
    We want to use the standard inbound interface provided by SAP which is an asynchronous proxy interface. We implemented a BPM with a send step and application acknowledgement. Now based on the application acknowledgement we want to send an email to a support group. Is there a way we can check the acknowledgement status and implement a switch step?
    Sathi.

    Hi Naveen,
    Thanks for your response.
    OK I will try transport acknowledgement. I find these acknowledgements are not available in a container. So how can I implement a switch to perform 2 different processing paths based on success/failure status of the acknowledgement.

  • Switch Step Problem

    I have a Switch Step that receives a message base on a Message Type without Namespace, despite evaluation path is good and the Switch Step recieves a correct message the Step is not working, the xPath for evaluation does not include Namespace, Is the Namespace necesary in order to use a Switch Step?

    Hi Rubens,
    <i>>> Is the Namespace necesary in order to use a Switch Step?</i>
    Yes it is!Look at this..
    Prblem with Switch step in BPM
    Hope this solves ur issue!
    cheers
    Prashanth
    P.S Please mark helpful answers

  • Problem with switch step

    Hi,
    I want to proof in a switch step, if the message part 'price' is lower than the 'price'-part of an other message. Dependent from the expression, the corresponding fork is triggered in my BPEL process.
    I know there is an expression editor, but I can't find a lower than and greater than symbol, respectively.
    Are these operands not supported or am I blind
    Best regards
    Sascha

    I donot think you are blind..:)Switch step doesnot provide that....Instead check the condition in the message mapping and add a field in the target message which will contain the result.You can use that check for you to switch...Iam not sure wether am right but this is option I could think..:)

  • End condition in FORK step

    HI Experts,
    I am working on BPM scenarios.Anybody plz explain about how end condition works in FORK step.
    Please provide examples for that end condition in FORK step.
    Regards,
    Bhuvan.

    Hi,
    Refer this links...
    http://help.sap.com/saphelp_nw04/helpdata/en/24/e2283f2bbad036e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/77/0737133012b24b9d0a12c6df2b1054/content.htm
    /people/prasadbabu.nemalikanti3/blog/2006/02/24/collecting-and-bundling-vendor-records-from-different-multiple-interfaces-file-systempeoplesoft-and-sending-to-sap-r3-system-part-1
    Hope it helps..
    Thanks,
    Kumar.

  • ** XPath condition not work well in Receiver Determination.

    Hi,
    My scenario is having 3 receivers. I have 'Student' is the data type. I use the same data type for Source & Target Message Types. Requirement is I have to send
    1) only records which are having SCOURSE = 'BE' to receiver 1
    2) only records which are having SCOURSE = 'MCA' to receiver 2
    3) only records which are having SCOURSE = 'MBA' to receiver 3
    My Input.xml file contains the following records.
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:THIRD_MT_OB xmlns:ns0="http://ganesh_third">
       <STUDENT_INFO>
          <ST_ID>10020</ST_ID>
          <SNAME>Raja</SNAME>
          <SCOURSE>BE</SCOURSE>
          <SFEES>3000</SFEES>
          <SMARKS>1200</SMARKS>
       </STUDENT_INFO>
       <STUDENT_INFO>
          <ST_ID>10021</ST_ID>
          <SNAME>Ram</SNAME>
          <SCOURSE>MCA</SCOURSE>
          <SFEES>3000</SFEES>
          <SMARKS>1200</SMARKS>
       </STUDENT_INFO>
       <STUDENT_INFO>
          <ST_ID>10022</ST_ID>
          <SNAME>Ram</SNAME>
          <SCOURSE>MBA</SCOURSE>
          <SFEES>3000</SFEES>
          <SMARKS>1200</SMARKS>
       </STUDENT_INFO>
    </ns0:THIRD_MT_OB>
    I set the Xpath condition in the Receiver Determination Step and add the 3 receivers for against the conditions.
    Our problem is, If we send the single record in the input file, the corresponding receiver is selected correctly and we get the output file for that receiver. But, if we send the all combination of records (MCA,BE,MBA) 3 receivers are selected and the 3 output files we get. But, the three files are having the all records (MCA,BE,MBA). Instead, we want the first file should only have MCA record,  the 2nd file should only have BE record and finally the 3rd file should only have MBA record. That means each receiver should receive only one record for the above input.
    Friends, I though it will work for the 'XPath Expression' against receivers in the Receiver Determination Step. But, it didn't work. (Records are not split up)
    How do achieve this, friends?
    Could you kindly help me to solve this problem.
    Kind Regards,
    Jeg P.

    If you are trying to split you input msg and send it  to 3 different receivers using conditional receiver determination then it will not work. Once a condition is meet in the receiver determination then the entire msg is forwarded to the corresponding receiver, that is why when you have a single row in your input file which results in a single msg in XI the conditional receiver works. Now when you have multiple rows in your input file still only one msg is being created in XI for all the rows currently so all the conditions are being meet and the msg is forwarded to all the receivers.
    If you are using FCC in the sender side then use the "recordset per msg" parameter to consider each row of your input file as a separate msg in XI and the rest will automatically fall in place.
    Cheer's

  • Switch Step Scan List

    I am using the 2530B with dual 64x1 topology. In TestStand, I want to set up the IVI Switch Step to where it connects a channel off of each bank and then uses the DMM to record. In LabWindows I can use: "ch0->com0 & ch64->com4";
    How would I do that using the IVI Switch Step? Under 'configure scan' then ScanList tab, I currently have ch0->com0 then ch64->com4 using No Action so that each set before DMM measures then each will disconnect with there own commands. Is there an easier way for this, although I have not tested this method? Forgive me if this seems common knowledge but this is first time I am using TestStand.

    Are you asking about an easier way to disconnect the switch? If you could clarify some more about what you are trying to do, that would be great. Also, are you using Switch Executive?
    Jacob R. | Applications Engineer | National Instruments

Maybe you are looking for

  • Internal table in OO method

    Hi, I am new to ABAP Objects, and I am trying to implement a Business Add-Inn. I have created a new method, where I define an internal table and then use a function to read data and store it. The problem is, the function ends correctly, and while deb

  • ,.nIn Safari the place to enter the websites I want to view has disappeared.  How can I get it back? 7.0.6 Safarin

    iin safari 7.0.6.  I have updated nothing but the place where I enter the web I sites I want to visit has disappeared.  what can I do to get it back?10.9.5 operating system. MacBook pro

  • Outbound Idoc for MB21

    Hi, I suppose to configure the scenario like when we enter the data in MB21 and save it, all the information suppose to go to Non sap system. Since i am totally new to this, can any one suggest me what is the Inbound / outbound idoc function modules

  • WSUS 3.0 SP2 - synchronization with Microsoft Update failed

    Hi! The new installed WSUS Server (W2K8 R2 Std. x64 - full patched, SQL 2008 R2 on remote host) with KB2720211 update. If I try sync WSUS Server with Microsoft Update than sync failed with error TypeInitializationException: The type initializer for '

  • Standard program for creating outbound IDoc including wbs + cost planning

    Hello, a) Before we start developing our own ABAP, I would like to ask the forum if somebody knows if there is already a standard ABAP program for generating outbound IDocs including wbs-element data (CJ20N; wbs ID, description) plus annual data from