Pokud máte dlouhý formulář s více položkami, někdy chcete rychle přejít k podrobnostem, abyste viděli další informace o jedné položce. V Accessu to můžete udělat tak, že formulář s více položkami propojíte s formulářem s jednou položkou. Když kliknete na položku ve formuláři s více položkami, otevře se formulář s jednou položkou a zobrazí podrobnosti.
Poznámky:
-
Tento článek se nevztahuje na webové aplikace pro Access – typ databáze, kterou navrhujete v Accessu a publikujete online.
-
Pokud jste "propojením" mysleli něco jiného, podívejte se na další typy propojení formulářů na konci tohoto článku.
Vytvoření formulářů
Ve většině případů jsou dva formuláře v konfiguraci přechodu k podrobnostem založené na stejné tabulce nebo dotazu. Pokud už máte dvojici formulářů, které chcete použít (jedním je formulář s datovým listem nebo více položkami a druhým formulář s jednou položkou nebo "podrobným" formulářem), můžete tento oddíl přeskočit. V opačném případě je vytvořte pomocí těchto postupů:
Vytvoření datového listu nebo formuláře s více položkami:
-
V navigačním podokně vyberte tabulku nebo dotaz obsahující požadovaná data ve formuláři datového listu.
-
Klikněte na Vytvořit > Další Forms a potom klikněte na Více položek nebo Datový list podle toho, jaký druh chcete.
-
Proveďte požadované změny návrhu. Zvažte odstranění co nejvíce sloupců a ponechte jen dostatek informací k identifikaci jednotlivých položek.
-
Uložte a zavřete formulář.
Další informace o formulářích s více položkami najdete v tématu Vytvoření formuláře pomocí nástroje Více položek.
Vytvořte formulář s jednou položkou nebo podrobností:
-
V navigačním podokně vyberte tabulku nebo dotaz obsahující požadovaná data ve formuláři podrobností. Pravděpodobně se bude jednat o stejnou tabulku nebo dotaz, které jste použili pro první formulář.
-
Klikněte na Vytvořit > formulář.
-
Proveďte požadované změny návrhu a pak formulář uložte a zavřete.
Další informace najdete v tématu Vytvoření formuláře pomocí nástroje Formulář.
Přidání logiky, která otevře formulář podrobností
Teď přidáte malé makro do formuláře s více položkami nebo datovým listem. Makro otevře formulář podrobností a zajistí, aby se zobrazila správná položka.
Nemějte obavy, pokud jste s makry neudělali mnoho práce. stačí zkopírovat a vložit XML, který najdete v tomto postupu.
-
Pokud používáte formulář datového listu, otevřete ho poklikáním v navigačním podokně. U formuláře s více položkami na něj klikněte pravým tlačítkem v navigačním podokně a potom klikněte na Zobrazení rozložení.
-
Stisknutím klávesy F4 otevřete seznam vlastností, pokud ještě není otevřený.
-
Klikněte na sloupec, do kterého chcete makro přidat. Toto bude sloupec, na který po dokončení makra kliknete a otevřete formulář podrobností. Na obrázku výše je makro přidáno do sloupce ID frmContactList.
Tip: Makro můžete přidat do více než jednoho sloupce.
-
Na kartě Událost v seznamu vlastností klikněte do pole vlastnosti Při kliknutí nebo Při kliknutí na dbl (v závislosti na tom, jestli chcete formulář otevřít jedním kliknutím nebo poklikáním na pole) a potom klikněte na tlačítko Sestavit
. -
Pokud vás Access vyzve k výběru tvůrce, vyberte Tvůrce maker a klikněte na OK.
-
Vyberte tento blok XML a stisknutím ctrl+C ho zkopírujte do schránky: <?xml version="1.0" encoding="UTF-16" standalone="no"?> <UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"> <UserInterfaceMacro For="ID" Event="OnClick"><Statements><Action Name="OnError"><Argument Name="Goto">Macro Name</Argument><Argument Name="MacroName">ErrorHandler</Argument></Action> <ConditionalBlock><If><Condition>[Form].[Dirty]</Condition><Statements><Action Name="SaveRecord"/></Statements></If></ConditionalBlock> <ConditionalBlock><If><Condition>IsNull([ID])</Condition><Statements><Comment>Open the form to a new record if the current ID is Null</Comment><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="DataMode">Add</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="Requery"/></Statements></If><Else><Statements><Comment>Use a TempVar to pass a filter to the OpenForm action</Comment><Action Name="SetTempVar"><Argument Name="Name">Contact_ID</Argument><Argument Name="Expression">[ID]</Argument></Action><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="WhereCondition">[ID]=[TempVars]![Contact_ID]</Argument><Argument Name="DataMode">Edit</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="RemoveTempVar"><Argument Name="Name">Contact_ID</Argument></Action><Action Name="RefreshRecord"/></Statements></Else></ConditionalBlock> </Statements></UserInterfaceMacro></UserInterfaceMacros>
-
Klikněte do prázdné oblasti Tvůrce maker (přímo pod rozevírací seznam Přidat novou akci ) a stisknutím ctrl+V vložte akce makra. Pokud vše půjde dobře, xml se v Tvůrci maker vůbec nezobrazí – rozbalí se do čitelnějších bloků maker, jak je znázorněno v dalším kroku.
-
V případě potřeby nahraďte název formuláře (frmContactDetails) a název propojovacího sloupce (ID) názvem formuláře a sloupcem, který používáte k propojení těchto dvou formulářů. Následující obrázek ukazuje, kde možná budete muset provést úpravy, aby odpovídaly vašim názvům identifikátorů:
-
Na kartě Návrh klikněte na Uložit a pak na Zavřít.
-
Pokud chcete, aby sloupce, na které lze kliknout, vypadaly jako hypertextový odkaz, aby lidé věděli, že na něj můžou kliknout, ujistěte se, že je sloupec stále vybraný, a v seznamu vlastností klikněte na kartu Formát a nastavte vlastnost Zobrazit jako hypertextový odkaz na Vždy.
-
Uložte a zavřete formulář, pak ho znovu otevřete a otestujte makro kliknutím nebo poklikáním na sloupec, který jste upravili.
Další informace o makrech v desktopových databázích najdete v tématu Přidání logiky do ovládacího prvku v desktopové databázi.
Jiné typy propojení formulářů
Pokud chcete vytvořit kombinaci formuláře a podformulář a propojit je dohromady, přečtěte si téma Vytvoření formuláře, který obsahuje podformulář (formulář 1:N).
Pokud chcete vytvořit formulář, který je propojený se zdrojem dat, jako je tabulka nebo dotaz, přečtěte si téma Vytvoření formuláře pomocí nástroje Formulář.