Structuur autonummering aanpassen

Status
Niet open voor verdere reacties.

BartSt

Gebruiker
Lid geworden
26 jun 2012
Berichten
86
Twee tabellen: organisaties en personen. Beide hebben als primary key een autonummeringveld met als notatie (de veldeigenschap) respectievelijk "O-"0000 en "P-"0000.

Omwille van een correcte normalisering moeten het aparte tabellen blijven.
In functie van rapporten heb ik echter een union-query nodig van beide tabellen.

Probleem: unionquery "herleidt" alle velden tot de rauwe gegevens.
Resultaat: ipv het gewenste
P-0001
P-0002
O-0001
P-0003
O-0002

krijg ik
1
2
1
3
2

Ik kan mbv andere velden in deze unionquery organisaties van personen onderscheiden, en dus was ik van plan de unionquery in een nieuwe query te gebruiken en met iif() aan de slag te gaan.

Ik vraag me nu af of het niet allemaal simpeler kan. Is er bijvoorbeeld een manier om de autonummeringen zo aan te passen dat wat ik heb voorzien als notaties daadwerkelijk wordt opgeslagen? Gezien de autonummering van beide tabellen (organisaties en personen) wordt gebruikt in relaties met andere tabellen, zou dit een ideale oplossing zijn.
 
Ik heb het opgelost door in de union query gebruik te maken van Format() in beide SELECT statements. Meer bepaald:
Format(ID_Persoon,"\P\-0000") AS [Nr per/org]
Format(ID_Organisatie,"\O\-0000") AS [Nr per/org]

Ik had me dus nog even moeten inhouden alvorens mijn vraag te stellen :) Maar wie weet hebben anderen hier iets aan.
 
Laatst bewerkt:
Is er bijvoorbeeld een manier om de autonummeringen zo aan te passen dat wat ik heb voorzien als notaties daadwerkelijk wordt opgeslagen? Gezien de autonummering van beide tabellen (organisaties en personen) wordt gebruikt in relaties met andere tabellen, zou dit een ideale oplossing zijn.
Een Autonummerveld slaat (net als elk numeriek veld) de intrinsieke waarde op. Is dat het getal 12, dan sla je dus alleen het getal 12 op. Met Notatie verander je alleen het uiterlijk van het veld, nooit de inhoud. Ga je queries maken, dan gebruik je dus altijd de inhoud van dat specifieke veld. En bij UNION queries (net als bij exports) raak je dus altijd de opmaak kwijt. De enige oplossing hiervoor is een normaal veld te gebruiken en de complete waarde op te slaan. Dat kan in jouw voorbeeld alleen met een tekstveld.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan