Expressie voor id naar naam te veranderen

Status
Niet open voor verdere reacties.

Carloj

Gebruiker
Lid geworden
9 feb 2015
Berichten
115
Ik heb een subform "projecten overzicht" waarin een onderdeel naar voren komt in een tabel vorm.
Nu komt dit onderdeel naar voren als 102. Maar dit moet eigenlijk de naam zijn van onderdeel 102. Bijv. Lamp 85w

Nu heb ik het een en ander geprobeerd met de dlookup functie, maar dit krijg ik niet voor elkaar.

=DLookUp([Onderdelen].[Onderdelen_name];[Onderdelen].[OnderdelenID] = [OnderdelenID])

Weet iemand hoe ik de naam kan krijgen in plaats van het ID ?
 
Ik heb een subform "projecten overzicht" waarin een onderdeel naar voren komt in een tabel vorm.
Je drukt je vermoed ik een beetje ongelukkig uit, want een subformulier kan nooit gedeeltelijk in tabelvorm te zien zijn. Ofwel je hebt een doorlopend formulier, ofwel een formulier in Gegevensweergave. Maar nooit een combinatie. Wat je nodig hebt (want het gaat vast om één veld) is een keuzelijst voor dat veld, dat is gebaseerd op de tabel waar het onderdeelID uitkomt. Die keuzelijst bevat dan minstens 2 velden: OnderdeelID en Omschrijving en stel je in op (logisch) 2 kolommen. Daarvan maak je de eerste kolom 0 cm breed, en de tweede kolom geef je de waarde die je prettig vindt. Het resultaat is nu dat je het OnderdeelID opslaat, maar de Omschrijving ziet. En dat is precies wat je wilt.
Overigens kan het nog simpeler ook, en al helemaal heb je de DLookup niet nodig: neem het veld [Onderdelen_name] mee op in de query die je gebruikt voor het formulier. Zie je de omschrijving namelijk altijd!
 
Wat duidelijker uitgelegd:
Je vult een project in op een form. Hierin vul je een onderdeel in die je kunt kiezen uit een dropdown list. De waardes van deze dropdown list zijn 1,2,3.. enz. Maar hij laat hier column 2 (onderdeel naam) zien van de tabel "onderdelen". Dus als hij bijv. kiest motor machine 1 dan komt dit in de tabel "projecten" te staan als 132. Nu komen alle projecten te staan in een sub form die als gegevensblad ingesteld staat. Hierin staan de belangrijkste gegevens van een project.

Als ik dan dit project vindt in het sub form staat er bij onderdeel 132. nu is het de bedoeling dat er de naam komt te staan.

Optie om de dropdown list aan te passen is geen mogelijkheid.
 
Duidelijker wordt het er eerlijk gezegd niet op, integendeel.... Je formulier is dus op basis van Projecten, maar wat is de relatie tussen een project en een onderdeel dan? Want ofwel het onderdeel is het project, ofwel het project bestaat uit (werkzaamheden aan, bestellingen van etc) onderdelen. In het eerste geval heb je alleen in het hoofdformulier een keuzelijst nodig voor onderdelen, in het tweede geval heb je juist géén onderdeel nodig op het hoofdformulier maar juist een keuzelijst in het subformulier. En waarom gegevensbladweergave? A) is dat (spuug)lelijk, b) mis je allerlei functionaliteit die je wel in een doorlopend formulier kunt bouwen.
 
Het onderdeel wordt hier gebruikt om te zien welk onderdeel het is maar ook als locatie. Mocht er bijv. een motor kapot zijn dan wordt dit ingegeven als
motor 4210. Met die 4210 kan de monteur meteen zien welke motor het is en waar deze zich bevindt.

access8.png

Dit is het sub form / gegevensblad waar alle projecten in staan.
 
Maar ik snap nog steeds de relatie niet tussen het hoofdformulier en het subformulier; als je hoofdformulier (projecten) is gebaseerd op onderdelen/locaties, dan hoeft dat niet meer (zichtbaar) terug te komen in het subformulier. Het OnderdeelID wordt dan als koppelveld gebruikt. In dat geval bestaat een project uit één onderdeel/locatie met verschillende detailrecords die je in het subformulier zet.
Normaler is, en dat is dus een stuk gebruikelijker, dat onderdelen onderdeel zijn van een project, en dat één project dus meerdere onderdelen/locaties bevat. In dat geval is ProjectID het koppelveld, en hoef je dat dus niet te zien in het subformulier. Maar om van Onderdeel dus een keuzelijst te maken, is een doorlopend formulier een stuk handiger dan een gegevensblad.
 
ik denk dat ik het verkeerd uitleg.
werking van het keuze onderdelen:
De onderdelen staan vast. Er zijn drie dropdown lists of comboboxes(weet niet precies hoe het heet) in het invul form. bij de eerste vult hij in de grootste locatie bijv. welke vestiging. bij de 2e vult hij in dat het bijv. in kantoor gebouw is. en bij de 3e krijgt hij dan de optie om te kiezen dat de verwarming 1020 het project is.
Deze dropdown list zijn allemaal gekoppeld met elkaar zodat hij steeds filter op het voorgaande antwoord. zo geeft alleen de onderdelen van het kantoor gebouw als je bij de 2e kantoorgebouw hebt gekozen. Al deze opties hebben een id. deze id slaat hij dan op in de tabel projecten.

het subform.
Het subform is de tabel "projecten".
Als er een project wordt gemeld wordt in ingevoerd in een invul form met de status aangevraagd of lopend. Wat er ingevuld wordt op dit invul form komt terecht in de tabel "projecten" of ook wel het subform wat je op de afbeelding ziet. Als het project is afgerond dan kan men 2x op de naam klikken van het project in het subform dan opent hij weer het invul form met de gegevens van het project. Dan wordt de status veranderd naar afgerond en dan verplaats het project naar closed reports (zie afbeelding).

Nu zijn hier dagelijks een aantal projecten dus komt er een lijst te staan bij open reports. Als de monteur dan de database opent kan hij dus meteen zijn de naam van het project, wanneer het gemeld is, bijlage enz. en ook het onderdeel met locatie code.

Wat er nu eigenlijk moet gebeuren is dat de "102" op de afbeelding de naam wordt van het id 102.
 
Laatst bewerkt:
Maar nog steeds zie ik de link niet met je hoofdformulier. Tenzij dat een navigatieformulier is, en dus eigenlijk helemaal niets met de gegevens op het subformulier te maken heeft (vergeef me dat ik over formulieren blijf praten, maar zolang Nederlands hier nog de officiële voertaal is blijft een formulier natuurlijk gewoon een formulier). In dat geval is je subformulier dus eigenlijk een hoofdformulier, en zou ik de keuzelijsten dus al helemaal niet op dat navigatieformulier zetten. Tenzij je de keuzelijsten ook voor andere formulieren gebruikt. Maar juist als je subformulier dus eigenlijk een hoofdformulier is, zou ik afstappen van de Gegevensbladweergave. Hoe dan ook kan ik nog steeds verwijzen naar berichtje #3 waar het antwoord staat :).
 
Nu snap je hem :p
Mijn hoofd formulier is inderdaad een navigatieformulier. (sorry dat ik het niet eerder gezegd had)
De keuzelijsten staan inderdaad op een ander formulier.

Als ik er een query van maak moet ik weer een heleboel aanpassen, dit was eigenlijk mijn laatste optie.
Ik was opzoek naar een makkelijkere oplossing, hierbij dacht ik aan de lookup functie of iets anders. Maar als dit niet mogelijk is dan zal het een query worden.
 
Is het misschien mogelijk :
Als de 3e keuzelijst is ingevuld hij automatisch deze overneemt in een tekstvak. Dan kan ik deze tekstvak niet zichtbaar maken maar wel in me projecten tabel hebben.
 
Als ik een query moet maken moet ik x aantal subformulieren wijzigen en kan ik waarschijnlijk de gegevens van een project niet meer oproepen en bewerken door er op te klikken. Hij ligt het meest voor de hand maar is voor mij eigenlijk de aller laatste optie. Als ik het id nummer kan laten opzoeken en in een andere textvak weer kan gegeven is dit voor mij 100x zo makkelijk.
 
Ik heb het niet over een query, ik heb het over het instellen van je subformulier als doorlopend formulier en daar een keuzelijst met invoervak op zetten zoals je ook in het hoofdformulier hebt gedaan.
 
Het subformulier is alleen om gegevens te zien, hier mag/moet je niks kunnen aanpassen.
Als ik me subformulier verander na een doorlopend formulier dan is me subformulier leeg. Staat niks in.
 
Lijkt me stug; Gegevensweergave of Doorlopend formulier is alleen een (de naam zegt het al) weergave instelling. Hoe zien de gegevens er uit.... Mag niks doen met de hoeveelheid records en gegevens. En voor het bewerken maakt het ook niks uit; zowel een doorlopend formulier als een gegevensweergave formulier kun je bewerken als je dat niet expliciet instelt.
 
access9.png

Als ik hem verander naar doorloop formulier komt hij er zo uit te zien.
 
Zonder db is het onmogelijk te zien wat er dan aan mankeert; dan wordt het gokken en daarvoor ontbreekt denk ik de tijd. Ik zou zeggen: maak een voorbeeldje.
 
Ik ben hier al een x aantal dagen mee bezig. Om een voorbeeldje te maken met de subformulieren en invoer formulieren ben ik ook weer een paar dagen mee bezig en ik mijn bestand zo niet online zetten omdat er persoonlijke gegevens van werknemers en bedrijf gegevens in zitten. En ik wil het bestand niet online hebben.
 
Eigenlijk hoef ik momenteel alleen te weten of dat ik de waarde van een keuzelijst ook een tekstvlak kan krijgen op hetzelfde formulier.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan