Psaní obecného kódu pomocí ORDA

Automaticky přeloženo z Deepl

ORDA byla jedním z hlavních oznámení konference 4D Summit 2018, která otevřela svět nových možností ve 4D. Chcete-li se o systému ORDA a jeho výhodách dozvědět více, přečtěte si tento příspěvek, ve kterém se dozvíte, jak systém ORDA změní způsob vaší práce.

ÚVOD

Pomocí ORDA se k datům přistupuje prostřednictvím abstrakční vrstvy: datového úložiště. Datové úložiště je objekt poskytující rozhraní k databázi a jejím datům prostřednictvím objektů. Například tabulka je namapována na objekt datové třídy, pole je atribut datové třídy. Nový ds vrací odkaz na datové úložiště aplikace. Pokud se chcete dozvědět více, podívejte se na přehledový článek v dokumentaci.

Abychom vás provedli zkoumáním funkcí ORDA , připravili jsme pro vás slovníček různých pojmů a konceptů spolu s jejich definicemi.

ORDA také poskytuje některé užitečné informace o struktuře databáze.

To může být velmi užitečné při psaní obecného kódu…. bez znalosti struktury databáze.

Stáhněte si nástroj pro dynamické třídění TIP

Zde je příklad:

Vzhledem k tomu, že datový sklad vrácený příkazem ds příkazem, je objekt, lze jej procházet pomocí příkazu for each smyčky získat jeho atributy (neboli třídy dataClasses).

To vám umožní psát obecný kód použitelný pro všechny tabulky vystavené v DataStore.

V následujícím příkladu vytvoříme kolekci objektů obsahující třídy dataClasses.

C_OBJECT($dataClassObj)
C_TEXT ($dataClassName)
For each ($dataClassName;ds)
$dataClassObj :=New object
$dataClassObj .name:=$dataClassName
$dataClassObj .value:=ds[$dataClassName]
Form .dataClassList.push($dataClassObj)
End for each

Tuto kolekci lze zobrazit v seznamu, aby si uživatelé mohli vybrat dataClass. Poté můžeme pokračovat v generickém kódu na vybrané třídě dataClass.

Objekt dataClass lze také iterovat pomocí cyklu for each smyčkou získat jeho atributy obsahující užitečné vlastnosti:

    • name: název atributu dataClassAttribute v datovém modelu.
    • Druh: kategorie atributu:
      • „storage“: ekvivalent pole v databázi 4D
      • „relatedEntity“: atribut vztahu N -> 1
      • „relatedEntities“: atribut vztahu 1 -> N
    • relatedDataClass: název datové třídy související s atributem (pokud je druh „relatedEntity“ nebo „relatedEntities“).

Vzhledem ke všem těmto informacím můžete napsat obecný kód, aniž byste znali strukturu databáze.

V poskytnutém příkladu databáze TIP se naučíte, jak dynamicky:

  • vybrat dataClass z dataStore,
  • vytvořit seznam se všemi vlastnostmi třídy dataClass včetně související entity první úrovně a
  • vytvořit nástroj pro třídění.

Zde je přehled tohoto TIPu:

Avatar
• Product Owner • Marie-Sophie Landrieu-Yvert se připojila k programovému týmu 4D jako Product Owner v roce 2017. 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. Marie-Sophie vystudovala inženýrskou školu ESIGELEC a svou kariéru zahájila jako inženýrka v IBM v roce 1995. Podílela se na různých projektech (projekty údržby nebo výstavby) a pracovala jako vývojářka Cobol. Poté pracovala jako UML designer a Java developer. V poslední době byly jejími hlavními rolí analyzovat a psát funkčních požadavky a koordinovat obchodní a vývojové týmy.