05 - Operazioni su Transfer Property
Calculator (CCalculator)
Permette di eseguire semplici operazioni aritmetiche sui valori contenuti nei Call Data, nelle Transfer Properties e costanti. Il valore dell'operazione può essere salvato sia in un Call Data che in una Transfer Property.
Parametri di Configurazione
Parametro | Descrizione |
---|---|
Transfer Property | Eventuale nome della Transfer Property in cui memorizzare il risultato dell'operazione. |
Call Data | Eventuale nome del Call Data in cui memorizzare il risultato dell'operazione. |
Formula | Stringa di testo rappresentante l'operazione da eseguire. Le operazioni previste sono somma, sottrazione, moltiplicazione e divisione. |
Servizio successivo | Solo configurando il Servizio tramite Messenger Configurator. Nome del servizio successivo da attivare. Il tasto Selezione consente di recuperare il servizio dall'elenco dei servizi, tramite Transfer Property oppure Call Data. |
PropertiesManager (CPropertiesManager)
Permette di manipolare in vari modi il contenuto di una Transfer Property. Occorre selezionare l'operazione che si vuole eseguire nel tab Tipo operazioni e indicare i parametri o i valori necessari per l'elaborazione nella scheda Dati. Se la scheda Dati non è visualizzata, significa che l'operazione selezionata non necessita di ulteriori informazioni.
I tipi di operazioni disponibili sono le seguenti:
- 0 - Formattazione personalizzata: permette di formattare il valore contenuto nella Transfer Property sorgente. Il formato finale del dato, salvato nella Transfer Property destinazione è dato dal parametro contenente la regola di formattazione. Questa è la composizione di un insieme differente di parti base a seconda dal tipo di dato sorgente. Gli elementi base ammessi sono, a seconda del tipo del dato sorgente, i seguenti (vedere anche esempi di conversione in fondo alla sezione):
Date | d | Visualizza il giorno come numero senza zero iniziale (1-31) |
dd | Visualizza il giorno come numero con eventuale zero iniziale (01-31). | |
ddd | Visualizza il giorno come abbreviazione (lun, mar, ...). | |
dddd | Visualizza il giorno per esteso (lunedì, martedì, ...). | |
m | Visualizza il mese come numero senza zero iniziale (1-12). | |
mm | Visualizza il mese come numero con eventuale zero iniziale (01-12) | |
mmm | Visualizza il mese come abbreviazione (gen, feb, ...) | |
mmmm | Visualizza il mese per esteso (gennaio, febbraio, ...) | |
y | Visualizza il giorno dell'anno come numero (1-366) | |
yy | Visualizza l'anno come numero a due cifre (00-99) | |
yyyy | Visualizza l'anno come numero a quattro cifre (100-9999) | |
w | Visualizza il giorno della settimana come numero (1 per domenica fino a 7 per sabato) | |
ww | Visualizza la settima dell'anno come numero (1-54) | |
q | Visualizza il trimestre come numero (1-4) | |
h | Visualizza l'ora come numero senza zero iniziale (0-23) | |
hh | Visualizza l'ora come numero con eventuale zero iniziale (00-23) | |
n | Visualizza i minuti come numero senza zero iniziale (0-59) | |
nn | Visualizza i minuti come numero con eventuale zero iniziale (00-59) | |
s | Visualizza i secondi come numero senza zero iniziale (0-59) | |
ss | Visualizza i secondi come numero con eventuale zero iniziale (00-59) | |
Numero | 0 | Visualizza una cifra o uno zero. Se l'espressione da convertire ha una cifra nella posizione corrispondente allo zero questa viene visualizzata, altrimenti viene visualizzato uno zero. |
# | Visualizza una cifra o nulla. Se l'espressione da convertire ha una cifra nella posizione corrispondente allo zero questa viene visualizzata, altrimenti non viene visualizzato nulla in tale posizione. | |
. | Posizione del punto decimale; determina quante cifre sono visualizzate a destra e a sinistra della virgola. | |
, | Posizione del separatore di migliaia. | |
-+$() | Visualizza il carattere nella posizione corrispondente. Per visualizzare altri caratteri occorre farli precedere da \ o racchiuderli tra doppi apici. | |
Testo | @ | Visualizza un carattere o un spazio. Se la stringa ha un carattere nella posizione corrispondente la simbolo @ viene visualizzato il carattere, altrimenti viene visualizzato uno spazio. |
< | Converte la stringa in minuscolo. | |
> | Converte la stringa in maiuscolo. |
- 1 - Concatenazione di valori: permette di salvare nella Transfer Property di destinazione la concatenazione di più Transfer Properties e/o Call Data eventualmente inframezzate da parti di testo costante. Le Transfer Property che compaiono nella stringa di testo sorgente devono essere scritte racchiuse tra caratteri %, mentre i Call Data tra $. Ad esempio dato la Transfer Property "tpNome", contenente la stringa "Mario", ed il Call Data "cdCognome", contenente "Rossi"; indicando nelle direttive di concatenazione il seguente testo: Nome = %tpNome% - Cognome = $cdCognome$ nella Transfer Property di destinazione verrà salvato: Nome = Mario - Cognome = Rossi.
- 2 - Eliminazione spazi iniziali: permette di eliminare gli eventuali spazi iniziali dalla stringa contenuta nella Transfer Property.
- 3 - Eliminazione spazi finali: permette di eliminare gli eventuali spazi finali dalla stringa contenuta nella Transfer Property.
- 4 - Eliminazione spazi iniziali e finali: permette di eliminare gli eventuali spazi iniziali e finali dalla stringa contenuta nella Transfer Property.
- 5 - Estrazione di una parte di testo: permette di estrarre una parte del testo contenuto nella Transfer Property. Richiede di indicare la posizione del primo carattere di interesse ("1" per l'inizio della stringa) e il numero di caratteri da estrarre. Ad esempio se si configura il servizio per estrarre 3 caratteri a partire dalla posizione 5 della stringa "1234567890" il risultato sarà "567". Indicando un valore negativo nella posizione iniziale, viene estratta la stringa a partire dalla fine: ad esempio se il contenuto di una Transfer Property è "123456789", configurando il servizio per estrarre una parte di testo con posizione iniziale -3 e lunghezza 2, il risultato che si ottiene è la stringa "78".
Prendendo sempre come esempio la stringa di testo "1234567890", alcuni casi possibili per questo tipo di operazione sono i seguenti:- startPos positiva (2) e stringLen positiva (5), restituisce 5 caratteri a partire dal secondo, quindi "23456";
- startPos negativa (-5) e stringLen positiva (3), restituisce 3 caratteri a partire dal quinto da destra, quindi "678";
- startPos positiva (2) e stringLen positiva (-1), restituisce tutti caratteri a partire dal secondo scartando l'ultimo, quindi "23456789";
- startPos negativa (-5) e stringLen negativa (-2), restituisce tutti i caratteri a partire dal quinto da destra scartando gli ultimi due, quindi "678";
- 6 - Verifica se sorgente è stringa nulla: nella Transfer Property di destinazione viene salvato "1" nel caso che il contenuto della Transfer Property sorgente sia nulla, "0" altrimenti.
- 7 - Verifica se sorgente data: permette di verificare se nella Transfer Property è indicata una data valida. Viene salvato "1" nel caso che il contenuto della Transfer Property sorgente rappresenti una data valida, "0" altrimenti.
- 8 - Verifica se sorgente numerica: permette di verificare se nella Transfer Property è indicata un valore numerico. Nella Transfer Property di destinazione viene salvato "1" nel caso che il contenuto della Transfer Property sorgente sia un valore numerico, "0" altrimenti.
- 9 - Riempi a sinistra: permette di ottenere un stringa con una lunghezza prestabilita aggiungendo il carattere indicato in testa alla stringa originale. Occorre indicare nei parametri la lunghezza totale della stringa che si vuole ottenere ed il carattere di riempimento. Se la stringa sorgente è più lunga di quanto specificato nel parametro total string length viene troncata a tale valore tagliando la parte iniziale (pad left).
- 10 - Riempi a destra: permette di ottenere un stringa con una lunghezza prestabilita aggiungendo il carattere indicato in coda alla stringa originale. Occorre indicare nei parametri la lunghezza totale della stringa che si vuole ottenere ed il carattere di riempimento. Se la stringa sorgente è più lunga di quanto specificato nel parametro total string lengthviene troncata a tale valore tagliando la parte finale (pad right).
- 11 - Ottieni valore dalla stringa CallData: passando alla funzione una stringa formattata come i CallData (ad esempio Param1 = Value1}{Param2 = Value2}…..{ParamN = ValueN) è possibile ottenere il valore associato alla coppia nome-valore indicata nei parametri del blocchetto. Questa funzione è utile per fare il parsing della stringa restituita da un blocchetto di tipo CReadTextMessage che restituisce appunto una stringa formattata come i CallData. Tale stringa contiene, oltre al testo del messaggio ricevuto anche altre informazioni dipendenti dal media da cui il messaggio stesso è stato generato (in linea generale informazioni sul mittente). L’unico parametro previsto è il nome del CallData da estrarre.
- 12 - Generazione valore numerico casuale: permette di generare un valore casuale nel range di valori indicato. I parametri di configurazione sono il valore minimo e il valore massimo che tale numero casuale può assumere.
- 13 - Confronta una stringa con un modello: permette di verificare se una data stringa di testo soddisfa un certo modello (pattern); restituisce "1" se il modello è soddisfatto, "0" in caso contrario. La verifica viene fatta impostando le opzioni di confronto in modalità testuale, cioè senza distinzioni tra maiuscole e minuscole.
- 14 - Suddividi stringa: permette di suddividere la stringa contenuta nella Transfer Property sorgente rispetto a un determinato delimitatore. Ad esempio, se la stringa di ingresso è 1#2#3#4#5 e si configura per dividerla utilizzando il separatore #, l'uscita consisterà di 5 valori (1, 2, 3, 4, 5). In uscita il blocchetto genererà un numero variabile di transfer property, in base al numero di sottostringhe trovate nella transfer property sorgente, con i seguenti nomi (dove targetTpName è il nome configurato per la transfer property di destinazione del risultato):
- targetTpName_Count: contiene il numero di sottostringhe trovate;
- targetTpName_1: prima sottostringa;
- targetTpName_2: seconda sottostringa;
- targetTpName_n: n-esima sottostringa.
- 15 - Sostituisci stringa (Case Sensitive): permette di sostituire tutte le occorrenze di una stringa contenuta nella Transfer Property sorgente con una nuova stringa. La ricerca della vecchia stringa da sostituire viene fatta rispettando maiuscole e minuscole.
- 16 - Sostituisci stringa (case Insensitive): permette di sostituire tutte le occorrenze di una stringa contenuta nella Transfer Property sorgente con una nuova stringa. La ricerca della vecchia stringa da sostituire non fa distinzione tra minuscole e maiuscole.
Parametri di Configurazione
Parametro | Descrizione |
---|---|
Tipo operazione | Indica il tipo dell'operazione da eseguire. |
Transfer Property destinazione | Nome della Transfer Property in cui memorizzare il risultato dell'operazione. |
Direttive di concatenazione | Contiene le direttive per l'esecuzione dell'operazione concatenazione di Transfer Property e/o Call Data. |
Transfer Property sorgente | Per tutte le altre operazioni indica la Transfer Property su cui eseguire l'operazione. |
Regola di formattazione | Indica il formato con cui deve essere rappresentata la data. |
Carattere di partenza | Indica il primo carattere valido per l'estrazione di una sotto-stringa. |
Lunghezza della sotto-stringa | Indica il numero di caratteri da estrarre a partire dalla posizione indicata dal parametro precedente. |
Servizio successivo | Solo configurando il Servizio tramite MessengerConfigurator. Indica il servizio da attivare al termine dell'operazione. |
Esempi di conversione
Se il valore sorgente contiene una data/ora, ad esempio "23/05/2001 14:47:33":
Regola di formattazione | Contenuto della Transfer Property destinazione dal servizio |
---|---|
dd/mm/yyyy | 23/05/2001 |
dddd dd mmmm yyyy | mercoledì 23 maggio 2001 |
dddd dd mmmm yyyy - hh:mm | mercoledì 23 maggio 2001 - 14.47 |
hh:mm:ss | 14:47:33 |
Se il valore sorgente contiene un valore numerico, ad esempio "123456":
Regola di formattazione | Contenuto della Transfer Property destinazione dal servizio |
---|---|
#,###,### | 123.456 |
#,###,##0.00 | 123.456,00 |
£ #,###,##0.00 | £ 123.456,00 |
QuerySetStore (CQuerySetStore)
Permette di assegnare un nuovo valore ad una o più Transfer Property, di salvare il loro contenuto oppure di eseguire una query su di un database. La sorgente o la destinazione dei dati può essere un campo di un Database Access oppure un campo di un database a cui si accede tramite ODBC. I parametri da configurare variano in base al tipo d'operazione selezionata (caricamento, salvataggio o semplice Query) e dal tipo di sorgente/destinazione del dato.
Parametri di Configurazione
Parametro | Descrizione |
---|---|
Tipo operazione | Specificare se il sistema deve assegnare un nuovo valore alle Transfer Property, salvare il loro contenuto oppure eseguire solo una query SQL. Selezionare una delle seguenti operazioni:
|
Eventuale messaggio di attesa per accesso al Db | In caso di accesso a database lenti, ad esempio remoti connessi via ODBC, è possibile indicare un messaggio di attesa che viene riprodotto in modo asincrono durante l'accesso ai dati. Il servizio termina quando sia l'accesso ai dati che la riproduzione del messaggio sono terminati. E' quindi opportuno valutarne accuratamente la lunghezza. Il tasto Assegna Valore consente di salvare il valore indicato in una Costante, oppure recuperarlo da una Transfer Property o un Call Data. |
Operazione su DB Access o altro tipo | Specificare se l'operazione deve essere eseguita su un database Access o su un altro tipo via ODBC.
|
Elenco Transfer Property | Utilizzando i tasti Nuovo, Modifica e Cancella, indicare l'elenco delle Transfer Property il valore da associare o il campo in cui il suo contenuto deve essere salvato. |
Nome Servizio successivo | Solo configurando il Servizio tramite Messenger Configurator. Servizio successivo da attivare. Il tasto Selezione consente di recuperare il servizio dall'elenco dei servizi, tramite Transfer Property oppure Call Data. |
Nome Servizio successivo in caso di errore | Solo configurando il Servizio tramite Messenger Configurator. Servizio successivo da attivare in caso di errore durante l'operazione. Il tasto Selezione consente di recuperare il servizio dall'elenco dei servizi, tramite Transfer Property oppure Call Data. |
SetStoreProperty (CSetStoreProperty)
Permette assegnare un nuovo valore ad una o più Transfer Property, o di salvare il loro contenuto. La sorgente o la destinazione dei dati può essere: una costante (solo per il caricamento), un call data, un'altra Transfer Property, un campo di un Database Access, una voce di un file INI oppure un campo di un database remoto a cui si accede tramite ODBC.
I parametri da configurare variano in base al tipo di operazione selezionata (caricamento o salvataggio) e dal tipo di sorgente/destinazione del dato.
Parametri di Configurazione
Parametro | Descrizione |
---|---|
Tipo di operazione | Specificare se il sistema deve assegnare un nuovo valore alle Transfer Property, oppure salvare il loro contenuto. Selezionare una delle seguenti operazioni:
|
Eventuale messaggio di attesa per accesso al Db | In caso di accesso a database lenti, ad esempio remoti connessi via ODBC, è possibile indicare un messaggio di attesa che viene riprodotto in modo asincrono durante l'accesso ai dati. Il servizio termina quando sia l'accesso ai dati che la riproduzione del messaggio sono terminati. E' quindi opportuno valutarne accuratamente la lunghezza. Il tasto Assegna Valore consente di salvare il valore indicato in una Costante, oppure recuperarlo da una Transfer Property o un Call Data. |
Tipo di oggetto | Specificare il tipo di oggetto da cui caricare i valori da assegnare alle Transfer Property o in cui salvare le Transfer Property, tra i seguenti:
|
Transfer Property e Valore | Utilizzare i tasti Nuovo, Modifica e Cancella per indicare le Transfer Property e il tipo di oggetto da associare. In caso di caricamento da costante, Transfer Property o Call Data, selezionare la Transfer Property e indicare il nome della costante, Transfer Property o Call Data da cui caricare il valore. In caso di salvataggio su Call Data o Transfer Property (non su costante), selezionare la Transfer Property e indicare il nome del Call Data o altra Transfer Property su cui salvare il valore. In caso di caricamento o salvataggio impostando i tipi di oggetto Campo di un db Access, Campo di un db via ODBC o Entry di un file INI, occorre prima indicare i database o il file INI utilizzati (vedere parametri seguenti). |
DB Access | Se, come tipo di oggetto, è stato selezionato Campo di un db Access, indicare il nome del file MDB e della sua tabella dai cui campi devono essere prelevati i valori da assegnare alla Transfer Property (in fase di caricamento) o i cui campi devono essere usati per salvare le Transfer Property (in fase di salvataggio). Il tasto Assegna Valore, accanto ai campi, consente di salvare il valore indicato in una Costante, oppure recuperarlo da una Transfer Property o un Call Data. |
Nome MDB | Nome del file MDB. |
Nome Tabella | Nome della tabella. |
Creare un nuovo record nel DataBase | Se si sta salvando il contenuto delle Transfer Property nel MDB, si può indicare al sistema di creare un nuovo record nella tabella. |
Criterio di ricerca record | Indicare il nome del campo, il valore o il tipo di dato (numerico, testo, o data/ora) su cui fare la ricerca. |
DB via ODBC | Se, come tipo di oggetto, è stato selezionato Campo di un db via ODBC, inserire il DSN, utente e password, nome della tabella dai cui campi devono essere prelevati i valori da assegnare alla Transfer Property (in fase di caricamento) o i cui campi devono essere usati per salvare le Transfer Property (in fase di salvataggio). Il tasto Assegna Valore, accanto ai campi, consente di salvare il valore indicato in una Costante, oppure recuperarlo da una Transfer Property o un Call Data. |
DSN | Nome con cui il database è definito nell'ODBC. |
Utente / Password | Eventuale nome utente e password di accesso. |
Tabella | Nome della tabella. |
Creare un nuovo record nel DataBase | Se si sta salvando il contenuto delle Transfer Property nel database, si può indicare al sistema di creare un nuovo record nella tabella. |
Criterio di ricerca del record | Indicare il nome del campo, il valore o il tipo di dato (numerico, testo, o data/ora) su cui fare la ricerca. |
Entry in un file INI | Indicare il nome del file INI e della sua section dai cui campi devono essere prelevati i valori da assegnare alle Transfer Property (in fase di caricamento) o i cui campi devono essere usati per salvare le Transfer Property (in fase di salvataggio). Il tasto Assegna Valore, accanto ai campi, consente di salvare il valore indicato in una Costante, oppure recuperarlo da una Transfer Property o un Call Data. |
Nome Servizio successivo | Solo configurando il Servizio tramite Messenger Configurator. Servizio successivo da attivare. Il tasto Selezione consente di recuperare il servizio dall'elenco dei servizi, tramite Transfer Property oppure Call Data. |