Per ulteriori informazioni sui trigger in generale, vedere la sezione I trigger.
L'evento trigger Servizio Web si verifica se un socket monitorato (indirizzo IP e numero di porta) riceve i dati. I dati devono seguire la notazione SOAP, la quale codifica i dati XML in un messaggio HTTP. L’interfaccia Servizio Web è descritta con il documento WSDL. Tale documento è disponibile con ciascun trigger Servizio Web definito.
Il trigger Servizio Web fornisce feedback sullo stato del processo di stampa, ma è necessario attivare la modalità di elaborazione sincrona. Per ulteriori informazioni, vedere la sezione Feedback sullo stato del processo di stampa.
Normalmente, i programmatori utilizzano Servizio Web per integrare la stampa di etichette nelle proprie applicazioni. Un sistema aziendale esistente esegue una transazione, la quale invia i dati al server NiceLabel Automation usando un socket specifico. I dati inviati vengono formattati come un messaggio SOAP. I dati possono essere forniti in formato CSV, XML e altri formati strutturati, oppure in uno dei vecchi formati. In entrambi i casi, NiceLabel Automation legge i dati, analizza i valori mediante dei filtri e li stampa sulle etichette. Per ulteriori informazioni su come analizzare ed estrarre dati, vedere la sezione I filtri.
Generale
Questa sezione consente di configurare le impostazioni generali dei trigger di file.
-
Nome: specifica il nome univoco del trigger. I nomi consentono di distinguere tra i vari trigger quando essi vengono configurati in Automation Builder , ed eseguiti successivamente in Automation Manager.
-
Descrizione: consente di descrivere il ruolo di questo trigger. Aiutare gli utenti con una breve spiegazione sulle funzioni del trigger.
Comunicazione
Questa sezione consente di configurare il numero di porta obbligatorio e le impostazioni di feedback opzionali.
-
Porta: specifica il numero della porta che accetta i dati in entrata. Usare un numero di porta non usato da un'altra applicazione. Se la porta selezionata è in uso, non sarà possibile avviare il trigger in Automation Manager. Per ulteriori informazioni sui problemi di sicurezza, vedere la sezione Protezione dell'accesso ai trigger.
Nota
Se per il server è attivato il multihoming (più indirizzi IP su una o più schede di rete), NiceLabel Automation risponde sulla porta definita su tutti gli indirizzi IP.
-
Connessione sicura (HTTPS): attiva il livello di trasporto sicuro per il messaggio HTTP e impedisce l'eavesdropping. Per ulteriori informazioni su come impostare una connessione sicura, vedere la sezione Uso del livello di trasporto sicuro (HTTPS).
-
Numero massimo di chiamate simultanee: Specifica il numero massimo di connessioni accettate. Il numero di client contemporanei che possono inviare simultaneamente dati al trigger.
-
Dati di risposta: Definisce la risposta personalizzata utilizzabile con i metodi
ExecuteTriggerWithResponse
eExecuteTriggerAndSetVariablesWithResponse
. I dati della risposta hanno al loro interno il contenuto disponibile nell'area del testo. È possibile combinare valori fissi, valori variabili e caratteri speciali. Per inserire (o creare) variabili e caratteri speciali, fare clic sul pulsante freccia a destra dell'area di testo. La risposta può contenere dati binari, come l'immagine dell'anteprima dell'etichetta e il file di stampa (*.PRN).
Feedback di stato
Per impostazione predefinita, il trigger Servizio Web fornisce feedback sullo stato del processo di stampa creato. Il trigger accetta i dati forniti e li usa per l'esecuzione delle azioni definite. È possibile supervisionare l’esecuzione delle azioni: il trigger segnala lo stato di successo per ciascun evento che si verifica durante l’esecuzione. Per consentire la segnalazione dello stato durante il processo di stampa, attivare Modalità di stampa sincrona.
Il trigger Servizio Web espone i metodi (funzioni) seguenti:
-
ExecuteTrigger: questo metodo accetta i dati in fase di elaborazione e fornisce il feedback sullo stato opzionale. Uno dei parametri di input attiva o disattiva il feedback. Se si attiva la generazione di report di stato, il feedback contiene l'ID dell'errore e una descrizione dettagliata dello stesso. Se l'ID dell'errore è pari a 0, significa che non si è verificato nessun problema di creazione del file di stampa. Se l'ID dell'errore è maggiore di 0, si è verificato un errore durante il processo di stampa. La risposta di Servizio Web in questo metodo non è configurabile e la risposta contiene sempre l'ID e la descrizione dell'errore.
-
ExecuteTriggerWithResponse: questo metodo accetta i dati in fase di elaborazione e fornisce il feedback sullo stato Personalizzato. La risposta di Servizio Web è configurabile. È possibile rispondere usando qualsiasi tipo di dati organizzato in qualsiasi struttura disponibile. Nella risposta si possono usare dati binari.
-
ExecuteTriggerAndSetVariables: simile a ExecuteTrigger descritto in precedenza, questo servizio Web espone un parametro in entrata aggiuntivo che accetta l’elenco formattato delle coppie name-value. Il trigger analizza l'elenco automaticamente, estrae i valori e li salva nelle variabili con lo stesso nome, quindi non è necessario creare manualmente nessun filtro di estrazione dei dati.
-
ExecuteTriggerAndSetVariablesWithResponse: simile a ExecuteTriggerWithResponse descritto in precedenza, questo servizio Web espone un parametro in entrata aggiuntivo che accetta l’elenco formattato di coppie name-value. Il trigger analizza l'elenco automaticamente, estrae i valori e li memorizza nelle variabili con lo stesso nome, quindi non è necessario creare manualmente nessun filtro di estrazione dei dati.
Per ulteriori informazioni sulla struttura dei messaggi che si possono inviare con uno dei due metodi descritti in precedenza, vedere la sezione seguente, WSDL.
WSDL
Web Service Description Language (WSDL) specifica lo stile dei messaggi SOAP. Può essere uno stile Remote Procedure Call (RPC) o documento. Scegliere lo stile supportato dall’applicazione che fornisce i dati.
Il documento WSDL definisce i parametri di input e output del servizio Web.
Dopo aver definito il trigger Servizio Web sulla porta 12345, distribuirlo in Automation Manager e avviarlo. WSDL diventa disponibile in:
http://localhost:12345
WSDL offre diversi metodi, i quali forniscono tutti dei dati nel trigger. Scegliere il metodo più appropriato per lo scopo che si sta tentando di raggiungere.
-
I metodi i cui nomi contengono WithResponse, permettono di inviare risposte personalizzate, come ad esempio messaggi di errore personalizzati, anteprime di etichette, file PDF, file di stampa (*.PRN) , e simili. I metodi i cui nomi non contengono WithResponse forniscono comunque feedback, ma non è possibile personalizzarne la risposta. Il feedback contiene i messaggi di errore predefiniti.
-
I metodi i cui nomi contengono SetVariables consentono di fornire un elenco di variabili in due formati predefiniti. Automation estrae automaticamente i valori e li mappa sulle variabili appropriate. In tal modo si risparmia tempo, in quanto non è necessario impostare alcun filtro per eseguire l'estrazione e la mappatura. Per i metodi i cui nomi non contengono SetVariables è necessario definire manualmente il filtro.
L'interfaccia Servizio Web definisce i seguenti metodi:
Metodo ExecuteTrigger
La parte principale della definizione è:
<wsdl:message name="WebSrviTrg_ExecuteTrigger_InputMessage"> <wsdl:part name="text" type="xsd:string"/> <wsdl:part name="wait" type="xsd:boolean"/> </wsdl:message> <wsdl:message name="WebSrviTrg_ExecuteTrigger_OutputMessage" <wsdl:part name="ExecuteTriggerResult" type="xsd:int"/ <wsdl:part name="errorText" type="xsd:string"/> </wsdl:message>
La definizione include due variabili di input (è necessario specificare i relativi valori):
-
testo: il filtro nella configurazione analizza questa stringa di output. Di solito, la stringa di input è strutturata come file CSV o XML, che ne semplifica l’analisi. È anche possibile usare qualsiasi altro formato di file testuale.
-
attendere: si tratta di un campo booleano che specifica due cose:
-
Se si desidera attendere o meno la risposta sullo stato del processo di stampa.
-
Se il servizio Web dovrebbe fornire o meno feedback.
In caso di True, usare
1
. In caso di False, usare0
. A seconda del tipo di metodo selezionato, è disponibile una risposta predefinita oppure è possibile inviare una risposta personalizzata. -
Sono le variabili di output opzionali (si ricevono i relativi valori, se essi vengono richiesti impostando wait su 1
):
-
ExecuteTriggerResult: la risposta del numero intero contiene il valore 0 in caso di segnalazione di errori di elaborazione dei dati. Essa contiene un numero intero maggiore di 0, se non vi sono errori. L'applicazione che esegue la chiamata del servizio Web su NiceLabel Automation può usare la risposta come indicatore di errore.
-
errorText: questa stringa contiene la risposta dello stato del processo di stampa nel caso in cui si verifichi un errore durante l'elaborazione del trigger.
Nota
Se durante l’elaborazione del trigger si verifica un errore, questo elemento viene incluso nel messaggio di risposta XML e il suo valore contiene la descrizione dell'errore. Tuttavia, se non si verifica nessun errore, questo elemento non è incluso nella risposta XML.
Metodo ExecuteTriggerWithResponse
Questo metodo può essere usato se un invia una risposta personalizzata dopo aver completato l'esecuzione.
Alcuni esempi di ciò che si può rimandare indietro come risposta personalizzata: messaggi di errore personalizzati, anteprima dell'etichetta, file PDF generati, file del flusso di stampa (file di spooling), file XML con informazioni del motore di stampa, più l'anteprima dell'etichetta (codificata come stringa Base64). Le possibilità sono infinite.
La parte principale della definizione è:
<wsdl:message name="WebSrviTrg_ExecuteTriggerWithResponse_InputMessage"> <wsdl:part name="text" type="xsd:string"/> <wsdl:part name="wait" type="xsd:boolean"/> </wsdl:message> <wsdl:message name="WebSrviTrg_ExecuteTriggerWithResponse_OutputMessage"> <wsdl:part name="ExecuteTriggerWithResponseResult" type="xsd:int"/> <wsdl:part name="responseData" type="xsd:base64Binary"/> <wsdl:part name="errorText" type="xsd:string"/> </wsdl:message>
Nell’esempio precedente, sono presenti due variabili di input (è necessario specificare i relativi valori):
-
testo: il filtro nella configurazione analizza questa stringa di output. Di solito, la stringa di input è strutturata come file CSV o XML, che ne semplifica l’analisi. È anche possibile usare qualsiasi altro formato di file testuale.
-
attendere: si tratta di un campo booleano che specifica due cose:
-
Se si desidera attendere o meno la risposta sullo stato del processo di stampa.
-
Se il servizio Web dovrebbe fornire o meno feedback.
In caso di True, usare
1
. In caso di False, usare0
. A seconda del tipo di metodo selezionato, è disponibile una risposta predefinita oppure è possibile inviare una risposta personalizzata. -
Inoltre, le seguenti variabili di output opzionali sono incluse nell’esempio precedente.
Nota
Si riceveranno i valori delle variabili di output opzionale, se li si richiede impostando il valore del campo wait su 1
.
-
ExecuteTriggerWithResponseResult: la risposta con numero intero contiene il valore 0, se non vi sono problemi durante l’elaborazione dei dati. La risposta contiene un numero intero maggiore di 0, se non vi sono errori. L'applicazione che esegue la chiamata del servizio Web su NiceLabel Automation può usare questa risposta come indicatore di errore.
-
responseData: la risposta personalizzata che si può definire nella configurazione del trigger Servizio Web. La risposta è costituita dai dati base64-encoded.
-
errorText: se si verifica un errore durante l’elaborazione del trigger, questa stringa contiene il valore di risposta dello stato del processo di stampa.
Nota
Se è presente un errore segnalato durante l’elaborazione del trigger, il messaggio di risposta XML include l’elemento errorText. Il valore di questo elemento contiene la descrizione dell’errore. Tuttavia, se non si verifica nessun errore, questo elemento non è incluso nella risposta XML.
Metodo ExecuteTriggerAndSetVariables
La parte principale della definizione è:
<wsdl:message name="WebSrviTrg_ExecuteTriggerAndSetVariables_InputMessage"> <wsdl:part name="text" type="xsd:string"/> <wsdl:part name="variableData" type="xsd:string"/> <wsdl:part name="wait" type="xsd:boolean"/> </wsdl:message> <wsdl:message name="WebSrviTrg_ExecuteTriggerAndSetVariables_OutputMessage"> <wsdl:part name="ExecuteTriggerAndSetVariablesResult" type="xsd:int"/> <wsdl:part name="errorText" type="xsd:string"/> </wsdl:message>
Nell’esempio precedente, sono presenti tre variabili di input (è necessario specificare i relativi valori):
-
testo: il filtro nella configurazione analizza questa stringa di output. Di solito, la stringa di input è strutturata come file CSV o XML, che ne semplifica l’analisi. È anche possibile usare qualsiasi altro formato di file testuale.
-
attendere: si tratta di un campo booleano che specifica due cose:
-
Se si desidera attendere o meno la risposta sullo stato del processo di stampa.
-
Se il servizio Web dovrebbe fornire o meno feedback.
In caso di True, usare
1
. In caso di False, usare0
. A seconda del tipo di metodo selezionato, è disponibile una risposta predefinita oppure è possibile inviare una risposta personalizzata. -
-
variableData: questa è la stringa contenente coppie name:value. Il trigger legge tutte le coppie e assegna i valori forniti alle variabili del trigger dello stesso nome. Se la variabile non è presente nel trigger, esso ignora la coppia name:value. Se si fornisce l'elenco di variabili e i relativi valori Uso questo metodo, non è necessario definire alcuna estrazione di dati con i filtri. Il trigger esegue automaticamente tutte le analisi.
Per il contenuto variableData sono disponibili due strutture.
Struttura XML
Il trigger fornisce variabili all’interno dell’elemento principale
<Variables />
del file XML. Il nome di variabile include il nome dell’attributo, mentre il valore di variabile include il valore dell'elemento.<?xml version="1.0" encoding="utf-8"?> <Variables> <variable name="Variable1">Value 1</variable> <variable name="Variable2">Value 2</variable> <variable name="Variable3">Value 3</variable> </Variables>
Nota
Incorporare i dati XML all'interno della sezione CDATA. CDATA, che significa dati caratteri, è una sezione di contenuto dell'elemento contrassegnata in modo tale che l'analizzatore consenta di interpretare i dati XML come dati di soli caratteri, non markup. Di conseguenza, il trigger gestisce l’intero contenuto come dati di caratteri. Ad esempio,
<element>ABC</element>
viene interpretato come<element>ABC</element>
. Ciascuna sezione CDATA inizia con la sequenza<![CDATA[
e finisce con la sequenza]]>
. In sintesi: inserire semplicemente i dati XML all'interno di queste due sequenze.Coppie Name-value
Il trigger fornisce variabili mediante un flusso di testo. Ciascuna coppia name:value occupa la propria riga. Il nome della variabile è a sinistra del carattere di uguale (=), il valore della variabile è a destra.
Variable1="Value 1" Variable2="Value 2" Variable3="Value 3"
Queste sono le variabili di output opzionali:
Nota
Si riceveranno i valori per le variabili opzionali, se li si richiede impostando il valore wait su 1
:
-
ExecuteTriggerAndSetVariablesResult: la risposta con numero intero contiene il valore 0, se non vi sono problemi durante l’elaborazione dei dati. Essa contiene un numero intero maggiore di 0, se l’elaborazione dei dati genera degli errori. L'applicazione che esegue la chiamata del servizio Web su NiceLabel Automation può usare la risposta come indicatore di errore.
-
errorText: questo valore di stringa contiene la risposta dello stato del processo di stampa nel caso in cui segnali un errore di elaborazione del trigger.
Nota
In caso di errore di elaborazione del trigger, questo elemento è incluso nel messaggio di risposta XML. Il suo valore contiene la descrizione dell’errore. Tuttavia, se non si verifica nessun errore, questo elemento non è incluso nella risposta XML.
Method ExecuteTriggerAndSetVariablesWithResponse
Questo metodo può essere usato se il trigger deve inviare una risposta personalizzata dopo aver completato l'esecuzione.
Alcuni esempi di ciò che si può rimandare indietro come risposta personalizzata: messaggi di errore personalizzati, anteprima dell'etichetta, file PDF generati, file del flusso di stampa (file di spooling), file XML con informazioni del motore di stampa, più l'anteprima dell'etichetta (codificata come stringa Base64). Le possibilità sono infinite.
La parte principale della definizione è:
<wsdl:message name="WebSrviTrg_ExecuteTriggerAndSetVariablesWithResponse_ InputMessage"> <wsdl:part name="text" type="xsd:string"/> <wsdl:part name="variableData" type="xsd:string"/> <wsdl:part name="wait" type="xsd:boolean"/> </wsdl:message> <wsdl:message name="WebSrviTrg_ExecuteTriggerAndSetVariablesWithResponse_ OutputMessage"> <wsdl:part name="ExecuteTriggerAndSetVariablesWithResponseResult" type="xsd:int"/> <wsdl:part name="responseData" type="xsd:base64Binary"/> <wsdl:part name="errorText" type="xsd:string"/> </wsdl:message>
Sono presenti tre variabili di input (è necessario specificare i relativi valori):
-
testo: il filtro nella configurazione analizza questa stringa di output. Di solito, la stringa di input è strutturata come file CSV o XML, che ne semplifica l’analisi. È anche possibile usare qualsiasi altro formato di file testuale.
-
attendere: si tratta di un campo booleano che specifica due cose:
-
Se si desidera attendere o meno la risposta sullo stato del processo di stampa.
-
Se il servizio Web dovrebbe fornire o meno feedback.
In caso di True, usare
1
. In caso di False, usare0
. A seconda del tipo di metodo selezionato, è disponibile una risposta predefinita oppure è possibile inviare una risposta personalizzata. -
-
variableData: questa è la stringa contenente coppie name:value. Il trigger legge tutte le coppie e assegna i valori forniti alle variabili del trigger dello stesso nome. Se la variabile non è presente nel trigger, esso ignora la coppia name:value. Se si fornisce l'elenco di variabili e i relativi valori Uso questo metodo, non è necessario definire alcuna estrazione di dati con i filtri. Il trigger esegue automaticamente tutte le analisi.
Per il contenuto variableData sono disponibili due strutture.
Struttura XML
Il trigger fornisce variabili all’interno dell’elemento principale
<Variables />
del file XML. Il nome di variabile include il nome dell’attributo, mentre il valore di variabile include il valore dell'elemento.<?xml version="1.0" encoding="utf-8"?> <Variables> <variable name="Variable1">Value 1</variable> <variable name="Variable2">Value 2</variable> <variable name="Variable3">Value 3</variable> </Variables>
Nota
Incorporare i dati XML all'interno della sezione CDATA. CDATA, che significa dati caratteri, è una sezione di contenuto dell'elemento contrassegnata in modo tale che l'analizzatore consenta di interpretare i dati XML come dati di soli caratteri, non markup. Di conseguenza, il trigger gestisce l’intero contenuto come dati di caratteri. Ad esempio,
<element>ABC</element>
viene interpretato come<element>ABC</element>
. Ciascuna sezione CDATA inizia con la sequenza<![CDATA[
e finisce con la sequenza]]>
. In sintesi: inserire semplicemente i dati XML all'interno di queste due sequenze.Coppie Name-value
Il trigger fornisce variabili mediante un flusso di testo. Ciascuna coppia name:value occupa la propria riga. Il nome della variabile è a sinistra del carattere di uguale (=), il valore della variabile è a destra.
Variable1="Value 1" Variable2="Value 2" Variable3="Value 3"
Queste sono le variabili di output opzionali:
Nota
Si ricevono i relativi valori, se li si richiede impostando il valore wait su 1
:
-
ExecuteTriggerAndSetVariablesWithResponseResult: la risposta con numero intero contiene il valore 0, se non vi sono problemi durante l’elaborazione dei dati. Essa contiene un numero intero maggiore di 0 se la risposta genera degli errori. L'applicazione che esegue la chiamata del servizio Web su NiceLabel Automation può usare la risposta come indicatore di errore.
-
responseData: la risposta personalizzata che si può definire nella configurazione del trigger Servizio Web. La risposta è costituita dai dati base64-encoded.
-
errorText: questo valore di stringa contiene la risposta dello stato del processo di stampa nel caso in cui segnali un errore di elaborazione del trigger.
Nota
In caso di errore di elaborazione del trigger, questo elemento è incluso nel messaggio di risposta XML. Il suo valore contiene la descrizione dell’errore. Tuttavia, se non si verifica nessun errore, questo elemento non è incluso nella risposta XML.
Altro
Le opzioni nella sezione Feedback dal motore di stampa specificano i parametri di comunicazione che consentono di ricevere feedback dal motore di stampa.
-
Stampa supervisionata: attiva la modalità di stampa sincrona. Usarla ogni volta che si desidera reinviare lo stato del processo di stampa all'applicazione di terzi. Per ulteriori informazioni, vedere la sezione Modalità di stampa sincrona.
Le opzioni nella sezione Elaborazione dati specificano se si desidera tagliare i dati in modo tale che si inseriscano in una variabile, oppure ignorare le variabili di etichetta mancanti. Per impostazione predefinita, segnala gli errori e interrompe il processo di stampa se si tenta di conservare valori troppo a lungo nelle variabili di etichetta oppure di impostare valori per variabili di etichetta inesistenti.
-
Ignora contenuti di variabili eccessivi: tronca i valori dei dati che superano la lunghezza della variabile come definito nel progettista di etichette per renderli idonei. Questa opzione è attiva se i valori delle variabili vengono impostati nei filtri, dai file di comando e quando vengono impostati i valori delle variabili di trigger sulle variabili di etichetta con lo stesso nome.
Esempio 25. Esempio
La variabile di etichetta accetta al massimo 5 caratteri. Con questa opzione attivata, qualsiasi valore superiore a 5 caratteri viene troncato ai primi 5 caratteri. Se il valore è 1234567 ignora le cifre 6 e 7.
-
Ignora le variabili dell'etichetta mancanti: quando si stampa con i file di comando (come il file JOB), il processo di stampa ignora tutte le variabili che sono:
-
specificati nel file di comando (usando il comando SET)
-
non definiti sull'etichetta
Lo stesso accade se si definisce l'area di assegnazione in un filtro per estrarre tutte le coppie name-value, ma l'etichetta contiene meno variabili.
Quando si impostano i valori di variabili di etichetta inesistenti, segnala un errore. Se questa opzione è attivata, la stampa continua.
-
Le opzioni nella sezione Scripting specificano le possibilità di esecuzione di script.
-
Linguaggio di script: seleziona il linguaggio di script per il trigger. Tutte le azioni Esegui script usate all'interno di un singolo trigger usano il linguaggio di script selezionato.
Le opzioni presenti nella sezione Salva dati ricevuti specificano i comandi disponibili per i dati ricevuti dal trigger.
-
Salva su file i dati ricevuti dal trigger: Attivare questa opzione per salvare i dati ricevuti dal trigger. L'opzione Variabile consente di usare il nome di file di variabile. Selezionare una variabile contenente il percorso e il nome del file.
-
Quando si verifica un errore, salva su file i dati ricevuti dal trigger: attivare questa opzione per salvare i dati nel trigger solo se si verifica un errore durante l'esecuzione dell'azione. Potrebbe essere opportuno attivare questa opzione per tenere pronti i dati alla risoluzione dei problemi.
Nota
Assicurarsi di attivare il supporto di stampa supervisionato. In caso contrario, Automation non può rilevare errori durante l’esecuzione. Per ulteriori informazioni, vedere la sezione Modalità di stampa sincrona.
Nota
Automation salva i dati ricevuti in un file temporaneo. Questo file temporaneo viene eliminato subito dopo il completamento dell'esecuzione del trigger. La variabile interna
DataFileName
fa riferimento al nome di tale file. Per ulteriori informazioni, vedere l'argomento Variabili interne.