Access formulier textbox waarde in twee tabellen invullen.

Status
Niet open voor verdere reacties.

Pagadder

Gebruiker
Lid geworden
3 jun 2020
Berichten
158
Ik gebruik een formulier om een tabel te vullen, tot daar geen probleem.
In sommige gevallen moeten sommige artikels (in afwachting van)worden geblokkeerd voor verscheping en gedeblokkeerd na controle.
De geblokkeerde artikels zou ik in een andere tabel willen zetten (en verwijderen na controle)
De naam van de tabel is Geblokkeerd en de naam van het tabel veld (en textbox in het formulier) is Artikel
Ik loop echer vast.
Iemand een idee.
 
Ik snap je procedure niet. Wat ben je precies aan het doen? Sowieso lijkt mij het idee om daar een aparte tabel voor te gebruiken een beetje onzinnig. Zeker op de manier waarop jij het wil doen.
 
Ieder idee is welkom.
Quality control wilt artikels on hold kunnen zetten. artikenummer en artikelnaam. Daar willen ze een overzicht van hebben welke artikels on hold staan.(listbox,rapport,andere??)
Ik sta open voor alles.
 
Dat is m.i. een kwestie van een extra Ja/Nee veld in de tabel ([OnHold] o.i.d.) dat je dan aan- of uitzet voor de artikelen die tijdelijk niet gebruikt mogen worden. In de keuzelijsten waarin de beschikbare artikelen gekozen mogen worden (nu dus alles) filter je dan op artikelen waar het vinkje aan- of uit staat. Een beetje afhankelijk van hoe je dat veld wilt gebruiken.
 
Een ja/Nee veld toevoegen is geen probleem. Is er een mogelijkheid dat bij het openen van het formulier van de bestellingen er een tweede listbox wordt gevuld met de gefilterde on hold artikels?
Zo ja hoe doe ik dat het beste?
Alvast bedankt voor het meedenken.:thumb:
 
Ook weer een oplossing die je niet goed hebt doordacht. Dan kun je beter een knop erbij zetten (een selectievakje kan ook) waarin je de ene keuzelijst filtert op ofwel alle waarden, ofwel de aanwezige ofwel degene die On Hold zijn.
 
klopt,ondertussen ook wat aan het nadenken geweest over filteren. Ik ga er morgen mee aan de slag. Ik hou je op de hoogte.
 
De situatie is nu als volgt:
ik heb een tabel met een ja/nee veld om producten on hold te zetten (veldnaam is On hold)
Ik heb een formulier waar ik via een checkbox een product on hold kan zetten. (checkboxnaam is On_hold)
In het formulier heb ik ook een listbox (listboxnaam is LB_00)
Nu wil ik via een tweede checkbox (checkboxnaam is geblokkeerd) als ik die aanklik alleen de on holdproducten verschijnen, hoe pak ik dit aan?
Een paar zaken geprobeerd via gebeurtenis maar ik geraak geen meter verder.
Graag advies.
 
Ik weet niet wat je al geprobeerd hebt, dus het zou heel goed kunnen dat je mijn voorstel ook al vergeefs uitgeprobeerd hebt. Het is altijd handig te vermelden wat je probeerde en wat er mis ging.

Waar het volgens mij op neer komt is dat je de rijbron van de listbox aanpast als de waarde van de checkbox "is geblokkeerd" verandert. Met andere woorden, je maakt een gebeurtenis "na bijwerken" voor die checkbox waarin je iets zet als:

Code:
Private Sub is_geblokkeerd_AfterUpdate()

If Me.is_geblokkeerd Then
    Me.LB_00.RowSource = "SELECT ID, Naam FROM tblProduct WHERE [On hold]=True"
Else
    Me.LB_00.RowSource = "SELECT ID, Naam FROM tblProduct"
End If
    
Me.LB_00.Requery


End Sub
 
xps350 blijft de AfterUpdate gebruiken. Vind ik niet slim. Dus dit is handiger:

Code:
Private Sub Geblokkeerd_Click()
    With Me.LB_00
        .RowSource = "SELECT ID, Naam FROM tblProduct WHERE [On hold]=" & Me.Geblokkeerd.Value
         .Requery
    End With
End Sub
 
@xps350, hartelijk dank voor het meedenken.:thumb:
@AccessGuru,dit werkt perfect waarvoor dank.:thumb:
Een volgende vraag.
Het item on hold wordt aangegeven in het formulier verbonden met bestellingen, de waarde van de checkboxbox moet echter in de tabel Producten worden aangegeven. Hoe doe ik dit?
 
Het is mij niet helemaal duidelijk hoe blokkeren in z'n werk gaat. Blokkeer je producten (dus ongeacht in welke bestelling) of blokkeer je producten in een bestelling (een bestelregel).
 
Sorry mijn fout, per bestelregel,er wordt één artikel besteld via het bestel formulier,als dit artikel nog niet mag geleverd worden, moet dus in de tabel producten het artikel
op on hold kunnen gezet worden.
 
Laatst bewerkt:
Als On_hold een productkenmerk is, hoort het gegeven dus thuis in de productentabel. Je bewerkt het via het formulier waarmee je de producten onderhoudt.

Waar de andere checkbox komt is afhankelijk van wat je daar precies mee wilt. Eerder schreef je dat je een overzicht wilt kunnen maken van alle geblokkeerde producten. Dat kan eenvoudig door een query te maken die alle geblokkeerde producten selecteert. Daar heb geen extra checkbox of listbox voor nodig.
 
Ik snap je niet helemaal. Velden zet je in de tabellen waar ze thuis horen. Als een artikel in zijn geheel op Hold gezet moet worden, dan doe je dat in de tabel Produkten. Als je het op Hold zetten per bestelling wilt doen, dan doe je dat in de tabel Bestellingen (preciezer: BestelRegels, op het betreffende artikel). In het eerste geval kun je dat uiteraard doen vanuit je formulier Produkten, want dan zet je bij dat artikel het vinkje aan. Wil je dat bij een Bestelling doen, dan blijft het artikel dus beschikbaar voor andere bestellingen. De check waar je het in je eerste bericht over had, lijkt mij betrekking te hebben over de tweede situatie, waarin je de status per bestelling anders kan hebben. Dat maakt de check dus wat ingewikkelder. Maar niet onmogelijk.

Vanuit de eerste situatie geredeneerd (artikel in zijn geheel on hold of niet) kun je dat op twee plekken instellen. De makkelijkste natuurlijk het formulier Produkten. Want dan zet je het vinkje aan of uit. Maar vanuit Bestellingen kan het ook, door een knop te maken die m.b.v. een recordset query het vinkje van het betreffende artikel in de tabel Produkten om zet en de keuzelijst ververst. Aangezien je de keuzelijst filtert, zul je bij een volgende bestelling het artikel dan niet meer kunnen kiezen, want het staat op Hold. Maar in de huidige bestelling heb je hem al gekozen....
De vraag is dus, vanuit de procedure beredeneerd, dan wel op welk moment weet je dat een artikel op Hold gezet moet worden? Zodra je begint met de bestelling, mag je er vanuit gaan dat de keuzelijst actueel is. Oftwel: alleen artikelen die besteld mogen worden omdat ze niet op Hold staan. Dus érgens in dat proces krijg je een seintje dat een artikel niet geleverd kan worden? Ik snap de werkwijze niet helemaal. Of doet iemand anders die administratie, en kan er dus parallel een bestelling worden gemaakt, en de status van een artikel worden gewijzigd?
 
Ik zet de vraag voorlopig op opgelost. Ik ga eerst eens samen zitten met de betrokken personen.
Hartelijk dank voor het meedenken.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan