CURSUS MS Access 2014

 

 

 

Orderformulier

In de vorige paragraaf hebben we de tabellen samengevoegd door middel van twee query's. Van deze query's gaan we nu een formulier maken. Dat formulier is gebaseerd op de in de vorige paragraaf gemaakte query's. Nadat we het formulier gemaakt hebben gaan we het verfraaien en gebruikersvriendelijker maken.

Voor het maken van een nieuw formulier kiezen we in het lint voor "Maken" formulieren, "Wizard formulier".

Je komt dan in het wizard formulier en gaat velden van de query's verplaatsen naar de geselecteerde velden.
kies eerst onder tabellen/querys voor Q_verkooporder_klant_medewerker.

Klik daarna op de dubbel pijl naar rechts en alle velden zullen naar rechts verplaatst worden.
Selecteer daarna onder tabellen/query's de Query: Q_verkoop_regel.

Verplaats hier alle velden behalve het ordernr (die komt al voor omdat die in de verkooptabel zit) naar rechts door steeds op de enkele pijl te klikken.

Klik dan op volgende, kies voor "formulier met subformulier".


Klik weer op volgende.
Kies voor "Als gegevensblad" en klik op volgende.

Verander de naam bij formulier in Verkooporder. Dit doe je omdat dat een logische naam is voor het formulier die je straks gaat gebruiken. De naam van het subformulier hoef je niet te veranderen, want een subformulier roep je nooit op zonder het hoofdformulier.

Klik dan op "Voltooien" en bekijk het formulier.

Voer daarna onderstaande waarden van de gele velden in, en kijk wat er gebeurt. Bedenk wel dat het medewerkernr, klantnr en productnr moeten bestaan. Het kan zijn dat je het bedrag niet ziet, maar dat moet je met de schuifbalk iets naar rechts gaan. Je kunt ook de breedte van de kolommen smaller maken.

Willen bovenstaande handelingen niet zo lukken, bekijk dan onderstaand filmpje eens, waarin het hele proces opgenomen is.


Het formulier zoals nu gemaakt is, is niet erg gebruikersvriendelijk. We kennen bijvoorbeeld de klantnummers en werknemersnummers niet uit ons hoofd. We zouden keuzelijsten willen zien zoals in onderstaand scherm.

We willen graag dat er totalen berekend worden van zowel het product als het orderbedrag.
En bovendien kan de lay-out ook wat gebruikersvriendelijker door bij elkaar horende velden ook bij elkaar te plaatsen. Al met al is er nog genoeg werk aan de winkel.
We zullen het stap voor stap aanpassen.

Keuzelijsten en lay-out aanpassen.

Een belangrijke knop in het aanpassen is de "Weergave" knop.

Door keuzes hier te maken is het formulier op drie manieren aan te passen.
In de "Formulierweergave" kun je gegevens muteren, en heel kleine aanpassingen doen, zoals kolombreedtes in tabellen aanpassen, of kolommen verplaatsen.
In de "Indelingsweergave" kun je iets meer, bijvoorbeeld de andere velden verplaatsen of verwijderen.
In de "Ontwerpweergave" kun je het meeste, nieuwe velden toevoegen, maar ook lay-out aanpassen.

Je zult merken dat een fout gauw gemaakt is. Maar vergelijkbaar met andere Microsoft pakketten kun je de fout weer herstellen door de "CTRL Z" toetsencombinatie (of in het menu de ongedaan knop ). Die heb je veelvuldig nodig.

Ga naar de "Ontwerpweergave". Kijk in onderstaande video hoe het aanpassen gaat en probeer dit zelf uit. Wil je eigenschappen veranderen van een element klik er dan rechts op.

We gaan nu de keuzelijst met invoervak voor de medewerker maken.
In onderstaande video wordt dit voorgedaan.

Of in stappen.

Klik op het besturingselementen " keuzelijst met invoervak". verplaats de je cursus naar beneden in de rechthoek waarin de gegevens van de medewerker moeten komen te staan. Je komt in onderstaand scherm terecht. Klik op volgende.

Kies de tabel medewerker, want daaruit moet je de gegevens halen en klik op volgende.

Verplaats alleen medenr en naam naar rechts en klik op volgende.

In de keuzelijst willen we de namen gesorteerd hebben op naam. Dit is makkelijker dan op medenr.

Zorg dat sleutelkolom verbergen aanstaat en klik weer op volgende.

Selecteer "De waarde opslaan in dit veld, en selecteer het veld Mednr. Nu wordt, nadat je een naam uit de keuzelijst hebt uitgezocht, het medewerkersnummer opgeslagen in het veld Mednr. Klik weer op volgende.

Vul het label Naam in. Deze label komt voor het keuzevak te staan. Klik daarna op voltooien.

Kies dan voor het "weergave" formulier en bekijk het resultaat.

Doe nu hetzelfde voor de klant. In onderstaande video zie je hoe je direct ook de lay-out aanpast. De keuzelijst invoervak maak je als volgt.

 

De volgende stap is de verkoop regel aanpassen.
Zorg dat je in de ontwerpweergave zit. Bekijk in de video hoe je dit ook qua lay-out doet.

Orderbedrag uitrekenen.

Om het orderbedrag uit te rekenen moeten we eerst een tussenstap maken. In het Q_verkooporderformulier laten we eerst het totaal uitrekenen. Een totaal uitrekenen kunnen we doen door in de formuliervoettekst een veld op te nemen, waarin het totaal berekend wordt. Daarvoor moeten we eerst de formulier voettekst breder slepen.

Nu komen er een serie stappen na elkaar. In onderstaande scherm zie je waar je wat kunt vinden.

1. Selecteer het "tekstvak" onder besturingselementen.
2. Plaats het tekstvak in de formuliervoettekst en selecteer het rechter vak waarin staat "niet afhankelijk".
3. Selecteer de knop eigenschapsvenster.
4. Kies in het eigenschapsvenster voor tabblad "Alle".
5. Vul achter Naam in "Totaal bedrag" i.p.v. "tekst 14 (of ander nummer)". Deze naam hebben we later nog nodig.
Vul achter besturingselementbron in "=som([bedrag])". Door deze formule zullen alle bedragen van de order die dan open staat bij elkaar opgeteld worden.
Kies dan voor de notatie Euro.

Sla nu het verkooporder formulier op. Dit kan door "CTRL S" te typen. Het opslaan is van belang voor de volgende stap omdat anders het net aangemaakte veld "Totaal bedrag" niet gevonden wordt.

Blijft nog een probleem over. De waarde van het "totaal bedrag" moet komen te staan in het orderbedrag in het verkoopformulier. Dit kunnen we doen door een verwijzing te maken. Dit gaat als volgt:

1. Klik op "Orderbedrag".
2. Klik op besturingselementbron.
3. Er komen 3 puntjes te staan. Klik hierop.

Je komt dan in het opbouwfunctie expressies. Hierin staat nog order bedrag. Verwijder dit. (selecteren en delete knop)

Klik vervolgens op het + teken voor "Verkooporder"
Selecteer dan Q_verkooporder_regel.
Zoek in de tweede kolom "Totaal bedrag" op. (Dit staat er alleen in als je in als je het formulier opgeslagen hebt). Staat het er niet in sla het formulier alsnog op). Selecteer "Totaal bedrag" (twee maal klikken mag ook, dan sla je de volgende twee stappen over).
In de derde kolom staat nog waarde. Zo niet selecteer dan daarin waarde.
Klik vervolgens op "Plakken" en de formule komt bovenin te staan.

Klik dan op Ok.

Bekijk het resultaat in het formulier.
Sluit daarna het formulier (wordt gevraagd om op te slaan, doe dit dan).

Er is nog een ding dat we kunnen aanpassen. Waarschijnlijk is het zo dat als je een order aanmaakt de datum ook de datum van die dag is. We kunnen ervoor zorgen dat dat ook automatisch gaat gebeuren.

Open hiervoor de "Verkooporder" tabel.

Selecteer het veld orderdat.
Vul onder in het scherm onder algemeen bij standaardwaarde de formule "=Date()" in.
Vanaf nu zal iedere keer bij het aanmaken van een nieuw record de datum van dat moment ingevuld worden.

Het formulier is nu klaar. Bekijk het in de formulierweergave. Sla het daarna op. Probeer een order in te voeren. Dit moet nu gaan.

Einde practicum 2