Validate from list behavior ? help needed

Hi,
I have an item whith a lov attached to and the proerty of the lov is validate from list = yes.
But when a create a record and type the begining of the words eg Jean then when i do key-list-val or F9 the lov returns me all the rows and.
And when i press enter in the field then the lov shows with Jean% and show me only the names beginning with Jean.
Why does it only happen when i press enter and not when doing F9?
Should it not be the same behavior ?
Thanks in advance.
PS: it is quite urgent !
Jean-Yves

Hi ,
When you enters a wrong value into a "Validate from List" Item and hit <ENTER> then validation to make sure that the entered value exists within the List and if it is not there , then the forms engine filters the Shows values as the value entered into the Item as helping you to select from the List cause you have entered ambigious Choise and in case no matched entries it display all the list , but in case you display the LOV normally this means you are trying to select a value then no Pre Serach happened unless you specify (Filter Before Display = true) on the LOV properties ,
Best Regards,

Similar Messages

  • Validate from list, do not open lov if value already in lov

    Hi,
    I have an item and want to validate value from Lov because do not need a code in w-v-i trigger. i set property validate from list for the item to yes but when executing the lov opened even if i entered a value which already exists in lov. i thought that validate from list to yes triggers the list only if value do not exist in the list. i do not want list to open if value already exists in the list. Can someone help me with this? Thanks for your ideas.
    Edited by: Tabit7 on 2011-04-08 23:24
    Edited by: Tabit7 on 2011-04-08 23:24

    It only opens the Lov when the value not not unique, e.g. you have two equal entries in the lov. Also be aware that the validation is done against the first visible item in the lov.

  • Validate from list problem

    I have a form in which i have a non-database item.I attached a LOV to it and have set the validate from list to yes..
    but in enter-query mode the list is not getting shown when the value is typed(ie the lov is not shown when the user enters wrong value.validation is not hapenning)
    i have even written key-listval.inside which i have given list_values still the LOV is not shown
    Any suggestions to get the LOV???

    Hi,
    You can try to use the when validate-item trigger, which executes when the cursor navigates out of an item, this happens when user press the tab key to navigate to the next item or when clicking in a different item.
    Validate from LOV works without any additional code when the form is in normal mode.
    When the form is in enter-query mode this won't work, try the key-next-item trigger instead.
    check out the forms online help section:
    "About defining triggers to fire in Enter Query mode" for more info.
    Regards,
    Hugo

  • Forms 6i: Dynamically set Validate from List property

    Hi,
    Is there any API to set the VALIDATE FROM LIST property for an item with an LOV in Forms 6i?
    Thanks

    you can use set_item_property to do that dynamically. Look in the help for the values of the built-in

  • Validate from List Property

    i created a form and used validate from list property to TRUE for a particluar item which have LOV.But when table hav too many rows (here i hav 18000 rows) getting too slow....Is this problem is common...? If any one hve any idea about this Please help me...
    Edited by: pms on Sep 11, 2011 10:31 PM

    But when table hav too many rows (here i hav 18000 rows) getting too slow....Is this problem is common...? Yes, this is common when you have a lot of rows returned by your LOV query. In situations like this, it is best to try and reduce the size of the data returned by your LOV. One way of doing this is to enable the Filter Before Display property on the LOV. When enabled, it causes Forms to display a query criteria dialog before displaying the LOV. This too can cause slowness because this option could cause a full table scan to occur. Perhaps a better option would be to make your LOV dependent on other limiting values. For example, if your Form showed a list of all employees in a company you could make your user select limiting data like a department number to help reduce the number of employee records returned by your LOV.
    Craig...

  • LOV validate from list

    Hello there,
    What factors can be performed for don't validating from list, when having a text item conected by a botton which calls the LOV?
    My problem is that I conect properly the text item to the LOV and the LOV to the Record group. At the text item's properties palette, i put YES when asking if validate from list. However, in an enter-query mode, when i insert 'AAA' into the text item, and change the focus, the LOV doesn't appear.
    Why?
    Thanks to everyone who helps me.
    Sorry for my english, i am spanish.

    Those other forms use a different form of querying. They probably never go into Enter Query mode, and instead simply query with a where clause something like:
        WHERE column_1 = :control_block.item_1 and...
    All the forms I write use that format. The user is never allowed to do an Enter Query. They simply enter the control block values (which may or may not have an LOV attached), and then press the Query button.

  • Validate from list

    Hello everybody !!
    I've a Lov attached to text-item with validate from list property "yes". I fill the text-item who has the lov attached and lov works very well , but when I create another record the trigger "when-validate-record" fires and the lov validate once again for the same record. How can I avoid this ?
    Hugs
    Rômulo

    You probably set the name of the country in the POST-QUERY trigger. If so, set the status of the trigger record to QUERY_STATUS after doing this.
    Regards,
    Torsten

  • Validate from list pops up the LOV

    Hi, everybody.
    I have a text item attached to a LOV and the validate from list property is set to YES.
    Despite this, i just write into the text item the text '01' .
    Anytime i use go_block('my_block') the LOV pops up and asks me to choose again the value for my text item from the LOV .
    Is this because my text item is connected to the first column of the LOV and
    the first column of the LOV has more than one values of '01' in the list, more than one record that has the first column '01'.
    In case this is the reason, how can i solve this to avoid poping up of the LOV.

    Ok.But all i want to do, is not to show my LOV.
    If i set validate from list=NO, my LOV doesn't show.
    I still want to validate from list but only in the cases when i put a value that is not in the LOV.
    in this case i put a value that actually is in the LOV, so the LOV should not show.
    I don't understand why LOV shows when the value i put in the text item is equal to one of the values of the LOV, only that the LOV contains this value more than one time.

  • Validate from list (Oracle Forms)

    Hi all,
    Does anybody know, how to simulate "Validate from List" functionality from the oracle forms with JDeveloper 10.1.3.
    The case is for example (Empl, Dept), I want to create a table for the empl showing the empl info plus department name and allow the user assign the empl to a given department using only the name and not the department id.
    Many thanks in advance.
    Edited by: user5772728 on Feb 20, 2009 8:56 AM

    Hi,
    there is no list validator like this I am aware of.
    Frank

  • Linked lists problem -- help needed

    Hello again. I've got yet another problem in my C++ course that stems from my use of a Mac instead of Windows. I'm going to install Parallels so I can get Windows on my MacBook and install Visual Studio this week so that I don't have to deal with these discrepancies anymore, but in the meanwhile, I'm having a problem here that I don't know how to resolve. To be clear, I've spent a lot of time trying to work this out myself, so I'm not just throwing this up here to have you guys do the work for me -- I'm really stuck here, and am coming here as a last resort, so I'll be very, very appreciative for any help that anyone can offer.
    In my C++ course, we are on a chapter about linked lists, and the professor has given us a template to make the linked lists work. It comes in three files (a header, a source file, and a main source file). I've made some adjustments -- the original files the professor provided brought up 36 errors and a handful of warnings, but I altered the #include directives and got it down to 2 errors. The problematic part of the code (the part that contains the two errors) is in one of the function definitions, print_list(), in the source file. That function definition is shown below, and I've marked the two statements that have the errors using comments that say exactly what the errors say in my Xcode window under those two statements. If you want to see the entire template, I've pasted the full code from all three files at the bottom of this post, but for now, here is the function definition (in the source file) that contains the part of the code with the errors:
    void LinkedList::printlist( )
    // good for only a few nodes in a list
    if(isEmpty() == 1)
    cout << "No nodes to display" << endl;
    return;
    for(CURSOR = FRONT_ptr; CURSOR; CURSOR = CURSOR-> link)
    { cout << setw(8) << CURSOR->name; } cout << endl; // error: 'setw' was not declared in this scope
    for(CURSOR = FRONT_ptr; CURSOR; CURSOR = CURSOR-> link)
    { cout << setw(8) << CURSOR->test_grade; } cout << endl; // error: 'setw' was not declared in this scope
    As you can see, the problem is with the two statements that contain the 'setw' function. Can anyone help me figure out how to get this template working and get by these two errors? I don't know enough about linked lists to know what I can and can't mess with here to get it working. The professor recommended that I try using 'printf' instead of 'cout' for those two statements, but I don't know how to achieve the same effect (how to do whatever 'setw' does) using 'printf'. Can anyone please help me get this template working? Thank you very, very much.
    For reference, here is the full code from all three files that make up the template:
    linkedlist.h (header file):
    #ifndef LINKED_LINKED_H
    #define LINKED_LINKED_H
    struct NODE
    string name;
    int test_grade;
    NODE * link;
    class Linked_List
    public:
    Linked_List();
    void insert(string n, int score);
    void remove(string target);
    void print_list();
    private:
    bool isEmpty();
    NODE *FRONT_ptr, *REAR_ptr, *CURSOR, *INSERT, *PREVIOUS_ptr;
    #endif
    linkedlist.cpp (source file):
    #include <iostream>
    using namespace std;
    #include "linkedlist.h"
    LinkedList::LinkedList()
    FRONT_ptr = NULL;
    REAR_ptr = NULL;
    PREVIOUS_ptr = NULL;
    CURSOR = NULL;
    void Linked_List::insert(string n, int score)
    INSERT = new NODE;
    if(isEmpty()) // first item in List
    // collect information into INSERT NODE
    INSERT-> name = n;
    // must use strcpy to assign strings
    INSERT -> test_grade = score;
    INSERT -> link = NULL;
    FRONT_ptr = INSERT;
    REAR_ptr = INSERT;
    else // else what?? When would this happen??
    // collect information into INSERT NODE
    INSERT-> name = n; // must use strcpy to assign strings
    INSERT -> test_grade = score;
    REAR_ptr -> link = INSERT;
    INSERT -> link = NULL;
    REAR_ptr = INSERT;
    void LinkedList::printlist( )
    // good for only a few nodes in a list
    if(isEmpty() == 1)
    cout << "No nodes to display" << endl;
    return;
    for(CURSOR = FRONT_ptr; CURSOR; CURSOR = CURSOR-> link)
    { cout << setw(8) << CURSOR->name; } cout << endl; // error: 'setw' was not declared in this scope
    for(CURSOR = FRONT_ptr; CURSOR; CURSOR = CURSOR-> link)
    { cout << setw(8) << CURSOR->test_grade; } cout << endl; // error: 'setw' was not declared in this scope
    void Linked_List::remove(string target)
    // 3 possible places that NODES can be removed from in the Linked List
    // FRONT
    // MIDDLE
    // REAR
    // all 3 condition need to be covered and coded
    // use Trasversing to find TARGET
    PREVIOUS_ptr = NULL;
    for(CURSOR = FRONT_ptr; CURSOR; CURSOR = CURSOR-> link)
    if(CURSOR->name == target) // match
    { break; } // function will still continue, CURSOR will
    // mark NODE to be removed
    else
    { PREVIOUS_ptr = CURSOR; } // PREVIOUS marks what NODE CURSOR is marking
    // JUST before CURSOR is about to move to the next NODE
    if(CURSOR == NULL) // never found a match
    { return; }
    else
    // check each condition FRONT, REAR and MIDDLE
    if(CURSOR == FRONT_ptr)
    // TARGET node was the first in the list
    FRONT_ptr = FRONT_ptr -> link; // moves FRONT_ptr up one node
    delete CURSOR; // deletes and return NODE back to free memory!!!
    return;
    }// why no need for PREVIOUS??
    else if (CURSOR == REAR_ptr) // TARGET node was the last in the list
    { // will need PREVIOUS for this one
    PREVIOUS_ptr -> link = NULL; // since this node will become the last in the list
    REAR_ptr = PREVIOUS_ptr; // = REAR_ptr; // moves REAR_ptr into correct position in list
    delete CURSOR; // deletes and return NODE back to free memory!!!
    return;
    else // TARGET node was the middle of the list
    { // will need PREVIOUS also for this one
    PREVIOUS_ptr -> link = CURSOR-> link; // moves PREV nodes' link to point where CURSOR nodes' points
    delete CURSOR; // deletes and return NODE back to free memory!!!
    return;
    bool Linked_List::isEmpty()
    if ((FRONT_ptr == NULL) && (REAR_ptr == NULL))
    { return true; }
    else
    { return false;}
    llmain.cpp (main source file):
    #include <iostream>
    #include <string>
    #include <iomanip>
    using namespace std;
    #include "linkedlist.h"
    int main()
    Linked_List one;
    one.insert("Angela", 261);
    one.insert("Jack", 20);
    one.insert("Peter", 120);
    one.insert("Chris", 270);
    one.print_list();
    one.remove("Jack");
    one.print_list();
    one.remove("Angela");
    one.print_list();
    one.remove("Chris");
    one.print_list();
    return 0;

    setw is the equivalent of the field width value in printf. In your code, the printf version would look like:
    printf("%8s", CURSOR->name.c_str());
    I much prefer printf over any I/O formatting in C++. See the printf man page for more information. I recommend using Bwana: http://www.bruji.com/bwana/
    I do think it is a good idea to verify your code on the platform it will be tested against. That means Visual Studio. However, you don't want to use Visual Studio. As you have found out, it gets people into too many bad habits. Linux is much the same way. Both development platforms are designed to build anything, whether or not it is syntactically correct. Both GNU and Microsoft have a long history of changing the language standards just to suit themselves.
    I don't know what level you are in the class, but I have a few tips for you. I'll phrase them so that they answers are a good exercise for the student
    * Look into const-correctness.
    * You don't need to compare a bool to 1. You can just use bool. Plus, any integer or pointer type has an implicit cast to bool.
    * Don't reuse your CURSOR pointer as a temporary index. Create a new pointer inside the for loop.
    * In C++, a struct is the same thing as a class, with all of its members public by default. You can create constructors and member functions in a struct.
    * Optimize your function arguments. Pass by const reference instead of by copy. You will need to use pass by copy at a later date, but don't worry about that now.
    * Look into initializer lists.
    * In C++ NULL and 0 are always the same.
    * Return the result of an expression instead of true or false. Technically this isn't officially Return Value Optimization, but it is a good habit.
    Of course, get it running first, then make it fancy.

  • Sales Order - Source List Issue ( Help needed)

    Hi All...
    The user is trying to create a Sales order , but could not do it for a particular Customer and we are getting a error * Source not included in list despite Source List Requirement" and then we are getting an error Incorrect Index Structure for Table XMVERF_PO/.
    I tried Checking Source List everything is fine , I dont know what to do ??? Any suggestions from
    SD & MM side( I think config shd be fine , Any Master Data Checks ) needs to be taken care.??
    The Material is a MTO and once we save it in the Sales Order it creates an PReq automatically.
    Please let me know ASAP...
    Thanks
    Balaji

    Hi Charlie...
    Thanks for the reply, As u told i didnt check the me05 , do u think Me05 really plays a role ,
    because i try testing in QA without Me05 it worked. But in PRD it didnt.
    I didnt try now because all the users had left since i dont have that kind of access in PRD..
    ANy other suggestion are welcome.....
    Thanking u for the support....
    Balaji

  • Validate from List property of dynamically attached LOV

    Dear Oracle Gurus,
    I have multi record block , the fields are Argument_name,Argument_Code ,argument_lov
    displaying two fields . data is populated at run time
    user has to input for the argument_value according to the argument_name displayed
    it may look like
    Argument_name Argument_value
    Date of Join User has to input
    Branch office user has to select from a LOV
    Dept User has to select from a LOV
    the LOV's underlying Select statement will fetch data from a table based on other field Argument_Code
    The LOV is attached dynamically for each row based on a value for the field argument_lov value will be Y or N
    IF value for a argumet is Y , the LOV is attached with SET_ITEM_PROPERTY in the When NEW RECORD INSTANCE Trigger
    when user moves to the argument Date of join there will be no lov and the user has to type out the data
    whereas for the argument Branch Office , user can select from a LOV
    now the user has to press the F9 key to invoke the Lov and then select
    whereas we wanted in this way.. that the user can type the first character and the value automatically get selected
    if the user types wrong data then the LOV to be displayed
    For this we used the SET_ITEM_PROPERTY with VALIDATE_FROM_LIST, Property_true in the same trigger.
    we have record validation trigger at the block level .
    But it didnt work out exactly when ever the user moves from a record having LOV after selecting. the other field which is not having a LOV displays a lov with values belonging to another field and asks to select from the list . For example the date of join field displays the lov for dept and asks to input
    please guide me in this regard
    with warm regards
    ssr

    But when table hav too many rows (here i hav 18000 rows) getting too slow....Is this problem is common...? Yes, this is common when you have a lot of rows returned by your LOV query. In situations like this, it is best to try and reduce the size of the data returned by your LOV. One way of doing this is to enable the Filter Before Display property on the LOV. When enabled, it causes Forms to display a query criteria dialog before displaying the LOV. This too can cause slowness because this option could cause a full table scan to occur. Perhaps a better option would be to make your LOV dependent on other limiting values. For example, if your Form showed a list of all employees in a company you could make your user select limiting data like a department number to help reduce the number of employee records returned by your LOV.
    Craig...

  • Change validate from list property at runtime

    I am added below code in when-validate-trigger. But it is not working. Please do the needful.
    IF :PARAMETER.PARTY = 'N' THEN
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_TRUE);
    ELSE
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_FALSE);
    END IF;
    I am assigning :PARAMETER.PARTY := 'N' in when-new-form instance.
    I am changing :PARAMETER.PARTY valure when one button usrer press.

    902434 wrote:
    I am added below code in when-validate-trigger. But it is not working. Please do the needful.
    IF :PARAMETER.PARTY = 'N' THEN
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_TRUE);
    ELSE
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_FALSE);
    END IF;
    I am assigning :PARAMETER.PARTY := 'N' in when-new-form instance.
    I am changing :PARAMETER.PARTY valure when one button usrer press.test u'r parameter value inside the condition, how it is behave then u will understand what to do ...like
    IF :PARAMETER.PARTY = 'N' THEN
    message(:PARAMETER.PARTY);
    message(:PARAMETER.PARTY);
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_TRUE);
    ELSE
    message(:PARAMETER.PARTY);
    message(:PARAMETER.PARTY);
         set_ITEM_property('B1.GJM_PRTY_CODE',lov_name,'LV_INS');
         SET_ITEM_PROPERTY('B1.GJM_PRTY_CODE',VALIDATE_FROM_LIST,PROPERTY_FALSE);
    END IF;hope this will help you

  • Alv list diplay help needed

    Hi all,
    Is it possible to dispaly a list which is is selected from another alv list as a daiolog box.I mean i need to display all corresponding items which is selcted in a dailog box or as a dailog box. is it possible.
    Regards,
    Lisa.

    hi,
    check this example...
    REPORT  ZTEST_ALV_CHECK                         .
    TYPE-POOLS: SLIS.
    DATA: X_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
          IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
          L_LAYOUT type slis_layout_alv.
    DATA: BEGIN OF ITAB OCCURS 0,
          VBELN LIKE VBAK-VBELN,
          POSNR LIKE VBAP-POSNR,
          CHK(1),
         END OF ITAB.
    SELECT VBELN
           POSNR
           FROM VBAP
           UP TO 20 ROWS
           INTO TABLE ITAB.
    X_FIELDCAT-FIELDNAME = 'CHK'.
    X_FIELDCAT-TABNAME = 'ITAB'.
    X_FIELDCAT-COL_POS = 1.
    X_FIELDCAT-INPUT = 'X'.
    X_FIELDCAT-EDIT = 'X'.
    X_FIELDCAT-CHECKBOX = 'X'.
    APPEND X_FIELDCAT TO IT_FIELDCAT.
    CLEAR X_FIELDCAT.
    X_FIELDCAT-FIELDNAME = 'VBELN'.
    X_FIELDCAT-SELTEXT_L = 'VBELN'.
    X_FIELDCAT-INPUT = 'X'.
    X_FIELDCAT-EDIT = 'X'.
    X_FIELDCAT-TABNAME = 'ITAB'.
    X_FIELDCAT-COL_POS = 2.
    APPEND X_FIELDCAT TO IT_FIELDCAT.
    CLEAR X_FIELDCAT.
    X_FIELDCAT-FIELDNAME = 'POSNR'.
    X_FIELDCAT-SELTEXT_L = 'POSNR'.
    X_FIELDCAT-TABNAME = 'ITAB'.
    X_FIELDCAT-COL_POS = 3.
    APPEND X_FIELDCAT TO IT_FIELDCAT.
    CLEAR X_FIELDCAT.
    L_LAYOUT-window_titlebar = 'Popup window'.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
        I_CALLBACK_PROGRAM       = SY-REPID
        IS_LAYOUT                = L_LAYOUT
        I_CALLBACK_PF_STATUS_SET = 'STATUS'
        I_CALLBACK_USER_COMMAND  = 'USER_COMMAND'
        IT_FIELDCAT              = IT_FIELDCAT
        I_SCREEN_START_COLUMN    = 10
        I_SCREEN_START_LINE      = 1
        I_SCREEN_END_COLUMN      = 50
        I_SCREEN_END_LINE        = 20
      TABLES
        T_OUTTAB                 = ITAB
      EXCEPTIONS
        PROGRAM_ERROR            = 1
        OTHERS                   = 2.
    IF SY-SUBRC <> 0.
      MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    *&      Form  STATUS
    *       text
    *      -->P_EXTAB    text
    FORM STATUS USING P_EXTAB TYPE SLIS_T_EXTAB.
    *- Pf status
      SET PF-STATUS 'STATUS'.
    ENDFORM.                 " STATUS
    *&      Form  USER_COMMAND
    *       text
    *      -->R_UCOMM      text
    *      -->RS_SELFIELD  text
    FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM
                                   RS_SELFIELD TYPE SLIS_SELFIELD.
    ENDFORM.                    "USER_COMMAND
    Regards
    Vijay

  • Labview programming servo turn from 0 - 180 HELP NEEDED

    i need help on labview progreamming to work with MYDAQ
    i am trying to make a micro sevro turn from 0 deg to 180 deg using only labview kindly help out i am new to labview thanks

    You've posted to the wrong board and it's a duplicate ofhttp://forums.ni.com/t5/LabVIEW/Motorized-Horizontal-Shades-using-myDAQ/m-p/3109480
    Not only did you post in the wrong place and create a duplicate, you haven't provided any more information than you originally did and didn't answer any of the questions there. Why post and then ignore the responses?

Maybe you are looking for