[Access 2010] Een tabel, relaties meer tabellen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • naarden 4ever
  • Registratie: Juni 2010
  • Laatst online: 11-09 11:50
Ik heb een probleem met Access 2010, ik weet niet of dit heel bekend is onder de tweakers, hopen dan maar...

Het zit zo; eerst heb ik de boekhouding gedaan via Excel. Dat was echt een hel, en nu wil ik het via Access proberen. Excel was mijn grote probleem dat je alles handmatig in meerdere tabellen moest invoeren en het ID moest opschrijven om in een ander blad terug te vinden... Afijn, het werkte niet heel prettig.

Nu probeer ik de database over te zetten naar Access, handmatig omdat ik ook hier en daar iets wil veranderen. Nu heb ik alle primaire sleutels neergezet (zijn deze echt nodig? ze lijken me overbodig omdat je ook relaties tussen niet-primaire sleutels kunt leggen...) En probeer ik relaties te maken. Ik heb nu 1 tabel, klantendatabase, welke een klantnummer van een klant heeft. Nu heb ik (om het simpel te zeggen) nog twee tabellen met het reparaties en de computers. nu hebben reparaties en computers ook hun eigen ID. Nu heb ik in de tabellen reparaties en computersdus zowel het ID van de reparatie/computer, maar ook het klantennummer. Want ik wil dat ik een klant kan openklappen en meteen al zijn reparaties en computers kan zien.

Nu wil ik dus klant ID uit de tabel klantgegevens binden aan zowel klant ID in de reparaties als aan klant ID in de tabel computers. Het probleem is niet het neerzetten van de relaties, maar het uiteindelijk werken. Want als ik dus beide bind aan klant ID, krijg ik alleen bij het uitklappen de reparaties te zien, en niet de computers.

Wie kan mij helpen? Wat doe ik fout?

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Iets zegt me dat het niet kostenefficiënt is om zelf een boekhoudprogramma/relatiebeheerprogramma te schrijven. ;)

Gaat deze vraag over een rapport, een form of een datamodel? Access kan wel meerdere zaken in een overzicht tonen met subformulieren bijvoorbeeld, of door met een union te zorgen dat data uit twee verschillenden tabellen in een overzicht komt (door soortgelijke kolommen te gebruiken). Wat screenshots zouden misschien helpen om je probleem uit te leggen.

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • naarden 4ever
  • Registratie: Juni 2010
  • Laatst online: 11-09 11:50
pedorus schreef op vrijdag 04 november 2011 @ 13:59:
Iets zegt me dat het niet kostenefficiënt is om zelf een boekhoudprogramma/relatiebeheerprogramma te schrijven. ;)

Gaat deze vraag over een rapport, een form of een datamodel? Access kan wel meerdere zaken in een overzicht tonen met subformulieren bijvoorbeeld, of door met een union te zorgen dat data uit twee verschillenden tabellen in een overzicht komt (door soortgelijke kolommen te gebruiken). Wat screenshots zouden misschien helpen om je probleem uit te leggen.
Ga ik voor zorgen. En het zal best dat het niet kostenefficient is, maar aangezien het nog geen officieel bedrijf is en we van plan zijn niet boven de 500 euro in de maand uit te komen, lijkt me dat weggegooid geld. En ik wil het ook eens proberen (je bent een tweaker of je bent het niet)

Acties:
  • 0 Henk 'm!

  • Marko_J
  • Registratie: Maart 2010
  • Laatst online: 15-03-2024
Wat klap je precies uit? Ik gok dat je op tabelniveau bedoelt? Dat je vanuit elke rij onderliggende records kunt bekijken?

Je kan hier formulieren voor maken, die kan je inrichten zoals je wil.

Acties:
  • 0 Henk 'm!

  • naarden 4ever
  • Registratie: Juni 2010
  • Laatst online: 11-09 11:50
Zo, een fictief bestand gemaakt met mijn probleem:

Hier zijn de relaties:
de relaties

Ik heb niet alle klantnummers primaire sleutels gemaakt omdat dat niet kan. Dan krijg ik de volgende melding:
De melding

...En ik heb geen idee wat ze daarmee willen zeggen.
Dan komt, als ik een klant wil uitklappen, het volgende menu op:
Het opkomende menu

...Dus ik kies maar computers. Vervolgens hoop ik dan dat wanneer ik een klant openklap, ik zijn reparatie(nummer)s netjes, samen met de computers in een rijtje krijg waardoor ik snel overzicht heb hierop. Helaas...
waar is reparaties?

Waar is reparaties nou?

Hoe kan ik beide tabelletjes weegeven als ik een klant uitklap? Het zijn alleen maar tabellen, geen query's.

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Bij mijn weten kun je maar maximaal 1 subdatasheet hebben per plusje, dus dan moet je een echt formulier maken met 2 subforms. Sowieso zullen 'echte' databaseexperts altijd 0 subdatasheets hebben omdat dit een functie gericht is op beginners (zoek er maar op voor wat religieuze argumenten). :p

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

Verwijderd

naarden 4ever schreef op dinsdag 08 november 2011 @ 17:49:

Ik heb niet alle klantnummers primaire sleutels gemaakt omdat dat niet kan. Dan krijg ik de volgende melding:

...En ik heb geen idee wat ze daarmee willen zeggen.
Dat wil zeggen dat je in één van je tabellen hebt geprobeerd om duplicaten in te voeren in het sleutelveld, bijvoorbeeld twee keer hetzelfde klantnummer in de klantentabel. Of: je hebt al duplicaten in één van je tabellen zitten, en probeert het betreffende veld nu als unieke sleutel aan te wijzen. Dat gaat ook niet lukken.

In tabellen moeten records altijd uniek te identificeren zijn. In de regel doe je dat door één veld als sleutelveld (primary key) aan te wijzen. Daarin voer je unieke waarden in. Je kunt er ook voor kiezen om Access dat te laten doen door de specificatie van het veld op Autonumber in te stellen. Dan hoef je je überhaupt geen zorgen te maken over dubbele records, omdat Access het dan op de achtergrond voor je regelt.
Hoe kan ik beide tabelletjes weegeven als ik een klant uitklap? Het zijn alleen maar tabellen, geen query's.
Zoals pedorus al aangeeft kun je in dit geval beter met formulieren werken. Maak één formulier op de tabel met klanten, één formulier op de tabel met computers en één formulier op de tabel met reparaties. Die laatste twee voeg je vervolgens als subformulier toe aan je klantenformulier (want dat is je hoofdformulier). Dat doe je in ontwerpweergave heel eenvoudig door vanuit je navigatiescherm de subformulieren op je hoofdformulier te slepen. Access is dan zelfs zo slim om al de relatie tussen de primary key van je klantentabel en de foreign keys van je andere twee tabellen te leggen, zodat je alleen de computers en reparaties van de getoonde klant te zien krijgt.

Succes!
Pagina: 1