Tabular form- button to save primary key to variable?

Hi guys. I have a tabular data block that has results. Now I have put a command button next to each record. How would I go about when I click the button, it actually refers to that record?
I have put the buttons on (when you put it on with the data block, it puts a button on for every row). I need to save the primary key number into a global variable depending on the record button clicked.
Thanks guys

Hi Lockmac,
Why've you made button for every record? I've never seen such a form.
We normally create a single save button at the bottom to save any changes.
You can definitely save a record by pressing any of your buttons but i think it is not possible to associate button to a particular record (as the way you want).
You can use :system.trigger_record to identify the current row that oracle forms is processing. May be you can use this to build your logic.
Please mark answer as helpful / correct, if it helps you
Navnit
Edited by: Navnit Punj on May 6, 2009 9:53 PM

Similar Messages

  • Source tables for forms and tabular forms must have a primary key.

    Why does HTML DB 2.0 return the message
    "Source tables for forms and tabular forms must have a primary key."
    when trying to generate a "Report and Form" page based on a view defined like "create view <applicationschema>.a as select * from <sourceschema>.b" ?
    It should be possible for HTML DB to "see" that the table "<sourceschema>.b" already has a primary key.
    bw - Christian

    Christian,
    In the create application wizard, when creating form or tabular form pages, you can only use tables with primary keys, and not views, because that wizard is automatically deriving the primary key from the table definition. If you want to build forms on views or tables without a primary key, you need to use one of the create form wizards while working on an existing application. Those wizards allow you to pick your own column as a primary key column.
    Regards,
    Marc

  • Master Detail Forms with 2 composite primary keys - Is there a workaround?

    Hello All,
    I have been searching for a workaround to the maximum 2 part primary key restriction on the multi-row updates, and master-detail forms, and am hoping that someone can help me. I am using HTMLDB v2.0.0.00.49 with IE 6 against a 9.2 DB.
    I successfully implemented the workaround of Fred Stoopendaal's (see Updata PK on HTML DB ) and it works fine for single page multi-record updateable forms, but alas I haven't been able to extend it to master detail forms (I think it is something to do with Oracle not allowing the "returning" clause on views).
    Here is what I tried:
    two tables, one with a 2 part composite primary key, which is the master table, and a detail table with 3 part composite primary key -
    --------- BEGIN SQL ---------
    create table master_table
    ( master_col1 number
    , master_col2 number
    , master_col3 varchar2(30)
    , constraint master_pk primary key (master_col1,master_col2));
    create table detail_table
    (detail_col1 number
    ,detail_col2 number
    ,detail_col3 number
    ,detail_col4 varchar2(30)
    , constraint detail_pk primary key(detail_col1,detail_col2,detail_col3)
    , constraint master_detail_fk foreign key (detail_col1,detail_col2) references master_table(master_col1,master_col2));
    create or replace view v_master_table as
    select rowid mata_rowid,mata.*
    from master_table mata;
    create or replace view v_detail_table as
    select rowid deta_rowid,
    (select rowid from master_table mata where mata.master_col1 = deta.detail_col1 and mata.master_col2 = deta.detail_col2) deta_mata_rowid
    , deta.*
    from detail_table deta;
    create or replace trigger mata_ins_upd_trg
    instead of insert or update on v_master_table
    referencing new as new old as old
    for each row
    begin
    if inserting then
    insert into master_table (master_col1, master_col2, master_col3)
    values (:new.master_col1, :new.master_col2, :new.master_col3);
    end if;
    if updating then
    update master_table
    set master_col1 = :new.master_col1,
    master_col2 = :new.master_col2,
    master_col3 = :new.master_col3
    where rowid = :old.mata_rowid;
    end if;
    end;
    create or replace trigger deta_ins_upd_trg
    instead of insert or update on v_detail_table
    referencing new as new old as old
    for each row
    begin
    if inserting then
    insert into detail_table ( detail_col1, detail_col2, detail_col3, detail_col4)
    values (:new.detail_col1, :new.detail_col2, :new.detail_col3, :new.detail_col4);
    end if;
    if updating then
    update detail_table
    set detail_col1 = :new.detail_col1,
    detail_col2 = :new.detail_col2,
    detail_col3 = :new.detail_col3,
    detail_col4 = :new.detail_col4
    where rowid = :old.deta_rowid;
    end if;
    end;
    --------- END SQL ---------
    Then I created a master-detail form in Apex on the two views, using the mata_rowid and deta_rowid as primary keys, and mata_rowid=deta_mata_rowid as the link. I realise that using a function to fetch the master rowid within the detail view query is costly, but it was my intention to modify the record fetch queries to use the real FK columns once things were up and running.
    It seems to generate the pages ok, and I can insert/update master table records, but as soon as I modify records in the detail table things go a bit haywire. I can't find any documentation on how the inbuilt MRU/MRD logic works, so can't figure out the issue.
    Can anyone out there tell me what the problem is with the logic above, or if they have come up with a neat solution to this annoying limitation. I know that many will say that I should modify the data model to use surrogate primary keys, but many of the uses for HTMLDB are new interfaces for old schemas, so a workaround that doesn't involve wholesale data model changes would be preferable.
    Thanks in advance,
    Mike Cretan

    Hi, this is likely not the most elegant way...but perhaps the simplest -- and I didn't have much time to play.
    I used Wizard to create two separate Master Detail forms, each with a separate detail table. Thus I ended up with four pages:
    Page "A" - "Selector" page for Master (Report), with Edit link driving to Detail-1
    Page "B" - Editable Master/Detail-1 page (HTML / Report)
    Page "C" - "Selector" page for Master (Report), with Edit link driving to Detail-2
    Page "D" - Editable Master/Detail-2 page (HTML / Report)
    Then I selected the primary key column TWICE on the Report on Page A. Modified the second instance of this column to navigate to Page D (passing primary key) exactly the way the original instance of this column navigates to Page B. Then I deleted Page C.
    Since you can have only one Tabular Entry form per page, this seemed the best way to drive two separate detail tables from a common interface.

  • How can I add a Save form button ( not save as ) for a custom fillable form ?

    How can I add a Save button ( not save as ) for a custom fillable form ?
    idea is ti to have a Save button  at the bottom of each page where the person filling
    the form  clicks the save button  on each page.( it is a 12 page fillable form )
    The only thing I was able to do  was add a button that  opens a Save As
    dialog box only.
    My experience  lever is - end user-intermediate.
    Thnaks.

    Thanks for the response.
    I wonder why  it wont allow.
    If I can  save ( as opposed to save as)   this form by clicking the  save icon on the  menu bar, I am not sure why it is no possible to do so on page level!
    Custom script option is not  even remotely possible!

  • Apex Form - how to enter primary key value manually?

    Hi
    Whenever I am creating Apex form using wizard, it asks me to specify trigger/sequence/pl/sql function for populating primary key value.
    However, if I want to specify primary key myself (ie. not auto generated number), how I can specify that?
    Thanx

    Hello,
    By Yourself you mean : by hand or by a pl/sql?
    If you say by trigger, the system doesn't care about what number is send. So you can give it "manually"
    May I ask what is the reason of that?
    Cheers,
    Arnaud

  • Form Validation on Complex Primary Key

    I have a that inserts/updates a table with a 2 coulmn primary key (ticket_num, ticket_seq). Is there anyway to create a page validation item that will keep users from violating the pk constraint and getting the ugly ORA-00001 error.
    I think I just don't understand the syntax of the "SQL Expression" validation.
    I would like to just find if the key already exists, but the following does not seem to catch it. I have put the following in validation expression 1.
    (select count(*)
    from system_issue_timings
    where ticket_num = :P3_TICKET_NUM
    and ticket_seq = :P3_TICKET_SEQ) > 0

    The pl/sql with count(*) above will not work as select count(*) into... will never raise no_data_found, it will result in zero in v_test.
    The other thing to watch out for on this type of validation (whether implemented as sql not exists or as a pl/sql returning boolean or pl/sql returning error) is that if you are doing updates on this page then you need to either :
    1. not fire the validation when updating (assuming you cannot modify the primary key columns on the page), or
    2. specifically exclude the row being updated from the validation lookup (using rowid for example) as otherwise it will satisfy the condition and fail the validation.
    You want to probably use 'sql NOTexists' validation as it "Passes if the query return no rows." :
    select 1
    from system_issue_timings
    where ticket_num = :P3_TICKET_NUM
    and ticket_seq = :P3_TICKET_SEQ
    Glen
    Edited by: gjmorris on Sep 24, 2008 1:02 PM - added actual solution.

  • Can we create an APEX Form based on Table which has no Primary Key

    Hi,
    I have a requirement.
    I need to create a FORM based on a table having no Primary Key but it is having Unique Key . I can use Unique Key as an alternate of Primary Key.
    but When I tried to create a Form, I got the following message.
    Source tables for forms and tabular forms must have a primary key
    Thanks,
    Deepak

    Deepak_J wrote:
    Hi,
    I have a requirement.
    I need to create a FORM based on a table having no Primary Key but it is having Unique Key . I can use Unique Key as an alternate of Primary Key.
    but When I tried to create a Form, I got the following message.
    Source tables for forms and tabular forms must have a primary key
    Thanks,
    DeepakGood database design will always require a PK on the tables. There are only very few and rare expetions to this rule. One would be when you have store the data only temporarily in this table, like it is often done for import/loader tables. The data is first loaded in the "import"-table, then validated and then transported to the "real" tables. In such a scenario you can ignore the primary key on purpose. Because you already have a UK on this table it can't be such a scenario.
    For most other scenarios you should always add a PK. Ask critically why there is no PK on it. Is there a reason for it or was the table designer just not doing its job well?
    Btw: A UK is identical to a PK if the column is mandatory (NOT NULL). In this case you could simply change the constraint from UK to PK.

  • Tabular Form with updateable keys??? Help!!

    I have been trying to set up a timesheet/scheduling package using my PT job as a real world framework from which to pull ideas. The job is at a concert venue.
    The idea is to be able to schedule an event, then add existing employees and add the appropriate employee to that event.
    I have the tables already setup: EVENTS which consists of 'event_name', event_time_and_date, unique_event_id(priKey), etc... Employees which is first,last,empnum(priKey),etc.... And most importantly a Schedule table which is empnum(priKey,foreign to employees), eventid(secKey,foreign(sp?) to unique_event_id), time in, time out, etc....
    Everything is great except that I cannot add an employee to an event using the Tabular Form as the empnum primary key needs to be defined by a dropdown LOV(my criterea) and the eventid needs to be defaulted to the passed in value. It seems the Form is not setup to operate that way. I have included a link to my mock-up on oracle's free HTMLDB space so that the lucky individual who decides to aide this lost soul can see what I'm on about. I have been able to do it via single drop downs, but that is one person at a time. The table is the best way visually to see who has, and has yet to be added to an event.
    http://htmldb.oracle.com/pls/otn/f?p=38803:1
    Click on schedule and choose 'Assign Employee' and click the event in January to get to the 'Add Employee' page.
    The number present on the page should be hidden but is visible for debugging purposes. It is the unique event ID that the SQL bind refers to filter the list to the event in question.
    Thank you very much,
    brux2dc

    From the trigger code I see a new PK being generated. Just so I am understanding what is going on, the new pk will in no way be used except to keep the tabular form in order.
    The data in the intersection table will look like this:
    EMPNUM(PK) | EVENTID(PK)
    1 | 1001
    1 | 1002
    1 | 1003
    2 | 1001
    2 | 1003
    3 | 1002
    The tabular form will enter data so that an already existing eventid will be associated with multiple empnums. The eventid is passed to a hidden textbox. This is where the fixed eventid comes form and the empnums become the only variable per new row.
    What should happen when I click on Add Row is that a new row appears with the eventid already set as PK1 and the LOV with EMPNUM as PK2. So before insert the screen would have:
    EMPNUM(PK) | EVENTID(PK)
    1 | 1001
    2 | 1001
    3 | 1001
    5 | 1001
    I just wanted to clarify further what my intent is. I appreciate all your help so far.
    brux2dc

  • Adding a button to each row of a tabular form

    Hi,
    I'm new to APEX. I've searched the forums high and low for a couple days, but no go on a solution to my problem. Perhaps I'm not phrasing my search right.
    I have a tabular form. The columns in each row save to a table called STORE. At the end of each row, I'd like to have a button/hyperlink that takes you to another page wherein, for that store, you can check/uncheck the items they carry. So, here's the main tabular form:
    The Hardware Shop -- Col1 Col2 Col3 Col4 Col5 Link
    Bob's Nuts and Bolts -- Col1 Col2 Col3 Col4 Col5 Link
    Suppose you click on the link for The HW Shop. Now you're in a screen where you have a list of 20 items (coming from another table). From that list, you can check/uncheck the items carried by that store, save changes, and return to the tabular form. Checking/unchecking would insert/delete records from a junction table (using a trigger I guess).
    Back in the tabular form, you should still be able to save data at that level (i.e. the col1, col2, etc., above). I have this latter part working, and I know how to write triggers, it's just the button link concept that I can't understand.
    I'd be much obliged if somebody could point me to some sort of reference/example.
    Thanks,
    Max

    Hi again,
    I'd like to add some functionality to this, and would appreciate any input. I can't post this app for security reasons, and it would require a lot of reworking to 'genericize' it, so I'll just devote that same energy to being as detailed as possible in my explanation of the issue.
    Part of my app has 2 pages that interact with each other. Page 1 is a tabular form, and at the end of each row there is a link column, which I created with Arie's help. This link opens up page 2, which is also a tabular form.
    Clicking 'Save' in page 2 should launch a javascript function to do some calculation, and then this calculation should be sent back to page 1, and stored in a text field located on the same row as the link column that was clicked in page 1.
    There's a lot of different ideas floating in the forums regarding javascript calls via buttons, and I'm currently researching that. More important to me is understanding what row number was clicked on page 1 (i.e. f01, f02, etc.).
    I think this posting is similar to what I'm trying to do: Re: Trying to attach onclick event to a pagination link But, the replies went a bit over my head. I managed to create a row selector, which added a checkbox column to my form. But the downside to that is I don't want to force the user to click a checkbox to activate a row, and then do the additional step of clicking the link column.
    Thanks,
    max

  • Primary key issue with adf Entry Form.

    Hi All,
    i'm using jdev version 11.1.1.5.0
    use case: i have create simple entry form based on Eo and Vo using database table like student(enrollment no,name address)
    where enrollment no is primary key.
    so when i have create a record i have set enrollment no in entity impl class of this eo create method using some logic based on my need like(20130001)
    for that i have read highest no from database field and assign to enrollment no field when user create record.
    so when user create record second time then enrollment no is 20130002. and other detail like name and address user fill and commit record. and it is fine.
    but problem is that when two user access same form at a time and create record so both have get same primary key like 20130003 because in current time in database maximum value is 20130002.
    so which user  commit record first it record will save on database and second user get error message because of primary key violation.
    so my question is that where we generate primary key value for record so when multiple user access form have get different primary key value. and in my use case i can't use sequence and any autoincrement no
    because i have patter for primary key.
    Thanks in Advance
    Manish

    Hi,
    Dimitar and Frank
    thank for reply.
    How can i apply non-concurrent DB lock can you please explain.(because lock method on entity impl not work when user create new row as per documentation)
    http://docs.oracle.com/cd/B14099_19/web.1012/b14022/oracle/jbo/server/EntityImpl.html#lock__
    i have write following line of code in entity impl class to set primary key value(reqid)-
        @Override
        protected void prepareForDML(int i, TransactionEvent transactionEvent) {
             super.prepareForDML(i, transactionEvent);
            this.setReqid(genReqid());
        public String genReqid() {
            String reqby = this.getReqby();
            String qry =
                "SELECT nvl(MAX(TO_NUMBER(SUBSTR(REQID,7))),0)+1  FROM STM_REQHDR WHERE REQBY=? AND REQTYPE<>'M' and substr(reqid,1,2)<>'MT' AND SUBSTR(REQID,1,3)<>'PAY'";
            PreparedStatement ps = null;
            String no = "";
            try {
                ps = getDBTransaction().createPreparedStatement(qry, 0);
                ps.setString(1, reqby);
                ResultSet rs = ps.executeQuery();
                if (rs.next()) {
                    no = rs.getString(1);
                ps.close();
            } catch (Exception e) {
                System.out.println("Exception in Gen req id ==>" + e);
            String reqno = reqby + String.format("%6s", no).replace(' ', '0');
            return reqno;
    but when i run form in debug mode and two user commit concurrent manner only one time code block is executed who first commit. and second user got error message.
    thanks
    Manish

  • Multi-row form with button to save and add another row

    Can you have a button on a multi-row tabular form that would save the current changes, and than open a new row up on the fom for a new entry to be entered? This would combine the save and add a row button functions.

    Add Row button is doing exactly what you are asking for - it will save the chages you
    made and add a new row.
    Denes Kubicek

  • Primary Key problem in 11g - Known issue 6894412

    Hi Everyone:
    We are on JDeveloper 11.1.1.4, and JHeadstart 11.1.1.2.46. This thread originally started on the JHeadstart forum and can be seen at: Problem with LOV's in 11g
    We are converting our 10g application to 11g. We have an established Oracle database that does not use pre-populated primary keys that are sequence number. Our database has composite keys and the integrity of those composite keys are established by foreign key constraints to edit tables. This approach has worked extremely well for us for over a decade, the logic of the database has been designed so that the database protects itself through the elimination of cascade deletes where necessary, and cascade deletes as the business logic dictates. This will not be changing.
    In the database tables in which the 10g application has been displayed in the table format, after conversion to 11g, the LOV pop-ups are not working unless the SAVE button (or refresh of the browser) has been pressed. The first LOV pop-up will work, but as soon as you select a value from it, the next LOV pop-ups will not execute until the SAVE or REFRESH is done. This is only in table format. If the display format is form, our primary key LOV's work fine. In 10g, this functionality worked fine as long as we didn't use an "ADD ROW" button on a table format. The Add Row button caused the primary key values to be returned to the application, but not be displayed on the screen. A refresh would then show them.
    From the initial investigation in the JHeadstart forum, I realize that we are hitting the "Primary Keys from Model" 6894412 problem that is listed in the 11.1.1.4 Release Notes. We have spent many, many hours establishing a re-usable .jar file of all of the entities of this very large database as suggested by JDeveloper Best Practises (http://download.oracle.com/docs/cd/B31017_01/web.1013/b25947/bcadvgen007.htm). This has worked very well for us in 10g - define all the entity specifics in one place, once, then every application can re-use them. Productivity at its finest. Therefore, we cannot make fake columns in our database in order to fix this "limitation" in 11g. We have many complex parent/child/child tables to put into our application which will not work unless our entities have the primary keys properly defined. I have tried to implement the workaround that was found in the release notes, but have been unable to get it to work.
    I have created a testcase with the HRSchema by adding a table to that Schema that I can provide the SQL commands for, but I do not know who in Oracle support to send it to. Could someone please provide me with the information on who to contact. I have, I believe, taken all the steps as established in the release notes for this problem and have clearly documented the changes in the .jsff page, but the problem still exists. Clearly, I am doing something wrong, or need more information.
    Thank you in advance
    Mary
    UofW

    Frank:
    I thank you for your reply.
    I have been working on the JHeadstart forums for so long, I actually forgot how to submit things to Metalink, and now that I have done it again...SR #3-3101357281 for this issue....I realize why I blocked out using Metalink from my memory.
    It took me an incredible amount of time to fill that SR in, then after completing everything, I was sent a request by the person assigned to the SR to repeat the instructions of how to run my testcase. I had already filled out all of the instructions on how to run the testcase in the "Notes to Oracle" section of the upload step. Almost every time I send something to Metalink, I have to repeat things. It seems as though they aren't read fully and any reason at all is used to send them back to the client.
    My dealings with Metalink have been very, very frustrating. My colleagues share this sentiment.
    Mary
    UofW

  • Determining the row id or primary key columns and values genericaly

    Hi There
    Does anyone perhaps know how to determine the rowid of the
    currently selected row in a form, or alternatively the primary
    key values/columns?
    Regards
    Herman

    Hi Tranen,
    you can view the constraints and respective columns by setting the
    Table Shape Properties in the Property Inspector.
    Select (all) the tables on the Diagram you want
    In the Property Inspector,under Constraints -Set the 'Show Constraint Columns' to 'True',
    Set 'Show Constraints' to 'True' .
    Constraints (PK,UK,FK,Check)
    Also Set the 'Show Columns' option to 'False' .This will be under display options in the Property inspector.
    This should modify the Table shape in the diagram as follows:
    <Table name>
    <PK> PKName:Column1,Column2
    <UK>UKName:Column3
    <FK>FKname:Column1
    are you looking for the same?
    Thanks.

  • Primary key in detail block

    Dear Experts,
    I've a master detail form.
    I detail form there is no primary key. When it is executed the following error displayed :
    FRM-30100: Block must have at least one primary key item.
    Block: ASSETS_ISSUE_DTL
    Form: FORM_ASSETS_ISSUE_DTL
    What to do?

    I got it.
    Create a dummy text box item in detail block.
    Write rowid in column name.
    Set Primary key YES.
    Thanks.

  • Tabular form region and preserving state

    Hi all,
    I have a tabular form region (one of a few form regions) on my page... I'm trying to figure out how to preserve the other fields on the page (detail form), when tabular form buttons are clicked to add, update or delete rows.
    The page obviously branches back to itself, but if a user has inputted changes in other form items on the page, they are lost.
    I know it has something to do with how the item sources are derived... currently, they are tied to the database column, and the source is derived each and every time..
    If I set it so it checks session state first, and if not null, get it from there, it'll work for the above use case. However, it causes problems if the user leaves the page by clicking elsewhere (ie back to master list), and decides to edit a different row... the detail form will pull the content from session state, and not from the db, and display the wrong information...
    Hope this is clear enough... I appreciate your feedback
    Thanks
    Message was edited by:
    pl_sequel

    Thanks for the reply...
    I guess it is that simple... as long as I ensure that any link pointing to the detail form (ie edit, or view etc...) clears the page's cache, then I am guaranteed to have the database state and not the session state displayed...
    My detail form items should then derive their source always from session state if not null, otherwise get the source from the DB...
    This will ensure that when I branch back to the page when adding a row to my tabular form for instance, what was entered previously, would remain...
    Thanks for the tip...

Maybe you are looking for

  • Can't open mail as "dossiers de départ" is saturated

    Hi there, When I try to open mail, I get a window saying it is impossible to do so as my "dossier de départ" (sorry, it's a French system) are saturated. It encourages me to "delete non necessary documents" or "move them to another volume" before try

  • How to make InDesign CS5 documents lock to other users on network when open

    We have multiple users using InDesign CS5 across our network.  In InDesign CS4 when one person had a page open, it was locked to any other users, but in CS5 the pages are not locked, and this causes changes not to be saved.  We want them to lock, any

  • How to download icould on mac

    How do I download icloud to my Macbook?

  • OpsMgr's configuration may be out-of-date

    Hi I'm Receiving this error since a week: OpsMgr's configuration may be out-of-date for management group XXXXXX, and has requested updated configuration from the Configuration Service. The current(out-of-date) state cookie is "XXXXXXXXXXXXXXXXXXXXXXX

  • Stopping all animation upon clickTag

    Pasting the code here... I need to make sure that all animations stop upon click-through, but it adding a stop(); into the clickTag does not work. Any suggestions would be much appreciated... Thanks! package           import com.greensock.*;