Nejčastější dotazy/Base/024

    From The Document Foundation Wiki
    < Faq‎ | Base
    This page is a translated version of the page Faq/Base/024 and the translation is 100% complete.
    Other languages:


    Jak přimět ovládací prvek formuláře, aby zobrazil hodnotu pole v tabulce a poté uložil hodnotu jiného pole téže tabulky ?

    Přepněte formulář do režimu návrhu.

    V režimu návrhu vytvořte nový ovládací prvek

    • Pokud jste tak ještě neučinili, aktivujte Režim návrhu kliknutím na příslušnou ikonu na panelu nástrojů Návrh formuláře.
    • Na panelu nástrojů Návrh formuláře klikněte na ikonu Ovládací prvek seznamu a nakreslete na formuláři oblast, ve které má být ovládací prvek umístěn.

    Průvodce ovládáním by se měl spustit automaticky a provést vás celým procesem. Zbývající podrobnosti naleznete níže.

    Použití režimu návrhu k nahrazení existujícího ovládacího prvku formuláře (např. textového pole)

    • Aktivujte režim návrhu formuláře pomocí panelu nástrojů Návrh formuláře.
    • Převedete existující ovládací prvek na pole seznamu kliknutím pravým tlačítkem myši na ovládací prvek a výběrem možnosti Nahradit pomocí. > Listbox z kontextové nabídky.

    Jako příklad si vezměte tabulku s názvem Client obsahující pole ClientName) a související primární klíč ( ClientId). Chceme dosáhnout toho, aby formulář zobrazoval jméno klienta v seznamu, ale ve skutečnosti používal odpovídající ClientID v podkladové tabulce k zápisu této hodnoty jinam. Je tedy nutné deklarovat pole, kam se budou tato data ukládat, přiřadit k listboxu SQL dotaz a nastavit pole tabulky, které se bude používat pro zobrazení i pro ukládání dat.

    Začněte zobrazením vlastností ovládacího prvku listbox (panel nástrojů Návrh formuláře, vyberte ovládací prvek kliknutím myší a zvolte Vlastnosti) a poté zvolte kartu Data v dialogovém okně Vlastnosti.

    V části Data zadejte název tabulky, která se má použít pro uložení dat.

    Vyberte Sql jako Typ obsahu seznamu.

    V části Obsah seznamu zadejte SELECT ClientName, ClientId FROM Client nebo klikněte na tlačítko představující následující tečky a použijte průvodce vytvořením dotazu.

    Ve výše uvedeném dotazu je ClientName prvním vráceným polem a má indexační číslo 0 a ClientId je druhé pole vráceno s indexačním číslem 1.

    Výchozí seznam zobrazený v ovládacím prvku Listbox je vždy založen na prvním indexovaném poli, tj. indexační číslo 0, tedy v našem současném příkladu s hodnotami z ClientName).

    Protože ve skutečnosti chceme, aby byla zaznamenána hodnota ClientId (s indexačním číslem 1), je třeba v poli Propojené pole zadat hodnotu 1.