Třída DataObject
Objekty této třídy jsou určeny k manipulaci s daty v systému (jinými slovy výkonné objekty určené k manipulaci s business objekty dané třídy). Tedy každá instance objektu třídy DataObject umí manipulovat s business objekty své třídy. Vytvořený DataObject je vždy vytvořený pro objekty určitých business objektů (např. pro skl. karty musíme mít jednu instanci, pro faktury jinou instanci atd.). Třída poskytuje základní prostředky pro vytváření nových objektů, jejich opravu a jejich mazání. Objekty DataObject se vytvářejí voláním metody Application.CreateObject().
Metody a vlastnosti:
CreateNewFromValues
function CreateNewFromValues(const Values: ObjectData): WideString;
- Popis:
- Metoda uloží nový objekt této třídy. Nejdříve je nutné naplnit všechny potřebné hodnoty do objektu třídy ObjectData (stejné třídy) a předat jej této funkci. Systém se pak pokusí objekt uložit. Pokud během ukládání nastane problém (chybná data, validace, atd.), je vyvolána výjimka. Pokud byl objekt úspěšně uložen, metoda vrátí OID uloženého objektu.
- Související metody:
- Delete, GetValues, UpdateValues
Delete
procedure Delete(const OBJID: WideString);
- Popis:
- Metoda zkusí smazat objekt. Parametr OBJID je OID objektu této třídy. Pokud objekt neexistuje nebo jej není možné smazat, je vyvolána výjimka.
- Související metody:
- CreateNewFromValues, GetValues, UpdateValues
GetValues
function GetValues(const OBJID: WideString): ObjectData;
- Popis:
- Metoda zkusí načíst z databáze ABRA Gen objekt s identifikátorem OBJID. Pokud objekt existuje, metoda vrátí novou instanci objektu ObjectData (tento objekt drží pouze data). Pokud objekt neexistuje, je vyvolána výjimka.
- Související metody:
- CreateNewFromValues, UpdateValues, Delete
GetValuesByDate
function GetValuesByDate(const OBJID: WideString; const Date: DATE): ObjectData;
- Popis:
- Metoda zkusí načíst z databáze ABRA Gen objekt s identifikátorem OBJID platný k datu Date. Pokud objekt existuje, metoda vrátí novou instanci objektu ObjectData (tento objekt drží pouze data). Pokud objekt neexistuje, je vyvolána výjimka.
Metoda je vhodná pro získávání hodnot z objektů podporujících historii.
- Související metody:
- GetValues
UpdateValues
procedure UpdateValues(const OBJID: WideString; const Values: ObjectData);
- Popis:
- Metoda souží k opravě business objektů. Parametrem OBJID říkáme, jaký objekt chceme opravit, a parametr Values zase říká, jakými daty. Objekt musí existovat, pokud objekt neexistuje nebo jej není možné z různých důvodů uložit, je vyvolána výjimka.
- Související metody:
- CreateNewFromValues, GetValues, Delete
ValidateValues
function ValidateValues(const OBJID: WideString; const Values: ObjectData): WideString;
- Popis:
- Metoda provede validaci dat. Parametrem OBJID říkáme, který objekt chceme opravit a parametr Values zase říká, jaká data chceme ověřit. Každý business objekt definuje, co se má před jeho uložením zkontrolovat. Výsledkem kontrol je typicky zpráva, proč není možné právě tento business objekt uložit. Pokud je vrácený řetězec prázdný, znamená to, že data jsou ověřena a správná. Kladné ověření dat nezaručuje, že se podaří tento objekt uložit. Každý objekt těsně před uložením je vhodné takto ověřit (platí i pro nové objekty).
PrefillValues
procedure PrefillValues(const Values: ObjectData);
- Popis:
- Metoda se používá při zakládání nových business objektů. Metoda neudělá nic jiného, než že předvyplní všechny údaje, které je možné předvyplnit. Typicky objekt vytvoříme, předvyplníme jeho hodnoty, vyplníme některá položky objektu (které zadal uživatel nebo my), objekt ovalidujeme a uložíme.
GetReadyDataAuthority
function GetReadyDataAuthority(const OBJID: WideString): WordBool;
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
HasDataAuthority
function HasDataAuthority(const OBJID: WideString): WordBool;
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
GetDataAuthorityStatus
function GetDataAuthorityStatus(const OBJID: WideString): Integer;
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
GetDataAuthoritySite
function GetDataAuthoritySite(const OBJID: WideString): WideString;
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
CreateNewDataAuthorityRequest
function CreateNewDataAuthorityRequest(const OBJID: WideString; const Site: WideString; WithChildren: WordBool): WordBool;
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
MarkForDeleteDataAuthority
procedure MarkForDeleteDataAuthority(const OBJID: WideString; const Site: WideString; WithChildren: WordBool);
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
UnMarkForDeleteDataAuthority
procedure UnMarkForDeleteDataAuthority(const OBJID: WideString; const Site: WideString; WithChildren: WordBool);
- Popis:
- Replikace byly zrušeny, použití metody nemá nadále smysl.
IsProtected
function IsProtected(const FieldName: WideString): WordBool;
- Popis:
- Metoda vrací informaci, zda je položka s názvem FieldName chráněná. Hodnoty se získávají ze stejnojmenné metody na BO.
- Související metody:
- Accessible
Accessible
function Accessible(const FieldName: WideString): WordBool;
- Popis:
- Metoda vrací informaci, zda je položka s názvem FieldName přístupná pro přihlášeného uživatele (pro čtení a zápis). Hodnoty se získávají ze stejnojmenné metody na BO.
- Související metody:
- IsProtected
Evaluate
function Evaluate(const OBJID: WideString; Expression: WideString): WideString;
- Popis:
- Funkce vyhodnotí výraz Expression pomocí objektového evaluátoru, funkce je závislá na konkrétním objektu jehož ID je předané v parametru OBJID.
AllowWritesToReadOnlyFields
property AllowWritesToReadOnlyFields: WordBool
- Popis:
- Vlastnost umožňuje v metodách CreateNewFromValues a UpdateValues zapisovat data i do položek určených pouze pro čtení. To se využívá pouze v odůvodněných speciálních případech často v souvislosti s položkou Dirty (zákaz přepočítání dokladu) např. pro import dokladů ze systémů s odlišným výpočtem DPH.
- Související metody:
- CreateNewFromValues, UpdateValues