[ms access]dropdown bedrijf kiezen, contact. pers. erbij

Pagina: 1
Acties:

  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 19-08 16:11

ReseTTim

Chocolate addicted

Topicstarter
ik ben een dbase aan het bouwen. in die dbase heb ik 3 tabellen

* orders
* leveranciers
* contactpersoon

nu heb ik dus zo dat je meerdere contact personen kan hebben per leverancier. omdat je natuurlijk per afd.

nu heb ik in het order formulier een dropdown dat een leverancier kan kiezen waar je de order kan plaatsen.
het probleem is nu dat je bij de dropdown van contact persoon nogsteeds een lijst krijgt met alle contact personen die er zijn ingevuld.
mijn vraag is dus nu hoe krijg ik het zo dat je alleen de contact personen kan zien van dat bedrijf of 1 contact persoon uit het bedrijf die er als eerste staat ingevoegd bij de leverancier.

heeft iemand een idee hoe ik dit probleem kan oplossen?

Mijn profiel - Te koop: Overzicht van spullen..


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
ReseTTim schreef op 13 maart 2004 @ 18:20:
heeft iemand een idee hoe ik dit probleem kan oplossen?
gaat het om access formulieren of asp[.NET] :?

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 19-08 16:11

ReseTTim

Chocolate addicted

Topicstarter
access formulieren. de gehele dbase blijft in access en zal niet worden gemaakt voor asp. anders had ik gekozen voor sql met php.

Mijn profiel - Te koop: Overzicht van spullen..


  • dominion99
  • Registratie: December 2001
  • Laatst online: 13-08-2025
Je moet gewoon de contactpersonen selecteren per leverancier doormiddel van een SQL query:

code:
1
select * from contactpersoon where leveranciersid.contactpersoon = dropdown_leverancier.selected.value


Code natuurlijk aan te passen aan namen van tabellen en dropdown.

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 25-08 14:38

OZ-Gump

terug van weggeweest

Zoiets als dominion99 zegt, maar dan anders. Een leveranciersid.contactpersoon...? :P

Even in het simpel: je hebt een tabel leveranciers, en een tabel contcatpersonen. Ik mag hopen dat je per contactpersoon bijhoudt van welke leverancier deze is. Zo Elke contactpersoon heeft waarschijnlijk een verwijzing naar de ID van de leverancier. Wanneer een leverancier gekozen wordt, is de ID bekend. Je kunt dan enkel de contactpersonen laten zien welke in het veld leveranciersid een verwijzing hebben naar de geselecteerd leverancier. En klaar!

My personal website


  • dominion99
  • Registratie: December 2001
  • Laatst online: 13-08-2025
leveranciersid.contactpersoon...? :P
Oeps zat al weer te denken aan een join, maar dat was niet echt nodig in dit voorbeeldje ;)

  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 19-08 16:11

ReseTTim

Chocolate addicted

Topicstarter
Afbeeldingslocatie: http://www.resettim.nl/temp/dbase_mto.jpg
zo zien mijn 2 tabellen leverancier en contactpersoon eruit.

bij de tabel contactpersoon staat:
SELECT [leverancier].[bedrijfID], [leverancier].[bedrijf_naam] FROM leverancier;

maar ik zal is kijken naar die code van dominion99. het zal alleen dan het volgende worden als ik het goed heb.

code:
1
select * from contactpersoon where bedrijfID.contactpersoon = dropdown_leverancier.selected.value

Mijn profiel - Te koop: Overzicht van spullen..


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 25-08 14:38

OZ-Gump

terug van weggeweest

BedrijfID.contactpersoon?

Dit wil zeggen dat je ten eerste een tabel hebt die BedrijfID heet, en ten tweede in die tabel een veld genaamd contactpersoon. Lijkt me nog niet helemaal juist dus.

Overigens lijkt je datamodel me niet echt optimaal, omdat een contactpersoon een BedrijfID heeft (= ok), maar een bedrijf ook een ContactID...??? Dit zou willen zeggen dat je OF maar 1 contactpersoon per bedrijf kunt opslaan (en dus een van de twee velden niet nodig zou hebben) of je geeft daarmee een voorkeur voor een contactpersoon aan, wat heel netjes zou zijn, maar dan heeft het veld geen optimale naam ;)

Denk in de trant van: "Selecteer alle contactpersonen waarbij in het veld BedrijfID het (ID van het) bedrijf staat dat ik heb geselecteerd". Je komt dan met goede SQL uit op "Select * from contactpersoon where contactpersoon.BedrijfID = <Vul_bedrijfID_in>". Het invullen van bedirjfID gaat bij voorkeur door gebruik te maken van parametrized queries of door rechtstreeks het juiste dropdownboxje aan te spreken.

My personal website


  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 19-08 16:11

ReseTTim

Chocolate addicted

Topicstarter
het is met gelukt. ik bedacht me opeens dat je natuurlijk wel moest kijken bij de order welk bedrijf je hebt gekozen.. kortom:

code:
1
2
3
4
SELECT contactpersoon.contactID, contactpersoon.contact_naam
FROM contactpersoon
WHERE ((([order].[bedrijfID])=[contactpersoon].[bedrijfID]))
ORDER BY contactpersoon.contact_naam;


en met de F9 toets wordt de query ververst :)

Mijn profiel - Te koop: Overzicht van spullen..


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 21:01

.oisyn

Moderator Devschuur®

Demotivational Speaker

Bliep, ik zie hier niets dat met programming te maken heeft :?
Access vragen horen gewoon in SA, tenzij het eigenlijk over SQL gaat of er VBA aan te pas komt

PW -> SA

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 19-08 16:11

ReseTTim

Chocolate addicted

Topicstarter
psst tis SQL! maar ik ben er al achter..
[edit]
ik bedoel er mee te zeggen dat het probleem is opgelost

[ Voor 45% gewijzigd door ReseTTim op 15-03-2004 04:42 ]

Mijn profiel - Te koop: Overzicht van spullen..

Pagina: 1