Stored Procedures
Abstract
La sezione Stored Procedures spiega quali sono i parametri di una Stored Procedure SQL eLegere e come si comportano secondo il contesto.
La sezione include:
- Una spiegazione dei parametri fissi che una Stored Procedure eLegere accetta.
- Come specificare parametri e valori aggiuntivi per una Stored Procedure.
- Differenze di impiego delle Stored Procedure secondo il contesto.
Dove inserire le Stored Procedure?¶
Devi inserire le Stored Procedure nel database di eLegere.
Contatta il DBA della tua installazione eLegere (o un delegato DBA) per inserire la tua Stored Procedure nel database.
Parametri¶
Impara quali sono i parametri fissi di una Stored Procedure eLegere. (Se vuoi aggiungere ulteriori parametri alla Stored Procedure, consulta Come aggiungere parametri aggiuntivi in questo documento.)
Parametri SQL¶
1 2 3 4 |
|
In maniera predefinita, @OutCodeStatus
, @OutLevel
e @OutMessage
sono vuoti. Se assegni un valore a @OutCodeStatus
, @OutLevel
e @OutMessage
, puoi personalizzare il messaggio da mostrare all'utente (vedi sotto per informazioni).
- Il parametro
@jsonParameters
accetta una Stringa contenente dati JSON come valore. L'oggetto JSON nella stringa contiene contiene le informazioni della riga. Consulta Oggetto JSON per maggiori informazioni sulla struttura dell'oggetto. @OutCodeStatus
richiede un codice stato. Il codice stato specifica come eLegere deve comportarsi dopo l'esecuzione della Stored Procedure e quale risultato riportare. In maniera predefinita se lasciato vuoto, il valore passato alla chiave è000200
(corrispondente al risultato "Successo" per l'azione). Vedi Codici stato per la lista di comportamenti.@OutLevel
richiede come valore una stringa che specifica il tipo di messaggio da mostrare:INFO
,ERROR
oSUCCESS
.INFO
: una notifica standard per informare l'utente. (Notifica di colore blu)ERROR
: un messaggio di errore informa che è avvenuto un errore. (Notifica di colore rosso)SUCCESS
: un messaggio di notifica che informa del successo della Stored Procedure (Notifica di colore verde)
@OutMessage
accetta come valore una stringa con il contenuto del messaggio da mostrare.
Oggetto JSON¶
Impara la struttura dell'oggetto JSON di @jsonParameters
da Parametri SQL.
1 2 3 4 5 |
|
- La chiave
Item
nell'oggetto JSON contiene l'oggetto della riga con tutte le chiavi e valori che contengono le sue informazioni. - La chiave
StorageName
contiene il nome della tabella SQL dello Storage eLegere. Il nome (i.e.[SQL TABLE NAME]
) corrisponde al nome fisico dello Storage in eLegere. Corrisponde alla tabella dove l'utente sta eseguendo l'azione. - La chiave
UserId
è lo username di Logon.
Codici stato¶
Segue la lista dei valori che @OutCodeStatus
(vedi Parametri SQL) accetta.
Ciascun codice specifica un comportamento differente dopo l'esecuzione della Stored Procedure che puoi specificare.
Codice | Nome | Comportamento |
---|---|---|
000500 | Fallito | eLegere blocca l'intera transazione del database e ripristina lo stato precedente della tabella. Mostra un messaggio di errore. |
000400 | Successo nonostante errori | eLegere blocca l'intera transazione del database e ripristina lo stato precedente della tabella. Mostra un messaggio di "Successo". |
000300 | Ignora | eLegere ignora la riga. Mostra un messaggio di "Successo". |
000200 | Successo | eLegere mostra un messaggio di "Successo". (Questo è il valore predefinito per il parametro @OutCodeStatus .) |
Come aggiungere parametri aggiuntivi¶
Impara come aggiungere parametri e valori aggiuntivi in una Stored Procedure.
Info
Consulta Come lavorare direttamente con il database: Stored Procedures dalla Guida Designer per conoscere le Custom Action di tipo Stored Procedure.
Nelle Custom Action di tipo Stored Procedure, puoi aggiungere parametri e valori aggiuntivi oltre a quelli descritti in Parametri SQL sopra. Clicca sul New nelle impostazioni Parameters della Custom Action. L'azione permette di aggiungere una nuova coppia di parametri e valori.
Contesto d'uso¶
Impara come le Stored Procedure si comportano in ciascun contesto d'uso di eLegere.
- Custom Action con innesco Event: La Stored Procedure Custom Action è eseguita tramite una transazione dato che righe multiple di Master e Dettaglio possono essere coinvolte. L'oggetto JSON include valori per le chiavi
Item
andStorageName
per le righe da modificare. - Custom Action con innesco Manuale: La Custom Action Stored Procedure opera direttamente sulla riga selezionata. Quindi, l'azione non è eseguita tramite una transazione. L'oggetto JSON include valori per le chiavi
Item
andStorageName
per la riga da modificare. - Job Schedulato: Nessuna SQL transaction né valori per
Item
oStorageName
dall'oggetto JSON. Lo Scheduler esegue la Stored Procedure al di fuori di un'applicazione.
Contesto Esecuzione | Parametri | Parametri | |
---|---|---|---|
Transazione | Item |
StorageName |
|
Custom Action con innesco Event | |||
Custom Action con innesco Manuale | |||
Job Schedulato |
Individual Transactions - Impostazioni
Controlla le impostazioni Individual Transactions dell'applicazione dove la Stored Procedure è eseguita.
In un'applicazione eLegere, puoi decidere se:
- L'applicazione salva tutte le righe di Master e tutte le righe di Dettaglio in un'unica transazione.
- L'applicazione salva ciascuna riga di Master e Dettaglio tramite una transazione separata individuale.
Quale comportamento dipende dall'impostazione Individual Transactions in Design Mode. Vedi Salvare le righe in un unico processo di salvataggio o processi di salvataggio multipli nella Designer Guide per maggiori informazioni riguardo l'impostazione Individual Transactions.
Database, inneschi Event e allegati
Se hai configurato una Custom Action Invoke Stored Procedure che gestisce allegati, considera il seguente comportamento per gli inneschi Event PRE ATTACHMENT INSERT e POST ATTACHMENT INSERT.
- PRE ATTACHMENT INSERT: L'applicazione invia al database solo le informazioni dell'allegato; e.g. Nome, tipo e percorso dove l'allegato sarà salvato. In questa fase, puoi ancora interrompere l'operazione dato che nulla è stato ancora salvato.
- POST ATTACHMENT INSERT: L'applicazione ha caricato l'allegato sul database. Inoltre, l'applicazione fornisce il valore del campo Id dell'allegato. Nota che a questo punto non puoi ripristinare allo stato precedente il database.
Tutorial
- Sincronizzare dati fra applicazioni automaticamente: Il tutorial spiega come sincronizzare i dati di due applicazioni automaticamente quando accadono modifiche tramite Stored Procedure SQL.