Formulier openen binnen bestaand formulier met dubbelklikken

Status
Niet open voor verdere reacties.

Lacaes

Gebruiker
Lid geworden
20 apr 2013
Berichten
35
Goedemiddag,

Ik heb een database met gegevens over merkregistraties (o.a. registratienummer, merknaam, land van registratie, registratiedatum, merkeigenaar, etc.). Binnen deze database heb ik diverse tabellen (o.a. voor merknamen, landen, merkeigenaren, etc.) en een "verzameltabel" met daarin een combinatie van alle relevante gegevens voor een specifieke merkregistratie. Op basis van deze verzameltabel heb ik vervolgens een formulier gemaakt met daarop o.a. de naam van de eigenaar van de merkregistratie (OwnerName). Op zich werkt dat, echter ik wil als ik dubbelklik op de naam van de eigenaar ook graag het volledige adres van de eigenaar kunnen zien. Ik heb hiervoor een macro gemaakt die het eigenaren formulier opent en ook de de juiste eigenaar selecteert (op basis van de OwnerName). Het probleem zit hem echter daarin dat de OwnerName niet uniek hoeft te zijn. Het komt niet veel voor maar een eigenaar kan meerdere keren voorkomen in de eigenaren tabel. Dit doet zich met name voor als een eigenaar verhuist van een oud adres naar een nieuw adres. De eigenaarnaam is in dat geval twee keer opgenomen in de database met twee verschillende adressen. Het is nodig om dit verschil in adres te kunnen zien omdat in sommige landen de merkregistratie is ingeschreven met het actuele adres van de eigenaar, terwijl in andere landen de merkregistratie nog is ingeschreven met het oude adres van de eigenaar. In rapporten kan ik dit verschil in adres zichtbaar maken, maar dus niet op dit formulier. Als ik binnen dit formulier op een eigenaarnaam dubbelklik die twee keer is opgenomen in mijn database, krijg ik dus beide records te zien, maar niet alleen die eigenaar met het adres dat bij die specifieke registratie hoort.

In rapporten kan ik dit verschil in adressen zichtbaar maken, maar niet in dit formulier. Elke eigenaar (dus ook een eigenaar die twee keer is opgenomen maar met een verschillend adres) heeft een unieke OwnerID maar het lukt mij dus niet om via deze OwnerID een koppeling te maken naar het juiste record in het eigenaren formulier. Misschien kan iemand mij hier verder mee helpen.
 
Het ontwerp van je eigenarentabel is niet juist. Als je per eigenaar meerdere (historische) adressen wilt kunnen registreren, heb je twee tabellen nodig. Een voor de eigenaargegevens (naam) en een voor adressen. Als je in de adressentabel ook een begindatum opneemt, is altijd te herleiden welk adres op een bepaalde datum van toepassing is.
 
Ik ben het deze keer met Peter eens; je gebruik (begrip?) van entiteiten en hun relaties is niet goed en daarom klopt je structuur niet. Een merkregistratie hangt aan een eigenaar, niet aan een adres. Een adres is een eigenschap van een persoon, niet van een merk.

Als naast de eigenaar ook het adres op het moment van registreren belangrijk is, dan moet je ofwel het adres in de merkregistratie vastleggen, als attribuut van een registratie, of je moet van de eigenaren in een aparte tabel de adreshistorie vastleggen. uiteraard niet alleen met een begindatum, maar ook met een einddatum. Wellicht kom je dan in de problemen met de AVG, dat kan ik zo niet beoordelen.
zelf zou ik niet kiezen voor een aparte adrestabel als het sporadisch voorkomt bij een paar merkhouders, maar de NAW gegevens dus in de merkregistratie opnemen. Tenzij dit vaker voorkomt, en je dus voor meerdere merken dezelfde combinaties moet invoeren. Dan is een aparte Adrestabel handiger en veiliger. Met dus inachtneming van de AVG.
 
Bedankt voor jullie hulp en advies! Aan een aparte adressentabel had ik dus niet gedacht. Ik had zelf ook al uitgeprobeerd om bij elke merkregistratie op het formulier de NAW gegevens van de merkeigenaar op te nemen. Dat werkt wel. Alleen krijg ik dan meer velden op het formulier, terwijl het mij beter (en mooier) lijkt om alleen de naam van de merkeigenaar te zien en via een koppeling op het correcte adres van deze merkeigenaar te komen voor de betreffende merkregistratie. Ik begrijp dat ik er in dat geval niet aan ontkom om een aparte adressen tabel aan te maken. Ik ga eens wat dingen uitproberen om te kijken wat voor mij het beste werkt.
 
Nogmaals: check vooral ook in hoeverre je gerechtigd bent om NAW historie van personen op te slaan en bewaren. Want dat is in essentie wat je aan het doen bent. Die mogelijkheden zijn beperkt.
 
IK zal dat zeker nog nagaan. De meeste merkregistraties staan overigens op naam van bedrijven die volgens mij niet onder de AVG vallen, maar ik zal dat nog verder uitzoeken. Bedankt dat je dit onder mijn aandacht hebt gebracht.
 
Zelf zou ik dus geen aparte adressentabel maken, maar de adresgegevens in de tabel van de merkregistratie zetten. En wel hierom:
… echter ik wil als ik dubbelklik op de naam van de eigenaar ook graag het volledige adres van de eigenaar kunnen zien.
Dat zou, lijkt mij, het actuele adres moeten zijn van de klant. Niet het verouderde adres.

… omdat in sommige landen de merkregistratie is ingeschreven met het actuele adres van de eigenaar, terwijl in andere landen de merkregistratie nog is ingeschreven met het oude adres van de eigenaar.
Het tweede argument om het adres in de merkentabel op te slaan :). Blijkbaar is het adres een attribuut van de registratie in sommige landen. Dat kun je bijvoorbeeld vastleggen in je landentabel (adres opslaan Ja/Nee) zodat je dat gegeven kunt gebruiken bij het vastleggen van de registraties. Dat werkt dan zo:

Als je een nieuwe registratie invoert, kies je dus ook een land (toch?). Dan weet het formulier of het vinkje aan staat of uit. Als het aan staat, vul je vanuit de keuzelijst voor de klant, automatisch de adresvelden in. Die komen uit de klantentabel, zijn dus actuele gegevens. Kost geen tijd (immers vanuit de keuzelijst) en is 100% foutloos. Zijn de NAW gegevens niet verplicht, staat het vinkje uit. Dan kun je ervoor kiezen om de gegevens niet in te vullen. Of je doet het tóch, als extra zekering van de gegevens.
Nee, je kunt het vinkje in de landentabel niet weglaten, want op basis van dat vinkje bepaal je of je de opgeslagen gegevens in het formulier/rapport laat zien, of de actuele.

En dat is dus míjn oplossing :).
 
Ik heb wat dingen uitgeprobeerd en het lijkt mij ook het beste om niet een aparte adressentabel aan te maken. Op dit moment staat in de tabel van merkregistraties alleen de eigenaarscode (en geen adresgevens). Daarnaast heb ik een aparte eigenarentabel met deze eigenaarscode en de NAW gegevens van de eigenaar. Beide tabellen zijn gerelateerd via de eigenaarscode, daarom dacht ik dat het opnemen van alleen de eigenaarscode in de merkregistratie tabel voldoende is. Als ik nu de adresvelden opneem op het merkregistratie formulier worden deze inderdaad automatisch ingevuld als ik via de keuzelijst de eigenaar selecteer :)

Bij merkregistraties werkt het overigens zo: een merk wordt geregistreerd in één of meerdere landen op naam van een eigenaar met een bepaald adres. Deze gegevens staan in een officieel en openbaar register. Op een gegeven moment kan het adres van de eigenaar veranderen. Het is dan eigenlijk de bedoeling dat deze adreswijziging ook wordt aangetekend bij de merkregistraties in het merkenregister. Soms gebeurt dit echter niet, of slechts bij een aantal merkregistraties in een beperkt aantal landen, of pas in een later stadium. Bijvoorbeeld omdat het te duur is of omdat de adreswijziging pas wordt aangetekend op het moment dat de registratie wordt vernieuwd. Mijn database weerspiegelt de gegevens zoals die zijn opgenomen in de officiële merkenregisters. Het kan dus zo zijn dat hetzelfde merk in land A is ingeschreven op naam van een eigenaar met adres X en in land B op naam van dezelfde eigenaar met het oudere adres Y. Nu vang ik dat op door de eigenaarsnaam niet uniek te maken in de eigenarentabel en twee verschillende eigenaarcodes aan te maken voor dezelfde eigenaar met verschillende adressen.

Door de adressen (en niet alleen de naam van de eigenaar) op te nemen in het formulier van de merkregistraties kan ik dit verschil in adressen zichtbaar maken.

Het laatste deel van jouw oplossing snap ik niet helemaal, en is misschien ook niet van toepassing voor mij omdat het voor mij van belang is om altijd het opgeslagen adres van een merkeigenaar te kunnen zien, hetzij direct op het merkregistratie formulier of indirect (door bijvoorbeeld te klikken op naam van de eigenaar) op het merkregistratie formulier. Maar misschien zie ik het verkeerd, want ik ben niet echt een expert. Ik vind het overigens wel heel leuk om al doende te leren en ben dan ook erg blij met alle support die ik ontvang.
 
Je maakt het wel steeds ingewikkelder. Kennelijk is het zo dat het feitelijk adres van een eigenaar kan afwijken van het adres dat geldt voor de registratie in een land. Voor een bepaald merk/eigenaar kunnen voor verschillende landen op een bepaald moment verschillende adressen van toepassing zijn.
Dat zou je bijvoorbeeld op kunnen lossen door in de eigenaren tabel het actuele adres op te slaan en in de tabel eigenaar-merk-land het daar geldende adres (initieel vul je dat automatisch met het actuele adres).
Qua gegevensstructuur is het wel te doen. Maar ik vraag me af je het procesmatig wel gaat redden. Er zijn verschillende triggers om een adres bij een eigenaar-merk-land te wijzigen: verhuizing, vernieuwing registratie (hoe doe je dat sowieso?) na verhuizing, en misschien nog wel meer. Wellicht kan je iets in de landentabel iets zetten om te weten wat van toepassing is.
Bij dit alles moet je ook bedenken dat je niet vanaf nul begint, maar ook je bestaande gegevens nog eens moet omzetten naar de nieuwe structuur. Succes ermee :thumb:
 
@xps351: het hele verhaal stond al in de beginvraag, en m.i. duidelijk genoeg. Als ik jouw laatste bericht lees, dan herhaal je mijn laatste antwoord. Lijkt mij niet echt nuttig :).

@lacaes: in je merkenregistratie verwijst één eigenaarscode altijd naar één eigenaar, ongeacht het adres dat je in de NAW tabel hebt staan. Wat je nu hebt (meerdere records voor dezelfde eigenaar, moet je dus zo snel mogelijk oplossen, door de dubbele records te verwijderen. Dat doe je uiteraard pas nadat de adresgegevens zijn weggeschreven in de Merkenregistratie.

Als je die adresgegevens in de merkentabel wilt actualiseren, dan kan dat heel simpel door de actuele adresgegevens naar de merkentabel te kopiëren. Maar volgens mij heb je mijn oplossing verder prima begrepen :). Je zet de adresgegevens dus ‘hard’ in de merkenregistratie, niet via gekoppelde velden. Want dan ben je nog net zo ver van huis als nu :).
 
Ik heb e.e.a. aangepast volgens jullie advies en alles werkt nu naar behoren. Nogmaals bedankt voor jullie hulp!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan