Navigation Forms

Status
Niet open voor verdere reacties.

Jasper91

Gebruiker
Lid geworden
10 apr 2011
Berichten
37
Hallo,

Zoals ik in een eerdere vraag al heb laten weten zijn de navigation forms helemaal nieuw voor mij en ik kom dan ook niet uit de mogelijkheden...
Op het moment heb ik nog de volgende problemen:

1) Op de formulieren die ik in het navigation form laat zien wil ik graag de koppeling hebben naar een ander formulier op een andere plek in het navigation form.
Dit formulier moet dan gefilterd worden op de record van het formulier waar ik het andere formulier op open.
vb:
Tab1, Subtab1, FormulierA, txtProjectID = 12 ("Bij klikken opent:")
Tab3, Subtab2, FormulierB, txtProjectID = 12 (Dit is dan de gefilterde waarde, wat mij niet lukt om te bewerkstelligen)


2) Sommige van de formulieren die ik open zijn niet vast opgenomen in de structuur van het navigation form. Hiervoor vraag ik me af of het mogelijk is om deze te openen in een variabele Subtab.
vb:
Tab1, Subtab1, FormulierA, txtProjectID = 12 ("Bij klikken opent:")
Tab5, Subtab1, FormulierC
of
Tab5, Subtab1, FormulierD


Misschien denk ik nog teveel in de "oude structuur", maar als dat het geval is hoor ik dat graag.

Ik hoop dat jullie me op weg kunnen helpen.
 
2) Sommige van de formulieren die ik open zijn niet vast opgenomen in de structuur van het navigation form. Hiervoor vraag ik me af of het mogelijk is om deze te openen in een variabele Subtab.
Die opmerking snap ik niet; een (sub)formulier staat op een hoofdformulier of niet. Hij kan niet een beetje op een formulier staan. Je staat ín de kamer, of je staat er buiten. Je laat ze wellicht niet zien, maar dat is een ander verhaal. En maakt voor de code niks uit. En of een formulier op een tabblad staat maakt ook niet uit; het instellen en aanroepen gaat krek hetzelfde als een gewoon subformulier; het tabelement is a.h.w. een onzichtbaar element op je formulier. Dus wat wil je precies, en met welke code filter je het tweede formulier?
 
Hi Octafish,

Laat ik het wat verduidelijken.
1) Ik heb een bepaald formulier (frmFormulierA) onder 1 van mijn tabs op het Navigation Form staan. Prima.
Nu heb ik op een ander formulier (frmFormulierB) een knop staan waarmee ik frmFormulierA kan openen. frmFormulierA wordt dan gefilterd op basis van het actieve record van frmFormulierB.
De code die ik hiervoor gebruik is als volgt:
Code:
Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "frmFormulierA"
    
stLinkCriteria = "[txtRecordID]=" & Me![txtRecordID]
DoCmd.OpenForm stDocName, , , stLinkCriteria

Dit werkt nogsteeds prima, echter wordt frmFormulierA buiten het Navigation Form geopend. Ik zou graag zien dat dit formulier (frmFormulierA) binnen het Navigation Form wordt geopend.
De reden hiervoor is dat er een knop op het formulier staat welke het formulier doet sluiten.
Deze knop kan prima buiten het Navigation Form gebruikt worden, echter wanneer het formulier direct in het Navigation Form wordt benaderd en deze knop wordt gebruikt, dan wordt het gehele Navigation Form afgesloten; dit willen we voorkomen.

2) Ook heb ik formulieren die niet in het Navigation Form staan, maar wel vanaf andere formulieren kunnen worden geopend. Deze formulieren worden nu buiten het Navigation Form geopend, maar wij zouden graag zien dat deze formulieren binnen het Navigation Form geopend worden, als een andere tab zegmaar. Wij willen ze niet vast opnemen in het Navigation Form, omdat er dan teveel tabs komen, wat de overzichtelijkheid niet ten goede komt.
 
Ik begrijp niet waarom je dat zou willen. Een formulier is één geheel, ongeacht hoeveel subformulieren je er op zet. Sluit je het formulier, dan sluit je het formulier. Meer smaken zijn er niet. Wil je een subformulier apart kunnen sluiten? Dan moet hij als apart formulier worden geopend. Op een formulier heb je dus één sluitknop, en that's it; die sluit je complete formulier. Werk je met tabbladen (en dat doe je met een navigatieformulier) dan zet je daar dus in beginsel geen sluitknop op.

Een navigatieformulier is bedoeld om te navigeren; gebruik hem daar dan ook voor. Dus vanaf je navigatieformulier benader je alle activiteiten die je wilt laten uitvoeren. Als dat inhoudt dat een formulier zelfstandig wordt geopend, wat is daar op tegen? Dat maakt voor de werking van het formulier niets uit; waarschijnlijk is alles zelfs veel makkelijker te maken en onderhouden, omdat je geen rekening hoeft te houden met verwijzingen naar subformulieren. Bovendien kan een gebruiker maar één ding tegelijk (tenzij het een vrouw is natuurlijk) en er kan ook maar één formulier tegelijk actief zijn, dus multi-tasken met formulieren is toch al uitgesloten. Kortom: leer leven met de beperkingen van Access.

Zelf hou ik de interface voor een gebruiker zo simpel mogelijk; als hij/zij een formulier opent vanaf het startformulier, verberg ik dat startformulier. Bij sluiten van het werkformulier wordt het hoofdformulier weer zichtbaar gemaakt. Op die manier is voor een gebruiker altijd duidelijk wat hij moet doen. En je kunt dan ook altijd laten doorklikken naar vervolgformulieren. Wat Microsoft met het navigatieformulier voor ogen heeft is mij ook niet helemaal duidelijk, want je verkleint alleen maar de bruikbare werkruimte voor je echte formulieren als je ze op een navigatieformulier zet. En met al die tabjes wordt het er zelden overzichtelijker op.

Maar wat je wilt, kan dus niet, tenzij je al je formulieren via VBA opbouwt. En dat zou ik alleen doen als ik héél veel tijd over zou hebben.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan