[access] veld locken in formulier

Pagina: 1
Acties:

  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
Afbeeldingslocatie: http://stefkes.net/ronald/images/probleemadc.jpg

ik heb ongeveer dit formulier

coman en artikelnummer zitten allebij in de tabel artikelen
coman is de leverancier
artikelnummer is het artikelnummer van een product

coman + artikelnummer is samen 1 sleutel

als eerste rechtsbovenin kies je een " coman "
als je dan op artikelnummer klikt, draait er een query achter
die alleen artikelnummers laat zien van de ingevulde coman

het probleem echter is alleen, dat als ik een selectie maak, de coman
automatisch reset naar 1 :(

als je de rechtsbovenste coman selectie invoert, verandert de coman ook daadwerkelijk, maar dit wordt ongedaan gemaakt wanneer ik een artikelnummer kies, en wordt de comannr automatisch weer 1
ik zoek eigenlijk een functie, om een getal te " locken " in een formulier

ik heb al comannr.locked geprobeerd, maar dat doet helemaal niks :?
comannr.enabled = false disabled hem wel, maar al selecteer ik ergens
anders een comannr, wordt hij toch verandert.

weet iemand of en hoe dit mogelijk is?

[ Voor 12% gewijzigd door BitByter op 23-09-2003 15:42 ]


Verwijderd

wat voor query draai je op de achtergrond om de juiste artikels te laten zien? en belangrijker nog, waar ken je die recordsource dan uiteindelijk aan toe..

ik hoop dat je die query als rowsource voor die artikelnr1 invult en niet als source voor het complete formulier (daar lijkt het wel op, aangezien die coman dinges veranderd als je een sleutel van die andere combobox klikt)

  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
SELECT artikelen.artikelnr, artikelen.comannr
FROM artikelen
WHERE (((artikelen.comannr)=[forms]![_voorraad formulier]![Keuzelijst met invoervak49]));

de waarde haalt hij inderdaad uit het formulier
dus, zoeken waar gelijk aan aantal wat ingegeven is in het formulier

deze query hangt aan een rijbron, en wel query42

Afbeeldingslocatie: http://stefkes.net/ronald/images/voorraad.jpg
zo ziet de artikelen tabel er ongeveer uit
comannr en artikelen staan dus in 1 tabel

[ Voor 28% gewijzigd door BitByter op 23-09-2003 16:07 ]


Verwijderd

wat bedoel je hiermee?
deze query hangt aan een rijbron, en wel query42
wat ik bedoelde is dat je dus alleen de combobox van het artikelnr. ververst nadat er een waarde voor coman is gekozen en niet het hele formulier (dus je moet de rijbron van die artikelnr combobox aanpassen niet die van het formulier) Dan zou dit gewoon moeten kunnen

  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
hij hangt ook aan de rijbron van de combobox

Afbeeldingslocatie: http://stefkes.net/ronald/images/keuzevak.jpg
het is alleen een " zoek combobox" die gaat zoeken in naar records, moet dat anders?

Verwijderd

pfff... query42 :? wat is dat nou weer voor benaming.. maar goed...

je moet dus na het kiezen van een waarde die query42 vervangen voor jouw query (dus gewoon de complete SQL erin zetten.. dus in vbcode

me.Keuzelijst_met_invoervak51.rowsource = "select blalalalala"
me.Keuzelijstblala.requery

  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
de code werkt :)

het lukt me wel wat jij zegt
elke keer al kies ik een comannr, dan kan ik daarna een artikelnummer selecteren

het is alleen de bedoeling, dat hij dan ook daadwerkelijk naar het desbetreffende record gaat in het formulier als ik ze allebij gekozen heb

[ Voor 4% gewijzigd door BitByter op 23-09-2003 16:42 ]


Verwijderd

dan moet je daarna weer de recordbron van het formulier aanpassen met in de where clause die twee waarden en dan het form refreshen...

  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
:?

heb het nou een beetje aan de praat gekregen
als ik de bovenste coman selecteer, verandert automatisch de rijbron voor artikelnummer
als ik coman selecteer zie ik in het linkse vakje ook daadwerkelijk dat hij verspringt, en dat hij naar 7 gaat bijvoorbeeld

als ik nou echter het artikelnummer verander naar 1, verandert coman automatisch weer naar 1, en dat is nou net het probleem

"where clause" waar vind ik dat?

*edit, ik denk dat ik het al weet
de ene verwijst naar de andere en andersom
ze moeten allebij een afterupdate event hebben die naar elkaar verwijst?

*edit 2, nee dus, alleen de recordbron verandert dan


Set rs = Me.Recordset.Clone
rs.FindFirst "[artikelnr] = " & Str(Nz(Me![Keuzelijst met invoervak59], 0))
If Not rs.EOF Then Me.Bookmark = rs.Bookmark

hier zit het probleem, ff vogelen :)

[ Voor 42% gewijzigd door BitByter op 23-09-2003 17:31 ]


  • BitByter
  • Registratie: Juli 1999
  • Laatst online: 13-08 07:38

BitByter

Prutst dit forum

Topicstarter
ik heb niet stilgezeten ;)

ik heb wat andere dingen probeerd, maar niks schijnt te lukken :(

Dim strSQL As String

strSQL = " SELECT artikelen.comannr, artikelen.artikelnr FROM artikelen " & _
" WHERE (((artikelen.comannr)=[forms]![_voorraad formulier]![Keuzelijst met invoervak57]) AND ((artikelen.artikelnr)=[forms]![_voorraad formulier]![Keuzelijst met invoervak59]))"

Debug.Print strSQL

CurrentDb.OpenRecordset strSQL

dit lijkt in mijn optiek wel te kloppen,

maar ik krijg elke keer deze foutmelding

Afbeeldingslocatie: http://stefkes.net/ronald/images/probleem23.jpg

:?

kan iemand mij nog een klein duwtje in de rug geven? ;)
Pagina: 1