Conditional Branching for CP6

Good day!
I am fairly new to Captivate and I am currently creating a scenario-based activity.
Is it possible to have this sort of branching: One slide, 2 scenarios. Each scenario (say, slides 2 and 3) can be accessed by a button on the said slide. What I want to achieve is if one scenario has YET to be viewed, it will automatically go back to the initial slide; if the second scenario has been viewed, it'll proceed to the next slide (say, slide 4 for debrief).
I tried to use advanced actions using IF and THEN, variable I used was cpInfoPrevSlide but I can't seem to make it work.
Any advise please? TIA!

Hello
Not sure you used the correct system variable, and I wouldn't use a system variable there but label that 'menu' slide and jump back to that menu slide.
I suppose the sequence of clicking one of the buttons is not imposed, right?
Create a user variable for each button that will track if it has been clicked. For two buttons: v_one and v_two, initially set to 0.
For the buttons create a standard advanced action like this (example for first button):
Assign v_one with 1
Jump to chap_one   where chap_one is the slide label of the first slide of chapter one
You need a button or click box on the last slide of chapter one  - and same for last slide of chapter two that will trigger the conditional action:
IF v_one is equal to 1 AND
     v_two is equal to 1
Jump to end_slide  which is the slide after the two chapters
ELSE
    jump to menu_slide
Have a look at my blog, it has its focus on advanced actions and variables. Here is an example:
http://blog.lilybiri.com/template-for-reusing-script
Lilybiri

Similar Messages

  • Follow-up on Conditional Branching

    Good day!
    I was able to add conditional branching as per Lily's(biri) instructions (please refer to this thread) but I noticed that it no longer works for one of the buttons AFTER I added a rollover caption, even after I removed the captions. Any thoughts on this please?
    Please advise. Thanks!

    Thank you for replying Lily.
    Here's what I have - the menu slide where I applied the conditional branching:
    And this is how the other slides look like:
    Before I applied the rollover captions, it worked as intended: learner clicks either buttons and is returned to slide_menu. If the learner has viewed both, it jumps to the activity (slide #36).
    After I applied the rollover captions, the button 1's behavior does not follow the conditions, i.e. I start with button #2 > slide 35 > slide_menu > button #1 > slide 34 > slide 35 > slide 36. It should not go to slide 35 a second time.
    Does this help? Much obliged!

  • Error using conditional branch node in OSB

    Hi,
    We are using Oracle Service Bus in our project. I have created the following steps in the OSB Proxy Service:
    1) Assigning a value in a variable inside a request pipeline.
    2) I am using a Conditional Branch after the pipelined pair. The branching will happen according to the value of that variable, I assigned in the pipelined pair.
    Here we are getting an error in OSB test console:
    The invocation resulted in an error: Unknown error while processing message for service ProxyService MHEducation/CCAuthorization/CCAuthorizationProxyService.
    I am getting the following log in the console:
    <Nov 5, 2009 6:14:04 PM IST> <Error> <OSB Kernel> <BEA-382016> <Failed to instantiate router for service ProxyService MHEducation/CCAuthorization/CCAuthorizationProxyService: com.bea.wli.sb.management.BrokerManagementException: com.bea.wli.
    sb.stages.StageException: The xquery cannot have an unbound current node.com.bea.wli.sb.management.BrokerManagementException: com.bea.wli.sb.stages.StageException: The xquery cannot have an unbound current node.
    at com.bea.wli.sb.pipeline.BranchNode.<init>(BranchNode.java:89)
    at com.bea.wli.sb.pipeline.RouterCompiler.compileNode(RouterCompiler.java:129)
    at com.bea.wli.sb.pipeline.RouterCompiler.compileFlow(RouterCompiler.java:115)
    at com.bea.wli.sb.pipeline.Router.<init>(Router.java:135)
    at com.bea.wli.sb.pipeline.RouterCompiler.compileRouter(RouterCompiler.java:89)
    Truncated. see log file for complete stacktrace
    com.bea.wli.sb.stages.StageException: The xquery cannot have an unbound currentnode.
    at com.bea.wli.sb.stages.expressions.ExpressionHelper.validateXQuery(ExpressionHelper.java:481)
    at com.bea.wli.sb.stages.expressions.ExpressionHelper.validate(ExpressionHelper.java:59)
    at com.bea.wli.sb.stages.expressions.ExpressionHelper.getExecutor(ExpressionHelper.java:325)
    at com.bea.wli.sb.stages.expressions.ExpressionBuilderImpl.getExecutor(ExpressionBuilderImpl.java:151)
    at com.bea.wli.sb.stages.expressions.ExpressionBuilderImpl.getExecutor(ExpressionBuilderImpl.java:143)
    Truncated. see log file for complete stacktrace
    >
    Any suggestion why am I getting the error?
    Chandrachur.

    check if your conditional branch uses quotes around the compaired value
    so
    /body/myinput = 'myvalue' instead of
    /body/myinput = myvalue

  • Unable to use X Query function in  the conditional branch of Proxy Service

    Hi all,
    I need to check the string length of a node then depending on that have to call two different business services. i have added a conditional branch inside
    the proxy service. Now when I use the below expression in the I get an error
    fn:string-length(./braz:BrazilianPropertyAddress/braz:postcode)
    in variable i have given body
    I am getting the following error
    X path expression invalid not a selection declare namespace jca ="" ......................
    If I give the expression without any stringlength function there is no problem
    Kindly help

    Hi Anuj,
    Tried with text() its still throwing the same error
    [BranchNode1] Conditional branch node specifies an invalid xpath: An error was reported compiling the XPath expression: XQuery exception: line 32, column 18: {err}XP0008 [{bea-err}XP0008a]: Variable "$body" used but not declared for expression: declare namespace jca = 'http://www.bea.com/wli/sb/transports/jca';
    declare namespace wsp = 'http://schemas.xmlsoap.org/ws/2004/09/policy';
    declare namespace jms = 'http://www.bea.com/wli/sb/transports/jms';
    declare namespace tp = 'http://www.bea.com/wli/sb/transports';
    declare namespace xs = 'http://www.w3.org/2001/XMLSchema';
    declare namespace sftp = 'http://www.bea.com/wli/sb/transports/sftp';
    declare namespace flow = 'http://www.bea.com/alsb/flow/transport';
    declare namespace jpd = 'http://www.bea.com/wli/sb/transports/jpd';
    declare namespace soap-env = 'http://schemas.xmlsoap.org/soap/envelope/';
    declare namespace wsu = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd';
    declare namespace dsp = 'http://www.bea.com/dsp/transport/sb';
    declare namespace ejb = 'http://www.bea.com/wli/sb/transports/ejb';
    declare namespace wsa = 'http://schemas.xmlsoap.org/ws/2004/08/addressing';
    declare namespace bpel-10g = 'http://www.bea.com/wli/sb/transports/bpel10g';
    declare namespace tuxedo = 'http://www.bea.com/wli/sb/transports/tuxedo';
    declare namespace file = 'http://www.bea.com/wli/sb/transports/file';
    declare namespace ctx = 'http://www.bea.com/wli/sb/context';
    declare namespace fn = 'http://www.w3.org/2004/07/xpath-functions';
    declare namespace soap12-enc = 'http://www.w3.org/2003/05/soap-encoding';
    declare namespace soap12-env = 'http://www.w3.org/2003/05/soap-envelope';
    declare namespace fn-bea = 'http://www.bea.com/xquery/xquery-functions';
    declare namespace ws = 'http://www.bea.com/wli/sb/transports/ws';
    declare namespace http = 'http://www.bea.com/wli/sb/transports/http';
    declare namespace email = 'http://www.bea.com/wli/sb/transports/email';
    declare namespace ftp = 'http://www.bea.com/wli/sb/transports/ftp';
    declare namespace sb = 'http://www.bea.com/wli/sb/transports/sb';
    declare namespace xsd = 'http://www.w3.org/2001/XMLSchema';
    declare namespace soap-enc = 'http://schemas.xmlsoap.org/soap/encoding/';
    declare namespace xsi = 'http://www.w3.org/2001/XMLSchema-instance';
    declare namespace b = 'http://xmlns.oracle.com/B';
    declare namespace add = 'http://schemas.xmlsoap.org/ws/2003/03/addressing';
    fn:string-length($body/b:BProcessRequest/b:b/text())..

  • Unable to customize condition branch

    Hello,
    I'm having a strange issue where I want to put some content in Starter Edition "Virtual Server Post-provisioning" process which sould be allowed as this process has the "workflow" customizable flag.
    I've been able to add some activities but when it comes to a condition branch, I can add it but not configure it, see screenshot below:
    Any hint on what I'm doing wrong ?
    Regards,
    Pierre

    Hi Julio,
    Thank you for your answer.
    I am running Starter Edition 3.0.1 with CPO 2.3.0 and fololowing patches :
    - 2.3.0 Hotfix1
    - 2.3.0 Hotfix2
    - 2.3 Content Update 1
    Which gives this:
    Which patches do you suggest I apply ?
    Thank you.
    Regards,
    Pierre

  • Conditional branching after page submit

    Hi all
    I have a page where I need to submit and process the page and items(insert and update database) then branch to a certain page depending on which button was pressed. I have 4 buttons and each button should go to a different page, each button also needs to submit the page and process data(using an Apex DML process and passing 'SAVE' request in each button). the problem I'm having is that no matter which button I press the 'app branches to the first branch. I have 4 branches set to run after the process. Each branch should go to a different page depending on the button pressed. In each branch I have made the branch conditional based on the button pressed.
    APEX seems to ignore the button condition(in Debug) it says unconditional even though the button is definitely conditional.
    I'm running Apex 4.2.2
    It seems as though when I pass a Request of 'SAVE' Apex treats all buttons with this request in the same manner?Regardless of which button was pressed?
    Any ideas or alternatives?
    Thankyou
    Andrew

    Your problem is with setting the request of all the buttons to "SAVE", it will always fire the first branch for all those buttons.
    If you edit the DML process you will see the following:
    Valid Update Request Values:
    SAVE, APPLY CHANGES, UPDATE, UPDATE ROW, CHANGE, APPLY, APPLY%CHANGES%, GET_NEXT%, GET_PREV%
    This tells you the request values that will perform an Update DML.
    You could have one button be "SAVE", another, "APPLY CHANGES", another "UPDATE", and another "CHANGE".  They will all do the update DML for you and then the branches will have different request values to trigger off of.
    Another option is to set the request of each button like this:
    Button 1 - APPLY_CHANGES_INV
    Button 2 - APPLY_CHANGES_SALE
    Button 3 - APPLY_CHANGES_DELIV
    Button 4 - APPLY_CHANGES_INSTALL
    These would satisfy the valid update request value of APPLY%CHANGES%

  • Conditional Branch after an service callout

    Hi All
    I am new to configuring services in OSB.What i want to do is first call a service and depending upon the returned value ,route to other services.But the result of the service callout is availabe in a variable ,say responseBody,and for conditional branch we need only xpath/xquery to test conditions.
    Please Help.
    Regards,
    Chinmay

    Hi All
    I am new to configuring services in OSB.What i want to do is first call a service and depending upon the returned value ,route to other services.But the result of the service callout is availabe in a variable ,say responseBody,and for conditional branch we need only xpath/xquery to test conditions.
    Please Help.
    Regards,
    Chinmay

  • Conditional Branch Execution?

    OK, Newbie here (and a bit frustrated). First application in the works.
    I have 2 ways to get to a page. When I click on the "Create" button, I want to return to the page that called the current page.
    Call them pages 1, 2 and 3.
    The default branching (unconditional branch) is 1 to 3 back to 1. This is a report to form back to report. This is the structure generated when I added the page when I initially generated the application.
    The secondary branching (conditional branch) is 2 to 3 back to 2.
    I set the sequence of the branches to do the conditional branch 1st then the unconditional branch 2nd.
    The "back to 2" is the problem.
    When I set it to "Unconditional" it works. When I set a condition it doesn't work.
    I tried "Request = Expression 1". I set the REQUEST in the button on page 2 to a specific value ("RETURN_TO_2"), but I suspect that when I click the "CREATE" on page 3 the REQUEST value is set to something else.
    So I tried saving the value of the REQUEST from page 2 in a page item on page 3 (P3_X) and used "Value of Expression 1 = Expression 2".
    I tried "P3_X", ":P3_X", "&P3_X", "v('P3_X')" in Expression 1 and RETURN_TO_2, "RETURN_TO_2" in Expression 2 (I think all possible combination of the to expressions).
    None of the combinations does the conditional branch!
    Any suggestions as to where I should go next?
    Thanks - JR

    John:
    I have found it helpful to use the 'Branch to Page Identified by Item (Use Item Name) ' type of branch in such cases.
    I specify the the page to return to in an application_item. The application_item itself is populated by a before header application_process. So if 'G_DEST' is the application item then the application_process simply is
    :g_DEST:= :app_page_id;In your case the branch defined in page 3 will be of the 'Branch to Page Identified by Item (Use Item Name) ' type and use the application_item 'G_DEST' as the item that holds the page-number that is to be the destination for the branch.
    Varad

  • Conditional branching in ALSB

    Hi,
    I have used a conditional branch inside (jms based) ALSB proxy which branches out based on the value of JMS header.The requirement is to shift control to a single branch for multiple values i.e:
    If
    ./ctx:transport/ctx:request/tp:headers/jms:JMSCorrelationID/text() in variable inbound
    has value:
    GI_1 or GI_2 or GI_3 then route to GI branch
    VB then route to VB branch etc
    For more than 1 value (i.e GI_1,GI_2,GI_3),control needs to be shifted to a specific branch.
    I have tried using OR without success.Any suggestions as to how to implement this.
    Thanks.
    Arti

    Hi,
    I have used a conditional branch inside (jms based) ALSB proxy which branches out based on the value of JMS header.The requirement is to shift control to a single branch for multiple values i.e:
    If
    ./ctx:transport/ctx:request/tp:headers/jms:JMSCorrelationID/text() in variable inbound
    has value:
    GI_1 or GI_2 or GI_3 then route to GI branch
    VB then route to VB branch etc
    For more than 1 value (i.e GI_1,GI_2,GI_3),control needs to be shifted to a specific branch.
    I have tried using OR without success.Any suggestions as to how to implement this.
    Thanks.
    Arti

  • Conditional Branching with quiz slides not working

    Attempting to use conditional branches with quiz slidescauses
    the other quiz slides in my presentation to not work correctly. I
    am attempting to create a 'test-out' pre-quiz for a segment of
    slides in the presentation. I followed the instructions to add
    conditional branching per page 46 of the Breeze Presenter User
    Guide to obviously no avail. Is there a simple straightfoward
    manner in which someone has successfully used conditional branches
    with their quiz slides in their presentation?

    Hi,
    I had the same issue.Apparently as of now PDF templates do not support conditional formatting for XML Publisher.
    See Tim Dexter's response to my query at the bottom of this thread...
    Re: Using the '%' operator in microsoft word template builder for XMLP
    I could get some conditional formatting to work on the pdf template but only for the form field font,size and styles using Javascript, but I don't think there is a way to display values for the form field based on an if condition...
    Lavina

  • Conditional Branch Node in OSB

    Hi There,
    I'm trying to set a Conditional Branch in the beginning of my Proxy Service, i'm trying to compare to fields of the body, but when i build the xpath to compare this 2 fields i'm obtaining a compilation error.
    My xpath line is :
    fn:compare(./cre:Trace_PM/trac:Trace_PM/trac:traceLevel/text(), ./cre:Trace_PM/cre:Level/text())
    And the error is :
    XPath expression invalid, not a selection: declare namespace trac = 'http://www.ferrovial.es/XSD/Trace';
    declare namespace cre = 'http://www.ferrovial.es/XSD/CreateTrace_PM';
    declare namespace jca = 'http://www.bea.com/wli/sb/transports/jca';
    declare namespace wsp = 'http://schemas.xmlsoap.org/ws/2004/09/policy';
    declare namespace jms = 'http://www.bea.com/wli/sb/transports/jms';
    declare namespace wsa05 = 'http://www.w3.org/2005/08/addressing';
    declare namespace tp = 'http://www.bea.com/wli/sb/transports';
    declare namespace jejb = 'http://www.bea.com/wli/sb/transports/jejb';
    declare namespace xs = 'http://www.w3.org/2001/XMLSchema';
    declare namespace sftp = 'http://www.bea.com/wli/sb/transports/sftp';
    declare namespace flow = 'http://www.bea.com/alsb/flow/transport';
    declare namespace soap-env = 'http://schemas.xmlsoap.org/soap/envelope/';
    declare namespace wsu = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd';
    declare namespace dsp = 'http://www.bea.com/dsp/transport/sb';
    declare namespace ejb = 'http://www.bea.com/wli/sb/transports/ejb';
    declare namespace wsa = 'http://schemas.xmlsoap.org/ws/2004/08/addressing';
    declare namespace bpel-10g = 'http://www.bea.com/wli/sb/transports/bpel10g';
    declare namespace tuxedo = 'http://www.bea.com/wli/sb/transports/tuxedo';
    declare namespace file = 'http://www.bea.com/wli/sb/transports/file';
    declare namespace ctx = 'http://www.bea.com/wli/sb/context';
    declare namespace fn = 'http://www.w3.org/2004/07/xpath-functions';
    declare namespace soap12-enc = 'http://www.w3.org/2003/05/soap-encoding';
    declare namespace soap12-env = 'http://www.w3.org/2003/05/soap-envelope';
    declare namespace fn-bea = 'http://www.bea.com/xquery/xquery-functions';
    declare namespace ws = 'http://www.bea.com/wli/sb/transports/ws';
    declare namespace soa-direct = 'http://www.bea.com/wli/sb/transports/soa';
    declare namespace http = 'http://www.bea.com/wli/sb/transports/http';
    declare namespace email = 'http://www.bea.com/wli/sb/transports/email';
    declare namespace ftp = 'http://www.bea.com/wli/sb/transports/ftp';
    declare namespace sb = 'http://www.bea.com/wli/sb/transports/sb';
    declare namespace xsd = 'http://www.w3.org/2001/XMLSchema';
    declare namespace soap-enc = 'http://schemas.xmlsoap.org/soap/encoding/';
    declare namespace xsi = 'http://www.w3.org/2001/XMLSchema-instance';
    fn:compare(./cre:Trace_PM/trac:Trace_PM/trac:traceLevel/text(), ./cre:Trace_PM/cre:Level/text()).
    I was checking in the forum and i found a similiar issue but i saw that it was not answered. Do you know which is the reason to this issue in conditional branchs on OSB?
    Regards
    Yuri

    Hi Yuri,
    From the OSB documentation -
    Conditional branching is driven by a lookup table with each branch tagged with a simple, but unique, string value. A variable in the message context is designated as the lookup variable for that node, and at run time, its value is used to determine which branch to follow. If no branch matches the value of the lookup variable, the default branch is followed. You should design the proxy service in such a way that the value of the lookup variable is set before reaching the branch node.Does your case fulfill above criteria? Please let us know your use case in detail.
    Regards,
    Anuj

  • Conditional branching in OSB

    Hi,
    I wan to use conditional branching in OSB for a WSDL WS.I am not able to use operationl branching because the method names and request message names are different.
    I want to do conditional branching based on operations or request messages.
    For example if operation name and request msgs are as below,
    add , addRequest
    minus , minusRequest
    What should I give for the "Selected path" and "variable" in the condtions?
    Thanks.

    Can you paste the Message section please, where you are defining the Part of request and response.
    The part should be element based and not type based for Operational Branching to work.
    I did a test and its working correctly, Find the WSDL I used below:
    <definitions
      name="Test"
      targetNamespace=
        "http://tempuri.org/OTN.wsdl"
      xmlns="http://schemas.xmlsoap.org/wsdl/"
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
      xmlns:tns=
        "http://tempuri.org/OTN.wsdl"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
      xmlns:wsx=
       "http://tempuri.org/OTN">
      <types>
        <xsd:schema
          targetNamespace=
            "http://tempuri.org/OTN"
          xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
          xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
          xmlns:xsd="http://www.w3.org/2001/XMLSchema">
          <xsd:element name="AddRequest">
          <xsd:complexType>
            <xsd:sequence>
              <xsd:element maxOccurs="1" minOccurs="1" name="operand1"
                 nillable="true" type="xsd:decimal"/>
              <xsd:element maxOccurs="1" minOccurs="1" name="operand2"
                 nillable="true" type="xsd:decimal"/>
            </xsd:sequence>
          </xsd:complexType>
         </xsd:element>
    <xsd:element name="MinusRequest">
          <xsd:complexType >
            <xsd:sequence>
              <xsd:element maxOccurs="1" minOccurs="1" name="operand1"
                 nillable="true" type="xsd:decimal"/>
              <xsd:element maxOccurs="1" minOccurs="1" name="operand2"
                 nillable="true" type="xsd:decimal"/>
            </xsd:sequence>
          </xsd:complexType>
         </xsd:element>
        </xsd:schema>
      </types>
      <message name="addRequest">
        <part name="addRequest" element="wsx:AddRequest"/>
      </message>
       <message name="minusRequest">
        <part name="minusRequest" element="wsx:MinusRequest"/>
      </message>
      <message name="Response1">
        <part name="Result" type="xsd:string"/>
      </message>
        <message name="Response2">
        <part name="Result" type="xsd:string"/>
      </message>
      <portType name="Test">
        <operation name="add">
          <input message="tns:addRequest"/>
          <output message="tns:Response1"/>
        </operation>
        <operation name="minus">
          <input message="tns:minusRequest"/>
          <output message="tns:Response2"/>
        </operation>
      </portType>
      <binding name="Test" type="tns:Test">
        <soap:binding style="document"
          transport="http://schemas.xmlsoap.org/soap/http"/>
        <operation name="add">
          <soap:operation soapAction="add"/>
          <input>
            <soap:body use="literal" />     
          </input>
          <output>
            <soap:body use="literal"/>
          </output>
        </operation>
        <operation name="minus">
          <soap:operation soapAction="minus"/>
          <input>
            <soap:body use="literal" />     
          </input>
          <output>
            <soap:body use="literal"/>
          </output>
        </operation>
      </binding>
      <service name="Test">
        <documentation>Test</documentation>
        <port name="Test" binding="tns:Test">
          <soap:address
            location="http://localhost:8090/Test"/>
        </port>
      </service>
    </definitions>

  • OSB 11g: Conditional Branch value will not accept string Value

    OSB 11g 11.1.1.3.0 (OSB11_MAIN_GENERIC_100418.1323885)
    When I edit a message flow and create a conditional branch I:
    1. Enter an Xpath expression
    2. Name the variable containing the XPath expression
    3. Select an operator (=)
    4. Enter a string value for Value: 'true'
    5. Give the label a name (isMember)
    6. Save my work
    7. When I go back into the branch the 'true' value is gone and the Value field is blank.
    If I enter a number it saves fine - only when I enter text with single quotes
    is this a known bug?

    Thank you, however I still think this is a bug because:
    1. Version 10g training materials has this example as a lab exercise and says in particular 'make sure to place single quotes around the text string: 'true')
    2. The documentation for 11g says to enter a value but does not say it cannot be a 'string'
    3. If I don't enter any value for the value field, when I click Save it indicates an error -the field cannot be empty. When I place a numeric in the field(unquoted) I can save it and return to it and the numeric value is still there. If I enter a 'quoted string' I can save it but when I return to it, it is gone
    4. If I enter the same information using the eclipse IDE I can see the 'quoted string' is saved and when I view it (not edit but view) in the web IDE (sbconsole) I can see the 'quoted string'. If I edit it the string disappears.
    I will continue to test. While you may be correct and the intent is to accept only numerics, that does not make sense to me. Why not allow simple and fast conditional branching based on text string values in a message? I know I can use other mechanisms to achieve the same goal: a routing table would work also.
    My point was the behavior of the UI implies a bug.
    Edited by: jo**** on Nov 21, 2010 8:44 AM

  • OSB Conditional Branch

    Hi all,
    Is it possible to compare the conditional variable in the conditional branch to multiple values per sub branches?
    For ex. I have a "Conditional Branch In Variable: types" then in Branch1 I will compare like"types IN ('type a','type b','type c')" then in Branch2 I will compare it like "types IN ('type x',type 'type y',type 'z')"
    Is this possible?

    Not possible directly at the Conditional branch since the 'Value' column takes a string value to compare with.
    To achieve this you will need to do the following:
    In the service add a pipeline pair BEFORE the conditional branch.
    In the request pipeline add a stage.
    In the stage add an assign action to create a lookup variable (this lookup variable will be using in the conditional branch)
    The XQuery expression in Assign Action should be like this(adjust for your request structure):
    for $type in $body/request/type
    return
    if ((data($type) = 'a') or (data($type) = 'b') or (data($type) = 'c'))
    then
    <BranchValue>branch1</BranchValue>
    else if ((data($type) = 'x') or (data($type) = 'y') or (data($type) = 'z'))
    then
    <BranchValue>branch2</BranchValue>
    else ()
    Now use the value of lookup variable in the conditional branch to compare against 'branch1' or 'branch2' as values.
    XPath should be ./text()

  • Conditional branch, after authentication

    We have recently implemented a list of passwords that users are not allowed to use. Basic stuff like 1234, abcd etc.
    I currently use a custom authentication, so i can quite easily stop a user from changing their password to a dissallowed one. But my issue is that i want to force current users to changer their current password if it breaks the new rules.
    I think that i should allow them to authenticate themselves using their current password, and then do a check to see if they should be branched to a specific screen to change their password.
    Basically i want to do a conditional branch after authentication.
    anybody implemented something similar? or anyone have any ideas?

    Create an application process - On Load: Before Header ....
    using a similar PL/SQL block like in my case:
    BEGIN
       IF NOT custom_authentication_pkg.password_valid (:app_user)
       THEN
          HTMLDB_APPLICATION.g_unrecoverable_error := TRUE;
          OWA_UTIL.redirect_url
                               ('f?p=&APP_ID.:102:&APP_SESSION.:PASSWORD_INVALID');
       END IF;
    END;and make this process conditional so it doesn't fire if the current page is in
    101 - login page
    102 - page for changing passwords
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    ------------------------------------------------------------------------------

Maybe you are looking for

  • ITunes sync

    Hi I have been successfully syncing tunes to my new iphone until yesterday when a message started appearing on my iphone each time i try to add a tune It reads... iTunes Sync Items could not be synced. See iTunes for more information I have been tryi

  • Logic preferences not accesable/changeable anymore

    I need help with Logic Studio, I guess it was after a software update that I downloaded and installed, Logic didn't work as it used to. I cant access the preferences or settings through the buttons in the main window anymore, only through the menu, a

  • Windows 7 professional backup and restore stop working after installation of acronis true image 2010

    HI, windows 7 professional backup and restore stop working after installation of acronis true image 2010. it generates a error code 0x81000019. please help. thanks Song

  • Cannot uninstall QT not matter what I try.

    Hi all, I was having video issues with my XP Pro SP2 machine and I tried to uninstall iTunes and QT, but QT will NOT uninstall. iTunes Uninstalled, but when try to uninstall QT, it searches the drives and goes back to the window where you click "unin

  • Why is my purchased upgrade for PowerPoint for iPad not working?

    I downloaded the program and it was a 30 day free trial. I wanted to order the upgrades and am willing to pay  and checked the box, but the iTunes receipt doesn't bill me for it, and the features won't activate in PowerPoint. What's going on? Help!