4D View Pro: Zobrazte své sbírky jako tabulky

Automaticky přeloženo z Deepl

Už to znáte; 4D View Pro umožňuje snadno načítat a zobrazovat data v tabulkách.
4D v19 R6 přináší zajímavé novinky. Tento příspěvek na blogu vám ukáže novou funkci tabulky, která vám umožní dělat mnohem více a využívat další vlastnosti, jako jsou záhlaví, změna velikosti tabulky, souhrnný řádek, třídění sloupců, filtry a další. Zjistíte také, jak rychle načítat data z datových tříd a kolekcí. A nenechte si ujít ukázku, která obsahuje kompletní příklad a několik vizuálních grafů jako bonus.

HDI: 4DVP Vytvořit tabulku

Tabulku lze vytvořit dvěma způsoby:

Pozdravte VP CREATE TABLE

ručně naplnit tabulku

Nejprve je třeba vytvořit tabulku bez zdroje. Použijte nový VP CREATE TABLE a jako parametr mu předejte rozsah, ve kterém se má tabulka objevit:

VP CREATE TABLE(VP Cells("ViewProArea"; 1; 1; 3; 4); "EmptyTable")

Vytvoří prázdnou tabulku s výchozími názvy sloupců:

Nyní už jen stačí vyplnit naši tabulku pomocí příkazu VP SET VALUES příkazu:

$data:=New collection
// Titles 
$data.push(New collection("First Name"; "Last Name"; "Score"))
// Data
$data.push(New collection("Andrea"; "Butterfield"; "70"))
$data.push(New collection("Faye"; "Back"; "100"))
$data.push(New collection("Shane"; "Frazier"; "50"))

VP SET VALUES(VP Cell("ViewProArea"; 1; 1); $data)

Tabulka je nyní naplněna hodnotami obsaženými v kolekci:

blank

Nyní můžete tabulku snadno filtrovat nebo třídit:

blank

Naplňte tabulku z kontextu dat

Zobrazení výběru entit jako tabulky:

blank

musíte výběr entit převést na kolekci a přidat ji do kontextu dat listu, definovat sloupce a vytvořit tabulku.

Nejprve musíte vytvořit datový kontext obsahující kolekci dat, která potřebujete zobrazit. V níže uvedeném příkladu načteme data z databáze a převedeme je na kolekci, kterou pak zapouzdříme do objektu:

$p:=ds.People.all().toCollection()

$data:=New object
$data.people:=$p

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

Nyní, když je datový kontext vytvořen, definujeme, které sloupce se mají zobrazit:

$parameter:=New object
$parameter.tableColumns:=New collection
$parameter.tableColumns.push(New object("name"; "First name"; "dataField"; "Firstname"))
$parameter.tableColumns.push(New object("name"; "Last name"; "dataField"; "Lastname"))
$parameter.tableColumns.push(New object("name"; "Email"; "dataField"; "email"))
$parameter.tableColumns.push(New object("name"; "Birthday"; "dataField"; "Birthday"; "formatter"; "dddd dd MMMM yyyy"))
$parameter.tableColumns.push(New object("name"; "Country"; "dataField"; "Country"))

Zbývá jen použít příkaz VP CREATE TABLE příkaz, kterým naznačíme, že chceme zobrazit kolekci obsaženou v atributu people datového kontextu:

// Table creation
VP CREATE TABLE(VP Cells("ViewProArea"; 1; 1; $parameter.tableColumns.length; 1); "ContextTable"; "people"; $parameter)
// Automatic column sizing
VP COLUMN AUTOFIT(VP Column($area; 0; 4))

blank

Podívejte se na HDI výše, abyste viděli tyto příkazy v akci. Nezapomeňte si také přečíst 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.