Search dropdown menu not populating

13 views
Skip to first unread message

dros...@gmail.com

unread,
Oct 27, 2021, 11:18:00 AM10/27/21
to Lightning - 4D Web Applications
Graham,
Copying some code and forms from the starter db...

In a 4D v17 Windows app, bootstrap framework, can you think of a reason why the following list form and associated method don't result in the dropdown menu displaying the search list? The code that populates the Ltg_Donor_SearchFilter_at list executes in the method.

form:

<ltg-form class="panel-primary" method="Ltg_Donors_List" table="[Donors]" type="list">
    
    <ltg-form-head icon="fa-address-card-o" title="Donors">
    </ltg-form-head>
  
    <ltg-toolbar>
        <ltg-buttons>
            <ltg-button action="new" icon="fa-plus" form="Donors_Detail_boot" method="Ltg_Donors_Detail"/>
            <ltg-button action="delete" icon="fa-trash" selection="checked"/>
        </ltg-buttons>
        <ltg-buttons>
            <ltg-navigation/>
        </ltg-buttons>
        <ltg-buttons>
            <ltg-div class="input-group">
                <ltg-obj name=".Ltg_Donor_SearchField_t" list=".Ltg_Donor_SearchFilter_at"/>
                <ltg-span class="input-group-addon" style="width:0px;padding-left:0px;padding-right:0px;border:none;"></ltg-span>
                <ltg-obj name=".Ltg_Donor_SearchValue_t" onkeypress="return ltgSearchSubmit(event);" placeholder="#search"/>
                <ltg-span class="input-group-btn">
                    <ltg-button action="search" icon="fa-search"/>
                </ltg-span>
            </ltg-div>
        </ltg-buttons>
    </ltg-toolbar>
    
    etc etc.............................
</ltg-form>

method:

C_LONGINT($nError)

C_TEXT($txtAction)
C_TEXT($txtApplication)
C_TEXT($txtForm)
C_TEXT($txtLanguage)
C_TEXT($txtPath)

  // GET THE CURRENT APPLICATION TYPE (DESKTOP OR MOBILE)
$nError:=Ltg_Session_GetApplication (Ltg_Session_GetCurrent ;->$txtApplication)

If ($nError=0)
  // GET THE CURRENT USER LANGUAGE SETTING
Ltg_User_GetValue (Ltg_User_GetCurrent ;"language";->$txtLanguage)
  // GET THE CURRENT FORM NAME
$txtForm:=Ltg_Form_GetCurrent 
  // * SETUP THE PATH OF THE APPLICATION TYPE AND FORM FOR THE CURRENT USER FOR CLEAN USE OF Ltg_User_SetValue / Ltg_User_GetValue.
  // application.form/value
$txtPath:=$txtApplication+"."+$txtForm+"/"
  // PLEASE REVIEW USERS.XML TO SEE THE RESULTS.
  // DESKTOP SEARCH?
If ($txtApplication="desktop")
  // CREATE AN ARRAY OF SEARCH FILTERS...
  // NOTE: YOU CAN USE THE "NAME;VALUE" FORMAT FOR THE ACTUAL VALUE AND DISPLAY VALUE;
ARRAY TEXT(Ltg_Donor_SearchFilter_at;2)
Ltg_Donor_SearchFilter_at{1}:="name;name"
Ltg_Donor_SearchFilter_at{2}:="email;email"
  // SET THE FOCUS TO CONTACT NAME
Ltg_JS_Send ("ltgObjFocus('.Ltg_Donor_SearchValue_t')")
Else 
  // MOBILE SEARCH
Ltg_Donor_SearchField_t:="name"
End if 
  // DEFAULT FILTER?
If (Ltg_Donor_SearchField_t="")
Ltg_Donor_SearchField_t:="name"
End if 
  // GET THE CURRENT "ACTION" REQUEST
$txtAction:=Ltg_Action_GetCurrent 
  // TAB OR INDEX ACTION
If (($txtAction="tab") | ($txtAction="index"))
  // RESTORE SAVED FILTER & SEARCH VALUES
Ltg_User_GetValue (Ltg_User_GetCurrent ;$txtPath+"contactsFilter";->Ltg_Donor_SearchField_t)
Ltg_User_GetValue (Ltg_User_GetCurrent ;$txtPath+"contactsSearch";->Ltg_Donor_SearchValue_t)
End if 
  // ACTIVE SEARCH?
If (Ltg_Donor_SearchValue_t#"")
  // CONTAINS...
Case of 
: (Ltg_Donor_SearchField_t="name")
QUERY([Donors];[Donors]Last_Name="@"+Ltg_Donor_SearchValue_t+"@")
: (Ltg_Donor_SearchField_t="email")
QUERY([Donors];[Donors]Email="@"+Ltg_Donor_SearchValue_t+"@")
End case 
Else 
ALL RECORDS([Donors])
End if 
  // SEARCH ACTION
If ($txtAction="search")
  // SAVE FILTER & SEARCH VALUES
Ltg_User_SetValue (Ltg_User_GetCurrent ;$txtPath+"contactsFilter";Ltg_Donor_SearchField_t)
Ltg_User_SetValue (Ltg_User_GetCurrent ;$txtPath+"contactsSearch";Ltg_Donor_SearchValue_t)
End if 
  // SORT THE RECORDS ACCORDING TO THE CURRENT USER/FORM SETTINGS
Ltg_Sort (->[Donors])
End if 

 

dros...@gmail.com

unread,
Oct 27, 2021, 11:23:31 AM10/27/21
to Lightning - 4D Web Applications
Forgot to mention: this is Lightning v4.n

Graham Langley

unread,
Nov 1, 2021, 5:23:59 AM11/1/21
to Lightning - 4D Web Applications
Hello David,

I've copied your above code into the Starter demo (using [Documents] table) and it works for me, as attached?
dropdown.png
dropdown.zip

dros...@gmail.com

unread,
Nov 2, 2021, 9:05:30 AM11/2/21
to Lightning - 4D Web Applications
It's a head-scratcher, but I did find that if I changed the choice list in the form from an array to a list in the structure Lists, the problem went away. Let's not devote any more time to it. Thanks.
Reply all
Reply to author
Forward
0 new messages