Apex 4.2 newbie: dynamic action, PLSQL expression & bind variable

Hello

I'm in the Action page dynamic editing > settings-> Expression PLSQL.

A test, I want to do a textfield equal to the value of another field. All of the remaining work, I need to do on my form is based on this capability, for example, if I can filter the content of my shuttle with a textfield. But for now, nice and simple: a textfield equal to another.

The problem is that my link variable appears to return a null value when it's non-zero.

Thus, for example, field entering the PLSQL Expression NVL(:P1_PAGE_ITEM_TEXT,'No') returns always 'no' to a textfield in the page. However, P1_PAGE_ITEM_TEXT is not null - I put a refresh on shot down and I am happily adding text... but the textfield shows simply "no".

Googling, I see other people had similar problems a few years back and resorted to JS instead of PLSQL. But I think it's more likely that I'm doing it wrong that it's a bug! (Dynamic - Action Alert view the value in the field

I would be grateful if someone could confirm that it is possible to do what I want to do - and how!

Thank you
Emma

Published by: 995005 on March 21, 2013 05:46

Published by: 995005 on March 21, 2013 05:47

Construction IN is always a nasty...
because you get: where id in "a, b, c" (where a, b, c is the value of P1_PAGEITEM)
and you should get: where id in ('a', 'b', 'c')
There is no easy solution for this. If you must certainly construction IN you "convert" the value of P1_PAGEITEM to a table (with a function in pipeline and apex_util.string_to_table). Just Google for a solution.

Try to make it work with a single value first (before that you increase the complexity)

And the definition of LOV should be: SELECT description, Àtable FROM returnvalue to display the description.

Tags: Database

Similar Questions

  • Apex 5 - error checksum dynamic Action

    Hi all

    I don't cease to Marvel and depress me on apex 5.

    I just had a problem with dynamic action on a page with the checksum protection enabled.

    I need to read a value from a PLSQL table and give it back to a form element.

    So I have a page of submit element in the d.a. (primary key of the table) to fetch the row of the table.

    When I run the page I get an error of checksum on the question.

    What I am doing wrong?

    Thanks in advance for your suggestions.

    Robi

    OK see this

    APEX 4.2.1 - error dynamic Action with SSP

  • Apex 4: Feature missing dynamic action for the region of calendar

    Hello

    If I create calendar view region Type 'Partial Page Refresh' it do not support fully dynamic actions.

    For me, for example event "discount for after ' are not triggered



    Kind regards
    Jari

    Published by: jarola on October 20, 2010 15:53

    Hi Jari,

    that is not yet supported, but it will be something that we seek to add to the 4.1

    Concerning
    Patrick
    -----------
    My Blog: http://www.inside-oracle-apex.com
    APEX 4.0 Plug-Ins: http://apex.oracle.com/plugins
    Twitter: http://www.twitter.com/patrickwolf

  • APEX 4.0: > Charts: chart of queries using Bind variables > does not?

    SITUATION
    -Attempt to pass a value to the variable in a query.
    -The value of the variable is taken from a page element.
    -SQL is built using a function that returns the SQL


    QUESTION
    -Table returns "no data found".
    -When we hard code the value, the data is returned and the graphic works.
    -SQL works fine in SQL Browser and Toad
    -Reproduce this problem on 3.2
    -Have you tried the two bind syntax (+: point +) and v (v ('item')) syntax

    If anyone else has experienced this? No idea how to fix?

    Walter,

    Perhaps a better way to get the logic you are looking for is to keep it in the process.

    A few examples:
    1. you can use the conditional rendering process so that it fires only when the values of the elements are NULL.
    2. you can use the conditional process rendering so that it fires when the value of the claim is equal to something and then set it via the link to the page.
    3. you can do it directly in the code:

    BEGIN
    
       IF :P2_ITEM IS NULL
       THEN
          :P2_ITEM := 'Some default value';
       END IF;
    
    END; 
    

    Kind regards
    Dan

    Blog: http://DanielMcGhan.us/
    Work: http://SkillBuilders.com/apex/

  • APEX 5. Dynamic action on the CHANGE event does not work after applying the filter on IR.

    APEX 5.

    Dynamic action for the CHANGE event does not work after applying the filter on IR.

    Event: Change, selection Type: jQuery Selector, jQuery Selector: td [header = 'abc'] entry

    Real action

    Selection type: jQuery Selector, jQuery Selector: td [header = 'abc'] entry, Action: run the Javascript Code

    Is TI WHEREAS behavior?

    I know, I can work around this problem by using the Refresh event and javascript, but I prefer DA and if possible Change event.

    Concerning

    mdyla

    mdyla wrote:

    It is, how to force them reallocate dynamic Action in the event of CHANGE of the input elements after refresh of IR region.

    Set the dynamic scope of the event action to Dynamics.

  • The use of bind variables (in & out) with sql dynamic

    I have a table that contains code snippets to make postings on a set of pl/sql database. what the code does is basically receives an ID and returns a number of errors found.
    To run the code, I use dynamic sql with two bind variables.

    When codes consists of a simpel query, it works like a charm, for example with this code:
    BEGIN
       SELECT COUNT (1)
       INTO :1
       FROM articles atl
       WHERE ATL.CSE_ID = :2 AND cgp_id IS NULL;
    END;
    However when I get to post more complexes that must perform calculations or run several queries I run into trouble.
    I have boiled down the problem into that:
    DECLARE
       counter   NUMBER;
       my_id     NUMBER := 61;
    BEGIN
       EXECUTE IMMEDIATE ('
          declare 
             some_var number;
          begin
          
          select 1 into some_var from dual
          where :2 = 61; 
          
          :1 := :2;
          end;
    ')
          USING OUT counter, IN my_id;
    
       DBMS_OUTPUT.put_line (counter || '-' || my_id);
    END;
    This code is not really make sense, but it's just to show you what is the problem. When I run this code, I get the error
    ORA-6537 ON bind variable linked to a position IN

    The error doesn't seem wise,: 2 is the only one IN bind variable and it is only used in a where clause clause.
    As soon as I remove this where clause, the code works again (giving me 61-61, in case you want to know).

    Any idea what goes wrong? I just use bind variables in a way that you're not supposed to use it?

    I'm using Oracle Database 11 g Enterprise Edition Release 11.2.0.3.0 - 64 bit

    Correction. With immediate execution , the binding is in position, but binds do not need to be repeated. My statement above is incorrect...

    You must link only once - but bind by position. And the connection must correspond to the use of the variable binding.

    If the connection never variable assigns a value in the code, link by in.

    If the binding variable assigns a value in the code, link as OUTPUT.

    If the binding variable assigns a value and is used a variable in another statement in the code, link as IN OUT.

    For example

    SQL> create or replace procedure FooProc is
      2          cnt     number;
      3          id      number := 61;
      4  begin
      5          execute immediate
      6  'declare
      7          n       number;
      8  begin
      9          select
     10                  1 into n
     11          from dual
     12          where :var1 = 61;       --// var1 is used as IN
     13
     14          :var2 := n * :var1;     --// var2 is used as OUT and var1 as IN
     15          :var2 := -1 * :var2;    --// var2 is used as OUT and IN
     16  end;
     17  '
     18          using
     19                  in out id, in out cnt;  --// must reflect usage above
     20
     21          DBMS_OUTPUT.put_line ( 'cnt='||cnt || ' id=' || id);
     22  end;
     23  /
    
    Procedure created.
    
    SQL>
    SQL> exec FooProc
    cnt=-61 id=61
    
    PL/SQL procedure successfully completed.
    
    SQL> 
    
  • How the dynamic Action to update several items based on a JavaScript Expression producing a table?

    Using APEX 4.2.

    I have the list of selection using a LOV which returns a display value and a value separated by a comma e.g. return 'reserved to items' and "66,88" or "Available items" and "90,23".

    I want that return values for example "66,88" to be assigned to two my form fields.

    I have a dynamic action that fires when the field with the changes of the list/select-LOV. I am using an action of 'Set value' and set 'Expression JavaScript' with the expression itself type value ' $v("P1_MY_SELECT_LIST").split(",") and using Type "Article (s)' selection and listing the two points that I want to set as the items in question (from the description of the JavaScript expression field it appears that a table of the results would be assigned to the changed items , in the order.

    However, the original value of the LOV return value is passed to the first of the elements concerned (complete with the comma if the original return value was of the form '10')

    If I add more REAL action of the JavaScript "alert (" HELLO "+ $v ("P1_MY_SELECT_LIST") .split (", ") [0] +" WORLD "+ $v("P1_MY_SELECT_LIST").split (", ") [1]" ") I * see two expected values.»

    Any ideas what I could do wrong?

    The action 'Set value' affects the value specified to all affected elements: a value to one or more items. To set a different value at different points, you need several actions "Set value", or simply use javascript to do it in one.

    Even if you use a javascript expression that corresponds to a table, the table is just being converted to a string again. It creates a mapping of some sort. That is why for example with '10', she also translated as such. Actually you set this value to these two elements: ' 10, ".split(",").toString () (implicit in the chain of course).

    The code makes it very obvious that it doesn't handle values, as described in the help of the element. Aid is not correct or is the implementation simply not here yet?

    Just look at the javascript for dynamic actions, images/libraries/apex/dynamic_actions.js, service da.setValue directory file:

        function _setValue( pValue ) {
            lAffectedElements$.each( function( i ) {
                // Set all affected elements to the value passed
                $s( this, pValue, null, lSuppressChangeEvent );
            });
            /* Resume execution of actions here and pass false to the callback, to indicate no
            error has occurred. */
            da.resume( lResumeCallback, false );
        }
    

    And when you use a javascript expression:

        } else if ( lSetType === "JAVASCRIPT_EXPRESSION" ) {
            _setValue( lJavaScriptExpression.call( this ));
    

    It's pretty simple. (and this is checked on apex 5. It's the same on 4.2)

  • Dynamic action with multiple values of PL/SQL Expression as a condition

    Hel

    I am currently using Apex 4.0 for a schoolproject.

    I have two selectlists (P8_BUSINESSRULETYPE - which has al businessruletypes) and (P8_OPERATOR) that has a select statement based on the businessruletype.

    I want to hide the selectlist operator when P8_BUSINESSRULETYPE = 7,8,9 and 10 or P8_OPERATOR = 9

    When: change

    SelectionType article (s)

    Elements P8_BUSINESSRULETYPE

    condition: equal to 10

    Real actions: hide items p8_operator

    False actions: show p8_operator items

    ConditionType PL/SQL EXPRESSION

    : P8_BUSINESSRULETYPE = 10 OR: P8_BUSINESSRULETYPE = 8 OR: P8_BUSINESSRULETYPE = 7 OR: P8_BUSINESSRULETYPE = 9

    What is the problem with my dynamic action? Because he does not hide the operatorfield when businessruletype 10 or 9 are selected in the selectlist. Sessions has also said operator = 9 and Businessruletype = 10

    I hope you guys can help out me.

    Thank you very much.

    2843640 wrote:

    Please update your forum profile with a real handle instead of '2843640 '.

    I am currently using Apex 4.0 for a schoolproject.

    I have two selectlists (P8_BUSINESSRULETYPE - which has al businessruletypes) and (P8_OPERATOR) that has a select statement based on the businessruletype.

    I want to hide the selectlist operator when P8_BUSINESSRULETYPE = 7,8,9 and 10 or P8_OPERATOR = 9

    When: change

    SelectionType article (s)

    Elements P8_BUSINESSRULETYPE

    condition: equal to 10

    Real actions: hide items p8_operator

    False actions: show p8_operator items

    ConditionType PL/SQL EXPRESSION

    : P8_BUSINESSRULETYPE = 10 OR: P8_BUSINESSRULETYPE = 8 OR: P8_BUSINESSRULETYPE = 7 OR: P8_BUSINESSRULETYPE = 9

    What is the problem with my dynamic action? Because he does not hide the operatorfield when businessruletype 10 or 9 are selected in the selectlist. Sessions has also said operator = 9 and Businessruletype = 10

    The first thing is that a Condition that is applied to a control of dynamic action if the dynamic action is made the see page. She has therefore no impact on the question of whether the actions of true or false are performed. Control conditions which are those defined in the when the properties of the dynamic action. As they are evaluated in the browser, they must be specified as JavaScript.

    Secondly, this expression is not valid because it is a space between the colon and the identifiers. Link the names of rating, the colon and the variable element must be contiguous:

    :P8_BUSINESSRULETYPE = 10 OR :P8_BUSINESSRULETYPE = 8  OR :P8_BUSINESSRULETYPE = 7 OR :P8_BUSINESSRULETYPE = 9
    

    However the latter is only of academic interest, in this case you need to remove the condition of dynamic action.

    In the dynamic of change when action section, P8_BUSINESSRULETYPE, P8_OPERATOR, Condition of JavaScript Expressionand value to the value of the item (s)

       ($v('P8_BUSINESSRULETYPE') == '7')
    || ($v('P8_BUSINESSRULETYPE') == '8')
    || ($v('P8_BUSINESSRULETYPE') == '9')
    || ($v('P8_BUSINESSRULETYPE') == '10')
    || ($v('P8_OPERATOR') == '9')
    

    If you are using a browser that supported, this can be simplified to

       (['7', '8', '9', '10'].indexOf($v('P8_BUSINESSRULETYPE')) >= 0)
    || ($v('P8_OPERATOR') == '9')
    
  • Confirm the dynamic action does not not as expected in the APEX 4.2.5

    This looks like a bug in APEX 4.2.5.  I have a page with a "Cancel" button that redirects to another page.  There is a dynamic action that fires on the button with a confirmation action and the text ' are you sure?  However, if the user selects OK or cancel in the confirmation dialog box makes no difference - the redirect is always performed.

    I found this question after the migration of a page that worked to 4.1.1-to-4.2.5.00.88 APEX and were also able to replicate on apex.oracle.com here:

    https://Apex.Oracle.com/pls/Apex/f?p=19896:2

    (Press the Cancel button in the top right of the page redirects to page 1, regardless of the user's response to confirm the popup.)

    I don't need someone to suggest the alternative code, I know how to build my own confirmation processing.  I want to just raise this as a bug as possible and see if there is a solution to make the dynamic action works as it should.

    NB I found this in the patch notes for 4.2.5.00.88 on a fix for a similar problem:

    http://www.Oracle.com/technetwork/developer-tools/Apex/application-express/Apex-425-patch-set-notes-2186274.html

    15984978

    Dynamic action front-Submit with a confirmation message does not

    Hi Tony,.

    I think the problem is that the action of the button is defined as 'Redirect page in this Application', but it must always be "defined by the dynamic Action" as soon as you have set dynamic actions 'click' to a button. Normally, which is automatically changed as soon as you create your first dynamic action of a button, and I just confirmed by creating a test button in your application that has been defined as «Redirect...» ». After that I created a dynamic action the action of the button is set to "defined by the dynamic Action.

    Is it possible that you have modified the action of the back button to «Reorient...» » ? The question why «redirect...» "does not work, it's that we cannot guarantee in what order the browser will process click on events defined with onclick in the tag button itself and those events attached as a click event handlers. This is why it is necessary that everything is defined as dynamic actions. Only in this case you will be able to cancel the treatment.

    Concerning

    Patrick

    Member of the APEX development team

    My Blog: http://www.inside-oracle-apex.com

    APEX Plug-Ins: http://apex.oracle.com/plugins

    Twitter: http://www.twitter.com/patrickwolf

    Post edited by: Patrick Wolf

  • Show / hide the dynamic Actions does not work in Windows 7 IE10 and APEX 4.2.1

    Hello

    I have a page in the APEX 4.2.1 reactive Blue theme, where show or hide page elements based on changes to other page elements and their values, in terms of JavaScript expression.

    It's that everything works well in Chrome 31.0.1650.63 m and 25.0.1, Firefox but not Internet Explorer 10. I thought it might be linked to this solution to the problem of Ajax IE10 | Code of Jason and tried their recommendation, but appears not to have contributed.

    Help please!

    Thank you

    Alex.

    I found the problem and it was my fault. One of my dynamic actions using JavaScript expression conditions was missing quotes in $v ("P1_ITEM1"), breaking the rest of the related JavaScript code. Chrome and Firefox did not care, but IE seems to be less tolerant of mistakes like that.

    Scott, thanks anyway. It is useful to know that I have that option as well.

  • Condition of dynamic Action with and/or Expression Javascript

    Hello

    Anyone know if it is possible to have multiple values assessed in a Javascript Expression in dynamic Action?  For a DA on click of a button with status as a Javascript Expression, I want it to be worth...

    $v ('P5_ITEM_1')! == « X » || $v ('P5_ITEM_2') is nothing

    Therefore all true subsequent actions should be triggered when the P5_ITEM_1 is not equal to add or P5_ITEM_2 is null.  This does not work for me.  Only the first condition seems to be considered. The second seems to be ignored.  In other words, I can pass the two around and I have rated P5_ITEM_2 and the other ignored.

    Thoughts?

    -Seth.

    If you would like to evaluate both conditions then have nested If statements or use and operator instead where operator

    in one or the Organizer if the 1st condition is true then the whole expression must be set to true so that the rest are not evaluated

    Kind regards

    Vishal

    Oracle APEX 4.2 reports | Packt Publishing

    Vishal blog

  • Tips: APEX 5 r IR by a dynamic action after the text fields complete

    Hello I hope I can get assistance on this matter and thank you in advance for any information.

    I have an APEX 5 screen, that has 4 fields of entry of text and under this one IR that has these 4 parameters in its SQL where clauses.

    Now if I create a button that submits page or redirects to this page my report can be updated with the values of user entered without problem, basic stuff.  If I create the settings section as a dialog box model once again that I can get the update report as this dialogue submits the page as well as the report can refresh according to closed dialog option.

    What I struggle to reach is to allow the user to enter values in the text fields click on a button called 'submit' and there all stages of implementing dynamic action without page reloading.  I want user to P1_A, P1_B, P1_C, P1_D press on "submit" input, dynamic action that links the values entered into the fields, then fire another dynamic action that updates the State when the button is clicked / modified values what works the best.

    I am struggling to get this to work and I even tried to copy these settings and do them as hidden for example bind input P1_A to P1_A_Hidden by a dynamic action and have the report where clause =: P1_A_HIDDEN, but have not managed to get this working.

    It's possible?  I know its easy to simply send the page and make it work, but I want the experience to be quite uniform for the user and act as you never leave the page.

    I saw on the packages of the app in the chart example.  The bubble chart has a list selector (salary) and the table updates dynamically, it seems so that the process can occur, but I need the user to enter text and not use selection lists.

    My apologies if I missed any, but I can give you more if it helps.

    Concerning

    1972903b-5166-494e-8355-08d9d4006e96 wrote:

    Hello I hope I can get assistance on this matter and thank you in advance for any information.

    I have an APEX 5 screen, that has 4 fields of entry of text and under this one IR that has these 4 parameters in its SQL where clauses.

    What I struggle to reach is to allow the user to enter values in the text fields click on a button called 'submit' and there all stages of implementing dynamic action without page reloading.  I want user to P1_A, P1_B, P1_C, P1_D press on "submit" input, dynamic action that links the values entered into the fields, then fire another dynamic action that updates the State when the button is clicked / modified values what works the best.

    The button simply trigger a unique dynamic action of refreshment on the IR region. Session state for page elements must be processed automatically by specifying them in the property Page to submit Items of the IR region.

    Please ensure that you have updated your forum profile with a recognizable username instead of "1972903b-5166-494e-8355-08d9d4006e96": Video tutorial how to change username available

  • Dynamic action real action is not available in the APEX 5.0

    Hi all

    We did the/import export of APEX 4.2 to version 5.0 of the APEX, but I am unable to find the real Action of dynamic Action in APEX 5.0. Can someone help me on this.

    Dynamic_Action_True_Action_Not_Available_APEX_5.jpg

    LnTInfotech wrote:

    We did the/import export of APEX 4.2 to version 5.0 of the APEX, but I am unable to find the real Action of dynamic Action in APEX 5.0. Can someone help me on this.

    Assuming that this refers to you being unfamiliar with the default constructor of app UI Page Designer in APEX 5.0. See "dynamic Page Designer action management" for more details. True/false actions appear as nodes in the dynamic Action of the left pane of the designer of Page navigator tab:

    If you do not use the Page Designer, you can move on to the familiar view of the component:

  • APEX 4.2 limiting size of the value dynamic Action

    Hi all, I'm using ApEx 4.2.5 with 11 g BD and stumbled on this problem.

    I'm trying to set the value of a div within an HTML region. To do this, I use one set dynamic Action launched by a custom event "search" when user press enter or click OK to a search bar. I also use the PL/SQL function as set type body.

    I tested it and it works fine except if the content of the value is large enough (about 30,000 characters or more). I can't find any information about a size limitation for the return value of this type of package. I get this error code: ORA-06502 when I'm looking for a big content, and it seems that this error may occur when "you attempted to assign a value to a numeric variable, but the value is greater than the variable can handle", but I'll be back a PL/SQL CLOB variable in a div, so I don't see any kind of limitation. I think the limitation can be in the call made by apex in the background AJAX...

    I need help on this, thanks in advance.

    Gaël

    Hi gados12,

    gados12 wrote:

    OK, I tried something and the result is weird.

    I created a pakaged function to retrieve the right HTML content that is stored in my CLOB column (because I reached the limit of characters for PL / SQL code in dynamic action)

    So I called my function (allows to name it FNC_GET_SEARCH) my previous dynamic Action Set value. I still get the same error with large HTML content. However... it is there, it's weird.

    So that means the error is not my FNC_GET_SEARCH function, but the dynamic Action itself... So there must be some kind of limitation with this kind of dynamic action?
    Is it because the dynamic action to set the value using the package HTP in the background?

    The DA type 'Set Value' is for session state implementation and display the value of an element of page APEX value that is defined internally as VARCHAR2 (4000).

    As a result, you get the above error. Use the approach mentioned above to manage CLOB based rendering html.

    Also of your FNC_GET_SEARCH function for the display unit test error message.

    Kind regards

    Kiran

  • Apex 5 after execution of a dynamic action, want to display message and redirect the page

    Hello Experts,

    I use 5 Apex on XE 11 g.

    One of my page, I have 1 button that performs a dynamic action.

    Right now, I've added two real actions on the key. First of all is PL/SQL code, and the second is on the alert, which shows the success message.

    I want to show the message (box Apex message and not the simple alert message JavaScript box) on successfully executing this dynamic action and post that redirect to another page.


    Can someone help me please in the present.


    Thank you

    Thierry

    Thierry says:

    I use 5 Apex on XE 11 g.

    One of my page, I have 1 button that performs a dynamic action.

    Right now, I've added two real actions on the key. First of all is PL/SQL code, and the second is on the alert, which shows the success message.

    I want to show the message (box Apex message and not the simple alert message JavaScript box) on successfully executing this dynamic action and post that redirect to another page.

    Use the simple way to do this:

    • A button that submits the page rather than perform a dynamic action
    • A process of PL/SQL after presented with the necessary success message page
    • A branch to the landing page with the option include the success process message verified

    General management and the process should be contingent on the button that is clicked.

Maybe you are looking for

  • Stream 13-c002: 10 broken Windows, recovery & reset fail.

    Hello.I bought a laptop HP flow, with 10 Windows pre-installed.I burned a set of recovery disks. I also got the product key OEM of Windows from the BIOS.Then my broken Windows 10. Cannot start. Get reviews of the process died error.Then I tried to re

  • Is it possible to exclude a name of user and password specific to remember and if so is there a way to remove this exclusion?

    I have several Gmail accounts. A username/password particular name is not known.He used to remember, but now it does not appear in the drop-down list of user names.I have manually enter each time and FireFox don't request not to have saved.If I get a

  • Help in iCloud

    I want to help me, I forgot my password to iCloud and I don't remember any new information on this subject just the birthday and the logout button, it is not to allow

  • iPhone 6 no service / number of 'research '.

    I have recently bourght a 6 16 GB iPhone. The only problem is he didn't 'search' at the top of the screen. I went on the apple site for assistance and used their guide, If you can not connect to a cellular or cell - data Apple Support Network. The 's

  • Forgot pattern lock code

    I have a X eGlide I bought my daughter 2 years ago it activate the model locking on it n for more than 1 year, we collect dust I now have the Tablet n tried for a month now, almost everything I can think: Troubleshooting: disabling: soft reset: reset