Maintaining State with OAS 4.8 and PL/SQL

Hi,
I am working on a package that displays 5 pages with 83 application questions. To maintain state for all 83 questions, I am using a procedure that maintains the data on a string (~400 characters) and passes it to each page (We decided to avoid writing to the database before the application is completed). Since the pages were expiring randomly, I added NEXT and PREVIOUS buttons. One procedure, the one that maintains the string, has 83 parameters.
The package contains 8-10 procedures, 180 constants and global variables (we tried without using global variables but global variables make the code easier to read and the package smaller (around 4000 lines). The complete application uses 4 packages.
During development, the package seemed to be working well, until I added more realistic data. Right now, I get The error message: The page cannot be found. The first time, I got this message, just by pressing enter again will cause the page to display. At times it will take 3 or 4 times pressing the enter key on the URL. Slowly, it became more and more difficult to make the browser display the first page. Today, no matter how many times I press the enter key, the page does not display.
Questions:
1. Are there any limits on parameters, global variables and data on OAS 4.08. I tested reducing the package parameters, global variables and data to half the size, but the procedure still does not display. Compiling an older copy of the procedure does not seem to work either.
2. Is there a better way to maintain state without writing to the database?
I am not sure what is causing the problem. I have an open TAR.
null

Patricia Blais (guest) wrote:
: I have bought the book "The complete reference SQL" which came
: with a trial software CD of Oracle 8. I want to know if it is
: possible to create a program in PL/SQL (create a procedure) in
: SQLPLUS v.8 which is also included with the book. If it is
: possible, I would like to know how, by a small example. I have
: tried some of the exercices in the volume and they do not
work.
: No error messages are given and the program had to be
: interrupted. Please answer in another way then repeating an
: example in the book.
: Thanks in advance.
ok some code example:
Let's gues you want to display 2 collums of the view all_tables
in html format:
First create a procedure with a editor (i use to do so).
create or replace procedure get_html (owner_in in varchar2) as
var1 number(12,0);
var2 varchar2(100);
begin
dbms_output.putline('<table>');
for fr_rec in (
select table_name, owner
from all_tables
where owner like '%'

Similar Messages

  • Query Engine report error with Crystal Report 9 And MS SQL SErver 2000

    Hi,
    Currently I m doing a report with Crystal Report 9 and MS SQL as back End.I used a stored procedure to fetch data from DB.The Stored procedure works properly with query analyzer . But when I take report through application
    "Table Not Found" Error is coming.Later I Found that In stored procedure for certain conditions only this error comes.But I cant resolve it.
    Can any One check any pblm with this query
    ELSE IF ISNULL(@intSourceID,0) = 10 Or ISNULL(@intSourceID,0) = 11 Or ISNULL(@intSourceID,0) = 12 Or ISNULL(@intSourceID,0) = 13 Or ISNULL(@intSourceID,0) = 14  
    BEGIN
    IF ISNULL(@intSchemeID,0) <> 0  
    BEGIN
    Select* From table
    END 
    ELSE IF ISNULL(@intSchemeID,0) = 0  
    BEGIN
    Select 
    END 
    END
    When I comment the above codes , report works fine....
    Can any one help me....plz....I m in such a critical situation...

    Hi,
    Currently I m doing a report with Crystal Report 9 and MS SQL as back End.I used a stored procedure to fetch data from DB.The Stored procedure works properly with query analyzer . But when I take report through application
    "Table Not Found" Error is coming.Later I Found that In stored procedure for certain conditions only this error comes.But I cant resolve it.
    Can any One check any pblm with this query
    ELSE IF ISNULL(@intSourceID,0) = 10 Or ISNULL(@intSourceID,0) = 11 Or ISNULL(@intSourceID,0) = 12 Or ISNULL(@intSourceID,0) = 13 Or ISNULL(@intSourceID,0) = 14  
    BEGIN
    IF ISNULL(@intSchemeID,0) <> 0  
    BEGIN
    Select* From table
    END 
    ELSE IF ISNULL(@intSchemeID,0) = 0  
    BEGIN
    Select 
    END 
    END
    When I comment the above codes , report works fine....
    Can any one help me....plz....I m in such a critical situation...
    Refer the above statement highlighted in BOLD. That statement is WRONG. Select what ???? Try any one of the below statement,
    select ''
    --or
    select 0
    --or
    select null
    Regards, RSingh

  • VC Installation with IIS 6.0 and MS SQL 2005 on MSServer2003

    Dear all,
    Is it possible, if we plan to install VC6.0 with IIS6.0 and MS SQL 2005 on MS Server 2003?
    Now I have installation guide for install VC6.0 but it 's recommend to use MS SQL 2000 [Now MS SQL 2000 is very old and my company plan to use 2005]
    Another question is If I want to change or install VC7.0, pls guide me the path and the name of VC7.0 in Service Marketplace that I have to download it. When I seach in service marketplace, I found the result as below. Which file that I have to download it, if I want to install VC7.0
    000001   VISUAL COMPOSER BASE 7.01   
      Installation Software Component (Current View)
    000002   VISUAL COMPOSER BASE 7.11   
      Installation Software Component (Current View)
    000003   VISUAL COMPOSER BI KITS 7.01   
      Installation Software Component (Current View)
    000004   VISUAL COMPOSER BI KITS 7.11   
      Installation Software Component (Current View)
    000005   VISUAL COMPOSER FLEX   
      Installation Software Component (Current View)
    000006   VISUAL COMPOSER FLEX 7.01   
      Installation Software Component (Current View)
    000007   VISUAL COMPOSER FRAMEWORK 7.01   
      Installation Software Component (Current View)
    000008   VISUAL COMPOSER FRAMEWORK 7.11   
      Installation Software Component (Current View)
    000009   VISUAL COMPOSER GP KITS   
      Installation Software Component (Current View)
    000010   VISUAL COMPOSER GP KITS 7.01   
      Installation Software Component (Current View
    Regards,
    Pannee

    Hi,
    Am not sure this would answer your question or not, but this is for your info:
    Visual Composer is now built in or provided as default component in EP7.0 SPS12 onwards.
    If you have the portal installation then you can access this by http://hostname:5xx00/VC.
    Regards,
    Vamshi.

  • Problem with Maintaining State with EJB3 Stateful Bean

    I'm a newbie in EJB3. I've wrote a Stateful bean together with JSF as the UI tier. Below is my Stateful bean.
    package com.dhydrated.business;
    import com.dhydrated.entity.User;
    import java.io.Serializable;
    import javax.ejb.Remove;
    import javax.ejb.Stateful;
    @Stateful
    public class LogonBean
            implements LogonRemote, Serializable {
        private User user;
        public void setUser(User user) {
            this.user = user;
        public User getUser() {
            return user;
    }In above code, I'm storing User object as the private variable. The problem is, whenever I set the User object in the 1st page, I'm unable to retrieve the same user object in the 2nd page. Seems like my Stateful bean does not saved the state or conversation of the bean.
    Appreciate if someone could tell me on how to save the state of above Stateful bean. Is there some other conf. that I might missed out?

    I was find good solution! =)
    *** JScript ***
    <script TYPE="text/javascript">
    <!--
    function popup(myform)
    if (! window.focus) return true;
    var d = new Date();
    windowname = d.getTime();
    window.open('', windowname, 'top=100,left=100,height=200,width=200,location=no,resizable=no,scrollbars=no,status=no');
    myform.target=windowname;
    return true;
    -->
    </script>
    *** JSF ***
    <h:form onsubmit="popup(this)">
    <h:commandButton value="Press Me" actionListener="#{sessionBean.resetCursor}" action="selectElemList" />
    </h:form>
    But it work only with <h:commandButton> tag. If you try to use <h:commandLink>, then 'onsubmit' attribute by <form> tag don't work.
    If you know how make necessary functional with <h:commandLink> tag, please let me know.

  • Maintaing state with ejb web services

    Hello,
    I understand there are no straight way to maintain state with ejb web services. Basically I have a stateful session bean and I would like to maintain state across requests. What is the best/cleanest architecture I can use in order to maintain state with web services?
    Any reply appreciated,
    Julien.

    Here's how BEA suggests you do it:
    http://e-docs.bea.com/wls/docs81/webserv/design.html#1058330

  • Help! format of decode statements with between or signs ?

    Looking for an example of a decode statement with either a between/and or < > signs in the comparison field.
    I have tried several variations, but none seem to work. Any help would be appreciated.
    Here's a sample that doesn't work.
    Select course_no, section_no, capacity, decode(capacity, (capacity < 12), Less than 12, (capacity between 13 and 15), 13-15, More than 15) from section;
    Thanks in advance

    Hi,
    There is a limitation to the Case function, as it cannot be used in the PL/SQL (atleast upto Oracle 8i). Therefore, the only option left is Decode.
    If you have to compare the values like capacity < 12 then display Less than 12. You can write it using combination of other functions.
    For e.g. follow the steps below:-
    1)If you deduct 12 from capacity : (capacity-12) [it will give result as +ve, 0 or -ve.]
    2)If you have to narrow down the values to above three options, use function sign:
    SIGN(capacity-12) [will result into +1, 0 or -1]
    3)Then compare the values using Decode:
    DECODE(SIGN(capacity-12),-1,Less than 12,Greater than or equal to 12)
    The Decode can be used inside Decode(nested Decode) in above steps to compare more than one values (range between) to get the desired result. Hope have made it clear enough. If not, please let me know.
    Cheers.
    Yogesh D.

  • VFPOLEDB and MS SQL Server Express 2014

    I can install VFPOLEDBSetup.msi on machine with Windows 7 - 64bit and MS SQL Server Express 2012, but I cannot install VFPOLEDB on machine with Windows 7 - 64bit and MS SQL Server Express 2014. Is there a problem with MSSQL 2014?

    I don't think this is related to what Man-wai Chang points to, because the dropping of OLEDB just means continued development of data access drivers for SQL Server are ODBC only now, not that the OLEDB branch of any database is broken intentional.
    That said, it's quite cumbersome to find out what your detail problem is. Do you expect installation of Win7, MSSQL2014 and VFPOLEDB to eventually reproduce and see your problem? You could bet on your luck someone else had the same combination, but there
    are not a lot of VFP developers left over and they may already be using Win8 or 8.1
    Is there any error in setup? Are you just looking at the wrong place (eg OLEDB providers are not lilsted in ODBCAdmin)? VFP OLEDB is and always will be a 32bit driver and can only be seen and used from 32bit processes.
    Bye, Olaf.
    PS: You can use 32bit drivers from a 64bit MSSQL Server as it manages pools of 32bit and 64bit processes. For example see how to do via linked server http://fox.wikis.com/wc.dll?Wiki~VisualFoxProDataFromSQLServer. The detail is in allowing inprocess
    usage of the driver.
    Also see this:
    Create a new SQL Server Integration Services(SSIS) package.
    Add a Data Flow Task(DFT) to the package.
    Select the DFT, and go to Data Flow designer page.
    Add a OLE DB Source to the package.
    Double-click the OLE DB Source, click “New” > “New” to create a connection to Visual FoxPro.
    In the Connection Manager, please select “Microsoft OLE DB Provider for Visual FoxPro”
    Type the file path of a Visual FoxPro database(e.g. C:Address.dbc).
    Test the connection by clicking button “Test Connection”
    Click “OK” > “OK” to apply.
    Now, we can select a table from the Visual FoxPro database in the OLE DB Source editor.
    (quoted from http://blogs.lessthandot.com/index.php/datamgmt/datadesign/think-carefully-which-sql-server-you-wan/)
    Olaf Doschke - TMN Systemberatung GmbH
    http://www.tmn-systemberatung.de

  • Customer Statement with opening and closing balances

    Dear Forum,
    The users want to generate the Customer Statement with opening and closing balances like the traditional one. The statement now generated gives the list of all open items as on date, but the users want the statement with opening balances as on the date of the begining of the range specified and the closing balance at the end of the period for which the statement is generated. Is there a way to generate the same from the system.
    Thanks for the help.
    Regards,

    Hi,
    SPRO> Financial Accounting (New) > Accounts Receivable and Accounts Payable > Customer Accounts > Line Items > Correspondence > Make and Check Settings for Correspondence
    You can use the program RFKORD10 with correspondance type SAP06 for your company code
    This program prints account statements and open items lists for customers and vendors in letter form. For account statements, all postings between two key dates, as well as the opening and closing balance, are listed.
    Regards,
    Gaurav

  • 've redeemed my itunes card and at the top of the itunes stores it states "$20. in your account" but when i try and purchase a song it still comes up with my billing info and dosent pick up the card at all??

    I've redeemed my itunes card and at the top of the itunes stores it states "$20. in your account" but when i try and purchase a song it still comes up with my billing info and dosent pick up the card at all?? plz help me

    If the amount of the purchase is close to $21.07, then you need to take into account taxes may be added.
    If you go beyond the credit from a gift card the balance will be billed to your credit card account.

  • Live in Two States with two ISPs and need to merge into one account

    Surely I'm not the only one with this problem. And, I'd love to ask an Apple person, but I can't find the proper "contact us" phone or email! I'm 53 years old and not computer savvy. I first set up an itunes account on my computer in Reston, where it still resides in our house. Then, we got a small condo in NC and I set up itunes here. Except that it wasn't the same account I guess b/c it had none of my songs in it. So now, I have two sets of songs that I've bought in two different states and OF COURSE, now we're selling VA and going to be in NC full-time. I'd just like for Apple to tell me how to put the VA account and songs into the NC one so they'll be together. ARgh. Thanks for reading anyone. Abby

    Why do you have two account? There is no need for this. An account is just an id and password that you use to purchase music. You can use that account on any computer that has itunes.
    Your itunes library resides on your computer. You buy ONE download of a song. It is then up to your to back it up (in case of loss or crash) and to move it wherever you want it. Just like a cd. If you want that cd in another place you would have to take it there or make a copy and take the copy.
    Use your backup copy to move whatever music you like wherever you like, or copy to cd, dvd, external drive, flash drive, etc and move it to whatever computer you like.

  • How can I get my pay statements on the ADP portal to show up? I've restarted with add-ons disabled, and other browsers work; is this a Java or Flash issue?

    http://portal.adp.com/ -> Pay & Taxes -> Pay Statements
    There's a list of pay statements with links (blue text) from each pay date. If I click one, all these links turn to purple text, and I get taken to a page that it supposed to have a pay statement, but just has a big blank area where the statement should be. I'm pretty sure all my plugins are up to date.
    Unfortunately, you need to have an account with ADP to check this out. Everyone else in my department who uses Firefox has had the same problem, though. It seems to be recent -- within the last month or two. Could it have something to do with Firefox updates? Again, it works on Chrome and Explorer.

    I had the same problem - started with Firefox 23. If I log in to adp portal at https://portal.adp.com/public/index.htm and try to click on a single pay stub, all pay stubs become highlighted and I get a blank page. However, if I log into directly to Ipay at https://ipay.adp.com/iPay/login.jsf (same login and password gets me in), I have no problem viewing my individual stubs. Company says it is a problem with Adobe 11 (which works fine with IE).

  • Where clause with a combination of And and Or statements - Basic question

    Hi,
    I have a where clause with a combination of And and Or statements... May I know which one would run first
    Here is the sample
    WHERE SITE_NAME = 'Q' AND ET_NAME IN ('12', '15') AND TEST_DATE > DATE OR SITE_NAME = 'E' AND ET_NAME IN ('19', '20')
    can you please explain how this combination works
    Thanks in advance

    Hi,
    This reminds me of a great story. It's so good, it probably didn't really happen, but it's so good, I'm going to repeat it anyway.
    IBM once had an "executive apptitude test" that they would give to job applicants. There were some questions you might call general knowlege or trivia questions, and each question had a weight (for example, answering an unimportant queestion might score one point, an important question might be 5 points.) One of the questions was "What is the standard width of a mobile home?", and the weight of the question was -20: answering the question correctly did serious harm to your score. The reasoning was that the more you knew about mobile homes, the less likely you were to be their kind of executive.
    Now, as to your question, the correct answer is: I don't know. I don't want to know. Mixing ANDs and ORs without grouping them in parentheses is a really bad idea. Even if you get it right, it's going to confuse the next person who has to look at that code. Use parentheses to make sure the code is doing what you want it to do.
    If you really want to find out, it's documented in the SQL language manual. Look up "Operators, prcedence"
    http://docs.oracle.com/cd/E11882_01/server.112/e26088/operators001.htm#sthref815
    You can easily do an experiment, using scott.emp, or even dual, where
    WHERE  (x AND y)
    OR      zproduces different results from
    WHERE   x
    AND     (y OR z)

  • Update Statement With Decode and Business Dates

    Hello everyone,
    I need to write a UPDATE statement using business date rule. In general, the due date is 30 days from the checkout date. If the due date falls on a Saturday or Sunday then the loan period is 32 days.
    I know that to test for a weekday, I'd need to use the to_char function in Oracle with the format of ‘D’. I did some research and found that to test which weekday November 12, 2007 falls on, I'd need to use the expression to_char(’12-NOV-2007’,’D’). This function returns a number between 1 and 7. 1 represents Sunday, 2 Monday, …,7 Saturday.
    What I really would need to do is write one UPDATE statement using an expression with the Decode function and the to_Char function:
    UPDATE book_trans SET due_dte = expression
    These are the transactions that will need to be updated:
    ISBN 0-07-225790-3 checked out on 15-NOV-2007 by employee 101(book_trans_id=1)
    ISBN 0-07-225790-3 checked out on 12-NOV-2007 by employee 151(book_trans_id=2)
    ISBN 0-201-69471-9 checked out on 14-NOV-2007 by employee 175(book_trans_id=3)
    ISBN 0-12-369379-9 checked out on 16-NOV-2007 by employee 201(book_trans_id=4)
    I manually calculated the due-dte and wrote update statement for each book_trans_id:
    UPDATE book_trans SET due_dte = '17-dec-07' WHERE book_trans_id = 1;
    UPDATE book_trans SET due_dte = '12-dec-07' WHERE book_trans_id = 2;
    UPDATE book_trans SET due_dte = '14-dec-07' WHERE book_trans_id = 3;
    UPDATE book_trans SET due_dte = '18-dec-07' WHERE book_trans_id = 4;
    As you can see, it's very cumbersome and I'd just like to know how to incorporate everything in one Update statement:
    UPDATE book_trans SET due_dte = expression
    so that if due date falls on Saturday or Sunday, the loan period is 32 days; weekday, loan period is 30 days.
    Any tips or help will be greatly appreciated. Thanks!

    Hi,
    882300 wrote:
    Hello everyone,
    I need to write a UPDATE statement using business date rule. In general, the due date is 30 days from the checkout date. If the due date falls on a Saturday or Sunday then the loan period is 32 days. That's equivalent to saying that the due date is normally 30 days after the checkout date, but if the checkout date falls on a Thursday or Friday, then the due date is 32 days after the checkout date. I used this equivalent in the statement below.
    I know that to test for a weekday, I'd need to use the to_char function in Oracle with the format of ‘D’. I did some research and found that to test which weekday November 12, 2007 falls on, I'd need to use the expression to_char(’12-NOV-2007’,’D’). This function returns a number between 1 and 7. 1 represents Sunday, 2 Monday, …,7 Saturday.That's just one way to find out the weekday, and it's error-prone because it depends on your NLS_TERRITORY setting. A more reliable way is to use 'DY' or 'DAY' as the 2nd argument to TO_CHAR. That depends on NLS_DATE_LANGUAGE, but you can explicitly set the language in the optional 3rd argument to TO_CHAR, which means your code will work the same no matter what the NLS settings happen to be. It's also easier to debug: you may have to think whether '1' means Sunday or Monday, but it's easy to remember that 'SUN' means Sunday.
    What I really would need to do is write one UPDATE statement using an expression with the Decode function and the to_Char function:
    UPDATE book_trans SET due_dte = expressionHere's one way:
    UPDATE  book_trans
    SET     due_dte = checkout_dte + CASE
                                      WHEN  TO_CHAR ( checkout_dte
                                             , 'fmDAY'
                                     , 'NLS_DATE_LANGUAGE=ENGLISH'
                                     ) IN ('THURSDAY', 'FRIDAY')
                             THEN  32
                             ELSE  30
                                  END
    WHERE   book_trans_id      IN (1, 2, 3, 4)
    ;This assumes that checkout date is a column in the same table.

  • OAS 4.0 and Oracle 8i refuse to exec stored proced with more than 20 params

    Hi,
    I'm programming a web application with stored plsql procedures and Oracle Application Server.
    I started using Oracle 8.0.5 and OAS 4.0. It was working fine until I needed to use dynamic plsql and decided to upgrade to Oracle 8i (8.1.7).
    Some of my stored procedures have more than 20 input parameters and didn't supose any problem in the "old" installation, but now when I try to execute
    them via OAS over Oracle 8i it returns an error as if the number of parameters I gave were incorrect.
    Modifying the procedure so it has less than 20 parameters works fine.
    In resume: with the same input form and the same stored procedure with more than 20 input parameters works under Oracle 8.0.5 but fails under 8i.
    Any ideas why the newest version doesn't accept more than 20 parameters?
    Thank you.
    Miquel Salvà
    [email protected]

    Hi Martin.
    So, as far as i understood is the step where data is loaded into database that is taking too long ?
    Wich one of these is your cenario ??
    Cenario 1
    Step 1) Export product data as CSV fike
    Step 2) 3rd party app parses data (some processing is done in CSV file) generating another (or overwritting the original) CSV file
    Step 3) CSV file generated in step 2 is pushed to database using sqlloadr
    Step 4) Some pos-loading transformation is done
    Cenario 2
    Step 1) Export product data as CSV fike
    Step 2) CSV file is loaded into database using SqlLoader
    Step 3) After sqlloader is finish, some post-load processing is done
    Step 4) 3dr party transformation is done
    I think your problem can be in loading that data into database.
    Is the CSV file big?
    you can fasten sqlloader using direct-mode, destination tables can be in nologging mode (faster) and with the right space allocated (avoiding segment alocattion overhead)
    Best Regards
    Rui Madaleno

  • ABAP/4 Open SQL statement with WHERE ... LIKE and pattern too long

    Dear All,
    I am getting an error "ABAP/4 Open SQL statement with WHERE ... LIKE and pattern too long" while executing the following statement:
    CLEAR LS_RANGE.
    LS_RANGE-SIGN     = 'I'
    +LS_RANGE-OPTION     = 'CP'     +
    LS_RANGE-LOW     = 'S_ADMI_FCD'
    LS_RANGE-HIGH     = 'S_ADMI_FCD'
    COLLECT LS_RANGE INTO LT_RANGE.
    SELECT *
               FROM UST12
               INTO CORRESPONDING FIELDS OF TABLE LT_OBJECT_VALUES
               WHERE FIELD IN LT_RANGE
               AND AKTPS   = 'A'.
    For options like BT(Between), EQ(Equal) in range table, this above query is executing without dump. But for option CP, it simply dumps & in dump what i found is, it is concatenating the value in low & high.
    Does anyone have any idea regarding open sql using range tables.
    Thanks,
    Bhupinder

    Hi,
    I commented as follows:
    If  LS_RANGE-HIGH is empty, you can use EQ, NE, GT, LE, LT,CP, and NP. These operators are the same as those that are used for logical expressions. Yet operators CP and NP do not have the full functional scope they have in normal logical expressions. They are only allowed if wildcards ( '*' or '+' ) are used in the input fields. If wildcards are entered on the selection screen, the system automatically uses the operator CP.
    If  LS_RANGE-HIGH  is filled, you can use BT (BeTween) and NB (Not Between). These operators correspond to BETWEEN and NOT BETWEEN that you use when you check if a field belongs to a range. You cannot use wildcard characters.
    You can try:
    CLEAR LS_RANGE.
    LS_RANGE-SIGN = 'I'.
    +LS_RANGE-OPTION = 'CP' +
    LS_RANGE-LOW = 'S_ADMI_FCD'.
    LS_RANGE-HIGH = 'S_ADMI_FCD'.
    FIND '*' IN LS_RANGE.
    IF sy-subrc = 0.
      LS_RANGE-OPTION = 'CP'.
    ELSE.
      LS_RANGE-OPTION = 'EQ'.
    ENDIF.
    COLLECT LS_RANGE INTO LT_RANGE.
    SELECT *
    FROM UST12
    INTO CORRESPONDING FIELDS OF TABLE LT_OBJECT_VALUES
    WHERE FIELD IN LT_RANGE
    AND AKTPS = 'A'.
    If you use wildcards the LS_RANGE  length should not exceed 10 characters.
    Hope this information is help to you.
    Regards,
    José

Maybe you are looking for