Link to home
Start Free TrialLog in
Avatar of jack niekerk
jack niekerkFlag for Netherlands

asked on

USING MULTIPLE ADO RECORD SETS ON MAINFORM

Have 1 form, on form textblocks for DriverId,name,street, etc.. for this data adorecord set,
second adrecordset contains table with licenseplate numbers belonging to a DriverId,
then a third adorecordset contains table with list off accidentreports belonging to DriverId.
What I trying to figure out:
In DriverId txtbox e.g. looking for JACK-01, start typing in J,A,C,K  etc. how to let datagrid
at same moment scroll while typing letter J/A/C/K etc to postition in grid on screen.
So if more JACKS exist they show on order etc.
Then when I pick e.g. JACK-01, how to make call (in record JACK-01  I have key for both accidentreport and licenseplate)  how to make call to second recordset with key and same
for third.
Regards Jack
ASKER CERTIFIED SOLUTION
Avatar of arif_eqbal
arif_eqbal

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of jack niekerk

ASKER

Ok based on your info I did this.
Only one problem left ,  the records start at  AB-001  untill ZZZ-9999
in file 30000 records,  so when I start typing e.g.   NIC-123 grid scrolls
ok to first found but if I make type error like NIX- and do backspace
grid is not scrolling  backwards because it passed that row already
How to make it scrolling backwards  specialy if you would go like back to N
or even back to nothing and want to start with e.g. BA  etc.
Ok clicking op adocontrol <<  would solve but thats not sofisticated.
Regards Jack


Private Sub TxtCustomerSearch_Change()
Dim Count As Integer
Dim LastRow As Boolean
On Error GoTo ErrHandle:
    Count = 0
    Do Until LastRow
        Customgrid.Row = Count
        Customgrid.Col = 1
        If UCase(Mid(Customgrid.Text, 1, Len(TxtCustomerSearch.Text))) = UCase(TxtCustomerSearch.Text) Then
            DisplayFields
            GoTo endSub
            End If
       Count = Count + 1
    Loop
    Exit Sub
   
endSub:
   Count = 0
   Do Until LastRow
       dtgrdLicense.Row = Count
       dtgrdLicense.Col = 1
       If UCase(Mid(dtgrdLicense.Text, 1, Len(txtCustomerId))) = UCase(txtCustomerId) Then
         Exit Sub
        End If
        Count = Count + 1
    Loop
ErrHandle:
End Sub
I forget about ADO,  I wrote (yes, its more work) a APX module with Vaccess and a. will work, b.  MUCH faster.
Thanks anyway