Tipi di metodi
copia linkTipi di metodi: procedure, funzioni, eventi
In modo simile a quanto avviene nei linguaggi di programmazione moderni orientati agli oggetti, il Visual Code rappresenta gli oggetti eseguibili mediante “metodi”, che però assumono diversi aspetti a seconda del contesto in cui vengono creati.
Esistono tre tipi di contesto diversi: metodi contenuti in oggetti database, quelli contenuti nelle applicazioni ed infine i metodi delle librerie.
Metodi dell’oggetto database
All’interno dell’oggetto database è possibile creare tre diversi tipi di metodi: procedure, funzioni e trigger; quest’ultimo creato all’interno di una delle tabelle del database stesso.
Una procedura è un oggetto eseguibile che non ritorna alcun valore, è quindi possibile richiamarla ma non utilizzarla all’interno di espressioni o query. Essa viene compilata direttamente come stored procedure in Oracle (PL/SQL) o SQL Server (TSQL), mentre per altri tipi di database viene compilata all’interno dell’applicazione che la richiama in maniera funzionamente equivalente.
Una funzione è un oggetto eseguibile che ritorna un valore scalare ed è quindi possibile richiamarla come se fosse una procedura ma anche utilizzarla all’interno di espressioni o query. In quest’ultimo caso però la funzione non deve modificare il contenuto del database. Essa viene compilata direttamente come stored function in Oracle (PL/SQL) o SQL Server (TSQL), mentre per altri tipi di database viene compilata all’interno dell’applicazione che la richiama in maniera funzionamente equivalente. In altri tipi di database quindi, una stored function non può mai essere utilizzata all’interno di query.
Un trigger, infine, è un oggetto eseguibile che viene invocato da istruzioni SQL che modificano il contenuto della tabella in cui esso è contenuto. Con il Visual Code è possibile definire trigger per statement e trigger per riga. Essi verranno compilati in linguaggio PL/SQL per database Oracle o TSQL per SQL Server. Attualmente non è possibile compilare trigger per altri tipi di database server.
Metodi dell’oggetto applicazione
All’interno dell’oggetto applicazione è possibile creare tre diversi tipi di metodi: procedure, funzioni e gestori di eventi.
Una procedura è un oggetto eseguibile che non ritorna alcun valore, è quindi possibile richiamarla ma non utilizzarla all’interno di espressioni. Essa viene compilata in Java o C# a seconda della tecnologia prescelta nelle proprietà dell’applicazione stessa.
Una funzione è un oggetto eseguibile che ritorna un valore scalare o un oggetto ed è quindi possibile richiamarla come se fosse una procedura ma anche utilizzarla all’interno di espressioni. Come le procedure, una funzione può essere compilata in Java o C#.
Un gestore di eventi è un oggetto eseguibile che viene richiamato dal framework in risposta ad un determinato evento legato interfaccia utente o al ciclo di vita di un oggetto di tipo documento, ad esempio quando l’utente modifica i dati di una form, oppure quando un oggetto documento sta per essere salvato sul database.
I metodi creati all’interno delle applicazioni possono essere definiti in tre tipi di contesti diversi: a livello di applicazioni (globali), a livello di videata e a livello di classe.
Metodi di libreria
Le librerie descrivono servizi applicativi resi disponibili dal framework di Instant Developer, dal runtime Java o C# o contenuti in classi Java o C# già compilate. Ogni libreria descrive quindi solo l’interfaccia verso tali oggetti di codice e non il codice vero e proprio.
All’interno delle librerie è possibile definire cinque diversi tipi di metodi: procedure, funzioni, operatori, proprietà ed eventi.
Anche in questo caso, una procedura è un oggetto di codice che non ritorna alcun valore ed è quindi possibile richiamarla ma non utilizzarla all’interno di espressioni.
Una funzione, invece, ritorna un valore scalare o un oggetto e può quindi essere utilizzata anche all’interno di espressioni. Alcune funzioni, come ad esempio la Left() possono essere utilizzate solo all’interno delle espressioni.
Una proprietà rappresenta un attributo dell’oggetto o servizio descritto dalla libreria e può essere utilizzata sia all’interno delle espressioni, per conoscerne il valore, che nelle istruzioni di assegnazione per modificarne il valore stesso.
Infine un evento rappresenta l’interfaccia di un metodo di tipo procedura che l’applicazione può fornire alla libreria per interagire con il ciclo di vita dell’oggetto o servizio descritto dalla libreria stessa.
Creazione dei metodi
La creazione di un metodo avviene con i seguenti metodi, a seconda del tipo e del contesto in cui è contenuto:
- Metodi di database: per creare procedure o funzioni utilizzare il comando del menù contestuale Aggiungi Procedura dell’oggetto database; per creare un trigger utilizzare il comando del menù contestuale Aggiungi Trigger dell’oggetto tabella.
- Metodi di applicazione: per creare procedure o funzioni globali utilizzare il comando del menù contestuale Aggiungi Procedura dell’oggetto applicazione; per creare gestore di eventi utilizzare il sottomenù Eventi del menù contestuale dell’oggetto applicazione. Per creare procedure o funzioni di videata o di classe utilizzare il comando del menù contestuale Aggiungi Procedura dell’oggetto videata o classe; per creare gestore di eventi utilizzare il sottomenù Eventi del menù contestuale dell’oggetto videata, classe o degli oggetti di interfaccia utente contenuti nella videata.
- Metodi di libreria: per creare metodi di libreria, utilizzare il comando del menù contestuale Aggiungi Funzione dell’oggetto libreria. Il tipo di metodo sarà poi modificabile tramite la videata delle proprietà dell’oggetto funzione che si aprirà subito dopo la creazione del nuovo metodo.
Ultima modifica: 23/03/2021 / Validità: da 9.0.3940