Sviluppo > Safe X3 WAS > Link SAFE X3 > Interfaccia 

SEEWARNING Prima di creare il proprio sito è preferibile leggere la documentazione:Prima di iniziare.


La funzione principale della scheda di parametrizzazione 'Interfaccia' è di identificare e di localizzare un web service X3 fornendo:

  • il suo nome di pubblicazione oppure l'alias,
  • le coordinate del server di web service che consegna il servizio.

Le interazioni tra una applicazione web XTEND ed il back-office X3 mette in gioco due categorie di servizi:

  • i servizi di tipo 'Accesso' che descrivono gli accessi ai dati,
  • i servizi di tipo 'Azione' che descrivono le azioni utente.

SEEWARNING Il numero di parametri dei web service di tipo Accesso o 'Azione sotto-programma' è limitato a 50.

In modalità web service, la variabile globale X3 GUSER contiene il codice utente X3 passato in parametro al momento della chiamata del web service.

XTEND valorizza il codice utente X3 in funzione del fatto che l'utente sia connesso o meno:

  • L'utente XTEND non connesso utilizza il codice utente X3 definito di default nel Pool web service,
  • L'utente XTEND connesso utilizza il codice utente X3 che restituito dalla funzione di login.

Interfacce di tipo 'Accesso'

Il server XTEND non accede direttamente al database X3 tramite un connettore di database, ma tramite la chiamata di web service specializzati di tipo sotto-programma o lista di selezione.

Le interfacce di tipo 'Accesso' permettono di definire questi web service che funzionano come fornitori di dati (data providers).

Questi web service sono chiamati mediante i token di tipo blocco.

Accesso generato tabella

Permette di generare automaticamente un web service per accedere ai record di una tabella del database X3:

1. Generazione di un programma 4GL,

2. Creazione di una scheda nella tabella dei sotto-programmi,

3. Pubblicazione del web service.

Il web service generato è immediatamente operativo su tutti i server di web service che pubblicano il dossier.

Accesso generato vista

Idem 'Accesso generato tabella', ma per le viste X3.

Accesso lista di selezione

Permette di utilizzare il web service 'lista selezione' di un oggetto X3 come origine dati.

Accesso 'sottoprogramma'

Il tipo 'Accesso sottoprogramma' è generalmente usato per aggiungere dei campi calcolati ai campi della tabella/vista a cui si vuole accedere.

Esempio: aggiungere la disponibilità ed il prezzo degli articoli in un catalogo.

Per calcolare i valori dei campi 'calcolati' bisogna poter passare al programma 4GL dei parametri contestuali complementari a quelli passati in standard dal server XTEND tramite i parametri AXPARCOD e AXPARVAL (vedere le azioni utente).

Esempio: un codice cliente o una quantità/data inserita dall'utente.

Riquadro dei parametri 'accesso sottoprogramma'

Questo riquadro permette di definire l'elenco dei parametri complementari.
Il valore dei parametri di tipo 'inserito' è indicato nella scheda token link dinamico o blocco.

SEEWARNING Contrariamente alle azioni utente, l'accesso sottoprogramma non permette di inserire il mapping dei parametri.

Il riquadro dei parametri può essere considerato come un mapping sull'elenco dei parametri AXPARCOD/AXPARVAL.

Ottimizzazioni

Come per l'accesso generato tabella, è a volte necessario ottimizzare il richiamo dei web service per migliorare i tempi di risposta.

  • Questo riquadro permette allo sviluppatore di definire (inserire) i propri tipi di ottimizzazioni.

  • Il server XTEND valorizzerà il parametro $OPTIMZE durante la chiamata del web service.

  • Lo sviluppatore 4GL avrà l'incarico di realizzare il programma di ottimizzazione in funzione del valore del parametro.

Interfacce di tipo 'Azione'

Le interfacce di tipo 'Azione utente' permettono di definire dei web service (programmi 4GL) che agiscono sui dati del back-office X3.

L'interfaccia 'Azione' è associata ad una scheda azione web che permette di descrivere il mapping dei parametri.

Queste azioni web sono associate ai token di tipo link dinamico per essere inseriti negli elementi di interfaccia grafica come i bottoni (<input type="button" onClick="">) o anchor (<a href="button" onClick="">).

Azione utente

Una azione utente XTEND si traduce sempre con una chiamata di un web service X3 che può essere sia un sottoprogramma che un'azione associata ad un oggetto X3.

Una azione XTEND si aspetta dei parametri in input, effettua un'elaborazione e valorizza un certo numero di parametri in output come la chiamata di un sottoprogramma in 4GL.

Nel caso di una applicazione XTEND, i parametri in input sono generalmente inseriti dall'utente in un form HTML e i valori restituiti dal sottoprogramma sono messi in memoria nella sessione utente (mapping) allo scopo di essere visualizzati in una pagina HTML o utilizzati come parametri di altre azioni.

Azione sotto-programma

Bisogna prima di tutto aver scritto il programma 4GL ed aver creato la scheda sottoprogramma.

Una volta creata l'interfaccia, il bottone "Genera accesso' permette di pubblicare il web service.

Azione oggetto X3

Il codice dell'azione X3 (bottone di azione dell'oggetto) è indicato nella scheda azione web.

Una volta creata l'interfaccia, il bottone "Genera accesso' permette di pubblicare il web service.

Prerequisiti

SEEREFERTTO Riferirsi alla documentazione di Implementazione

Gestione videata

Testata

Campi

I seguenti campi sono presenti in questo folder :

Codice dell'interfaccia.

  • Sito (campo FCYLIB)

Sito Web corrente.

  • Descrizione (campo INTIT)

Permette di definire una descrizione associata ad ogni scheda.

Chiudi

 

Folder Generale

Presentazione

Parametri generali dell'interfaccia.
I parametri da inserire dipendono dal tipo di interfaccia selezionato.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Tipo interfaccia

  • Tipo (campo TYP)

Le interfacce di tipo 'Accesso ai dati':

  • Accesso generato tabella: permette di generare automaticamente un web service per accedere ai record di una tabella del database X3.

  • Accesso generato vista: come per 'Accesso generato tabella', ma per le viste X3.

  • Accesso lista selezione: permette di utilizare il web service 'lista selezione' di un oggetto X3 come origine dati.

  • Accesso sottoprogramma: permette di personalizzare un sottoprogramma di 'Accesso ai dati' e di aggiungervi dei campi calcolati.

Le interfacce di tipo 'azione':

  • Azione sottoprogramma: chiamata di un web service di tipo sottoprogramma.

  • Azione utente oggetto: chiamata di un web service di tipo azione di un oggetto X3.

Tabella/Vista

Codice della tabella per un 'Accesso generato tabella'.

Codice della vista per un 'Accesso generato tabella'.

Oggetto

Codice oggetto per i tipi di interfaccia 'Azione utente oggetto' e 'Accesso dati lista selezione'.

  • Transazione (campo VARIANTE)

Codice della transazione per le interfacce di tipo 'Accesso dati lista selezione' e 'Azione utente oggetto'

  • Campi nascosti (campo INVISIBLE)

Questo campo permette di prendere in considerazione i campi nascosti per il web service oggetto nel caso delle interfacce 'Accesso lista selezione' e 'Azione utente oggetto'.

  • campo LIBVAR

 

Sotto-programma

  • Programma (campo PRG)

Nome del programma richiamato dal web service.

Questo campo va indicato solo per le interfacce 'Accesso dati sottoprogramma' e  'Azione utente sottoprogramma'.

SEEWARNING Occorre creare il programma e la scheda sottoprogramma.

  • Sotto-programma (campo SUBPRG)

Nome del sottoprogramma richiamato dal web service.

Questo campo va indicato solo per le interfacce 'Accesso dati sottoprogramma' e  'Azione utente sottoprogramma'.

SEEWARNING Occorre creare il programma e la scheda sottoprogramma.

Pubblicazione

  • Nome pubblicazione (campo WEBSRCCOD)

Nome di pubblicazione del web service.

  • N° max righe (campo RESMAX)

Numero massimo di record restituiti dal web service, modificabile tramite il bottone 'Genera accesso'.

  • Genera accesso (campo IGEN)

SEEREFERTTO Per accedere all'help sui campi della videata che appare, vedere la documentazione sul bottone [Genera accesso].

  • campo WWSLIB

 

Chiudi

 

Folder Avanzato

Campi

I seguenti campi sono presenti in questo folder :

Visualizzazione messaggi di tipo

  • Informazione (campo DSYINF)

Un web service X3 può restituire dei messaggi di tipo:

  • Informazione,
  • Warning,
  • Errore.

Il fatto di contrassegnare un tipo di messaggio indica al server XTEND che deve prendere in considerazione questo tipo di messaggio al ritorno dalla chiamata del web service per visualizzarlo via il token campo di nome AMSGUSER.

  • Avvertimento (campo DSYWRN)

 

  • Errore (campo DSYERR)

 

Riquadro numero 1

  • Ottimizzazioni (campo OPTIMI)

Le interfacce di tipo 'Accesso' sono quelle più sollecitate dal motore XTEND; la 'fluidità' del sito web dipende fortemente dai tempi di risposta dei web services chiamati.

Questo riquadro propone, per ogni tipo di accesso, l'elenco delle ottimizzazioni possibili che vengono selezionate al momento della chiamata nel token blocco.

Pool

  • Pool di default (campo LNKADSDEF)

Il pool di web service permette di localizzare il web service:

  • : indica che il server XTEND utilizzerà il pool di web service definito a livello del sito per chiamare il web service associato a questa interfaccia.

  • No: affinché l'interfaccia utilizzi un pool di web service particolare il cui codice è fornito dal parametro 'pool di web service".
  • Pool Web service (campo LNKADS)

Codice del pool XTEND, se diverso dal pool di default inserito a livello del parametro 'sito web'.

Utilizzare un pool XTEND particolare per un'interfaccia permette di ripartire il carico tra pool differenti di connessione quando si dispone di poche licenze web services.

Esempio:

Il pool di default può essere utilizzato per la chiamata dei web services interattivi con tempi di risposta poco importanti. 
In compenso si può utilizzare un pool particolare per la chiamata di web services che attivano elaborazioni più lunghe (come un'accettazione di un ordine) allo scopo di non bloccare gli altri utenti.
Questo pool può eventualmente essere connesso ad un server di elaborazione dedicato.

Accesso

  • Acesso protetto (campo ACSMOD)

Questo parametro permette di controllare l'accesso ai web services via i profili:

  • : indica che solo gli utenti identificati avranno accesso a questo web service.

Questo parametro viene in generale utilizzato dalle applicazioni che utilizzano la libreria AJAX di XTEND.

  • campo W1

 

Riquadro Param. Accesso sottoprogramma

Codice del parametro.

  • Valore (campo VALTYP40)

Tipo di valore per il parametro:

  • Inserito: il valore dei parametri di tipo inserito viene alimentato nella scheda token link dinamico o blocco.
  • Costante: valore fisso inserito nella colonna 'Costante'.
  • Costante (campo VALEUR40)

Valore di un parametro di tipo 'Costante'.

Chiudi

 

Stampe

Di default, le seguenti stampe sono associate alla funzione :

 PRTSCR : Stampa Videata

Ma ciò lo si può modificare tramite parametrizzazione.

Bottoni specifici

Questo bottone permette di aggiornare il dizionario XTEND nel formato XML.

Il server X3WEB considera il dizionario solo in questo formato.

Esiste un file xml per dizionario.

Per esempio il file ACT.xml che corrisponde all'insieme delle azioni web per il sito Web corrente.

Questo bottone permette di copiare un'interfaccia.

I seguenti campi sono presenti sulla finestra aperta da questo bottone :

Blocco numero 1

  • Tipo di dati (campo TYP)

Le interfacce di tipo 'Accesso ai dati':

  • Accesso generato tabella: permette di generare automaticamente un web service per accedere ai record di una tabella del database X3.

  • Accesso generato vista: come per 'Accesso generato tabella', ma per le viste X3.

  • Accesso lista selezione: permette di utilizare il web service 'lista selezione' di un oggetto X3 come origine dati.

  • Accesso sottoprogramma: permette di personalizzare un sottoprogramma di 'Accesso ai dati' e di aggiungervi dei campi calcolati.

Le interfacce di tipo 'azione':

  • Azione sottoprogramma: chiamata di un web service di tipo sottoprogramma.

  • Azione oggetto: chiamata di un web service di tipo azione di un oggetto X3.
  • Codice (campo OBJCOD)

  • campo ZDES

 

  • Nome pubblicazione (campo WEBSRCCOD)

  • N° max righe (campo RESMAX)

Numero massimo di record restituiti dal web service, modificabile tramite il bottone 'Genera accesso'.

  • Programma (campo PRG)

Nome del programma 4GL richiamato dal web service.

  • Sotto-programma (campo SUBPRG)

Nome del sottoprogramma richiamato dal web service.

  • Modulo (campo MODULE)

  • campo WA

 

  • campo WB

 

  • campo WC

 

  • Tipo (campo TYPASU)

Riquadro Interfaccia

  • campo WSEL

 

  • Codice (campo CODXTD)

  • Gruppo (campo GRP)

  • Dimensione (campo DIME)

  • Descrizione (campo INTITCOURT)

 

  • Lunghezza (campo CODLNG)

Chiudi

'Questa documentazione descrive il bottone-icona [Genera accesso].

Questo bottone permette di generare automaticamente il web service il cui nome di pubblicazione è definito nell'interfaccia.

Il web service generato è immediatamente operativo su tutti i server di web service che pubblicano il dossier.

SEEINFO Questo bottone è attivo dopo aver creato la scheda.

Il bottone 'Genera accesso' effettua le seguenti operazioni:

  • Proposta di inserire il numero massimo di record letti ad ogni chiamata del web service ('N° max di righe'),
  • Codica attività, modulo e tipo di Web service,
  • Richiesta di selezionare i campi utili,
  • Generazione del programma 4GL che verrà richiamato dal web service con nome 'W + nome di pubblicazione'
  • Pubblicazione del web service con il nome di pubblicazione precedentemente inserito.

Per le interfacce di tipo:

Accesso dati tabella, Accesso dati vista

Il programma e la scheda sottoprogramma sono generati automaticamente.

Accesso dati sottoprogramma, Azione utente sottoprogramma

Il programma e la scheda sottoprogramma devono essere creati manualmente prima di generare l'accesso.

Azione utente oggetto, Accesso dati lista di selezione

Non occorre creare né programmi né scheda sottoprogramma.

Barra di menù

Strumenti / Copia Web Service

Lo strumento 'copia web service' permette di selezionare una o più interfacce (campo interfaccia vuoto) di un sito XTEND del dossier X3 corrente e di copiare/pubblicare i web service associati verso un altro dossier.

Per attivare la copia, occorre selezionare almeno un'interfaccia nell'elenco.

Copia di un sottoprogramma:

  • Copia di un web service programma 4GL,
  • Creazione della scheda 'sottoprogramma',
  • Pubblicazione del web service.

Copia di un web service oggetto X3:

  • Pubblicazione del web service.

Origine/Dossier: Dossier corrente.

Origine/Sito Web: Codice del sito XTEND che permette di visualizzare l'elenco delle interfacce (Sito corrente di default).

Origine/Interfaccia: Codice dell'interfaccia per visualizzare solo il web service di questa interfaccia.

Destinazione/Dossier: Dossier di destinazione per la copia.

Strumenti / Creazione token campo

Questo strumento permette di creare i token campi a partire:

  • dall'elenco dei campi di una tabella X3
  • dall'elenco dei campi di una vista X3,
  • dai parametri del web service associato ad un'interfaccia.

Colonna

Descrizione

Parametro 

Codice del campo, della tabella o del parametro del web service

Descrizione

Descrizione del campo

Token campo

Codice XTEND per il parametro (stesso codice di default)
Modificabile se si desidera creare un campo con un nome diverso dal parametro (mapping).

Esiste

Contrassegnato se il campo esiste già nel dizionario

Tipo

Tipo di campo (XTEND)
Modificabile in creazione

Menù

Identificativo del menù per il tipo MenùLocale
Modificabile se si vuole creare un campo con un nome diverso da quello del parametro

Dimensione

Numero massimo di valori del parametro o campo

Generazione

Per i campi di dimensione superiore a 1, indica se occorre generare un indice (NOMECAMPO + INDICE):
Nessuno: crea un campo senza indice
Tutti: crea tanti campi indicizzati quanti i valori possibili per questo campo
Uno: crea un solo campo con l'indice indicato nella colonna indice
Modificabile in creazione.

Indice

Indice del campo per calcolo del nome
Modificabile in creazione se Generazione=Uno

Validare i campi dopo la generazione affinché siano presi in considerazione dal server XTEND.

La validazione genera un nuovo dizionario XML dei parametri XTEND.

Il nuovo dizionario viene preso automaticamente in considerazione sul reload/F5 della pagina HTML nel browser solo se l'opzione della scheda di parametrizzazione del sito 'Tecnico\Verifica aggiornamento\Dizionario web' è contrassegnata.

Altrimenti bisogna forzare il ricaricamento del dizionario con l'url:
'http://hostname:porta/xtend/svc/SolutionX3/DossierX3/SiteXtend/admin/reposit/reload'

Messaggi di errore

Non esistono messaggi di errore ad eccezione di quelli generici.

Tabelle utilizzate

SEEREFERTTO Riferirsi alla documentazione di Implementazione