Zdravím ještě jednou,
ještě jsem při práci s OOo 3.2.1 Base narazil na několik pro mne zatím
neřešitrelných problémů.
Potřebuji do jednoho formuláře, přesněji na jednu stránku dostat
následující:
Mám tří na sobě závislé tabulky na A závisí B, na B závisí C.
Data se budou zobrazovat v ovládacích prvcích "Tabulka".
Potřebuji, aby byla zobrazena data z tabulky A, v závislosti na vybraném
záznamu v A budou zobrazena data z tabulky B - tedy klasický podformulář
(tady problém není).
S daty z tabulky C mám ale trochu problém - potřebuji, aby se zobrazily
všechny záznamy, které odpovídají aktuálnímu záznamu v tabulce A, tedy
všem, které aktuálně vidím v tabulce B. Nemůžu tedy udělat C jako
podformulář B (zobrazovaly by se pouze záznamy odpovídající aktuálnímu
záznamu v B), nemůžu ale ani udělat C jako podformulář A, protože C na A
přímo nezávisí (nebo aspoň nevím, jak ho udělat.
Moje představa je taková, že budu mít na jednom listu druhý hlavní
formulář (což samo o sobě není problém), je ale zapotřebí, aby z něj
byla vyfiltrována přílušná data - tedy záznamy závislé na všech
záznamech v B, které jsou závislé na aktuálně vybraném záznamu v A.
Pomocí SQL dotazu dokážu data vyfiltrovat, pokud ale formulář založím na
dotazu, nepůjde tabulka editovat, což by bylo žádoucí.
Druhý problém je, že filtr, kterým budu vybírat data to tabulky C se
musí dynamicky změnit, pokud se v tabulce A posunu na jiný záznam.
Z logiky takto řešeného problému vyplývá, že v záznamu v tabulce C budu
muset vyplnit, ne kterém záznamu z B je závislý. K tomu by měl sloužit
ovládací prvek (sloupec v tabulce) typu seznam. A zde potřebuji, aby se
zobrazovaly pouze záznamy, které aktuálně vidím v tabulce B. Zde jsem
narazil na dva problémy:
1. jak do podmínky dotazu, který vytváří seznam (založený na SQL
[nativní]), dostat položku z aktivního záznamu zobrazeného v tabulce A
2. jak při změně záznamu v tabulce A donutit ovládací prvek seznamu z
tabulky C, aby položky seznamu přepočítal. Podle mnou pozorovaného
chování bych řekl, že se položky seznamu vygenerují pouze jednou při
otevření formuláře a pak se již nemění.
--
Zbyněk Burget
Nádražní 224
798 26 Nezamyslice
tel: 588 580 000, 739 930 931
IČ: 606 88 220
DIČ: CZ7210184674
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]