IObjectMoveAutoAction
Implementací rozhraní IObjectMoveAutoAction v aplikaceový skript, můžete definovat vlastní akce, které jsou automaticky prováděny, když je objekt přesunut na jiné místo ve stromu objektů, včetně přesunutí objektu do Koše.
Metody rozhraní jsou volány také v metodách Alvao.API.AM.Object.Move a Alvao.API.AM.Object.Delete. Tyto metody nelze volat v běžící transakci (pokud je jejich volání nutné, nastavte parametr callCustomAction na false). Při automatickém odstraňování součástí počítače do koše na základě kontroly hw se tyto metody nevolají.
Pokud chcete v automatické akci použít pouze některé metody implementovaného rozhraní, ponechte v těle ostatních metod z rozhraní výjimku:
hodit novou NotImplementedException();
.
Metody rozhraní
Metoda | Popis |
---|---|
OnObjectMoving | Objekt bude přesunut ve stromu. |
OnObjected přesunut | Objekt byl přesunut. |
OnObjectMoving
Tato metoda se volá před přesunem objektu ve stromu na jiné místo, např. v rámci příkazu Přesun.
- Syntaxe: Tuple< bool, string> OnObjectMoving(SqlConnection con, int objectId, int newParentObjectId, int personId)
- Parametry:
- con - SqlConnection k databázi.
- objectId - ID objektu (tblNode.intNodeId), které má být přesunuto.
- newParentObjectId - ID objektu (tblNode.intNodeId), na které má být objekt přesunut. Hodnota 0 znamená, že objekt bude přesunut do kořene stromu.
- personId - ID uživatele (tPerson.iPersonId), který vyvolal akci.
- Vrácená hodnota:
- bool - pokud metoda vrátí true, objekt je přesunut do nové pozice v databázi. Pokud metoda vrátí hodnotu false, operace nebude provedena a nadcházející pohyb objektu bude zrušen.
- string - zpráva, která se zobrazí uživateli, pokud je návratová hodnota neplatná.
Pro příklad použití viz CheckObjectMandatoryProperties.
OnObjected
Tato metoda se nazývá po přesunutí objektu ve stromu.
- Syntaxe: anulovat OnObjectMoved(SqlConnection con, int objectId, int oldParentObjectId, int personId)
- Parametry:
- con - SqlConnection k databázi.
- objectId - ID objektu (tblNode.intNodeId), které má být přesunuto.
- oldParentObjectId - ID objektu (tblNode. ntNodeId) což byl otec (nadřazený objekt) objektu s objektem Id před jeho přesunutím. Hodnota 0 znamená, že objekt byl přesunut z kořene stromu.
- personId - uživatelské ID (tPerson.iPersonId), které spustilo akci.
- Vrátit hodnotu: žádný.
Pro příklad použití viz SetComputerDetectionProfile šablonu aplikace.