Změna vlastností několika metod najednou pomocí kódu

Automaticky přeloženo z Deepl

Víme, že někdy chcete změnit vlastnosti více metod, aniž byste museli otevírat dialogové okno vlastností pro každou metodu.

Například chcete nastavit všechny metody do stavu„Lze spustit v preemptivním režimu“ a poté zkompilovat databázi. Při chybách kompilace tak získáte přehled o metodách, které je třeba upravit tak, aby byly preemptivní.

Použití METHOD GET NAMES načtete z databáze seznam metod a poté pomocí příkazu METHOD SET ATTRIBUTES příkazu pro změnu atributů, můžete změnit všechny najednou!

Zde je příklad nastavení všech metod projektu do preemptivního režimu:

ARRAY TEXT($arrName;0)
C_OBJECT ($attributes)

// Retrieve all methods in structure
METHOD GET NAMES ($arrName)

// Create object with the "preemptive" attribute set to "capable"
OB SET ($attributes; "preemptivní"; "schopný")

// Change the "preemptive" attribute value for all methods
For ($i;1;Size of array($arrName)

METHOD SET ATTRIBUTES ($arrName{$i};$attributes)
End for

Použití kolekce pro manipulaci s vlastnostmi

4D má nyní nový typ, kolekce, a mnoho připravených metod pro manipulaci s kolekcemi.

Jak tedy tento nový typ použít? Do kolekce vkládáte názvy metod a vlastnosti, které můžete vyhledávat, upravovat nebo jednoduše zobrazovat v poli seznamu typu kolekce.

Zde je příklad pro uložení všech vlastností metod do kolekce:

C_OBJECT$i$attributes($attributes)
C_COLLECTION (colMethod)
ARRAY TEXT ($arrName;0)
colMethod :=New collection()

// Retrieve all methods in structure
METHOD GET NAMES ($arrName)

For ($i;1;Size of array($arrName)
$attributes :=New object()
// Retrieve the attributes for each method
METHOD GET ATTRIBUTES ($arrName{$i};$attributes)

// Add item in the collection
colMethod .push(New object("name";$arrName{ xml

End for

Po úpravě atributů můžete výsledek uložit pomocí jednoduché smyčky na kolekci:

C_OBJECT($item;$tmp)
// Loop for each item in the collection
For each ($item;colMethod)
// Save attributes
$tmp :=$item.attributes
METHOD SET ATTRIBUTES ($item.name;$tmp)
End for each

Ukázka: Změna vlastností metody pomocí kódu

Vanessa Talbot
• Product Owner • Vanessa Talbot se připojila k programovému týmu 4D v červnu 2014. Jako Product Owner má na starosti psaní uživatelských příběhů a jejich převod do funkčních specifikací. Její úlohou je také zajistit, aby implementovaná funkce odpovídala potřebám zákazníka. Od svého příchodu pracovala na definování klíčových prvků ve 4D. Pracovala na většině nových funkcí preemptivního multi-threadingu a také na velmi složitém tématu: nové architektuře pro enginované aplikace. Vanessa má titul z Telecom Saint-Etienne. Svou kariéru začala ve Výzkumném ústavu kriminalistickém jako vývojářka pro audiovizuální oddělení. Působila také v mediální a lékařské oblasti jako expertka na technickou podporu, produkci i dokumentaci novinek.