4D View Pro: Nové příkazy pro správu řádků a sloupců

Tabulky jsou skvělým univerzálním nástrojem. Tabulky poskytované aplikací 4D View Pro mohou rychle vyřešit mnoho situací, se kterými se vaši koncoví uživatelé setkávají, od ovládacích panelů až po vstupně-výstupní uživatelské rozhraní.

Již dříve jsme si vysvětlili použití funkce tabulek v aplikaci 4D View Pro k zobrazení a úpravě sbírek dat. Při použití tabulek 4D View Pro může být později nutné přidat nebo odebrat sloupce v závislosti na potřebách koncových uživatelů. Za tímto účelem má 4D View Pro od verze 4D v19 R7 několik nových příkazů pro správu sloupců a řádků tabulky. Podívejme se, jak to funguje.

Správa tabulek HDI

Prvním krokem před přidáním nebo odebráním některých sloupců je vytvoření tabulky v aplikaci 4D View Pro. Pro níže uvedené příklady použijeme tabulku 4D View Pro, která zobrazuje některá data z databázové tabulky s názvem „Lidé“:

$context:=New object
$context.people:=ds.People.all().toCollection()

VP SET DATA CONTEXT("ViewProArea"; $context)

$parameter:=New object
$parameter.tableColumns:=New collection
$parameter.tableColumns.push(New object("name"; "Phone"; "dataField"; "Phone"))
$parameter.tableColumns.push(New object("name"; "Email"; "dataField"; "email"))
$parameter.tableColumns.push(New object("name"; "Country"; "dataField"; "Country"))

VP CREATE TABLE(VP Cells("ViewProArea"; 2; 1; 3; 1); "PeopleTable"; "people"; $parameter)

Vložení sloupců do tabulky

Stránka VP INSERT TABLE COLUMNS Příkaz umožňuje vložit sloupec, kdykoli jej do tabulky potřebujete. Pokud například chcete zobrazit 2 nové sloupce před prvním sloupcem tabulky 4D View Pro :

VP INSERT TABLE COLUMNS("ViewProArea"; "PeopleTable"; 0; 2;vk table insert before)
// 0 indicate the first column of the table.

blank

Do tabulky se nyní přidají 2 prázdné sloupce. Nyní je tedy vyplníme poli Jméno a Příjmení díky příkazu VP SET TABLE COLUMN ATTRIBUTES:

$param:=New object
// Bind the column to the Firstname field from the datacontext
$param.dataField:="Firstname"
// Change the default name of the column to "First name"
$param.name:="First name"
VP SET TABLE COLUMN ATTRIBUTES("ViewProArea"; "PeopleTable"; 0; $param)

$param:=New object
// Bind the column to the Lastname field from the datacontext
$param.dataField:="Lastname"
// Change the default name of the column to "Last name"
$param.name:="Last name"
VP SET TABLE COLUMN ATTRIBUTES("ViewProArea"; "PeopleTable"; 1; $param)

blank

Vkládání a odstraňování řádků

Stejně tak můžete použít příkaz VP INSERT TABLE ROWS příkaz k vložení prázdných řádků do tabulky:

VP INSERT TABLE ROWS("ViewProArea"; "PeopleTable"; 1; 2)

blank

Nezapomeňte, že VP INSERT TABLE ROWS nepřidává pouze grafické prvky, jako např. VP INSERT TABLE COLUMNS. Když na stránce VP INSERT TABLE COLUMNS přidá do listu pouze sloupce, VP INSERT TABLE ROWS přidá do listu řádky a vytvoří 2 nové řádky v kolekci vašeho datového kontextu.

V našem příkladu, pokud použijete VP Get data context, získáte svou kolekci lidí se 2 novými prázdnými řádky, people[1] a people[2]:

$data:=VP Get data context("ViewProArea")

blank

A pokud do prázdných buněk zapíšete nějaké informace:

blank

atributy odpovídající vašim novým informacím se přidají automaticky. Zde byly do people[1] doplněny údaje:

$data:=VP Get data context("ViewProArea")

blank

Pokud odstraníte některé řádky, funguje to stejným způsobem. Pokud například odstraníte všechny řádky kromě prvních dvou, zmizí řádky graficky i v datovém kontextu:

VP REMOVE TABLE ROWS("ViewProArea"; "contexttest"; 2; 10)

blank

$data:=VP Get data context("ViewProArea")

blank

Spojení mezi datovým kontextem a tabulkou je tedy snadný způsob, jak spravovat sbírky ve 4D View Pro!

Podívejte se na tuto funkci s výše uvedeným HDI a na dokumentaci, kde najdete další podrobnosti!

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se připojil k týmu 4D Program v listopadu 2016. Jako Product Owner má na starosti psaní uživatelských příběhů, které následně převádí do funkčních specifikací. Jeho úkolem je také zajistit, aby dodaná implementace funkcí splňovala potřeby zákazníků.Po získání bakalářského titulu v oboru informatiky na CNAM nastoupil Fabrice do malé softwarové vydavatelské společnosti jako vývojář Windev. Poté pracoval pro různé společnosti v oblasti průmyslu a obchodu jako vývojář aplikací Windev a webových aplikací a také jako technický poradce pro nové funkce.