rare verschijnselen

Status
Niet open voor verdere reacties.

Zurrik

Gebruiker
Lid geworden
17 mrt 2006
Berichten
221
Kan iemand het volgende in mijn programma verklaren?

Hij moet gewoon ordernummer laten zien. ?
 

Bijlagen

Wijzig je code in de Bij Klikken gebeurtenis in:

Code:
Me.Ordernummer = Me![Keuzelijst0]

Voor de goede orde, da's de enige code die je nodig hebt.

FESTER
 
Probleem zit in mijn "grote" programma. Daarin voer ik een order in en af en toe herkent ie wel het orderID en af en toe niet. Zoals in het hierboven staande voorbeeld. Vandaar dit kleine voorbeeldje.
 
Je keuzelijst heeft als afhankelijke kolom ordernummer terwijl je in de code zoekt op [orderId].

Maak de listbox 2 kolom. Orderid in eerste kolom em breedte op 0 cm.

GG
 
Wat er fout ging:

Code:
Private Sub Keuzelijst0_Click()
'slordig je kan beter als recordset declareren (tijdens debuggen) tenzij je gaat verspreiden (Late Binding)
Dim rs As Object
    'Kan met een clone, maar hoeft niet
    Set rs = Me.Recordset.Clone
    'Je zoekt op OrderID  en niet op OrderNummer en..... 
    'je zet de keuzelijst niet tussen aanhalingstekens waardoor het als een getal wordt gezien
    '0008-006 is dan de som 8 - 6 = 2 en dan vond hij orderId 2
    rs.FindFirst "[OrderID] =" & Me![Keuzelijst0]
    'Dit kan niet voorkomen in je click event dus is overbodig.
    If Not rs.EOF Then Me.Bookmark = rs.Bookmark

    Me.Refresh
End Sub
Gecorrigeerd:
Code:
Private Sub Keuzelijst0_Click()

Dim Rs As DAO.Recordset
    Set Rs = Me.Recordset
    Rs.FindFirst "[Ordernummer] = '" & Me![Keuzelijst0] & "'"
    Me.Refresh
End Sub

Opmerking: Als je Rs.Nomatch had gecontroleerd had je in ieder geval al gevonden dat er soms niets gevonden werd.

EDIT: het is technisch gezien idd beter om de listbox 2 kolommen te geven en op OrderID te zoeken.
dit wordt belangrijk bij veel records omdat op getal zoeken veel sneller gaat dan op tekst. /EDIT
 
Laatst bewerkt:
Bedankt voor jullie reacties.

Ik heb nog wat vragen cq opmerkingen:

* Wat is Rs.Nomatch

* Ik zoek in mijn "grote" database op orderID, maar ik heb dezelfde problemen. Echt heel vreemd vind ik. Heb nu 30 ordernummers erin staan en nr 6,7,8,13,14,15,17,21,22,26,27,28 laten orderID 1 zien. De rest gewoon zichzelf. Ik weet zeker dat ik alles hetzelfde heb ingevoerd, dus ik snap er niks van.
 
In je listbox staan geen OrderID's maar Ordernummers.
Je kan geen orderID(1 tm 30) vinden door deze te vergelijken met "0018-006"
je moet of de gecorrigeerde code gebruiken, of in je listbox een kolom toevoegen met OrderID als bron en de breedt op 0 cm zetten.

.Nomatch geeft aan of er iets gevonden is met een .FindXXX zoals .Findfirst of .FindNext.
 
Helemaal gesloopt behalve wat ik nodig heb. Bij deze mijn probleem, misschien dat u er iets mee kan. Ik kom er niet uit, ook niet met uw code. Weet iemand het probleem?
 

Bijlagen

Je aanpak is niet helemaal jofel ;)
Vraag, wat probeer je eigenlijk te bereiken?
Wil je toevallig kunnen zoeken op ordernummer en zo van de geselekteerde order de ordergegevens inzien?

FESTER
 
Zie voorbeeldje.
Heb een nieuw formulier gemaakt, frmOrders.
Formulier is gebaseerd op een nieuwe query, qryOrders.

Kijk ff hoe eea is opgebouwd.

FESTER
 

Bijlagen

Werkt mooi, maar bij mij niet :(. Uw programma werkt wel, maar als ik dat bij mijn programma wil doen, doet ie het niet. pff, ik ga naar huis en ga het morgen nog eens proberen. Iedereen bedankt voor de hulp!!
 
Nah,

Foutje in je kopie poging .recordsetclone -> recordset
en dan doet hij het prima.
 

Bijlagen

Same. Mijn database slaat gewoon een aantal nummers over. Dus dat werkt ook niet? Ik snap er echt helemaal niks meer van.

@Fester: uw gedeelte probeer ik morgen weer.
 
ik heb nu iets "ontdekt".
Ik heb op mijn formulier ook organisatie staan. Dit moet ook aangepast worden aan het ordernummer. Nu is het zo dat ie deze ordernummers niet kan lezen als de organisatie een van de laatste drie ingevoerde is. Waar kan dat aan liggen? Ik heb nu 8 organisaties en bij de laatste 3 geeft ie geen goede weergave van mijn ordernummer.
 
Ik heb nu 8 organisaties en bij de laatste 3 geeft ie geen goede weergave van mijn ordernummer.

Heb je toevallig "onderweg" je tableen aangepast?
Begin eens opnieuw met je huidige versie met een schoon (leeg) bestand

FESTER
 
Als ik een nieuwe organisatie toevoeg pakt ie deze inderdaad niet. Waar kan dat aan liggen?
 
Zonder compleet zicht op je database, nee.
info(at)driesign(dot)nl
 
Ik vermoed dat je nog heel wat te doen hebt, en ga er vanuit dat je je database van scratch af opnieuw moet opbouwen... met name de relatie's

Het probleem in jouw formulier startpagina is na lang zoeken vrij eenvoudig
Doordat je een relatie legt over de tabellen OrganisatieId in de tabellen orders, organisatie en adres waarbij de Id in beidde tabellen aanwezig moet zijn zijn ordernummers niet aanwezig in de bron van je formulier zodra er
1 geen order is
2 geen adres is
3 geen organisatie is

terwijl je Qrykeuzelijst deze ordernummerwezen wel bevat b.v. ordernummer 7
als je in de ontwerpmode van je recordbron van je startpaginaformulier op de lijntjes klikt (relatie's) met je andere muisknop (ik heb ze zelf omgedraaid omdat ik linkshandig ben)
en kiest voor join eigenschappen aangeeft dat alle records uit ORGANISATIE wilt en alleen de gekoppelde records uit ORDERS of ADRES (keuze 2 bij beidde relatie's)
dan heeft je formulier tenminste alle ordernummers in zijn recordbron.

verder kan je dat veld Expr1 in de recordbron gerust wissen volgens mij want het doet niets. en nu........drank, drank heel veel drank!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan