Opzioni di elaborazione di un pulsante

Nella scheda Esegui della palette Oggetto è possibile selezionare una connessione dati per il pulsante e specificare se eseguire l'elaborazione associata sul computer client, sul server o su entrambi. La connessione dati deve fornire l'accesso a un'interfaccia di servizio Web o a un database OLEDB che restituirà i dati al modulo in fase di esecuzione o eseguirà un'operazione altrove.

Dopo aver definito l'origine dati (vedere Uso delle origini dati), sarà possibile specificare l'operazione o la query da eseguire. Facendo clic sul pulsante in fase di esecuzione, l'elaborazione sarà completata nel modo impostato attraverso l'operazione o la query.

I dati restituiti potranno essere uniti al modulo in modo da sovrascrivere soltanto i dati associati all'oggetto e senza dover aggiornare la struttura del modulo. In alternativa, è possibile scegliere di aggiornare la struttura del modulo in base ai dati XML restituiti. In tal caso sarà aggiornata la struttura del modulo, e i dati restituiti saranno uniti al termine dell'elaborazione.

Per definire le opzioni di elaborazione di un pulsante, occorre anzitutto selezionare il pulsante. Le opzioni di elaborazione vengono impostate nella scheda Esegui della palette Oggetto. Per visualizzare la scheda Esegui, è necessario aver selezionato l'opzione Esegui nell'area Tipo controllo della scheda Campo.

Per eseguire un'operazione di servizio Web o un'interrogazione di database mediante l'uso di un pulsante

Un pulsante di tipo Esegui consente di eseguire una richiesta di elaborazione ad un servizio Web. Un servizio Web elabora le operazioni inviate dall'utente per definire le informazioni di input e output del modulo.

È necessario aggiungere una connessione al servizio Web, quindi creare o collegare i campi ai messaggi di richiesta e risposta. I campi associati possono generare un messaggio di input da inviare al servizio o ricevere dati dal servizio. Per creare il messaggio di richiesta è possibile utilizzare più campi e il messaggio di risposta può comporre più campi. Per eseguire l'operazione è possibile utilizzare il pulsante Esegui o scrivere uno script. Ad esempio, è possibile utilizzare un servizio Web per ricercare un tasso di interesse, un tasso di cambio o la quotazione di un titolo azionario.

  1. Aggiungere un pulsante alla struttura di un modulo. Vedere Aggiunta di oggetti alla struttura di un modulo.

  2. Nella palette Oggetto, fare clic sulla scheda Campo.

  3. Nell'area Tipo controllo, selezionare Esegui. L'operazione di servizio Web o l'interrogazione del database saranno eseguite secondo le impostazioni della scheda Esegui.

  4. Fare clic sulla scheda Esegui e selezionare una nuova connessione dati dall'elenco Connessione.

  5. Selezionare il file WSDL e fare clic su Avanti.

  6. Nella casella File WSDL, digitare l'URL del documento WSDL o fare clic su Sfoglia per individuare e selezionare il documento sul disco rigido del computer. Se il documento è memorizzato in un server protetto, verrà visualizzata una finestra di dialogo per la richiesta dell'autenticazione o per la selezione dell'ID digitale.

  7. Effettuare una delle seguenti operazioni:

    • Nella finestra di dialogo di autenticazione, digitare il nome utente e la password appropriati, quindi fare clic su OK.

    • Nella finestra di dialogo per la selezione dell'ID digitale selezionare l'ID digitale corretto, da utilizzare come certificato client, quindi fare clic su OK.

  8. Selezionare l'operazione da eseguire, quindi fare clic su Avanti.

    Nella finestra sulla destra sono visualizzati i dettagli dell'operazione selezionata. Se l'operazione selezionata non è codificata SOAP, oppure non è di tipo doc-literal, nella finestra verrà visualizzato un avviso e non sarà possibile continuare l'operazione.

  9. (Facoltativo) Per impostare l'autenticazione client, effettuare una delle seguenti operazioni:

    • Per definire l'autenticazione HTTP o HTTPS, selezionare Richiede autenticazione HTTP/HTTPS e, facoltativamente, specificare le credenziali da accettare per la verifica.

    • Per definire l'autenticazione a livello di messaggio SOAP, selezionare Richiede autenticazione a livello di messaggio e, facoltativamente, selezionare Accetta nome utente e password.

  10. Fare clic su Fine.

  11. Nell'elenco Esegui su, specificare la posizione dove avrà luogo l'elaborazione:

    • Per elaborare la richiesta sul computer client, selezionare Client.

    • Per elaborare la richiesta sul server, selezionare Server.

    • Per elaborare la richiesta sul computer client e sul server, selezionare Client e Server.

  12. Per aggiornare la struttura del modulo e unire i dati restituiti al termine dell'elaborazione, selezionare l'opzione Unisci di nuovo dati del modulo. È necessario utilizzare l'opzione Unisci di nuovo dati del modulo se i dati della risposta verranno utilizzati per comporre dati dinamici, ad esempio sottomoduli ripetibili, associati a dati WSDL, che possono ripetersi per un numero variabile di volte nella risposta. Quando si utilizzano dati dinamici, per generare il numero corretto di sottomoduli ripetibili è necessario ripetere completamente l'unione. Se i dati della risposta WDSL sono associati a un numero di campi fisso, verranno utilizzati per comporre i campi esistenti e non sarà necessario ripetere l'unione dei dati del modulo.

Collegamento di uno script di database a un pulsante

È possibile utilizzare uno script per eseguire attività di manipolazione dati più complesse all'interno di un sistema aziendale. Questo esempio illustra come aggiungere uno script semplice ai campi pulsante per eseguire operazioni di database basilari tra cui il passaggio al primo e all'ultimo record, al record precedente e successivo, l'aggiunta di nuovi record, l'aggiornamento e l'eliminazione di record esistenti.

Nota: Questo esempio si basa su un database e una configurazione specifici non inclusi negli esempi di Designer e costituisce un riferimento per la creazione di script di ricerca nel database personali.

Struttura del modulo con campi pulsante per spostare il record precedente, il successivo e l'ultimo, nonché per aggiungere nuovi record, aggiornare quelli esistenti o eliminarli.

  1. Nella palette Libreria oggetto, fare clic sulla categoria Standard e trascinare otto oggetti pulsante sulla struttura del modulo. Quando si aggiunge un oggetto pulsante, il tipo di controllo predefinito è Regolare. Accettare l'impostazione predefinita.

  2. Denominare il pulsante come indicato di seguito: Primo, Precedente, Successivo, Ultimo, AggiungiNuovo, Aggiorna, Elimina e Annulla.

  3. Selezionare il primo pulsante, in questo caso denominato Primo.

  4. Nell'Editor di script, selezionare click dall'elenco Mostra, selezionare JavaScript dall'elenco Lingua e selezionare Client dall'elenco Esegui Su.

  5. Nell'Editor di script, aggiungere il seguente script JavaScript:

    xfa.sourceSet.DataConnection.first();
  6. Ripetere il passaggio 5 per ciascun pulsante rimanente utilizzando i seguenti script:

    • Precedente: xfa.sourceSet.DataConnection.previous();

    • Successivo: xfa.sourceSet.DataConnection.next();

    • Ultimo: xfa.sourceSet.DataConnection.last();

    • AggiungiNuovo: xfa.sourceSet.DataConnection.addNew();

    • Aggiorna: xfa.sourceSet.DataConnection.update();

    • Elimina: xfa.sourceSet.DataConnection.delete();

    • Annulla: xfa.sourceSet.DataConnection.cancel();

  7. Salvare la struttura del modulo.

  8. Verificare il modulo con la scheda Anteprima PDF. Se il modulo è stato compilato in Adobe Reader, è necessario impostarne diritti di utilizzo tramite Reader Extensions per consentire ad Adobe Reader di accedere al database.

  9. Fare clic sui diversi pulsanti per visualizzare i dati associati a ciascun record. L'esempio mostra che il pulsante Ultimo fa sì che l'ID, il numero parte, la descrizione e il prezzo unitario dell'ultimo record vengano visualizzati nei relativi campi.

Uso di un pulsante per la compilazione dei campi da un database

È possibile utilizzare un database per inserire i dati nei campi del modulo, compresi i campi testuali e numerici.

In questo esempio, il pulsante Recupera Record e la casella di riepilogo sono collegati al database Connessione dati mostrato nella palette Visualizzazione dati a sinistra. Al pulsante è inoltre collegato uno script FormCalc per il recupero di informazioni in base al numero parte selezionato nel campo Casella di riepilogo. I record recuperati vengono visualizzati nei campi ID, PART_NO, UNITPRICE e DESCRIPTION.

  1. Collegarsi al database.

  2. Nella palette Visualizzazione dati, trascinare gli elementi UNIT_PRICE, DESCRIPTION, PART_NO e ID presenti in Connessione dati sulla struttura del modulo. Per ciascun nodo trascinato nella struttura del modulo viene creato un campo con collegamento.

  3. Nella palette Oggetto, fare clic sulla scheda Standard e trascinare un oggetto pulsante nella struttura del modulo.

  4. Immettere un nuovo nome per il pulsante. In questo esempio viene utilizzato RECUPERA RECORD.

  5. Nell'Editor di script, selezionare click dall'elenco Mostra, FormCalc dall'elenco Lingua e Client dall'elenco Esegui su.

  6. Immettere uno script FormCalc simile al seguente esempio. Lo script recupera i dati nei record specificati e li stampa nei campi corrispondenti quando l'utente fa clic sul pulsante.

    //Change the commandType from TABLE to TEXT. TEXT 
    //is the equivalent of SQL Property 
    $sourceSet.DataConnection.#command.query.commandType = "text" 
     
    //Set the Select Node. Select in this case will be  
    //whatever SQL Property you want 
    $sourceSet.DataConnection.#command.query.select.nodes.item(0).value = Concat("Select*from OfficeSupplies Where ID = ", DataListBox1.rawValue,"") 
     
    //Reopen the Data connection 
    $sourceSet.DataConnection.open()
  7. Salvare la struttura del modulo come file PDF.

  8. Verificare il modulo utilizzando la scheda PDF in Anteprima per accertarsi che lo script funzioni come previsto.