Validation of item in a multirecord block(Forms 6i,EBS 11.5.10.2)

Hi all,
I developed a form in which some of the blocks are multirecord blocks.One of the multirecord block have 3 items in it.
The user may enter data like this
FROM TO RATE
0 1000 10
1000 2000 9
2000 3000 8.5
My requirement is the FROM field value of the 2nd record should not be less than the TO field value of 1st record. The FROM field value of the 3rd record should not be less than TO field value of the 2nd record and so on...
i.e the form should not allow the user to enter data like this
FROM TO RATE
0 1000 10
900 2000 9
800 3000 8.5
Can anyone suggest me how to do this?
Thanks & Regards

Hi all,
I developed a form in which some of the blocks are multirecord blocks.One of the multirecord block have 3 items in it.
The user may enter data like this
FROM TO RATE
0 1000 10
1000 2000 9
2000 3000 8.5
My requirement is the FROM field value of the 2nd record should not be less than the TO field value of 1st record. The FROM field value of the 3rd record should not be less than TO field value of the 2nd record and so on...
i.e the form should not allow the user to enter data like this
FROM TO RATE
0 1000 10
900 2000 9
800 3000 8.5
Can anyone suggest me how to do this?
Thanks & Regards

Similar Messages

  • WHEN-VALIDATE-ITEM results at a block/form

    Hello friends at www.oracle.com ,
    as we know, WHEN-VALIDATE-ITEM is a trigger used for item validation. But if I use WHEN-VALIDATE-ITEM at a block, or even at a form (since Oracle Forms editor allows me to add a WHEN-VALIDATE-ITEM trigger at a block/form), what's the effect of it? How will WHEN-VALIDATE-ITEM behave in such situation?
    Thanks, and best regards,
    Franklin Gongalves Jr.

    From forms documentation (ever considered to read it?):
    A trigger must be attached to a specific object in the form, either an item, a block, or the form itself. The object to which a trigger is attached defines the scope of the trigger, and so helps Form Builder decide which trigger to fire when the corresponding event occurs. Not all triggers are relevant to all objects. For example a When-Button-Pressed trigger would not be attached to a display item.
    That means, a when-validate-item-trigger at block level fires for ALL items of the block,
    except those ones who have an own when-validate-item-trigger at item level that has the
    property "Execution hierarchy" set to "override".

  • Enable/disable an item in a multirecord block

    hello to all
    How is possible Enable/disable an item in a multirecord block?
    set_item_property change all instances of an item in a multi-record block
    SET_ITEM_INSTANCE_PROPERTY only affects the display
    thanks

    Hi,
    You cannot set the Enabled property in a multi-record block, instead you can change the INSERT_ALLOWED, UPDATE_ALLOWED properties. So that the user can't change the value in the item.
    Regards,
    Manu.
    If my response or the response of another was helpful, please mark it accordingly

  • Validation of Item Values before saving the form

    Hi,
    I have requirement in Oracle Forms, we give header information as per the requirement and the lines info of the specific header. In lines whe have two feild as type and amount. If the type is 'E' then we need to sum up the amount value as credit and if type is 'F' we need to sum up of those feild values as Debit and before saving the form we need to check the sum of Credit and Debit is equal or not if equal then we should allow to save the form else it should not. We can have multiple lines under single header..Can any body help on this..Its very emergency..
    Thanks,
    Maggi.

    Hi,
    In Customer-exit ILOM0001 read table IMPT_BUF[] from sap stack. It contains all enteries of measuring points.
    Use below mentioned code in above exits for your reference.
    FIELD-SYMBOLS : <fs_impt> type ANY TABLE.
    data : tab_impt type TABLE OF impt.
    ASSIGN ('(SAPLIMR0)IMPT_BUF[]') to <fs_impt>.
    if sy-subrc is INITIAL.
      tab_impt = <fs_impt>.
    endif.
    table TAB_IMPT is filled wilth all entries of measuring point while creating and changing functional location.
    Thanks,
    Vijay

  • Have a multirecord block with several unbound items, filled by calling just

    In oracle forms I have a form with a multi-record block, with several unbound items.
    One of these unbound items is a formula based item.
    The formula for this item fills the others unbound items.
    A procedure with several out parameters is called.
    E.g.
    :cmr.id (holding the unique id of a database record)
    :cmr.unbound_dummy, with formula f_fill_blk_unbound_items(:blk.id)
    :cmr.unbound_adres
    :cmr.unbound_contactperson
    function f_fill_blk_unbound_items(p_id in customers.id%type)
    return number
    is
    l_rc number;
    begin
    customer_pck.get_adres_and_contactperson
    (p_id => p_id --IN
    ,p_adres => :cmr.unbound_adres --OUT
    ,p_contactperson => :cmr.unbound_contactperson --OUT
    return(0);
    end;
    QUESTION: how can I do something similar in APEX; have a multirecord block with several unbound items, filled by calling just one procedure with several out parameters ?

    Thank you for your reply.
    I can write database functions as wrappers, one for each out parameter, and use these in a select.
    But:
    - having one procedure with several out parameters was done for performance reasons.
    - I want to leave my database as is, and just replace the client.
    Easy as this is using Oracle developer forms, I cannot find out how to do this in any of the APEX examples/documentation.

  • Problem with multirecord block

    Hi every one
    I have multirecord block in form conten 2 textitem A & B
    and i have checkbox .
    i need when i check the checkbox set instance item A Enable and item B Disable
    and vice versa
    the problem is when i check the checkbox all instance of item enable or disable
    but i want that instance what I foucs on .

    You can't disable/enable an individual instance of a multi-record item.
    What you CAN do is use SET_ITEM_INSTANCE_PROPERTY to set INSERT_ALLOWED, UPDATE_ALLOWED and VISUAL_ATTRIBUTE. To disable, set up a visual attribute that mimics a disabled field, and set INSERT_ALLOWED and UPDATE_ALLOWED to false. If you don't want them to be able to click or tab the cursor into the field create a pre-text-item trigger on the items that checks the value of the checkbox and raises form_trigger_failure if this field should be disabled.

  • Tooltip for Multirecord Block, Please help

    Hi All,
    I am using Formbuilder 6.0.5.32.0
    I am facing two problems with Tooltips, on a multirecord block.
    First of all, the tooltip is displayed only for the topmost
    record in the multirecord block.
    Secondly i want to change the tooltip of the item,based on the
    data displayed .
    Here i tried to use "SET_ITEM_INSTANCE_PROPERTY" in When new
    record instance trigger.But i am getting an error message "
    Unhandled exception ORA 06502"
    Can anybody give me a help.
    Thanks in advance,
    Regards
    Jiji Nair.
    null

    Hi Asbj0rn,
    Thanks for the solution. But iam still facing a problem. If i
    use a stacked canvas, the maximum width of the stackcanvas is
    limited to the maximum width of the widow, to which the canvas
    belongs to. But in the case of a tooltip, there is no such
    restrictions .
    Any suggestions. Thanks
    Jiji
    Asbj0rn Floden (guest) wrote:
    : As you've already found out, the tooltip mechanism in Forms
    : doesn't solve your problem.
    : In order to display a tooltip reflecting the contents of the
    : record on which the mouse cursor is positioned, I believe
    you'd
    : have to make your own kind of tooltip. By using a small
    stacked
    : canvas designed as a regular tooltip with a simple display
    item
    : (with the appropriate background and foreground colors for a
    : tooltip), you can display any information you want at any
    : position you like. Use the WHEN-MOUSE-ENTER and WHEN-MOUSE-
    : LEAVE triggers to display/hide your tooltip. Inside the
    : trigger, you retrieve the information you want to display in
    the
    : tooltip (hint: use the :SYSTEM.MOUSE_RECORD variable), and
    : raise the stacked tooltip canvas at your desired position
    (based
    : on the position of the item or the mouse cursor). You can
    also
    : use a timer to hide the tooltip after a specific periode of
    time.
    : Hope this help you solving your problem.
    : NOTE: I haven't implemented this solution myself.
    : Sincerely, Asbj0rn
    : Jijikumar U Nair (guest) wrote:
    : : Hi All,
    : : I am using Formbuilder 6.0.5.32.0
    : : I am facing two problems with Tooltips, on a multirecord
    block.
    : : First of all, the tooltip is displayed only for the
    topmost
    : : record in the multirecord block.
    : : Secondly i want to change the tooltip of the item,based on
    the
    : : data displayed .
    : : Here i tried to use "SET_ITEM_INSTANCE_PROPERTY" in When new
    : : record instance trigger.But i am getting an error message "
    : : Unhandled exception ORA 06502"
    : : Can anybody give me a help.
    : : Thanks in advance,
    : : Regards
    : : Jiji Nair.
    null

  • I can not put the data of a field(LONG RAW) consulted into a item of a data block

    I want to query a field that is LONG RAW(it's a image) and put the data into a item of a data block (in Forms Builder), when i write ":BLOCK.FOTO:=vfoto" i recieve this errors: "bad bind variable ....". How can i put the data of field of my DB and put the data in a item of a data block(in Forms Builder)?.
    I can store a image in a table of my DB, but i want to query a image stored in my DB and put it into anothers table, all this on FORMS BUILDER.

    You have to base the image item on a base table and use EXECUTE_QUERY on that block. You can't do a direct select in PL/SQL into the item

  • How to do to appear records in a text item when I  run my  form?

    In a form I have a block with BASE TABLE=OPTIUNI_COD.
    In this block I have a text item named DENUMIRE.When I run my form the text item is empty and I use F7 , F8 to have some records in the text item.
    But I want to appear records in this text item when I run my form without use F7,F8.
    How can I do this?
    Please help me!Thank you!

    In a When-New-Form-Instance trigger you can use this:
    Go_Block('your_block');
    EXECUTE_QUERY;

  • Display Item not showing Text when form is opened in Forms 6i

    Hi,
    I am using Oracle Forms 6i & I have taken DisplayItem control on a canvas and want to show some text over that e.g., "Your Name". For that I set 'Initial Value' property of that control in Property Palette to "Your Name". But I am not getting any such text message when I run the form nor it is coming at form design time. Can anyone please let me know where I am missing and how to display text in forms using DisplayItem control?
    Can you also suggest from where to learn these basic things about Oracle Forms 6i?
    Thanks in advance.

    bootstrap escribió:
    Can I initialize this object using Property Palette? If not why so?
    can you please tell how to use go_block & where to call this method?
    Yes, just as you did with the initial value property, but you have to "initialize" the record in that block. Navigating in runtime to the block is a way to achieve that, so you have to put the "focus" in the block with built-in GO_BLOCK . For example, in the W-N-F-I trigger.
    Another way to put the focus there, as indrabudiantho sugested, is dragging the block to the topmost place in the list of block in design time. Thus, when you enter your form in runtime, the focus will go to the first navigable item in the first block as defined at design time.
    About the resource docs, I think there was a "Oracle forms developer guide" bundled in paperback with a quite old version of the product which wasn't too bad. Not the "forms builder reference" , which is more or less the online forms help, but the guide. Also, there must be commercial books about forms & reports.

  • Multirecord block on a tab page leaves empty space

    Hi,
    When I generate a tabpage with a multirecord block from Designer10G there is always a 'big' gap of space on the right side of the multirecord block.
    Is there a preference which i overlooked to make this space smaller, because i have changed all possible layout preferences without any result.
    regards, richard

    You can change stacked canvas margins and block margins to zero, but I still have big space on the right side of the form, this space can hold 3 or 4 character if it is used.

  • Loop through all items in all data blocks?

    Is there a way to loop through every item in every data block and set the property of a format mask?

    I do not know what error it is, only that an on-error trigger fires.
    I found out one thing I was definitely doing wrong, using nextblock, nextitem properties at the wrong level.
    DECLARE
         v_firstblock VARCHAR2(50);
         v_currentblock VARCHAR2(50);
         v_firstitem VARCHAR2(50);
         v_currentitem VARCHAR2(50);
         v_counter NUMBER :=0;
         v_counter2 NUMBER :=0;
    begin
       v_firstblock := get_form_property(:System.Current_Form,first_block);
       v_currentblock:= get_block_property(v_firstblock,nextblock);
       MESSAGE(v_firstblock||v_currentblock);
         LOOP
              v_counter := v_counter +1;
              IF (v_counter >10) THEN
                   exit;
              END IF;
              IF (v_currentblock = v_firstblock) THEN
                             exit;
           ELSE
                   v_firstitem :=  get_block_property(v_firstblock,first_item);
                        IF (lower(GET_ITEM_PROPERTY(v_firstitem,format_mask))=lower('mm-dd-yyyy')) THEN
                                       SET_ITEM_PROPERTY(v_firstitem,format_mask,'DD-MON-YYYY');
                        END IF;
                   v_currentitem :=  get_block_property(v_firstblock,first_item);
                   v_currentblock:= get_block_property(v_currentblock,nextblock);
                   GO_BLOCK(v_currentblock);
                        LOOP
                             v_counter2 := v_counter2 +1;
                             IF (v_counter2>15) THEN
                                  exit;
                             END IF;
                             v_currentitem:= get_item_property(v_currentitem,nextitem);
                             MESSAGE(v_counter||v_firstblock||v_currentblock||v_firstitem||v_currentitem||v_counter2);
                             IF (v_currentitem <> v_firstitem) THEN
                                  IF (lower(GET_ITEM_PROPERTY(v_currentitem,format_mask))=lower('mm-dd-yyyy')) THEN
                                       SET_ITEM_PROPERTY(v_currentitem,format_mask,'DD-MON-YYYY');
                                  END IF;
                             ELSE
                                  exit;
                             END IF;
                        END LOOP;
               END IF;
      END LOOP;
         end;Here is updated new code. I am currently trying to debug it, it has crashed my form on the server when tied to a button press.
    EDIT: So far I have found that it infinitely loops through the first 3 items and a null item in the first block. Still looking into why...
    EDIT: Some code changes to temporarily stop infinite loop and make v_currentblock actually change. Still loops through same 3 items in the first data block even though v_currentblock changes.
    Edited by: 878576 on Oct 21, 2011 12:46 PM

  • Showing 10 records at a time in a multirecord block

    Hello,
    I have a requirement to show 10 records at a time,consider a table in which
    there are 100 records which is associated to a multirecord block,in order to have a web look and feel I need to show first 10(1 to 10) record on load,when the user presses the button "Next 10 records", I need to replace the first 10 records with new set of 10 records(11 - 20),
    Please note that no of records to be displayed at a time will be 10 and our requirement is avoid scroll bar.
    Any suggestions as to how I need to accomplish the task above.
    Thanks and Regards
    Mohan

    You don't need a special button for this because the user can already navigate using the cursor keys and page up/down keys.
    For cursor keys use the key-up, key-down, key-nxtrec and key-prvrec triggers.
    For page up/down use the key-scrup and key-scrdown triggers.
    I suppose the menu option "Query > Fetch Next Set" (key-nxtset) should operate the same as page down.
    An example of the key-scrdown trigger is thisdeclare
         numrecs integer := get_block_property('EMP',records_displayed);
         toprec integer := get_block_property('EMP',top_record);
         thisrec integer := :system.trigger_record;
    begin
         go_record(toprec + (2 * numrecs) - 1);
         go_record(thisrec + numrecs);
    end;This will advance by as many records are in the block and leave the cursor positioned on the same record relative to the top of the block. Eg if there are 10 rows in the block and you're on the first set then the top record will be 1 and you want to make the new top record 11. So you need to call go_record(20), which makes that the bottom record and 11 the top one.
    You'll need to work out how the form should behave when the number of records in the block is not exactly divisible by the number of records in the data because forms won't allow blank records to pad out the bottom of the block and records_displayed isn't a settable property at runtime. So if there are 10 rows in the block and 103 rows of data then the penultimate page will show records 91-100 and the last page will show records 94-103. Should scrolling back up show record 91 at the top, or 84?
    For the key-down/key-nxtrec trigger you'll probably want something like thisdeclare
         numrecs integer := get_block_property('EMP',records_displayed);
    begin
         if :system.last_record != 'TRUE' then
              if mod(:system.cursor_record,numrecs) = 0 then
                   -- last record in this set
                   go_record(:system.cursor_record + numrecs);
                   go_record(:system.cursor_record - (numrecs - 1));
              else
                   next_record;
              end if;
         end if;
    end;If you're at the bottom of one set it will show the next set and go to the top record, otherwise it will just go to the next record. But again, this breaks down when the number of rows in the block and in the data don't divide up evenly.
    I hope this is enough to get you started.

  • Multirecord block & when-button pressed

    Forms10g
    In a multirecord block there's a button displayed for each row.
    Problem is:
    Focus doesn't change to the row where button is pressed before executing the "w-b-p" trigger logic and therefore correct context information is not passed !
    I've tried to get form to synchronize:
    synchronize;
    go_record(:system.trigger_record); and also
    go_record(:system.cursor_record);
    but system variables are not being set before executing "w-b-p trigger" ?
    HAs anyone got a workaround for this ?
    Thanks
    Pete

    Set the Mouse Navigate property to TRUE/YES on the button

  • Jump to one defined record in multirecord block

    Hello.
    I have a multirecord block.
    ex:
    rec, day, text
    rec1, day1, text1
    rec2, day1, text2
    rec3, day2, text1
    rec4, day2, text2
    rec5, day2, text3
    rec6, day3, text1
    User can select any record in that block. But when he presses one button, form should first jump to first record of that day, then execute everything else in that trigger.
    If the user is in record:
    rec5, day2, text3
    form should jump to record:
    rec3, day2, text1
    If the user is in record:
    rec2, day1, text2
    form should jump to record:
    rec1, day1, text1.
    And so on.
    Is there a way to do that?
    Thanks.

    Another technique ...
    Declare
         v_Day Table.Field%Type;
    Begin
         v_Day := :Rec.Day;
         Previous_Record;
         Loop
              if :Rec.Day <> v_Day then
                   Next_Record;
                   Exit;
              else
                   Previous_Record;
                   if :System.Cursor_Record = 1 then
                        Exit;
                   End if;
              End if;
         End Loop;
    End;
    Best regards
    R E H A N M I R Z A

Maybe you are looking for

  • Unable to Save Interactive Form

    Hi Experts, I am unable to save any UI elements (viz. Table, Text Fields, etc) on an Interactive Form UI element created using NWDS. Whenever I create new UI elements on the Interactive form and try clicking on Save Metadata Button of the NWDS the Bu

  • Difference between accounting document of PGI and billing

    Hi, I want to know the basic differences between the accounting document created after PGI and accounting document generated after billing?

  • Flash 8 won't play on G5 Mac

    I created some Flash movies on my G5. I cannot view the swfs in any browser. 'Old' files [2 months old] I can still view [created on my former hard drive which failed recently]. Anyone have any idea what is going on with this? Thanks in advance. [I a

  • ALI 6.5 | CSS folders confusion| Detailed question

    Hi All, i am using ALI 6.5 portal env deployed on WL10.0. I am pretty much new to this ALI Portal. I am very much confused with the css folders and files residing under PT_HOME folder. Can anyone please explain about these folders and files. Please f

  • Make Album List view default for playlists

    I have my library broken up with playlists for each artist and I like to view the contents of each playlist in Album List view. iTunes remembers when you switch to this view, but after upgrading to iTunes 10 all playlists are back to list view, and i