Session State in Report Queries

Hi all,
I've got a report query with XML Structure set to advanced. I added two items to session state - a "department name", and a "current date" - these are application items that I want to put in the page header of my report template.
After I load the XML data and go to insert a field, I see some session info available for inserting (appl id, user, report title, etc.) along with my report fields, but I don't see the two session items I added. I took a look at the XML data and they're not there.
How do I get the session items to be included with the XML?
Thanks!!!

Sorry, I should have mentioned I am using a BI Publisher RTF Layout for my report layout, therefore I don't believe I can use it on apex.oracle.com. If BI Publisher is in fact installed there, then please correct me.
I am including session variables with the report, but the session variables between all of the report queries in my application are common between report queries. (Even though I really only want variables specific to each report to be included) When I add or delete a session variable from one report query, it affects all report queries in my application. This could be a feature, but I doubt it since it does not seem intuitive.
In addition, sometimes a random session variable or set of session variables will disappear from the list. (this is what I meant by drop) I cannot seem to determine when/what triggers this action, but it seems like this may occur when I delete a particular report query.
I can try to put up an example on apex.oracle.com, but I'm not sure if this is dependent on the presence of BI Publisher.
Thanks in advance for any help!
-David

Similar Messages

  • Interactive Report Download and Session State Protection

    I have created an Interactive Report in an APEX application that I have enabled
    session state protection for. The issue I am having is with the "Download"
    functionality of the interactive report to a .csv file.
    The URL created by selecting Download from the drop down (javascript:gReport.controls.download();)
    is built or constructed without a checksum thus causing the error below.
    Error
    No checksum was provided to show processing for a page that
    requires a checksum when one or more request, clear cache, or argument
    values are passed as parameters.
    The anchor tag containing the URL (/f?p=app_id:page:session_id:CSV:) is contained within
    <div id="apexir_CONTROL_PANEL_DROP" class="drop_panel
    clearfix" style="">
    Running the following: Application Express 3.1.0.00.32 on Oracle Database 10g Enterprise Edition Release 10.2.0.3.0
    Is there a way to add a checksum to this? OR does anyone have any ideas on how to work around this?
    Edited by: Bryce Tuohy on Feb 26, 2009 10:08 AM

    WORKAROUND:
    1.) Create hidden ITEM on page (I named it P23_PREPARED_CSV_DOWNLOAD_URL).
    Enter the following for the ITEM
    as the SOURCE_TYPE : PL/SQL Function Body
    as the SOURCE: return apex_util.prepare_url('f?p=&APP_ID.:&APP_PAGE_ID.:&APP_SESSION.:CSV:')
    2.) Create BUTTON that executes javascript to open POPUP window with this url.
    a.) Create Button and enter
    <a href="javascript:popupURL('&P23_PREPARED_CSV_DOWNLOAD_URL.')">Download and Save to CSV file</a>as the "Text Label/Alt"
    Originally had custom code for javascript POPUP and this is not needed .... just use the APEX javascript function.
    Edited by: Bryce Tuohy on Mar 5, 2009 10:47 AM

  • Report Print Attributes and Session State Protection

    Hi all,
    I have a report (old style Apex report, not an IR) that I would like to have a Print option, producing a PDF output.
    The report is on a page that takes a number of arguments and uses the page security option "Arguments require checksum".
    When I turn on the Enable Report Printing option in the report, the Print link appears at the bottom of the report. However, clicking Print leads to the following message:
    "Error      No checksum was provided to show processing for a page that requires a checksum when one or more request, clear cache, or argument values are passed as parameters."
    Disabling Session State Protection for that page makes the report link work, but I would prefer not to do that.
    How do I get the built-in report print option to generate the required checksum?
    I'm using Apex 4.0.2.00.07, by the way.
    Alex

    WORKAROUND:
    1.) Create hidden ITEM on page (I named it P23_PREPARED_CSV_DOWNLOAD_URL).
    Enter the following for the ITEM
    as the SOURCE_TYPE : PL/SQL Function Body
    as the SOURCE: return apex_util.prepare_url('f?p=&APP_ID.:&APP_PAGE_ID.:&APP_SESSION.:CSV:')
    2.) Create BUTTON that executes javascript to open POPUP window with this url.
    a.) Create Button and enter
    <a href="javascript:popupURL('&P23_PREPARED_CSV_DOWNLOAD_URL.')">Download and Save to CSV file</a>as the "Text Label/Alt"
    Originally had custom code for javascript POPUP and this is not needed .... just use the APEX javascript function.
    Edited by: Bryce Tuohy on Mar 5, 2009 10:47 AM

  • SSRS Report queries begin running slowly, have to stop and start report server to restore performance

    We have had a production issue crop up twice now where reports begin running slowly seemingly at random.  
    When this happens we can see from running SQL Profiler that the report queries are taking an extremely long time to execute.  The same queries when run directly in management studio run quickly.  
    Initially I suspected parameter sniffing, and tried using OPTION (RECOMPILE) in the reports, as well as clearing out the particular query from the plan cache and running the SQL in SSMS to try and get a better plan etc but no amount of jiggery pokery by
    me could get the queries to run any faster.
    The really weird thing - is that stopping and starting the report server via the reporting services configuration manager instantly cures the problem.  
    I'd really love to know - why this might be?  Is it something to do with the report server closing and re-opening its connections to the database? That's the only sort of thing I can think of...any ideas? Anyone? Any suggestions would be much appreciated.
    LucasF

    Hi LucasF,
    In your scenario, usually we can monitor the execution log in Report Database. If you run below query, you can get the results how long the report takes to render (TimeRendering), how long to process the report(TimeProcessing) and how long to retrieve data
    from Database(TimeData). You can check the starttime and endtime to know the total time for executing a report.
    SELECT TOP1000 *FROM[ReportServer].[dbo].[ExecutionLog2]
    More details information, please reference to similar thread below:
    Steps for troubleshooting a slow SSRS 2014 server
    Troubleshooting Reports: Report Performance
    In SQL Server Reporting Services, a job will be created by SQL Server Agent if any of the following processes is underway:
    query execution on a remote or local database server
    report processing
    report rendering
    To cancel a job that is running on the report server, we can cancel the job directly or reduce the report execution time-out value in the SQL Server Management Studio and then will stop query execution. Please refer to the steps below:
    Open SQL Server Management Studio, and connect to "Reporting Services".
    Under the Report Server node, right-click on the "Jobs" folder and select "Refresh". Then, right-click on "Jobs" again and click "Cancel All Jobs".
    Right-click on the Report Server node and open the "Server Properties" dialog.
    Click the "Execution" option, and set the "Limit report execution to the following number of seconds:" to a much smaller number. After this issue is resolved, this configuration should revert to the previous state.  
    Reference:
    Managing a Running Process
    Setting Time-out Values for Report and Shared Dataset Processing
    In addition, we can also use the KILL Transact-SQL statement to terminate a normal connection by terminating the transactions that are associated with the specified session ID. For the details information, you can refer to:
    KILL (Transact-SQL)
    If you still have any problem, please feel free to ask.
    Regards,
    Vicky Liu
    Vicky Liu
    TechNet Community Support

  • Do report queries require BIP?

    Hey all,
    I've created a named column report template which works well with Apache FOP to generate a PDF from a report region. The problem with that approach is that the level of detail for the report region makes the screen too cluttered to easily read. So I thought I'd do a summary report region with a button to launch the PDF of the detail via a report query.
    I duplicated the report region's source query to a new report query, and set the query to use the same report template the region successfully uses. The XML Schema download looks great, but when I use "Test Report", the resulting PDF is HTML tags with "Internal Server Error 500" and the FOP application.log says "oracle.xml.parser.v2.XMLParseException: Start of root element expected."
    I'm not sure how to debug this, but I noticed the message on the upper right hand side of the Edit Report Query screen says "Report queries are rendered using a custom built RTF layout...", which would infer a requirement for BI Publisher, although I haven't been able to find that stated in any web page, help text, forum message, or book.
    If that's the case, is there a technique to mask/hide report region items while still being able to print them?
    Anyone?
    TIA!
    Rich
    Edited by: socpres on Oct 23, 2008 10:28 AM (Rich Text doesn't look very nice w/paragraphs)

    Hi Rich,
    My guess would be that the XML your report query produces doesn't match the XML generated by your report region export. When printing/exporting report regions, the XML data generated for the print server always contains information about your application, page and the session data of your current page. Report queries on the other hand by default only produce the XML needed for you report data. So the actual XML structure is different, hence your report layout might need to reference your attributes slightly differently. In order to make APEX produce the same XML structure when exporting report regions and report queries, simple enable session state inclusion for your report query (it's an attribute on the first page of the report query create wizard and can also be edited on the report query edit page). Even if you don't want to include any actual session state values, this will ensure that same XML structure in both cases. The reason this is working this way is that for report queries, we want to ensure that you can use the same RTF report layouts that you use in BI Publisher.
    Regards,
    Marc

  • Session state value translation issue

    Hello.
    New to APEX and not all that web-savvy. Using version 3.1.2.00.02.
    Little background:
    I have a Select List item, "P1_OPERATOR", working from an LOV of relational operators (=, >, >=, <, <=). I use this item as a string substitute in report queries. This works fine for any reports on the page containing the "P1_OPERATOR" definition itself, "PAGE_1".
    Problem:
    However, when I attempt to set a session state value for a similar item ("P2_OPERATOR") on "PAGE_2" to the value of P1_OPERATOR using the column link of a report on PAGE_1, the value of P1_OPERATOR does not translate correctly for any values involving a right or left angle bracket (it works only for '=').
    Scenario:
    Let's say I'm on PAGE_1 and I select >=. The reports on that page display as expected. When I click on the link to PAGE 2, the reports there display "invalid relational operator". When I view session state from PAGE_2, I can see that...
    P1_OPERATOR is '>='
    P2_OPERATOR is '& gt;=' (space added to get it to display on this post).
    So it's trying to use the html value for >= as a literal value.
    I can also see that APEX has built the URL for the link page as follows...
    (abbreviated) http://...:P2_OPERATOR,P2_DATE:%26gt%3B%3D%2C2009-06-27
    If I type in the expected literal URL myself (outside of APEX) as...
    (abbreviated) http://...:P2_OPERATOR,P2_DATE:>=,2009-06-27
    ...or even the expected hex URL (outside of APEX) as...
    (abbreviated) http://...:P2_OPERATOR,P2_DATE:%5C%3E%3D%5C%2C2009-06-27
    ...PAGE_2 shows the expected results.
    Is there a way to solve this translation problem? Some workaround I haven't thought of?
    Thanks for your help.
    Edited by: user11313762 on Jun 29, 2009 2:30 PM

    Use an PL/SQL process On Load - Before Header with the following:-
    *:P2_OPERATOR := :P1_OPERATOR;*
    You'll have to use a hidden item as your condition (having looked at a page debug, any request value will have expired by the time the process will fire).
    create a hidden item on page 2 called P2_SET_OP
    use Item = value type of condition in your process where exp1 = P2_SET_OP (don't use colon notation here as ITEM has been specified) and exp 2 = Y
    You can even reset P2_SET_OP back to null in the same process as you assighn the operator.
    *:P2_OPERATOR := :P1_OPERATOR;*
    *:P2_SET_OP := NULL;*
    set the value of P2_SET_OP in your link as P2_SET_OP:Y
    Gus..

  • Report Queries

    Has anybody successfully created a complex (master/detail) type of report using Report Queries/ Report Layouts? Since you can't control the XML and Report Queries (with multiple queries) are independent of each other, I can't see how this would work with BI Plug-in.

    Perhaps my most recent BLOG entry might help you getting started with Report Queries:
    http://marcsewtz.blogspot.com/2007/04/report-queries-and-session-state.html
    Let me know if you have any questions. I plan on publishing more samples soon,
    Regards,
    Marc

  • How to tell if a user is issuing 'alter session statements'

    When I run 'alter session' from sqlplus in my schema, this does not get parsed and go to v$sql or show up in v$open_cursor. I have a user that is running queries from informatica. He says he is passing alter session statements through informatica, I want to see if they actually get there. The person is not real versed in oracle and I don't know informatica.
    i cant turn on trace cause he connects and disconnects and this would run immediately, I am not in a position to turn on system level tracing, add a trigger, or turn on auditing (not allowed).
    anyway to tell from a data dictionary view or something like that if these were issued by a given session? The queries run for a few minutes, so I have a bit before his session disconnects to query the data. I can't get him to change his code to stay connected. Is there a view that shows parameter changes for a given session?
    oracle: 10.2.0.5
    4 alter session commands are:
    Alter session set sort_area_size=999999999;
    Alter session set hash_area_size=999999999;
    Alter session set db_file_multiblock_read_count = 128;
    alter session enable parallel dml;
    Edited by: Guess2 on Jul 17, 2012 12:49 PM

    i cant turn on trace cause he connects and disconnects and this would run immediately, I am not in a position to turn on system level tracing, add a trigger, or turn on auditing (not allowed). If Informatica connects to Oracle via network, capturing TCP/IP traffic and mining in it may be your last resort.
    you can get session's PDML status from
    select pdml_status from v$session;
    i cant turn on trace cause he connects and disconnects and this would run immediatelythis contradicts to your following statement
    The queries run for a few minutes, so I have a bit before his session disconnects to query the data.
    I can't get him to change his code to stay connected. Informatica should have debug. Ask him if he can go step by step.
    Edited by: user11181920 on Jul 17, 2012 5:53 PM

  • Problem with application item and session state

    Okay, let's see if I can explain this problem coherently.
    I have a small app (one page), with an application item, F_WHERE_CLAUSE.
    This page has three regions in which there are items that the users can populate for search conditions. A couple of these items are "select list with submit" (I still need to upgrade to the AJAX method, I know). There is another region which has one hidden field, called P1_WHERE_CLAUSE. This field is defined to "Always, replacing any value in session state..." with source type of "Item (application or page.....", and a source value of F_WHERE_CLAUSE with no default value.
    I have a button called "Search" which submits the page and fires a PL/SQL process which builds a where condition based upon the other page items and stores the value to the application item F_WHERE_CLAUSE (correctly).
    For testing, I've made the P1_WHERE_CLAUSE field visible so that I can see what's going on. I've also clicked the debug and session buttons to help trace this. After I click the "Search" button and the page submits, debug shows:
    0.02: ...Session State: Save "P1_WHERE_CLAUSE" - saving same value: "1=1"
    followed later by:
    0.05: ...Session State: Saved Item "F_WHERE_CLAUSE" New Value="lower(primary_class) = 'rock' and country = 'Spain'"
    The field P1_WHERE_CLAUSE displays with the correct search criteria as signified by F_WHERE_CLAUSE above. However, If I click the "session" button to view the session state values, P1_WHERE_CLAUSE shows up as:
    P1_WHERE_CLAUSE Textarea    1=1    U while F_WHERE_CLAUSE displays the correct value still.
    The reason this "problem" came up, is that this page also has three SQL report regions which use &P1_WHERE_CLAUSE. for the where condition. While they display the correct results on-screen, each report region also has the "Export to csv" enabled, and the export seems to be using the "1=1" condition (from the "session" window) instead of the search criteria that the on-screen region is using (F_WHERE_CLAUSE and the displayed P1_WHERE_CLAUSE), resulting in a retreival of all records.
    Anybody have any idea what's going on and why, and how to get the csv export to use the correct value for the where condition?
    Thanks,
    Bill Ferguson

    It appears the "Export to CSV" functionality requires the item value to be set in session state. The P1_WHERE_CLAUSE item value never gets saved to session state. The page is rendered and the value is put in the item on the page but until you submit the page session state doesn't know what P1_WHERE_CLAUSE is.
    Create a before header computation or process to set the value of P1_WHERE_CLAUSE (which will save it to session state). It is interesting that the report regions didn't need to look at the value in session state but the "export to csv" does.
    --Jeff                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Session state and browser cache - Back button problem

    Hi all,
    I have a problem (and unless I'm missing something I think we all do) with session state and use of the browser's Back button. I really hope I'm just being dumb...
    Background scenario:
    Page P has a sidebar list allowing the user to select what content is displayed (e.g. 'stuff relating to X, Y or Z' where X, Y and Z are rows in, say, a table of projects). When a list entry is clicked, we branch to page P with the value of the list item placed in an application-level item (call it G_PROJECT). Reports on page P use G_PROJECT in their WHERE clauses.
    So, click list entry X and G_PROJECT is set to X and page P shows reports for project X.
    Page P also has a set of buttons which branch to various edit pages which allow attributes of page P's current project to be updated. These pages similarly use G_PROJECT in their WHERE clauses.
    Problem scenario:
    1. The user goes to page P and picks project X off the list. Project X's stuff is displayed (G_PROJECT = X).
    2. The user then picks project Y off the list. Project Y's stuff is displayed (G_PROJECT = Y).
    3. The user then clicks the browser's Back button. The page is served from browser cache, so project X's stuff is displayed, but G_PROJECT still = Y.
    4. The user clicks an 'Edit' button; we submit, and branch to an edit page which displays (and will edit) data for project Y because G_PROJECT still = Y.
    This is SERIOUSLY BAD NEWS - apart from being confusing, the user's edit permissions on projects X and Y may differ, and so the user may be able to perform 'illegal' updates.
    I've read what I can on this forum and the rest of the web looking for ways to a) inhibit browsers' 'Back' functions and/or b) prevent pages being cached by the browser, but none of them have worked for me.
    Short of waiting for browser manufacturers to recognise that the web is now full of applications as well as static pages, and enable robust programmatic control of cache behaviour, does anybody know how the problem can be avoided - or at least detected?
    Thanks,
    jd
    Failed attempts to date:
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="cache-control" content="no-store">
    <meta http-equiv="cache-control" content="private">
    <meta http-equiv="cache-control" content="max-age=0, must-revalidate">
    <meta http-equiv="expires" content="Wed, 09 Aug 2000 01:01:01 GMT">
    <meta http-equiv="pragma" content="no-cache">
    Disallowing duplicate submission (page attribute).
    window.history.go(1);

    Thanks Scott,
    I may be being dumb here but I don't see how that would help...
    P250_PROJECT and G_PROJECT are currently kept in sync by app logic. Whichever is used to drive, if the page is rendered from cache then the app logic is not executed, so the rendered page contents are not those keyed by P250_PROJECT, as illustrated in steps 1-4 of the problem above.
    The user sees X, the session items say Y. The engine doesn't know what the user is seeing.
    when page P is POSTed, its hidden item P250_PROJECT should always be used to derive the application item G_PROJECT. Then whether the page was pulled from cache or rendered anew via a click from the sidebar link, the project ID is determined by the contents of that page.
    As I said above I tried this, with the 'Edit' branch set to:
    Set these items: G_PROJECT
    With these values: &P250_PROJECT.
    but it makes no difference. The project ID is not determined by the rendered page contents - the engine gets the value of P250_PROJECT from session state.
    I can code the 'Edit' pages such that they check permissions and if necessary redirect back to p250 (conditional before-header branch), but that's a clunky cure rather than the prevention I was hoping for.
    Please tell me if my understanding is incorrect.
    jd

  • Use session state values to set column value during insert/update

    I am building an APEX 4.2 application that uses the canned Data Loading control to upload csv data to a table.  I have modified the 'Select Data Source' page of the workflow and it now contains three LOV's that the user selects values from.  The selected values are stored in Session State.  As I'm new to APEX, I do not know how to reference Session State objects in the context of the Data Loading workflow so that the appropriate columns are set with the correct values.  My assumption is that the columns that are apart of the insert statement reside in a collection somewhere.  I just don't know how to loop through the collection, determine the correct column, and then set that column's value equal to the corresponding LOV value in Session State.

    Scott,
    This is in version 2.2.1 and there are no caching features available.
    The application does require login.
    I'm playing around with the APP_UNIQUE_PAGE_ID right now but I am finding that even in the builder if I edit the attributes of a report column and then try to edit another column it will bring up the last column I edited. Even if I use the record navigation buttons next to the Apply Changes button it will keep bringing me the same page over and over unless I constantly refresh the pages.
    Greg

  • Feature Request - show substitution string values in session state display

    Hi!
    I would like to request that in addition to page and application items and session state values that the value of substitution string values be shown. Another option would be to have a separate link (like session) to display them. This would allow developers to see all of the available substitution values and how they change across pages, etc.
    Thanks!
    Dave Venus

    Dave - What are some examples of values that you are not seeing in the session state report that would be useful?
    Scott

  • Submitting the value of an item with session state

    Hi,
    I've a Master / Detail Form on different pages, like master report page no.19, master form page no. 20 and detail form page no. 21. I've created this form using Form, master detail form wizard. I've set deptid as a primary key in master, and foreign key in details table. In page 21, i've set the source for deptid, source used : Always, replacing any existing value in session state, source type : Item (application or page item name), source value : P20_DEPTID. While executing the form deptid is showing the value, but, while submitting of the form, it's not saving in the table. What will be the problem??
    Thanks and Regards,
    Sudha.

    Sudha,
    OK.
    Go to the pagedefintion in page 20, click on the wordt report (of your master form).
    You will get a new screen.
    Click on the pencil-icon of your column.
    Again a new screen.
    Select the six tab (it's called LINK).
    Enter item-name and value something like :p21_dept_id and #DEPT_ID#
    where P21_dept_id is the item of the form for the dept_id
    Hope this helps.
    Leo

  • Items not in session state when column link used and prevpage not submitted

    I have a report on page 2 (cemetery lot info) with a column link to page 3 (burial info).
    There is a process on page 3 that updates billing information using items from page 2, and billing code selected on page 3. The problem is, if the user does not submit page 2, session state is null, or has values from previously submitted page 2. How do I make sure the billing info is correctly updated from items displayed on page 2, if they are not in session state?
    begin
    if :P3_BILLING_CODE = 'OWN' then
    :P3_BILLING_NAME := :P2_OWNER1_FIRSTNAME||' '||:P2_OWNER1_LASTNAME;
    :P3_BILLING_ADDRESS1 := :P2_OWNER_ADDRESS1;
    :P3_BILLING_ADDRESS2 := :P2_OWNER_ADDRESS2;
    :P3_BILLING_CITY := :P2_OWNER_CITY;
    :P3_BILLING_STATE := :P2_OWNER_STATE;
    :P3_BILLING_ZIP := :P2_OWNER_ZIP;
    :P3_BILLING_PHONE := :P2_OWNER_PHONE_AC||'-'||:P2_OWNER_PHONE_EX||'-'||:P2_OWNER_PHONE_SC;
    elsif :P3_BILLING_CODE = 'MGR' then
    :P3_BILLING_NAME := :P2_NEW_MANAGER;
    :P3_BILLING_ADDRESS1 := :P2_NEW_MANAGER_STREET;
    :P3_BILLING_ADDRESS2 := null;
    :P3_BILLING_CITY := :P2_NEW_MANAGER_CITY;
    :P3_BILLING_STATE := :P2_NEW_MANAGER_STATE;
    :P3_BILLING_ZIP := :P2_NEW_MANAGER_ZIP;
    :P3_BILLING_PHONE := :P2_MANAGER_PHONE_AC||'-'||:P2_MANAGER_PHONE_EX||'-'||:P2_MANAGER_PHONE_SC;
    elsif :P3_BILLING_CODE = 'FH' then
    :P3_BILLING_NAME := :P3_FUNERAL_HOME1;
    :P3_BILLING_ADDRESS1 := :P3_FUNERAL_HOME_ADDRESS;
    :P3_BILLING_CITY := :P3_FUNERAL_HOME_CITY;
    :P3_BILLING_STATE := :P3_FUNERAL_HOME_STATE;
    :P3_BILLING_ZIP := :P3_FUNERAL_HOME_ZIP;
    :P3_BILLING_PHONE := :P3_FUNERAL_HOME_TELEPHONE;
    end if;
    update cm_burial set billing_name=:P3_BILLING_NAME, billing_address1=:P3_BILLING_ADDRESS1, billing_address2=:P3_BILLING_ADDRESS2, billing_city=:P3_BILLING_CITY, billing_state=:P3_BILLING_STATE, billing_zip=:P3_BILLING_ZIP, billing_phone=:P3_BILLING_PHONE
    where recordid=:P3_RECORDID;
    end;

    Hello,
    If I understand you correctly, it seems like your page logic is a bit problematic. The scenario I see is that the user is populating the form part, submiting the page, and the report region is being displayed (as the where clause depends on an item from the form region). Now, the situation you are describing, where the billing information is not correct, is possible if the user changed some of the form items on page 2, didn't submit the page – hence didn't update the report region – but still chose to branch to the next page, using the (non-updated) report link column. If I understand it correctly, you should first correct this situation. If the user is changing some details in the form section, the page should be re-submitted. This will resolve your problem, because as part of the page submit process, session state will be set correctly.
    I believe this is the simplest and correct solution. Other options, like updating session state per changed item (using JavaScript) will be much more complicated.
    Regards,
    Arie.

  • Custom Tabular form - Session state values disappear

    Hi,
    I have a custom tabular form page using apex_item and apex_collections. I am using the apex_collection to store the values in memory in order to avoid the data loss in session state. The page is working fine after a validation failure and it shows the values on the second report (as advised for custom tabular forms).
    In this, some of the rows have clob value which needs to be edit on a rich text editor. Since apex_item does not provide a solution to have rich text editor, I have to branch to another page on an Edit link for the CLOB data using a modal window. However When I return back from the modal page, the values disappear from session state, and the validation (using htmldb_application.g_fxx arrays) does not take place.
    Is there any workaround to overcome this issue?
    Apex version: 4.1
    Thanks in advance.
    Natarajan

    Thanks Daniel for your reply.
    Actually its an interface with a custom tabular form on page 1 with apex collections and rich text editor on page 2. Since it is not possible to have the rich text editor, I need to have it in another page (I could have it the same page, that is the way I am trying now) however I open the next page as a modal window.
    I have a link on the tabular form, so that the clob content is opened in the rich text editor on the next page. After the edit, I update it to the same collection and go back to the tabular form page and refreshes the report. It works fine, but causes trouble to the data entered on the other columns in the custom tabular form.
    I have now deviated to another work and put this on a hold. If my explanation is still not clear, I will create the same page in apex.com to simulate the error.
    Thanks again.
    Natarajan
    Edited by: Nattu on Mar 14, 2012 11:35 PM

Maybe you are looking for