Novinky ve verzi 4D v20.

Automaticky přeloženo z Deepl

V tomto dokumentu jsou shrnuty všechny nové funkce, které jsou k dispozici ve verzi 4D v20 . Všimněte si, že ke každé funkci je přidán související příspěvek na blogu, který vás provede konkrétními příklady. Tyto blogové příspěvky jsou přístupné po kliknutí na název funkce.

Také sekce s označením blank se týkají všech nových funkcí vydaných mezi 4D v19 R8 a 4D v20.

Tento dokument je rozdělen do šesti částí:

Improved network communication

Seznamte se s QUIC blank

Vzhledem k tomu, že počet současných připojení k největším produkčním serverům běžícím na 4D neustále roste, stalo se zajištění optimálního výkonu pro vývojové týmy nejvyšší prioritou. Jako slibné řešení této výzvy se objevil protokol QUIC.

QUIC je protokol navržený pro zvýšení rychlosti a výkonu v sítích na straně serveru. Protokol QUIC, vyvinutý společností Google v posledním desetiletí, využívá výhod protokolu UDP namísto protokolu TCP a umožňuje rychlejší obnovu v případě ztráty paketů, přetížení a dalších problémů. QUIC je dnes hojně využíván například v protokolu HTTP/3 jako „HTTP over QUIC“ a je podporován všemi hlavními prohlížeči, přičemž se již používá ve více než polovině všech spojení se servery společnosti Google. Facebook zpracovává více než 75 % svého internetového provozu pomocí QUIC a mnoho aplikací, například YouTube, Gmail nebo Uber, používá QUIC pro komunikaci se svými servery.

Doporučujeme vám, abyste si QUIC vyzkoušeli a poskytli nám zpětnou vazbu, která nám pomůže tuto zajímavou novou technologii vylepšit a zdokonalit a připravit tak půdu pro její začlenění do budoucích verzí 4Dv20. A nezapomeňte, že QUIC může zlepšit odolnost infrastruktury 4D, takže bude lépe připravena na špatná připojení a další síťové problémy.

Jazyk 4D a další programovací funkce

Vestavěný server Websocket blank

Protokol WebSocket poskytuje trvalý, plně duplexní komunikační kanál mezi klientem a serverem. Umožňuje přenos dat mezi oběma stranami v reálném čase a umožňuje rychlejší a efektivnější komunikaci.

4D v20 nyní obsahuje vestavěný server WebSocket, který vývojářům umožňuje vytvářet webové aplikace v reálném čase, které dokáží zpracovávat velké objemy dat a poskytovat bezproblémové uživatelské prostředí.

To otevírá svět možností pro vizualizaci dat v reálném čase, kolaborativní aplikace a aplikace internetu věcí, které vyžadují okamžité aktualizace.

Inicializátor objektů a kolekcí blank

Objekty a kolekce lze v kódu inicializovat pomocí příkazů New object a New collection.

4D v20 zavedlo novou a čitelnější syntaxi pro inicializaci velkých nebo složitých objektů a kolekcí v kódu – literál objektu a literál kolekce.

Pomocí objektových literálů můžete inicializovat objekt s jeho vlastnostmi a hodnotami uzavřenými do kudrnatých závorek {}. Například místo příkazu New object můžete vytvořit nový objekt a inicializovat jeho vlastnosti na jediném řádku kódu takto: $object1 := {a : „foo“; b : 42+26; c : {}; d : [„coucou“; „rien“]}.

Podobně můžete pomocí literálů kolekcí inicializovat kolekci s jejími prvky uzavřenými v hranatých závorkách [].

Nové příkazy pro uzamčení datového úložiště blank

4D vám poskytuje několik vestavěných způsobů zálohování dat: 4D backup a použití zrcadlového serveru. Ve verzi 4D v20 zpřístupňuje 4D interní příkazy pro uzamčení datového úložiště, které umožňují kopírovat data za běhu 4D. Pozdravte ds.flushAndLock(), ds.locked() a ds.unlock().

Automatická integrace více časopisů blank

4D v20 přináší novou výkonnou funkci, která může výrazně zvýšit vaši produktivitu při operacích údržby databáze. Díky automatické integraci více žurnálů při spuštění databáze se můžete soustředit na vývoj své aplikace, místo abyste trávili čas ručními úkoly správy databáze.

Chcete-li tuto funkci využít, stačí zajistit, aby bylo aktivováno nastavení„Integrovat poslední deníky, pokud je databáze neúplná„, což je výchozí nastavení. Poté umístěte soubory deníků, které chcete integrovat, vedle aktuálního deníku. 4D automaticky zjistí všechny chybějící operace ve spouštěcí databázi a zkontroluje všechny soubory žurnálu, aby zjistil, zda je možná obnova. Pokud se nevyskytnou žádné problémy, integruje operace ze všech žurnálů bez nutnosti jakéhokoli zásahu z vaší strany.

Sestavení aplikace pomocí příkazů 4D blank

Společnost 4D neustále přidává nové funkce, které vývojářům pomáhají vytvářet vlastní sestavovací řetězec a poskytují větší flexibilitu a možnosti přizpůsobení jejich aplikací. Mezi tyto funkce patří možnost vytvořit složku „.zip“, přidat další informace, například autorská práva na spustitelný soubor nebo „dll“, a vytvořit soubor „info.plist“.

S vydáním verze 4D v20 byly přidány dvě nové funkce, které ještě více usnadňují proces vytváření samostatných aplikací nebo aplikací typu klient/server:

  1. Přidání ikony ke spustitelnému souboru.
  2. Generování licenčního souboru pro nasazení.

Nástroj pro spouštění kódu 4D v CLI. blank

4D v20 přináší novou aplikaci s názvem tool4d. Tato aplikace je podmnožinou 4D určenou pro váš sestavovací řetězec k automatizaci procesu sestavování a je určena k bezhlavému spouštění skriptů prostřednictvím rozhraní příkazového řádku. Poskytuje však také LSP server, který komunikuje s rozšířením VS Code.

Rozšíření 4D-Analyzer blank

Tomuto rozšíření věnovali naši vývojáři 4D velkou pozornost a my nemůžeme být spokojenější!

4D přineslo podporu editoru kódu Visual Studio Code, což mu umožňuje zpracovávat kód 4D a poskytovat mu standardní funkce, jako je zvýrazňování syntaxe, přechod na definici, nápověda k podpisu a doplňování kódu.

4D v20 přináší nové možnosti editoru Visual Studio Code prostřednictvím rozšíření 4D-Analyzer: Přivítejte skládání a odsazování kódu a kontrolu syntaxe.

Seznamte se s vylepšenou rozlišovací funkcí blank

Funkce distinct výběrových tříd Collection a Entity umožňuje získat seznam jedinečných hodnot.

Ve verzi 4D v20 můžete také získat počet výskytů každé odlišné hodnoty. Navíc umožňuje načíst všechny cesty atributů použité v poli objektu. Tato funkce může být výhodná při práci s velkými soubory dat a při potřebě analyzovat četnost výskytu konkrétních hodnot.

Porovnání s neurčitou hodnotou blank

Se zavedením ORDA a dalších objektů ve 4D vývojáři často pracují s nedefinovanými hodnotami, což někdy vede k chybám při porovnávání s jinými hodnotami.

Počínaje verzí 4D v20 bylo zavedeno nové vylepšení, které vývojářům umožňuje porovnávat jakýkoli typ hodnoty s nedefinovanou hodnotou, aniž by došlo k vyhození chyby. To znamená, že nyní můžete bezpečně porovnávat nedefinované hodnoty s jinými, aniž byste se museli obávat, že ve svém kódu způsobíte chybu.

Představení nejnovějších funkcí vyhledávání a nahrazování blank

Funkce „Najít a nahradit“ v editoru kódu existuje již mnoho let. Vývojáři mohou rychle a efektivně vyhledávat a nahrazovat kód, zejména při práci s rozsáhlými kódovými základnami. Verze 4D v20 přináší vylepšení, která jistě ocení vývojáři, kteří se na tuto funkci spoléhají při zefektivňování svých kódovacích postupů:

  • znalost počtu výskytů, které je třeba nahradit,
  • znalost pozice aktuálního výskytu,
  • stálý přístup k možnostem navigace Další a Předchozí,
  • zobrazení palety namísto modálního okna pro omezení počtu kliknutí.

Předávání objektu formuláře příkazům Print Form a FORM LOADblank

Ve verzi 4D v20 je příkaz Form podporován pomocí Print form a FORM LOAD. Form, přičemž předchozí verze byly k dispozici pro DIALOG nebo dílčí formuláře, umožňuje výrazně snížit potřebu procesních proměnných a psát přenositelnější a izolovanější kód. Jedná se o vítané vylepšení systému 4D, které nepochybně usnadní život vývojářům a zvýší jejich produktivitu.

Vytvoření vlastní nabídky nápovědy blank

Ve 4D v20 můžete vytvořit vlastní nabídku „Nápověda“ pro vaši aplikaci předáním kolekce popisující položky nabídky. To vám například umožní poskytnout uživatelům snadný přístup k dokumentaci, podpoře a dalším užitečným zdrojům.

Nové praktické funkce pro kolekce blank

4Dv20 poskytuje sadu funkcí pro manipulaci s kolekcemi. Kromě více než 40 metod, které jsme poskytovali již v předchozí verzi, vám tato verze nabízí:

  • first() a . last(), jak jejich názvy napovídají, umožňují přístup k prvnímu a poslednímu prvku kolekce.
  • Na adrese at() funkce je také alternativou hranatých závorek (col[x]) s výhodou; hodnota může být záporná, aby se získaly prvky od konce.
  • Funkce flat() Funkce je inovativnější a v některých případech bude velmi užitečná. Umožňuje zploštění kolekcí, které mohou obsahovat kolekce (které mohou obsahovat i kolekce atd.).
  • Funkce includes() funkce je užitečná, protože umožňuje zjistit, zda kolekce obsahuje ten či onen prvek téměř libovolného typu… textový, číselný, datumový… a dokonce i odkazy na objekty nebo kolekce.
  • Nový reduceRight() který je optimalizovaným ekvivalentem funkce reverse().reduce()
  • . flatMap() funkce nám umožňuje provést v rámci jedné operace např. map() následovaný flat() – funkci, o které jsme se zmínili dříve.

Formát PDF pro náhled tisku v systému Windows blank

Formát PDF se nyní stal životaschopnou alternativou k formátu XPS pro náhled tisku v systému Windows a poskytuje uživatelům novou a dostupnější možnost. Rozhodnutí společnosti Microsoft učinit z prohlížeče XPS volitelnou funkci systému Windows způsobilo mnoha uživatelům problémy při nasazování aplikací, což vedlo k tomu, že koncoví uživatelé nemohli zobrazit náhled svých výtisků. Přestože instalace bezplatného prohlížeče XPS Viewer je jednoduchý proces, někteří správci váhají s instalací dalších funkcí, zejména v prostředích vzdálené plochy.
Naštěstí 4D v20 nyní nabízí možnost použít pro náhled tisku formát PDF. Vzhledem k tomu, že téměř všechny současné verze systému Windows mají předinstalovaný buď formát XPS, nebo PDF, neměli by se již koncoví uživatelé setkávat s problémy s náhledem tisku. Tato nová možnost nabízí flexibilnější a efektivnější řešení, které vyhovuje potřebám koncových uživatelů i správců.

Vraťte se. Pokračovat. Přerušení. A další

Vyslechli jsme vaše požadavky na funkce ve Fóru 4D a provedli několik vylepšení jazyka 4D!

  • Počínaje příkazy, které umožňují vyskočit z bloku kódu:
    • Klíčové slovo return ukončuje provádění metody nebo funkce, ve které se objevuje, a vrací řízení volající metodě. Může také vracet nepovinnou hodnotu.
    • Klíčové slovo break ukončuje cyklus, který ho obsahuje. Následující vykonaný příkaz je ten, který následuje bezprostředně za tělem smyčky.
    • Příkaz continue ukončuje provádění příkazů v aktuální iteraci smyčky a pokračuje v jejím provádění další iterací.
  • Následuje vyhodnocení zkratky : V případě výrazu, který používá operátor AND nebo OR, zkrácené vyhodnocení znamená, že druhý argument se provede nebo vyhodnotí pouze tehdy, pokud první argument nestačí k určení hodnoty výrazu. Za tímto účelem přidáváme dva nové operátory:
    • && pro operátor AND
    • || pro operátor OR
  • A pak je tu ternární operátor, což je podmínka následovaná otazníkem ( ? ), výraz, který se má vyhodnotit, pokud je podmínka pravdivá, následovaný dvojtečkou (:), a nakonec výraz, který se má vyhodnotit, pokud je podmínka nepravdivá: podmínka? hodnota Pokud je pravdivá: hodnota Pokud je nepravdivá.

Zpracování chyb

4D v20 přináší nové možnosti zpracování chyb. Od nynějška můžete definovat globální obsluhu chyb, která bude účinná pro všechny kontexty provádění (procesy, pracovníky, vypočtené atributy ORDA, funkce ORDA atd.). Pokud v novém procesu/pracovníkovi vynecháte definici lokální obsluhy chyb, bude automaticky vyvolána globální obsluha chyb. To znamená, že na serveru se již nebude zobrazovat dialogové okno s chybou ani nezachycené chyby.

Vizualizace komponent tříd v průzkumníku metod

4D již umožňuje aplikacím, které stále běží v binárním režimu, využívat funkce tříd pomocí komponenty (v režimu projektu) pro vytváření a používání vlastních tříd z vaší aplikace (založené na binárním režimu). Tato funkce zahrnovala tipy a podporu doplňování kódu pro usnadnění psaní kódu.

Pro ještě snazší kódování přináší 4D v20 novou funkci. Od nynějška si můžete v průzkumníku metod vizualizovat seznam všech dostupných tříd komponent , takže se během okamžiku rozhodnete, které funkce potřebujete ve svém kódu použít.

Podpora větších celých čísel než integer32

Potřebujete tedy větší čísla než 2 miliardy (32 bitů) s vysokou přesností pro čítače nebo podobné účely? Vylepšili jsme reálná čísla a způsob, jakým se s nimi pracuje, abychom to umožnili. Ačkoli je známo, že reály jsou nepřesné, jsou 100% přesné i pro velmi velká čísla, pokud nepoužívají desetinnou čárku (=celá čísla). To umožňuje používat čísla až do velikosti 53 bitů, přesněji řečeno [-(2^53)+1, (2^53)-1]. Takže rozsah od -9 007 199 254 740 992 do 9 007 199 254 740 992 bude přesně reprezentován.

Převod do nebo z textu byl omezen na použití 12místného vědeckého zápisu, což vedlo ke ztrátě přesnosti. Ve verzi 4D v20 jsme zlepšili přesnost a převod libovolného reálného čísla (prezentujícího celé číslo) na text. Vylepšení převodu na řetězec se týká příkazu String() a příkazů JSON a XML vracejících čísla ve formě řetězce.

Podpora vzorců v kolekcích a zpětných příkazů

Aby bylo možné jednodušeji používat kolekce s členskou metodou, která potřebuje metodu zpětného volání, umožňuje 4D použít vzorec pro definici zpětného volání v:

Povolení komponentám publikovat třídy

Předpokládejme, že vaše aplikace stále běží v binárním režimu. V takovém případě vám tato funkce umožní využívat třídy a objektově orientovaný vývoj pomocí komponenty (v režimu projektu) k vytváření a používání vlastních tříd z vaší aplikace (založené na binárním režimu). Počínaje verzí 4D v20 je tedy v sekci Nastavení struktury -‚ Obecné přidána nová sekce Komponenta, která vám umožní nastavit, jak budou třídy a funkce vaší komponenty vystaveny v editoru metod 4D po instalaci komponenty.

Předávání parametrů z funkce nebo metody do jiné

Ve verzi 4D v20 nemusí vývojáři při volání funkce a předávání parametrů řešit složité kontroly parametrů (počet parametrů, typy hodnot).

K dispozici je nový příkaz Kopírovat parametry, který umožňuje snadno předat parametry použité při volání funkce nebo metody jiné funkci/metodě. Výsledkem je lehčí, elegantnější a čitelnější kód.

Komunikace mezi formuláři a podformuláři

Počínaje verzí 4D v20 obohatilo přiřazení proměnné k podformuláři možnosti rozhraní a komunikace mezi formuláři a podformuláři. Prostředky komunikace jsou nyní zjednodušeny dvěma novými příkazy: OBJECT Get subform container value a OBJECT SET SUBFORM CONTAINER VALUE.

Nový příkaz pro získání podrobných informací o licencích

Aplikace 4D v20 je dodávána s novým příkazem, který poskytuje veškeré informace o využívání licencí: Příkaz Get License Usage (Získat využití licence). Rozšířili jsme také diagnostické protokoly. Díky získání této funkce budete moci sledovat spotřebu licencí na svém serveru, optimalizovat jejich využití a plánovat budoucí potřeby.

Další možnosti zadávání příkazu OBJECT SET

Příkaz OBJECT SET ENTERABLE byl vylepšen, což vám umožní lépe spravovat pole, které nelze upravovat. Jako třetí parametr příkaz podporuje logické nebo celé číslo.

  • Příkaz tedy můžete používat stejně jako dříve, aniž byste museli měnit kód předáním logického prvku. Mění se pouze vlastnost zadatelného pole (False nebo True).
  • Nebo můžete předat celé číslo. Můžete tedy nastavit vlastnost enterable a focusable pro vaše pole.

Přístup k parametrům metody, které neexistují

4D v20 umožňuje bezchybný přístup ke všem parametrům metody, i když některé nebyly volajícím předány. Kód je přehlednější a čitelnější bez opakovaného klíčového slova „if“.

Vytvoření atributu blob v objektu

Se zavedením tříd vzrostla potřeba ukládat data v objektech, zejména data ve formě blobů. Z tohoto důvodu podporuje 4D v20 zapouzdření blobů v objektech.

Kromě aspektu ukládání, protože objekt blob je referenční typ, bude spotřeba paměti nižší a výrazně se zvýší rychlostní výkon.

Správa značek pořadí bajtů (BOM) a konce řádku (EOL)

4D se plynule vyvinulo tak, aby dodržovalo osvědčené postupy týkající se správy určitých neviditelných znaků v textových souborech. Proto od nynějška 4D zapisuje textové soubory bez BOM. A v systému macOS používá 4D jako znak EOL znak LF. To je zcela automatické pro všechny soubory zapsané programem 4D, například 4DSettings, 4dm, 4DForm atd.

Co se týče nastavení kompatibility, jsou k dispozici nové volby umožňující generovat soubory TEXT TO DOCUMENT a File.setText( ) bez BOM a používat LF jako EOL znak na macOS, pokud chybí volitelné parametry „charSet“ a „breakMode“. Další podrobnosti najdete v dokumentaci.

Výchozí soubor .gitignore v nových projektech

Režim projektu umožňuje snadno sledovat změny pomocí systému Git (systém pro správu verzí), ale často nechcete sledovat soubory projektu v úložišti Git. 4D v20 umožňuje definovat, co se v novém projektu nemá sledovat, a to automatickým přidáním výchozího souboru .gitignore do složky projektu se seznamem výchozích souborů a složek, které se mají vyloučit.

Automatické podepisování složek v systému Mac

V aplikaci 4D v20 a v systému Mac 4D automaticky podepisuje sestavené komponenty pomocí certifikátů definovaných uživatelem nebo pomocí podpisu Adhoc, pokud není žádný certifikát zadán. To umožňuje vývojářům komponent distribuovat podepsané komponenty, aby je koncoví uživatelé nemuseli před jejich použitím podepisovat.

Zobrazení online dokumentace přímo z editoru kódu

Můžete přistupovat k podrobnostem o funkci třídy, aniž byste museli hledat na webu dokumentaci. Stačí stisknout klávesu F1 nebo klepnout na položku Goto definition... v kontextové nabídce.

E-maily

POP3: Stáhněte pouze hlavičku poštyblank

Při načítání e-mailových zpráv pomocí protokolu POP3 je možné načíst pouze záhlaví zprávy (které obsahuje informace, jako je odesílatel, předmět a datum), aniž by bylo nutné stahovat celé tělo zprávy.

Získání pouze záhlaví zprávy může být užitečné, pokud chcete rychle prohledat seznam zpráv v poštovní schránce a rozhodnout se, které z nich stáhnout a přečíst celé.

Počínaje verzí 4D v20 je do funkce POP3Transporter.getMail() přidán nový parametr pro příjem e-mailů bez těla.

IMAP: Id schránky a klíčová slova poštyblank

4D v20 přináší dvě užitečné funkce do aplikace IMAP Transporter:

První funkcí je možnost spravovat vlastní klíčová slova e-mailu při interakci s konkrétními poštovními servery a klienty IMAP. Vlastní klíčová slova umožňují označit e-maily konkrétními štítky nebo kategoriemi, což usnadňuje jejich pozdější organizaci a vyhledávání. Díky této nové funkci v aplikaci 4D v20 můžete přidávat, odebírat nebo vypisovat vlastní klíčová slova e-mailů pomocí aplikace IMAP Transporter.

Druhou funkcí je podpora ID poštovní schránky v aplikaci IMAP Transporter. Při práci s poštovními schránkami IMAP může dojít k jejich přejmenování nebo přesunu, což v průběhu času ztěžuje jejich sledování. Díky podpoře ID schránky v aplikaci 4D v20 můžete identifikovat konkrétní schránku, i když byla přejmenována nebo přesunuta. To může být užitečné pro sledování zásadních schránek, například těch, které obsahují archivované zprávy nebo zprávy od konkrétních odesílatelů.

Nativní podpora služby Microsoft 365

Vzhledem k tomu, že stále více zákazníků přechází pro své e-mailové potřeby na Microsoft 365, nabízí 4D v20 řešení, které zjednodušuje správu e-mailů.

Nejnovější automatizační funkce umožňují snadnou automatizaci e-mailových operací Microsoft 365 pomocí vestavěných příkazů. Mezi tyto operace patří např:

  • odesílání, přijímání e-mailů a seznam složek poštovní schránky
  • přesunout e-mail z jedné složky do druhé,
  • odpověď na e-mail a vytvoření konverzace,
  • vytvoření návrhu e-mailu a jeho uložení do zvolené složky,
  • a odstranění e-mailu.

Microsoft365: správa složek blank

Společnost Microsoft ruší základní ověřování pro protokoly IMAP a POP3, což znamená, že uživatelé budou muset pro přístup ke svým e-mailovým datům používat bezpečnější metodu ověřování. Rozhraní Graph API představuje bezpečnější a modernější způsob přístupu k datům v Microsoft 365, včetně e-mailových dat.

Díky novým funkcím v sadě 4D NetKit můžete nyní spravovat (vytvářet, mazat, přejmenovávat a získávat informace) naprogramováním poštovních schránek pomocí rozhraní Microsoft Graph API.

Získávání informací o uživatelích ze služby Azure

Kromě přístupu k aplikacím Office poskytuje společnost Microsoft službu Active Directory založenou na Azure, která umožňuje uživatelům přihlásit se k přístupu ke službám, jako je Microsoft Sharepoint nebo OneDrive, pomocí webového prohlížeče. Všechny služby Microsoftu používají stejné jednotné přihlášení na základě e-mailové adresy. Od verze 4D v20 vám 4D NetKit umožňuje být součástí tohoto konceptu a umožnit uživatelům přihlašovat se do vaší aplikace pomocí jejich obvyklých firemních přihlašovacích údajů.

Kromě toho, že umožní Single Sign-On, umožní získat informace o ověřovaném uživateli, jako je e-mail, oddělení a telefonní číslo. Pokud to správce povolí, můžete načíst údaje o kolegyních uživatele v rámci stejné společnosti.

Podpora šifrování hesel pomocí Bcrypt

Počínaje verzí 4D v20 jsou všechna hesla hashována algoritmem bcrypt. Výpočet algoritmu trvá mnohem déle, dostatečně na to, aby se zabránilo algoritmům hrubé síly obnovit původní heslo.
Pro jeho zavedení je vše automatické. Nemusíte se dotýkat žádného nastavení ani řádku kódu. Při změně hesla v sadě nástrojů nebo pomocí příkazů ZMĚNIT HESLO nebo Nastavit vlastnosti uživatele se uloží hash bcrypt. A při ověřování 4D automaticky rozpozná, zda je heslo uloženo s hashem legacy nebo bcrypt, takže se uživatelé mohou nadále připojovat beze změny hesla.

Vylepšení klienta HTTP

Abychom mohli pokračovat ve zlepšování syntaxe a funkčnosti 4D, rozhodli jsme se modernizovat příkazy klienta HTTP ve 4D. Verze 4D v20 přinesla nový způsob provádění požadavků HTTP: Třídy HTTP. Navíc některé funkce tříd HTTP, včetně komprimovaných odpovědí, chunked odpovědí a přesměrování.

Editor kódu

Rychlý přechod na různé funkce třídy

Třídy se skládají z několika různě dlouhých funkcí. Není tedy vždy snadné najít funkci, kterou chcete upravit, nebo přejít z jedné funkce na druhou. Je možné použít průzkumníka, který zobrazuje třídy a funkce, ale když programujete v okně editoru, nechcete ztrácet čas přepínáním oken.

V aplikaci 4D v20 se seznam funkcí třídy zobrazuje na panelu nástrojů editoru kódu, což umožňuje rychlý přechod na konkrétní funkci.

Značky komentářů

4D v20 posouvá komentáře na novou úroveň díky značkám komentářů, které umožňují lepší organizaci komentářů. Značky slouží ke klasifikaci komentářů jednoduchým umístěním značky na začátek řádku komentáře. Dali jsme vám k dispozici tři značky:

  • MARK
  • TODO
  • FIXME

Tag MARK umožňuje rozdělit kód na části. Můžete jej zapsat třemi různými způsoby. Další dvě značky TODO a FIXME se zapisují podobně. Zajímavostí je, že mají různé ikony v seznamu, což vám umožňuje uspořádat kód tak, abyste si určili priority budoucích činností.

Syntaxe kontroly objektů

Automatické doplňování zjednodušuje psaní kódu a omezuje chyby v názvech funkcí. Nevyhýbá se jim však zcela; je snadné přehodit dvě písmena, zapomenout velké písmeno. A pak strávit čas hledáním, proč váš kód nefunguje. Jaký je tedy lepší způsob než požádat 4D, aby zkontroloval, zda třídy nebo funkce již existují? Počínaje verzí 4D v20 se v editoru kódu zobrazí varování, pokud voláte funkci, která neexistuje.

Přizpůsobení editoru kódu

Kromě přizpůsobení okna a oblasti kódu přináší 4D v20 dvě nové možnosti přizpůsobení:

  • Zobrazit nebo skrýt deset schránek.
  • Ikona „zobrazit/skrýt seznamy“ byla přesunuta do pravého dolního rohu vedle seznamů.

Zjednodušená navigace mezi kódem, dokumentací a průzkumníkem

Při vytváření formuláře nebo psaní nové funkce či metody obvykle potřebujete:

  • přistupovat k průzkumníkovi, abyste vyplnili formulář v jeho složce
  • přistupovat k průzkumníkovi, abyste mohli napsat dokumentaci k metodě
  • zobrazit dokumentaci k příkazu na webu 4D online.
  • zobrazit dokumentaci metody komponenty.
  • přistupovat ke kódu funkce, kterou chceme použít v naší metodě, abychom provedli nějaké úpravy
  • snadno přecházet mezi různými funkcemi třídy

Ve verzi 4D v20 jsme přidali položky nabídek a nový seznam v editoru kódu, který umožňuje lepší navigaci mezi různými prvky projektu.

Zobrazení online dokumentace přímo z editoru kódu

V aplikaci 4D v20 máte přístup k podrobnostem o funkci třídy, aniž byste museli hledat na stránkách s dokumentací. Stačí stisknout klávesu F1 nebo kliknout na položku Goto definition... v kontextové nabídce.

Web

Ladění na serveru pomocí škálovatelných webových relací

Významným vylepšením bylyškálovatelné webové relace. Umožňují používat značky 4D, akce 4D a rozhraní REST API v preemptivních procesech, a to i v interpretovaném režimu na serveru 4D. Pro ladění však bylo nutné otevřít vývojové prostředí na serveru, aby se přepnulo do kooperativního režimu, protože okno ladicího programu nelze otevřít s preemptivními procesy. Počínaje verzí 4D v20 jsme ladění na straně serveru zjednodušili tím, že jsme k němu debugger jednoduše připojili.

Nové vykreslovací jádro systému Windows

Počínaje verzí 4D v20, pokud používáte systémové vykreslovací jádro, používá 4D prohlížeč Microsoft Edge WebView2. Díky této změně můžete využívat výhod moderního prohlížeče s nejnovějšími funkcemi a aktualizacemi zabezpečení. Prohlížeč Microsoft Edge lze například použít k zobrazování souborů PDF.

Soubory a složky

Rukojeti souborů

Pokud jde o zápis a čtení, máte k dispozici funkce setText a getText pro čtení nebo zápis celého obsahu. 4D v20 přináší obsluhy souborů v případě, že chcete přečíst nebo přidat jeden či více řádků do existujícího dokumentu.

Souborové rukojeti jsou objekty vytvořené na základě objektů „Soubor“ a disponují funkcemi pro přístup k libovolné části dokumentů a odtud pro postupné čtení nebo zápis jejich obsahu.

PODPORA LZMA, NOVÉHO KOMPRESNÍHO ALGORITMU

Ve verzi 4D V20 podporuje příkaz Zip Create Archive nový kompresní algoritmus: LZMA. Výhodou tohoto algoritmu je, že vytváří menší archivy než standardní kompresní algoritmus zip. Příkazu můžete předat objekt „zipArchive“ a přizpůsobit tak svůj zip. Ten umožňuje zvolit kompresní algoritmus, šifrovací algoritmus a další možnosti.

Listbox

Automatické výšky řádků v rámečcích seznamu založených na kolekcích

Automatické výšky řádků již byly možné u seznamových boxů založených na poli, což jim umožňovalo automaticky přizpůsobit výšku každého řádku jeho obsahu. 4D v20 přináší tuto možnost i do seznamových boxů založených na kolekcích a výběrech entit.

Rozlučte se s klávesou ALT

Pokud jde o seznamové boxy a akci Přetáhni a pusť, počínaje verzí 4D v20 již není nutné držet klávesu Alt pro přesun několika položek současně.

Vodorovné a svislé vyplňování buněk

Síla seznamových boxů je v 4D v20 rozšířena díky dvěma novým vlastnostem: horizontálnímu a vertikálnímu paddingu (vnitřní okraje nebo prostor mezi obsahem prvku a jeho okrajem). Poskytnou vašim seznamovým boxům nové možnosti prezentace a vaše rozhraní bude mít ještě profesionálnější vzhled.

Tyto vlastnosti lze nastavit globálně pro celý seznamový box nebo pro jednotlivé prvky, jako jsou sloupce, záhlaví nebo zápatí. Jakmile jsou definovány pro seznamový rámeček, uplatní se na základě dědičnosti na každý dílčí objekt seznamového rámečku. Každý dílčí objekt však samozřejmě může mít vlastní nastavení.

Nastavení výplně lze provést buď:

  • prostřednictvím režimu návrhu ze seznamu vlastností v části „Souřadnice a velikost“.
  • nebo programováním pomocí příkazu LISTBOX SET PROPERTY díky dvěma novým konstantám, lk cell horizontal padding a lk cell vertical padding.

Souběžný vývoj na serveru 4D Server v režimu projektu

Pokud patříte mezi vývojáře, kteří žádali o možnost pracovat současně s kolegy z týmu na jednom vývojovém serveru, pak vám 4D v20 splní vaše přání díky novému režimu připojení 4D Client k 4D Serveru: vývojový režim.

Vývojáři mohou ve vývojovém režimu upravovat strukturu databáze, metody, formuláře a nastavení. Změnili jsme systém zamykání tak, aby poskytoval stejnou funkčnost jako v binárním režimu.

Testovací aplikace SDI pro systém Windows

Už dlouho jste nemohli svým zákazníkům poskytovat sloučené aplikace v režimu SDI. To byl obrovský krok vpřed pro UX aplikací systému Windows.

Aplikace 4D v20 usnadňuje testování SDI aplikace: můžete si prohlédnout výsledek aplikace, aniž byste museli sestavovat samostatnou nebo klientskou aplikaci.

Systémoví pracovníci: Spusťte externí proces asynchronně.

K dispozici je vám další velmi žádaná funkce. Někdy potřebujete spouštět procesy na pozadí a provádět konkrétní akce na základě jejich výstupního kódu, jakmile je k dispozici, zatímco proces stále běží. Například zobrazit ukazatel průběhu. 4D umožňuje spustit proces na pozadí pomocí nové třídy 4D.SystemWorker a automaticky provádět metody zpětného volání, když proces vrátí informace. Pokud ji tedy použijete s rozhraním, rozhraní zůstane pro uživatele citlivé, zatímco externí proces běží, a po jeho dokončení můžete klientovi zobrazit výsledek.

Reorganizace diagnostických protokolů

Diagnostické protokoly jsou pro řešení problémů stále důležitější. Zcela jsme je reorganizovali tím, že jsme vylepšili jejich obsah a přidali způsob filtrování obsahu (úrovně protokolů, jako jsou trace, debug, info, warn a error). Díky novému databázovému parametru Úroveň diagnostického protokolu můžete řídit tok protokolů v diagnostickém protokolu a udržovat jej v malém rozsahu a zároveň zaznamenávat to, co skutečně potřebujete.

Konfigurační soubor pro protokolování

V rámci našeho projektu vylepšení logů přidává 4D dvě nové funkce:

    • možnost okamžitého pozastavení protokolování
    • a způsob, jak mohou týmy podpory rychle pomoci svým zákazníkům nakonfigurovat jejich protokoly prostřednictvím konfiguračního souboru.

Uživatelské rozhraní

Vývoj objektů formulářeblank

Abyste mohli vytvářet co nejkrásnější rozhraní, jsou k dispozici nové možnosti:

  • U tlačítek, přepínačů a zaškrtávacích políček jsme přidali nová nastavení pro text a ikonu. Vlastnost „Zarovnání textu“ a nový „Obrázek objímá nadpis“.
  • U rádiových tlačítek a zaškrtávacích políček byl vylepšen počet stavů ikony (True, False, Rollover a Disable), aby bylo možné lepší vykreslení pro koncového uživatele.

Zaoblené rohy

Do verze 4D v20 byla také přidána možnost zaoblit rohy statických textů a vstupních textů díky novému atributu „Poloměr rohu“. Zadání jeho hodnoty lze provést prostřednictvím uživatelského rozhraní (seznam vlastností), CSS nebo kódu.

Vysoké DPI v systému Windows: Podpora obrazovek s vysokým rozlišením

High DPI je zkratka pro High Dots Per Inch, tedy vysoký počet bodů na palec. Vyjadřuje hustotu pixelů; čím vyšší je DPI, tím vyšší je hustota pixelů. Na obrazovkách s rozlišením 4K může být hustota pixelů tak vysoká, že při běžném zobrazení by byly všechny ikony a ovládací prvky extrémně malé. Systém Windows proto umožňuje měnit měřítko textu, ikon a ovládacích prvků. Na obrazovkách 4K je aktivováno ve výchozím nastavení. Vysoké DPI jsme poprvé podporovali v systému Mac a nyní je plně kompatibilní i se systémem Windows. Výsledkem je lepší kvalita textu a obrazu.

Vývoj s 4D v tmavém prostředí v systému MacOS

Od verze 4D v19 můžete v systému macOS vytvářet aplikace podporující tmavý režim, takže můžete potěšit své uživatele tím, že jim umožníte vybrat si aplikace ve světlém nebo tmavém stylu. S verzí 4D v20 vám jako vývojáři poskytujeme možnost volby při vývoji aplikace. Verze 4D Developer Edition se hladce integruje se světlým nebo tmavým vzhledem systému macOS.

Optimalizace panelu nástrojů Editoru struktury

Panel nástrojů byl upraven tak, aby modernizoval a standardizoval všechna okna 4D.

Při najetí na tabulky, pole nebo vztahy se ve stavovém řádku zobrazí užitečné informace. Novinkou ve verzi 4D v20 je zobrazení názvů vztahů přímo ve stavovém řádku. Již není nutné otevírat okno vlastností.

Průzkumník dat

Průzkumník dat 4D je rozhraní webového prohlížeče, které může správce i vývojář používat vzdáleně (bezpečně pomocí připojení HTTPS) nebo lokálně na stejném počítači jako otevřenou databázi.

Ve verzi 4D v20 nabízí nyní Průzkumník dat dvě zásadní vylepšení.

Vizualizace vztahů mezi vašimi daty

První funkce umožňuje vizualizovat vztahy mezi daty, což usnadňuje procházení a vyhledávání relevantních informací v databázi.

Průzkumník dat zabudovaný do 4Dblank

Druhou aktualizací je přidání ikony pro Průzkumníka dat na panel nástrojů, což ještě více usnadňuje jeho otevření ve 4D namísto externího webového prohlížeče. Uživatelé mohou přistupovat k Průzkumníku dat přímo z panelu nástrojů jedním kliknutím, což šetří čas a zvyšuje produktivitu.

Nasazení

POUŽÍVAT DUPLICITNÍ SLOUČENÉ KLIENTSKÉ APLIKACE

Jako vydavatel softwaru mají někdy někteří vaši zákazníci mnoho instancí vaší sloučené serverové aplikace, například sloučenou serverovou aplikaci pro každou společnost skupiny. V tomto typu architektury nasazení vás úředníci vašeho zákazníka často žádají, abyste na jejich počítač nainstalovali sloučenou klientskou aplikaci pro každou sloučenou serverovou aplikaci, protože chtějí používat software pro každou společnost. Od této chvíle máte k dispozici nový klíč buildApp, který vám umožní, aby každá duplikovaná sloučená klientská aplikace používala vlastní složku uživatelských preferencí (na základě cesty k aplikaci): ClientUserPreferencesFolderByPath.

Správa adresářových souborů ve sloučených serverových projektech

Na straně serveru je aktuálním uživatelem vždy Designer, proto je přístup k průzkumníku runtime vždy povolen. Pokud chcete toto chování změnit, 4D v20 umožňuje omezit administrátorům přístup k Průzkumníku dat a Průzkumníku runtime v nasazených sloučených serverech.

Zmenšení velikosti klientských aplikací a další

4D v20 přináší mnoho vylepšení při sestavování aplikací 4D. Pro začátek můžete odstranit nepotřebné knihovny (například CEF/Web Area, PHP, Mecab a 4D Updater) a snížit tak velikost svých aplikací. Změnili jsme také konečný adresář při sestavování zkompilované struktury, abychom vyšli vstříc těm, kteří používají více zkompilovaných verzí téže struktury. A pro naše japonské zákazníky jsme sloučili japonskou verzi 4D a mezinárodní verzi v systému MacOS.

Zjednodušené sestavování multiplatformních aplikací typu klient/server v systému Windows

Se zavedením systému Silicon se změnilo vytváření multiplatformních aplikací typu klient/server. Pokud svůj server sestavujete na platformě Mac, není to velký problém, protože můžete kompilovat jak pro platformu Intel, tak pro platformu Silicon. Ve Windows však není možné kompilovat pro počítače Mac se systémem Silicon. 4D v20 zavádí novou funkci, kterásnižuje počet souborů, které je třeba přenést z počítače Mac do počítače se systémem Windows. Při sestavování klienta na Macu 4D také vygeneruje adresář Compiled Database. Tento adresář obsahuje pouze zkompilovaný kód vaší aplikace a jako takový je relativně malý.

CI/CD: Sestavení zkompilované struktury nebo komponenty pomocí Build4D

Se zavedením režimu projektu je manipulace s komponentami vašich projektů poměrně snadná. V několika posledních verzích funkcí jsme přidali několik funkcí, které vám umožní vytvořit si vlastní řetězec sestavení přizpůsobený vašemu týmu, pracovním metodám a potřebám.

Abychom vám pomohli vytvořit vlastní řetězec sestavení nebo integrovat 4D do nástroje pro kontinuální integraci, vyvinuli jsme komponentu s názvem Build4D, která je k dispozici na GitHubu spolu se zdrojovými kódy. Pro tento první krok vám Build4D umožňuje vytvořit sestavenou strukturu a komponentu. Budeme ji dále obohacovat, abyste mohli spravovat jednouživatelskou, klientskou nebo serverovou aplikaci.

Sdílení místních prostředků mezi uživateli ON Služba vzdálené plochy systému Windows

Pokud jste patřili mezi vývojáře, kteří požadovali funkci umožňující stahování místních prostředků do sdílené složky se službou Vzdálená plocha systému Windows namísto složky uživatelského účtu, pak 4D v20 přináší dobrou zprávu.

Přehodnocením stávající architektury jsme získali určitou optimalizaci tím, že jsme pro projekty v procesu BuildApp vyvinuli novou možnost, která umožňuje vzájemné sdílení místních prostředků.

Aktivuje se pomocí tohoto nového klíče BuildApp XML: /Preferences4D/BuildApp/CS/ShareLocalResourcesOnWindowsClient

Výsledkem této optimalizace je následující:

  • Časový zisk, protože místní prostředky již nejsou stahovány ze serveru každým uživatelem,
  • a zisk místa na disku, protože v prostředí služby Vzdálená plocha se místní prostředky opět neduplikují pro každého uživatele.

ORDA

4D v20 nadále přináší vylepšení ORDA.Objektově relační přístup k datům jeinovativní způsob přístupu k datům, který kombinuje výhody objektově orientovaného programování s výhodami relačních databází, což umožňuje vývojářům soustředit se na řešení obchodních problémů spíše než na správu přístupu k datům.

4D v20 přináší:

správu oprávnění uživatelů (REST Server )

Kromě možnosti vystavit nebo nevystavit datovou třídu a některé její atributy jako zdroj REST – což byl pohodlný způsob, jak omezit přístup k datům, jde 4D ještě o krok dál a přináší výkonný a plně přizpůsobitelný systém ochrany dat před neoprávněnými uživateli. Systém ochrany vašich dat závisí na tom, kdo k nim přistupuje a k jakým datům přistupuje.

Tato nová funkce je založena na konceptu ORDA a škálovatelných webových relacích. Pokrývá všechny webové procesy, jako jsou požadavky REST, požadavky přijaté ve vzdáleném datovém úložišti a webové procesy, jako je 4DACTION nebo 4D tagy.

Optimalizace výkonu s úplnou kontrolou nad požadavky REST

4D v20 poskytuje lepší kontrolu nad kontexty ORDA a mezipamětí pro klient/server i REST, což zlepšuje výkon.

Vypočtené atributy

Nový způsob, jak shromáždit ještě více vaší obchodní logiky ve třídách a třídách ORDA! Doby, kdy jste museli v uživatelském rozhraní 4D definovat vzorce související s obchodem (například spojování řetězců nebo výpočet DPH), jsou pryč. Nyní můžete definovat složité výpočty přímo ve svých třídách Classes a výsledek použít stejně jako u jakéhokoli jiného pole struktury v rozhraní Rest API, mobilní aplikaci nebo například v uživatelském rozhraní založeném na ORDA.

Aliasy ORDA

4D v20 je dodáván s novým konceptem ORDA: Aliasy. Jsou logickým a doplňujícím pokračováním vypočtených atributů. Jak název napovídá, alias je vlastně zkratka existujícího objektu datového skladu. Jsou definovány v „datové třídě entit“ stejně jako vypočtené atributy. Zatímco vypočtený atribut může zpracovávat libovolný výpočet nebo vzorec, alias je pouze zkratkou, která urychluje a usnadňuje vývoj. Příkladem použití je snadný přístup k souvisejícím atributům (což znamená skrytí složitosti související databáze).

Zakázat výchozí mapování hodnoty NULL na prázdnou hodnotu

Při vytváření nového pole v databázi vám 4D umožňuje zvolit, zda chcete nebo nechcete mapovat hodnoty NULL na prázdné hodnoty. Počínaje verzí 4D v20 již 4D v nových projektech nebude ve výchozím nastavení mapovat hodnotu NULL na nepřítomné údaje. To je výhodné, protože ORDA je dokonale navržena pro práci s hodnotami NULL a ušetří vás mnoha neelegantních řešení.

Pesimistická správa zámků VIA RestModel update

Ve verzi 4D v20 můžete k uzamčení nebo odemčení entity použít rozhraní REST API. To je užitečné zejména pro:

  • Udržet konzistentní kód, pokud jste zvyklí pracovat s rozhraním REST API. Pro uzamčení/odemčení entity není třeba psát funkci ve třídách datového modelu ORDA.
  • Hladce používat pesimistické zámky s rozhraním REST API.

Plná podpora BLOB

Počínaje verzí 4D v20 jsou bloby v ORDA plně podporovány, stejně jako jakýkoli jiný typ, což umožňuje vývojářům ORDA používat syntaxi ORDA k uložení blobu do databáze.

Porovnání dvou výběrů entit

Abyste mohli efektivně pracovat s objektově orientovaným programováním a napsat co nejméně řádků kódu, potřebujete robustní a optimalizované funkce. Proto s verzí 4D v20 dodáváme novou funkci dostupnou na objektu entitySelection: funkci selected(). Díky ní můžete kontrolovat a porovnávat dva výběry entit.

4D Write Pro

Aplikace 4D Write Pro se za posledních několik verzí výrazně zlepšila. Ve skutečnosti jsme my, tým 4D, investovali do toho, aby se 4D Write Pro stal silným generátorem dokumentů založeným na šablonách, což eliminuje potřebu ruční tvorby dokumentů a snižuje riziko chyb.

Pomocí aplikace 4D Write Pro můžete automaticky podávat a generovat předvyplněné dokumenty s kontextovými informacemi, přičemž data čerpáte přímo z databáze 4D. To zahrnuje mimo jiné informace, jako jsou jména, data, informace o adresách a čísla. Aplikace 4D Write Pro pak tyto informace sloučí s vašimi šablonami, čímž zajistí zjednodušený a efektivní proces vytváření dokumentů.

4D v20 přináší výkonné funkce, jako jsou například záhlaví, datové zdroje a přenesené řádky . Ať už jste profesionál v oboru nebo vývojář, tyto funkce vám budou nesmírně užitečné při zlepšování pracovních postupů a produktivity.

4D Write Pro a textové rámečky: Možnosti importu/exportu docxblank

Textové rámečky umožňují vložit plovoucí kontejner včetně textu, tabulek, obrázků, vzorců a dalších prvků kamkoli do dokumentu. Tato funkce byla ve verzi v20 vylepšena a zahrnuje export a import těchto prvků z dokumentů docx a do nich.

Definice datových kontextů

4D v20 otevírá svět ORDA a objektově orientovaného vývoje do dokumentů 4D Write Pro. Dokumenty 4D Write Pro často obsahují vzorce vracející data nebo výpočty v závislosti na databázi. Díky kontextům je přiřazení těchto dat k dokumentům stejně jednoduché jako použití klíčového slova This. Dokonalý způsob, jak vytvářet šablony a personalizované dokumenty pomocí aplikace 4D Write Pro.

Dynamické vyplňování tabulek výběry a kolekcemi entit

Ruční plnění tabulek daty je pokaždé pracné. A právě zde přichází jako neocenitelná možnost datový kontext, který šablonám 4D Write Pro otevírá svět ORDA a objektově orientovaného vývoje.

Nyní je možné definovat „zdroj dat“ pro tabulky aplikace 4D Write Pro. Ať už se jedná o výběr entit nebo kolekce, tento „datový zdroj“ bude automaticky zásobovat řádky těchto tabulek. Tabulky se budou automaticky zvětšovat na základě výběru, a v případě potřeby dokonce přidávat další stránky. To umožňuje koncovému uživateli vaší aplikace navrhovat nebo upravovat šablony, které se budou automaticky plnit daty.

Spodní řádky přenesených dat (mezisoučty)

Představte si, že máte velkou tabulku prodejů, která potenciálně zahrnuje několik stránek. Na konci jedné stránky byste chtěli vypočítat mezisoučet, přenést jej na další stránku a zahrnout jej do výpočtů na této stránce. To je často nutné, někdy dokonce zákonem vyžadované, například při úpravě dlouhých faktur.

4D v20 umožňuje vložit na konec každé části příslušných tabulek řádek „mezisoučet“, který se může automaticky vyplnit.

To lze provést buď:

  • prostřednictvím obou rozhraní (panelu nástrojů i postranního panelu ). Nabídka tabulky obsahuje novou položku „Spodní řádek přenést“.
  • Nebo programově, díky novému atributu wk bottom carry over row.

A k určení obsahu buněk v tomto přenosovém řádku lze použít nový atribut previousItems se všemi dostupnými funkcemi (min/max/sum/atd.) pro výběry kolekcí nebo entit.

Řádky přerušení tabulekblank

Když máte seznam dat, například seznam lidí s jejich kontinenty, zeměmi a městy, můžete je chtít seskupit podle kontinentů, pak podle zemí a pak podle měst. To usnadní pochopení a analýzu dat.

Pokud je tabulka naplněna daty z tříděného zdroje dat, může aplikace 4D Write Pro vložit přerušovací řádek, kdykoli se změní hodnota třídicího kritéria. To uživateli umožňuje seskupit data podle požadovaných kritérií.

V jiném scénáři lze tuto funkci využít také k vytváření sestav na základě vztahů mezi společnostmi, kdy lze seznam zaměstnanců seskupit podle společnosti na jednotlivých kontinentech. Zadáním příslušných kritérií třídění může aplikace 4D Write Pro vytvořit samostatné skupiny pro každou společnost na každém kontinentu.

4D v20 je dodáván s novými atributy, které umožňují lépe definovat rozložení tabulek. Umožňují vám snadno vytvářet složité dokumenty 4D Write Pro, ale hlavně vizuálně přitažlivé dokumenty: pozdravte zalomení stránky uvnitř řádků tabulky. To je užitečné v případě, že buňky obsahují delší text (nebo několik odstavců). Zajímavá může být definice, že buňku (a tedy i řádek tabulky) lze také rozdělit na dvě části a zaplnit tak volné místo na stránkách dokumentů:

  • wk zalomení stránky uvnitř odstavce lze samozřejmě aplikovat na odstavce, ale také na jakýkoli cíl, jako je samotný dokument, určitý oddíl, rozsah textu atd. Ve všech případech bude atribut přiřazen odstavcům uvnitř cíle. Jedná se jednoduše o programátorský prostředek.
  • wk zalomení stránky uvnitř tabulky umožňuje rozdělit tabulku na dvě (nebo více) částí, oddělení se provede mezi dvěma řádky tabulky (jako obvykle)
  • wk page break inside row rovněž umožňuje rozdělit tabulku, tentokrát však uvnitř řádků. Všimněte si, že tato volba je závislá na předchozí volbě. Pokud nelze tabulku rozdělit, nelze rozdělit ani její řádky.

Všimněte si, že možnost zalomení stránky uvnitř řádků tabulky je k dispozici ve widgetech panelu nástrojů a postranního panelu.

Záhlaví tabulky

Tato funkce přináší další užitečnou možnost zobrazení tabulky, která je k dispozici naprogramováním nebo prostřednictvím widgetů rozhraní 4D Write Pro. Počínaje verzí 4D v20 můžete v tabulkách definovat záhlaví a automaticky je opakovat po zlomu sloupce nebo stránky.

Detekce změn v dokumentu

Když je dokument v aplikaci 4D Write Pro v režimu úprav, je často užitečné zjistit, zda jej koncový uživatel skutečně změnil. Tato informace umožňuje upravit akce nebo rozhraní tak, aby byly pro uživatele přívětivější.

Nová vlastnost document.modified rychle zjistí změny uvnitř dokumentu a provede odpovídající akce. Buď transparentně(například provádění automatického ukládání, když dokument zůstane otevřený), nebo inteligentní úpravu rozhraní podle podmínek.

Uživatelsky přívětivé zobrazení vzorců

Vzorce má každý rád, jsou nedílnou součástí dokumentů 4D Write Pro. Umožňují integrovat mnoho informací pocházejících z databáze, díky čemuž je tvorba dokumentu intuitivnější a automatičtější.

Některé vzorce však mohou být někdy z hlediska rozvržení dlouhé a pro koncové uživatele špatně čitelné.

Proto 4D v20 umožňuje zobrazit vzorce jako symbol ⓕ, který indikuje jejich přítomnost, aby byly dokumenty přesnější a přehlednější.

To lze provést:

  • Prostřednictvím seznamu vlastností díky nové vlastnosti „Zobrazit zdroj vzorce jako symbol“.
  • Nový prvek v rozhraní.
  • Nebo prostřednictvím programování díky novému atributu wk zobrazit vzorec jako symbol.

Zakázat viditelnost prázdných obrázků

Dokumenty 4D Write Pro mohou obsahovat obrázky z různých zdrojů a v různých formátech. Tyto obrázky se v některých případech nemusí zobrazit ze zcela rozumných důvodů – například neplatné adresy URL, vzorce vracející prázdné obrázky, formáty nepodporované platformou atd.

Vždy jsou však reprezentovány malým prázdným obdélníkem, který ukazuje jejich teoretické umístění. 4D v20 je dodáván s novou možností zobrazení, která umožňuje prázdné obrázky zcela zneviditelnit. To lze provést třemi různými způsoby:

    • Prvním a nejjednodušším způsobem je použití seznamu vlastností, který nabízí novou položku v tématu vzhledu.
    • Nebo prostřednictvím uživatelského rozhraní, ve kterém se objeví nový prvek. Buď na panelu nástrojů, nebo v postranním panelu.
    • Nebo programováním pomocí nového parametru wk visible empty images.

Nové možnosti zobrazení obrázků

Počínaje verzí 4D v20 mohou řádkové i ukotvené obrázky uvnitř dokumentů 4D Write Pro využívat sedm nových typů formátování díky novému atributu wk image display mode :

  • Zmenšený na míru (ve výchozím nastavení)
  • Zkrácený
  • Zkrácený na střed
  • Proporcionální
  • Proporcionální vycentrovaný
  • Replikovaný
  • Replikovaný se středem

Usnadnili jsme také formátování obrázků používaných jako pozadí dokumentů, sekcí, odstavců atd. díky novému atributu: wk background display mode.

Správa viditelnosti vzorců

Pro dokumenty 4D Write Pro je již k dispozici několik možností zobrazení. Do seznamu jsme přidali možnost wk zvýraznění vzorců, která má 4 možné hodnoty:

  • 0: žádné zvýraznění vzorců a hodnot.
  • 1: zvýraznění pouze vzorců (výchozí hodnota).
  • 2: zvýraznění pouze hodnot
  • 3: zvýraznění vzorců a hodnot

To lze provést také pomocí standardních akcí. Lze je použít u zaškrtávacích políček, standardních tlačítek a rozevíracích seznamů.

Propojené odstavce

Abyste měli lepší kontrolu nad rozvržením dokumentu, je 4D v20 dodáván s možností zvolit, zda odstavec a následující odstavec musí zůstat propojené (nesmí být odděleny automatickým zalomením stránky nebo sloupce).

Export do formátu SVG

Dokumenty 4D Write Pro lze již nyní exportovat do různých formátů: K tomuto seznamu nyní přibyl formát SVG. Ten umožňuje například vytvořit obrázek první stránky pro rychlý náhled, použitelný na obou platformách a v prohlížeči nebo mobilním zařízení, nebo vložit blok 4D Write Pro do jiného dokumentu, například do dokumentu 4D View Pro.

Protože SVG je formát obrázku, můžete si vybrat, kterou stránku dokumentu chcete exportovat. Výsledný obrázek bude vycházet z vykreslení stránky vašeho dokumentu. Bude brát v úvahu všechny možnosti rozvržení, jako je orientace, okraje atd.

Vylepšení widgetů rozhraní

4D v20 přináší sadu funkcí widgetů rozhraní:

  • Do obou rozhraní jsme přidali nabídku pro vkládání vzorců.
  • Přidali jsme také několik atributů odstavců pro lepší respektování typografických pravidel, aby byl dokument čitelnější a estetičtější, jako např:
    • Ovládání widow a sirotků
    • Vyhnout se zlomům stránek uvnitř
    • Zachovat s dalším
    • Výška řádku
  • Ve widgetu postranního panelu můžete nyní spravovat zlomy stránek, zlomy oddílů, sloupce a parametry zobrazení, jako je orientace, formát, typ (koncept, stránka nebo vložený) nebo viditelnost některých prvků (neviditelný znak, záhlaví, zápatí).
  • Co se týče widgetu na panelu nástrojů, přidali jsme možnost vyplnit pole, název, autor, předmět, společnost a poznámky.

Podpora tmavého režimu

V systému macOS můžete nakonec vyvíjet a nasazovat ve světlém nebo tmavém režimu. Poslední widgety knihovny jsou kompatibilní s tmavým režimem (v systému macOS):

  • 4D Write Pro Panel nástrojů rozhraní
  • Rozhraní 4D Write Pro
  • Postranní panel Bohatá textová oblast

Dialogové okno pro nastavení obrázku

Komponenta rozhraní 4D Write Pro nyní obsahuje nový dialog Nastavení obrázku. To umožňuje snadno definovat:

  • velikost obrázku
  • formát zobrazení
  • okraje a výplň
  • pozici na stránce pro ukotvené obrázky

Dialogové okno lze zobrazit buď z kontextové nabídky, nebo z události, například „při dvojitém kliknutí“ na formuláři, pomocí metody komponenty „WP PictureSettings“.

Tato verze funkce také umožňuje přidat obrázek z adresy URL pomocí widgetu na panelu nástrojů.

Průběžné rozdělení sekcí

Počínaje verzí 4D v20 podporuje aplikace 4D Write Pro souvislé zlomy sekcí. Průběžný zlom oddílu vytváří samostatný oddíl, ale nezpůsobuje přerušení stránky. To mimo jiné umožňuje mít na jedné stránce různý počet sloupců.

Vložení souvislého zlomu oddílu lze provést:

  • Programováním pomocí příkazu WP Insert break, který nyní podporuje novou hodnotu: wk continuous section break.
  • Pomocí nabídky s přidruženou standardní akcí nebo prostým přidáním standardní akce k tlačítku.
  • prostřednictvím uživatelského rozhraní
4D View Pro

Ať už se jedná o prodej, finance, účetnictví, analýzu dat nebo jakoukoli jinou profesi, která pracuje s dlouhými a nepřehlednými soubory dat, 4D View Pro je řešením. Jedná se o vícejazyčný produkt s přímým přístupem k datům 4D, který vám umožní plně využít výhod integrovaných výkonných tabulek. Od možnosti vytvářet graficky pokročilé dashboardy, které již nevypadají jako tabulky, až po reporty, které lze vytvářet mimo obrazovku každé ráno a automaticky je odesílat vedení – 4D View Pro má vše, co potřebujete k přijímání smysluplných obchodních rozhodnutí.

A s verzí 4D v20 je tento produkt výkonnější než kdykoli předtím a obsahuje sadu funkcí, které se vám určitě budou hodit:

Pivotové tabulky

4D v20 otočné tabulky. Pokud jsou mezi vašimi uživateli lidé z obchodu a marketingu, stojí tato funkce za vyzkoušení, protože umožňuje snadno shrnout a analyzovat data přímo z pásu 4D View Pro.

CSV: Nový formát importu/exportu

4D v20 umožňuje importovat a exportovat soubory CSV. CSV je běžný formát pro výměnu dat široce podporovaný mnoha aplikacemi. Pomocí dokumentu VP Import a VP Export můžete například zobrazit data souboru CSV, který pochází z jiného informačního systému. Tyto příkazy podporují formáty textových souborů s ohraničením, jako je CSV.

Správa listů

Programování 4D v20 umožňuje spravovat listy v dokumentech 4D View Pro. Pomocí následujících příkazů můžete vytvořit, přejmenovat, skrýt nebo odebrat list nebo jednoduše zkontrolovat, na kterém listu se uživatel právě nachází:

  • VP SET SHEET COUNT: najednou určete počet listů, které potřebujete.
  • VP ADD SHEET: vloží list (s vlastním názvem) na určitý index.
  • VP SET SHEET NAME (NASTAVIT NÁZEV LISTU): umožňuje uživatelům řídit se tím, že listům přidělíte odpovídající názvy.
  • VP SET CURRENT SHEET: změna vybraného listu
  • VP SET SHEET OPTIONS: skrýt listy, například ty, které obsahují pouze informace pro výpočet

Správa přerušení stránek Z uživatelského rozhraní

Ve verzi 4D v20 je nyní možné spravovat přerušení stránky z uživatelského rozhraní díky novým položkám v kontextové nabídce:„Přidat přerušení stránky“ a„Odstranit přerušení stránky„. Pomocí nových příkazů VP SET SHOW PRINT LINES a VP Get show print lines můžete také zobrazit nebo skrýt řádky tisku.

Možnosti sešitu

Při vytváření dokumentu v aplikaci 4D View Pro často potřebujete doladit uživatelské prostředí skrytím karet listů, posuvníků, deaktivací kontextové nabídky nebo přetahování… Všechny tyto a další funkce jsou možné pomocí příkazu VP SET WORKBOOK OPTIONS.

Zrychlete proces vývoje pomocí šablon

Vytváření sestav nebo tabulek z existujících šablon urychluje vývoj. Stejně jako koncový uživatel používá akci Kopírovat a vložit, můžete jako vývojář v aplikaci 4D v20 jednoduše „zkopírovat“ rozsah buněk z jiného místa nebo dokonce z jiné oblasti. Příkaz VP PŘESUNOUT BUŇKY umožňuje kopírovat/vyjmout a vložit rozsah buněk na jiné místo, dokonce i mezi dvě oblasti. Dalším způsobem, jak zkopírovat rozsah, je zkopírovat jej do objektu pomocí příkazu VP Kopírovat do objektu, například uložit jej do databáze, Takto vytvořený objekt můžete vložit, až jej budete potřebovat, pomocí příkazu VP PASTE Z OBJEKTU.

Rozhraní pro tisk

Abyste svým zákazníkům usnadnili nastavení tisku, přibyl nyní na pásu karet nový doplněk; podporuje nastavení tisku pomocí karty „Rozložení stránky“ a dialogového okna „Nastavení stránky“. Toto dialogové okno obsahuje karty Stránka, Okraje, Záhlaví/zápatí a List a umožňuje uživatelům spravovat mnoho možností v příkazu VP NASTAVIT TISK INFO.

Naplňte listy kontextem dat A

Aplikace 4D View Pro nabízí nový způsob načítání dat a vytváření šablon: datový kontext. Umožňuje vytvořit dokument se zástupnými symboly a naplnit je nastavením tohoto datového kontextu.

Zobrazte své sbírky jako tabulky

Aplikace 4D View Pro již umožňuje snadné načítání a zobrazování dat v tabulkách. 4D v20 přináší novou funkci tabulek, která vám umožní mnohem více a využít další vlastnosti, jako jsou záhlaví, změna velikosti tabulky, souhrnný řádek, třídění sloupců, filtry a další. Tato funkce vám také umožňuje rychle načítat data z datových tříd a kolekcí. Pozdravte nový příkaz VP CREATE TABLE.

Správa řádků a sloupců

4D v20 přináší několik nových příkazů, které vám umožní efektivněji spravovat sloupce a řádky tabulky – přidáváním nebo odebíráním sloupců/řádků v závislosti na potřebách koncových uživatelů.

Kombinace této nové funkce s datovými kontexty vám umožní navrhovat pokročilejší šablony, které automaticky naplní obchodní obsah správnými informacemi pro každou situaci – ať už jde o výkazy, faktury, smlouvy nebo jakýkoli jiný typ dokumentu.

Přizpůsobení stylu tabulek

Tabulky jsou nedílnou součástí dokumentů aplikace 4D View Pro. Proto jsme v různých verzích poskytli mnoho pokroků souvisejících s tabulkami. Verze 4D v20 přidává novou funkci související s úpravou stylu těchto tabulek tak, aby dokonale ladily se zbytkem dokumentu.

Od nynějška poskytuje stránka VP Set table theme možnost použít naprogramováním jeden z více než 60 předdefinovaných stylů tabulek. Pokud žádný z těchto stylů nevyhovuje vašim potřebám, můžete si definovat vlastní motiv a aplikovat jej na tabulku.

R-releasy do hloubky