Vlastní skript
    Složka Config může obsahovat soubor EpCustomScript.js s vlastním skriptem v jazyce JavaScript. Složku Config najdete ve složce, kde je nainstalována  ALVAO Asset Management Console (standardně C:\Program Files\ALVAO\Asset Management Console\Config), pokud tam není, vytvořte ji a vložte do ní skript. Po restartování AM Console se skript aktivuje sám.
    Ve skriptu lze definovat obslužné programy, které jsou automaticky volány z konzoly AM při provádění různých operací.
    Příklad 1. Příklad souboru EpCustomScript.js
    
        function OnNodeMoving(nNodeId,nDestNodeId,nUserId) {
  return true;
}
function OnNodeRemoving(nNodeId,nUserId) {
  MessageBox("Object cannot be removed",0x30);
  return false;
}
     
    
        Skript v příkladu obsahuje funkci OnNodeMoving a OnNodeRemoving. Funkce OnNodeMoving slouží k povolení přesunu objektu ve stromu. Funkce je volána před provedením přesunu a návratová hodnota true znamená, že přesun je povolen. Funkce OnNodeRemoving se volá před odstraněním objektu ze stromu a její návratová hodnota umožňuje odstranění. Ve výše uvedeném příkladu je tedy přesun objektu vždy povolen a jeho odstranění je vždy zakázáno. Kromě toho se při pokusu o odstranění objektu zobrazí okno se zprávou "Objekt nelze odstranit"    
    Funkce služby
    
    
    OnNodeCopying
    Tato funkce se volá před kopírováním objektu ve stromu, tedy i v případě vytvoření nového objektu podle šablony.
    
        - Syntaxe - bool OnNodeCopying(nNodeId, nDestNodeId, nUserId)
 
        - Parametry        
                - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId kopírovaného objektu, tj. vzorového objektu.
 
                - nDestNodeId - hodnota atributu tblNode.intNodeId objektu, do kterého bude kopie vložena jako podřazený objekt. Hodnota 0 znamená, že kopie bude vytvořena v kořeni stromu.
 
                - nUserId - hodnota atributu tblUser.intUserId, který určuje aktuálně přihlášeného uživatele.
 
            
         
        - return value - pokud funkce vrátí true, objekt bude zkopírován. Pokud funkce vrátí hodnotu false, kopírování se neprovede. V tomto případě je vhodné zobrazit chybové hlášení pomocí metody MessageBox.
 
        - Příklady         
Příklad 2. Příklad - Zakázat kopírování objektů pro vybraného uživatele
            Následující příklad funkce OnNodeCopying zakáže uživateli s ID 15 kopírování objektů. ID uživatele závisí na konkrétní databázi a musí být nejprve zjištěno v tabulce tblUser - atribut intUserId.
            
                function OnNodeCopying(nNodeId,nDestNodeId,nUserId) {
    if ( nUserId == 15 ) {
        MessageBox("The object is forbidden to copy.",0x30);
        return false; 
    }
    return true;
}
             
            Příklad 3. Příklad - volání uložené procedury na SQL serveru
            V následujícím příkladu je k vyhodnocení události použita uložená procedura spOnNodeCopying na SQL serveru. Kopírování objektů je povoleno, pokud uložená procedura vrátí nenulovou hodnotu.
            
                function OnNodeCopying(nNodeId,nDestNodeId,nUserId) {
    var Con=new ActiveXObject("ADODB.Connection");
    Con.Open(ConnectionString);
    var Cmd=new ActiveXObject("ADODB.Command");
    Cmd.ActiveConnection=Con; 
    Cmd.CommandText="spOnNodeCopying";
    Cmd.CommandType=4; 
    Cmd.Parameters.Refresh();
    Cmd.Parameters.Item("@nNodeId").Value=nNodeId; 
    Cmd.Parameters.Item("@nDestNodeId").Value=nDestNodeId; 
    Cmd.Parameters.Item("@nUserId").Value=nUserId; 
    var Rs=Cmd.Execute();
    if ( Rs.Fields.Item(0)==1 )
        return true; 
    MessageBox("Object cannot be copied.",0x30);
    return false;
}
             
            Uložená procedura je definována takto:
            
                CREATE PROCEDURE [dbo].[OnNodeCopying]
    @nNodeId int, @nDestNodeId int, @nUserId int
AS
BEGIN 
    SET NOCOUNT ON; 
    SELECT 1
END
             
         
    
    
    OnNodeCopied
    Tato funkce je volána po zkopírování objektu nebo po vytvoření nového objektu podle šablony.
    
        - Syntaxe - void OnNodeCopied(nNodeId, nNewNodeId, nUserId)
 
        - Parametry        
                - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId kopírovaného objektu, tj. vzorového objektu.
 
                - nNewNodeId - hodnota atributu tblNode.intNodeId nového objektu, který byl vytvořen kopírováním.
 
                - nUserId - hodnota atributu tblUser.intUserId určující aktuálně přihlášeného uživatele.
 
            
         
        - návratová hodnota - žádná
 
        - Příklady - viz OnNodeCopying
 
    
    
        OnNodeMoving
        Tato funkce je volána před přesunem objektu ve stromu na jiné místo.
        
            - Syntaxe - bool OnNodeMoving(nNodeId, nDestNodeId, nUserId)
 
            - Parametry        
                    - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId přesouvaného objektu.
 
                    - nDestNodeId - hodnota atributu tblNode.intNodeId objektu, do kterého má být objekt přesunut.  Hodnota 0 znamená, že objekt bude přesunut do kořene stromu.
 
                    - nUserId - hodnota atributu tblUser.intUserId, která určuje aktuálně přihlášeného uživatele.
 
                
             
            - návratová hodnota - pokud funkce vrátí true, objekt bude přesunut. Pokud funkce vrátí hodnotu false, přesun se neprovede. V tomto případě je vhodné zobrazit chybové hlášení pomocí metody MessageBox.
 
            - Příklady - viz OnNodeCopying
 
        
        
            OnNodeMoved
            Tato funkce je volána po přesunu objektu ve stromu.
            
                - Syntaxe - void OnNodeMoved(nNodeId, nSrcParentNodeId, nUserId)
 
                - Parametry        
                        - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId objektu, který byl přesunut.
 
                        - nSrcParentNodeId - hodnota atributu tblNode.intNodeId objektu, který byl otcem (rodičovským objektem) objektu nNodeId před jeho přesunem.
 
                        - nUserId - hodnota atributu tblUser.intUserId, který identifikuje aktuálně přihlášeného uživatele.
 
                    
                 
                - návratová hodnota - žádná
 
                - Příklady - viz OnNodeCopying
 
            
         
        
            OnNodeRemoving
            Tato funkce se volá před odstraněním objektu, tj. před jeho přesunutím do koše.
            
                - Syntaxe - bool OnNodeRemoving(nNodeId, bMoveToBin, nUserId)
 
                - Parametry 
 - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId objektu, který má být odstraněn nebo přesunut do koše.
  -  
 
bMoveToBin - pokud má být objekt přesunut do koše, má tento parametr hodnotu true. - nUserId - hodnota atributu tblUser.intUserId určující aktuálně přihlášeného uživatele
  
          
                - return value - pokud funkce vrátí true, objekt bude odstraněn nebo přesunut do koše. Pokud funkce vrátí hodnotu false, operace se neprovede. V tomto případě je vhodné zobrazit chybové hlášení pomocí metody MessageBox.
 
                - Příklady - viz OnNodeCopying
 
            
         
        
            OnNodeRemoved
            Tato funkce je volána po odstranění objektu, tj. po jeho přesunu do koše.
            
                - Syntaxe - void OnNodeRemoved(nNodeId, bMoveToBin, nUserId)
 
                - Parametry 
 - nNodeId - hodnota atributu (v databázi) tblNode.intNodeId objektu, který byl odstraněn nebo přesunut do koše.
  -  
 
bMoveToBin - pokud je objekt přesunut do koše, má tento parametr hodnotu true. - nUserId - hodnota atributu tblUser.intUserId určující aktuálně přihlášeného uživatele
  
          
                - návratová hodnota - žádná
 
                - Příklady - viz OnNodeCopying
 
            
         
        
            OnPropertyModificationEnabled
            Povolí nebo zakáže příkaz -Modify pro úpravu vlastnosti.
            
                - Syntaxe - bool OnPropertyModificationEnabled(nPropertyId)
 
                - Parametry        
                        - nPropertyId - Hodnota atributu (v databázi) vlastnosti tblProperty.intPropertyId, která má být upravena.
 
                    
                 
                - Vrácená hodnota - Pokud funkce vrátí true, bude aktivní příkaz nabídky -Edit. V opačném případě bude neaktivní (zašedlý).
 
                - Příklady - viz OnNodeCopying
 
            
         
        
            OnPropertyModifying
            Tato funkce je volána v rámci příkazu -Modify před uložením změněné vlastnosti do databáze.
            
                - Syntaxe - bool OnPropertyModifying(nPropertyId, strNewValue)
 
                - Parametry        
                        - nPropertyId - hodnota atributu (v databázi) upravované vlastnosti tblProperty.intPropertyId.
 
                        - strNewValue - nová hodnota vlastnosti.
 
                    
                 
                - NewValue - pokud funkce vrátí true, zapíše se nová hodnota do databáze. Pokud funkce vrátí false, operace se neprovede. V tomto případě je vhodné zobrazit chybové hlášení pomocí metody MessageBox.
 
                - Příklady - viz OnNodeCopying
 
            
         
        
            OnPropertyModified
            Tato funkce je volána po zápisu nové hodnoty vlastnosti do databáze v rámci příkazu -Modify.
            
                - Syntaxe - void OnPropertyModified(nPropertyId)
 
                - Parametry        
                        - nPropertyId - hodnota atributu (v databázi) vlastnosti tblProperty.intPropertyId, která byla změněna.
 
                    
                 
                - Vrácená hodnota - žádná
 
                - Příklady - viz OnNodeCopying
 
            
         
        MessageBox
        Funkce zobrazí textové pole zprávy.
        
            - Syntaxe - int MessageBox(Text,Type)
 
            - Parametry        
                    - Text - text zprávy.
 
                    - Type - parametr může obsahovat kombinaci následujících bitových hodnot.
                        - Tlačítka         
                                
                                    
                                        | Hodnota | 
                                        Symbol | 
                                        Popis | 
                                    
                                
                                
                                    
                                        | 0 | 
                                        MB_OK | 
                                        OK | 
                                    
                                    
                                        | 1 | 
                                        MB_OKCANCEL | 
                                        OK, Storno | 
                                    
                                    
                                        | 2 | 
                                        MB_ABORTRETRYIGNORE | 
                                        Zrušit, Resetovat, Ignorovat | 
                                    
                                    
                                        | 3 | 
                                        MB_YESNOCANCEL | 
                                        Ano, Ne, Zrušit | 
                                    
                                    
                                        | 4 | 
                                        MB_YESNO | 
                                        Ano, Ne | 
                                    
                                    
                                        | 5 | 
                                        MB_RETRYCANCEL | 
                                        Vrátit, Zrušit | 
                                    
                                
                            
                         
                        - Ikony    
                                
                                    
                                        | Hodnota | 
                                        Symbol | 
                                        Popis | 
                                    
                                
                                
                                    
                                        | 0x10 | 
                                        MB_ICONERROR | 
                                        chyba (červená) | 
                                    
                                    
                                        | 0x20 | 
                                        MB_ICONQUESTION | 
                                        dotazník | 
                                    
                                    
                                        | 0x30 | 
                                        MB_ICONEXCLAMATION | 
                                        vykřičník (žlutý) | 
                                    
                                    
                                        | 0x40 | 
                                        MB_ICONINFORMATION | 
                                        informace | 
                                    
                                
                            
                         
                        - Výchozí tlačítko - hodnota z následující tabulky určuje, které tlačítko v pořadí zleva bude nastaveno jako výchozí         
                                
                                    
                                        | Hodnota | 
                                        Symbol | 
                                    
                                
                                
                                    
                                        | 0 | 
                                        MB_DEFBUTTON1 | 
                                    
                                    
                                        | 0x100 | 
                                        MB_DEFBUTTON2 | 
                                    
                                    
                                        | 0x200 | 
                                        MB_DEFBUTTON3 | 
                                    
                                    
                                        | 0x300 | 
                                        MB_DEFBUTTON4 | 
                                    
                                
                            
                         
                    
                     
                
             
            - Návratová hodnota      
                    
                        
                            | Hodnota | 
                            Symbol | 
                            Popis | 
                        
                    
                    
                        
                            | 1 | 
                            IDOK | 
                            OK | 
                        
                        
                            | 2 | 
                            IDCANCEL | 
                            Storno | 
                        
                        
                            | 3 | 
                            IDABORT | 
                            Zrušit | 
                        
                        
                            | 4 | 
                            IDRETRY | 
                            Resetovat | 
                        
                        
                            | 5 | 
                            IDIGNORE | 
                            Ignorovat | 
                        
                        
                            | 6 | 
                            IDYES | 
                            Ano | 
                        
                        
                            | 7 | 
                            IDNO | 
                            Ne | 
                        
                    
                
             
            - Příklady         
Příklad 4. Použití MessageBoxu
                Následující příklad zobrazí okno s otázkou "Chcete pokračovat?" a tlačítky Ano a Ne, přičemž tlačítko Ne je aktivní.
                
                    if ( MessageBox("Do you want to continue?",4+0x20+0x100) == 6 )
  // continue ...  
                 
             
        
        ConnectionString
        Proměnná ConnectionString obsahuje připojovací řetězec pro aktuálně otevřenou databázi. Proměnná je určena pouze pro čtení.
        
           
            Poznámka:
            Připojovací řetězec odpovídá pravidlům technologie ADO   
 
        Příklad 5. Použití proměnné ConnectionString
        V následujícím příkladu je vytvořeno připojení pomocí proměnné Con k databázi, která je právě otevřena v AM Console.
        
            var Con=new ActiveXObject("ADODB.Connection");
Con.Open(ConnectionString); 
         
        UserId
        Proměnná UserId obsahuje identifikátor uživatele, který je právě přihlášen do konzoly AM. Proměnná je určena pouze pro čtení.
        Identifikátor odpovídá hodnotě atributu intUserId v tabulce tblUser v databázi.
                 
                
                
                    Nenašli jste co jste hledali? Zeptejte se našeho týmu technické podpory.