Riferirsi alla documentazione di Implementazione
Presentazione
Codice supporto
Questo campo permette di attribuire un codice identificativo ad un supporto di selezione. Questo identificativo non deve eccedere i quindici caratteri.
Target
Questo campo permette di associare il supporto di selezione ad un target e di renderlo di conseguenza gestibile.
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
| Ce champ permet d’attribuer un code identifiant à un support desélection. Cet identifiant ne doit pas excéder quinzecaractères. |
| Ce champ permet d’associer le support de sélection à une cibleet par conséquent de le rendre exploitable. |
Chiudi
Presentazione
Il campo Tipo permette di indicare uno dei quattro tipi di supporti di selezione. E' uno dei valori del menù locale 2965.
Il campo Descrizione permette di inserire una descrizione per il supporto di selezione
Descrizione
Il campo facoltativo permette di inserire un testo sintetico che informa l'utente sia sulla natura del supporto stesso, sia sui differenti benefici attesi dalla gestione di quest'ultimo.
Programma
Il campo riguarda unicamente i supporti di tipo Programma. Finchè l'utente non clicca sul campo Tipo e seleziona Programma, il campo Programma rimane vuoto. Questo campo indicha il nome del programma associato al supporto di selezione a condizione che esista. Tutti i programmi associati ai supporti di selezione hanno un nome composto da un prefisso "ZSSP" seguito da un numero di crono. Sono quindi considerati come programmi specifici.
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
Blocco numero 1
| Il existe quatre types de supports de sélection différents.Chacun de ces types requiert une utilisation différente del’outil. |
|   |
Descrizione
|   |
Blocco numero 3
|   |
Chiudi
Presentazione
Ogni tipo richiede un diverso utilizzo dello strumento.
Questo supporto è il più semplice dei supporti di selezione.
Per di più, teoricamente l'utente non è mai portato a preoccuparsi della sua creazione poichè viene preso automaticamente in carico dal sistema durante la creazione di un nuovo target.
L'utente può comunque modificare la Denominazione e la Descrizione di tali supporti.
Nessun componente nè programma va definito su questo tipo di supporto. Così, tutte queste funzionalità sono inattive.
Durante il ricorso a tale supporto in fase di un targeting, verrà generata una popolazione contenente la totalità dei record contenuti nella tabella target.
Questo supporto ha l'obiettivo di definire le join tra tabelle con la tabella target sulla sola base dei campi indicizzati. Il ricorso alle join limitate a campi indicizzati garantisce un alto livello di performance durante l'esecuzione di un targeting.
Invece, tale limitazione riduce la gamma delle possibilità standard di associazioni tra tabelle. Queste possibilità sono direttamente dipendenti dalla descrizione degli indici definiti nel dizionario delle tabelle X3.
Tuttavia, la funzione di gestione dei supporti di selezione ha l'obiettivo di permettere la definizione di un numero sempre più importante di nuovi supporti di selezione. Questi supporti possono essere realizzati sulla base sia di indici standard che specifici.
In questa maniera, anche se un indice critico per una data attività commerciale non è presente nel dizionario standard X3, è consigliabile definire un nuovo indice specifico che servirà da base per la costruzione di un nuovo supporto di primo livello.
Il limite principale di questo tipo di supporto risiede soprattutto nella sua capacità di associare le tabelle solo in relazione diretta col target. Per esempio, la tabella dei resi di vendita (SRETURN) potrebbe essere oggetto di un nuovo indice specifico SRHA per il campo BPCORD.
In questa maniera potrebbe essere costruito un nuovo supporto di primo livello sui resi di vendita. In questa sede si vede chiaramente che un reso è associato direttamente ad un cliente.
Invece, la tabella delle righe di reso (SRETURND) non comporta nella sua definizione, richiami del campo BPCORD. Quindi c'è solo una connessione indiretta tra la tabella SRETURND e la tabella BPARTNER. Questa relazione transita attraverso la tabella SRETURN. In questa situazione, la tabella SRETURND non potrebbe essere integrata in un supporto di primo livello.
Così, l'arbitraggio tra i diversi tipi di supporto è una fase essenziale nella definizione di un targeting.
Una volta effettuato l'arbitraggio, occorre interessarsi alla costruzione di un supporto di primo livello :
Livello
Nell'ambito di un supporto di primo livello, il campo viene alimentato automaticamente con un valore che non deve mai essere diverso da 1. Effettivamente, il target è sempre a livello 0. Tale supporto autorizza solo delle relazioni dirette col target e quindi di livello 1. E' conseguentemente vietato inserire un valore maggiore o minore di 1.
Tabella
Questo campo permette di inserire la tabella che va messa in relazione con il target. L'utente è aiutato da una lista di selezione associata o tramite un tunnel verso l'oggetto di gestione delle tabelle X3.
Chiave
Questo campo permette di indicare il campo nella tabella collegata che contiene il valore corrispondente alla chiave primaria del target. L'utente può selezionare questo campo tra l'elenco dei campi che compongono la tabella collegata.
Per esempio, nel caso di una associazione della tabella degli Appuntamenti (BAPPOINT) con il target dei Terzi, il campo che contiene il nome del Terzo visitato è APTCMP. E' quindi questo il campo che deve essere menzionato nella colonna « Chiave ».
Tabella parente
Nell'ambito di un supporto di primo livello, il livello parente è sempre conosciuto dal sistema. Questa informazione è sempre alimentata di default con il codice della tabella target.
Chiave parente
Nell'ambito di un supporto di primo livello, il livello parente è sempre conosciuto dal sistema. Questa informazione è sempre alimentata di default con il nome del campo che rappresenta la chiave primaria della tabella target.
Indice
Quando si collega una tabella ad un target, significa che si è provveduto precedentemente a disporre di un indice che permette di realizzare la join desiderata.
Se questo indice è a componente unica, il sistema prenderà allora automaticamente in carico la qualifica dei campi "Indici" e "Componeneti di chiave". Effettivamente, dispone in questo caso di tutte le informazioni necessarie.
Tuttavia, se l'indice è a componenti multipli, l'utente è invitato ad indicare l'indice da utilizzare per realizzare la join. Quest'ultimo è aiutato da una lista di selezione contenente tutti gli indici disponibili nella tabella da collegare.
Filtro o Componente di chiave
Questo campo è gestito in maniera differente da un punto di vista della sintassi a seconda che si definisca un supporto di primo livello o un supporto di raggruppamento.
Nell'ambito di un supporto di primo livello, occorre impegnarsi per definire i valori dei diversi componenti dell'indice precedentemente indicato
Il numero di valori inseriti deve essere uguale al numero dei componenti di chiave dell'indice. Non è possibile utilizzare solo la prima o la seconda parte di un indice.
Regole di sintassi di inserimento dei componenti di chiave:
[F :seguita dal codice abbreviato di tre lettere della tabella nel dizionario X3 poi ].
Per esempio, per la tabella BPADDRESS: [F :BPA]
Richiamo delle regole di parametrizzazione:
La definizione di un supporto di primo livello è sottomessa ad alcune regole ricordate qui in basso:
Questo supporto ha l'obiettivo di definire una rete strutturale o gerarchica di relazioni tra tabelle che conducono tutte ad uno stesso target. Questo tipo di supporto deve essere utilizzato solo quando si rivela difficile o addirittura impossibile ricorrere ad un supporto di primo livello.
A differenza di un supporto di primo livello, questo tipo di supporto permette di definire delle relazioni tra tabelle sulla base dei campi non indicizzati. Ancora, le relazioni non sono realizzate soltanto con un target ma potenzialmente con qualunque altra tabella che condivida una caratteristica comune.
In questa maniera, è possibile partendo da una tabella isolata nel dizionario X3, risalire tabella dopo tabella fino ad un target.
Di conseguenza, questo tipo di supporto estende in modo molto significativo la rosa delle possibilità di targeting realizzabili.
Costruzione di un supporto di raggruppamento: l'esempio della "Sedia"
Si desidera realizzare un supporto che permetta di ritrovare tutti i terzi che hanno ordinato una sedia.
La definizione del targeting è la seguente:
Tabella | Campo | Condizione | Valore |
ITMMASTER | ITMREF | Uguale a | Sedia |
In questo caso, il supporto di selezione apporta il minimo indispensabile per ritrovare dei terzi a partire da una scheda articolo.
La semantica consegnata dal supporto di selezione per il criterio Articolo è : « Articoli ordinati ». Il supporto deve quindi permettere di approdare alla tabella dei terzi transitando dagli ordini di vendita.
Il percorso proposto è il seguente:
Da una scheda articolo, bisogna risalire alle righe d'ordine. Da una riga di ordine, occorre risalire all'ordine. Da un ordine, occorre risalire al terzo.
Il riquadro qui in basso illustra il percorso da compiere:
Livello | Tabella | Chiave | Tabella parente | Chiave parente |
1 | SORDER | BPCORD | BPARTNER | BPRNUM |
2 | SORDERQ | SOHNUM | SORDER | SOHNUM |
3 | ITMMASTER | ITMREF | SORDERQ | ITMREF |
A partire dalla tabella di livello più basso ITMMASTER, occorre che il sistema risalga alla tabella delle righe d'ordine SORDERQ. Per fare ciò, conviene indicare quale campo della tabella parente (SORDERQ) contiene il valore "Sedia" (Essendo Sedia il codice dell'articolo. Campo ITMREF). In SORDERQ, si tratta ugualmente del campo chiamato ITMREF.
In seguito, a partire dalla tabella delle righe d'ordine, occorre indicare al sistema quala campo della tabella parente contiene il codice dell'ordine. Nelle due tabelle, questo campo si chiama SOHNUM.
Infine, a partire dalla tabella degli ordini, occorre indicare al sistema quale campo della tabella target contiene il codice del terzo. Nella tabella Terzi si tratta di BPRNUM. Nella tabella degli ordini, si tratta di BPCORD.
Al termine del percorso, il sistema ha potuto determinare i terzi che avevano ordinato una Sedia.
Questo tipo di struttura di navigazione può essere riprodotto all'infinito con tutte le tabelle nella misura in cui esistano le connessioni necessarie tra le tabelle.
Per tale ragione, ecco qualche spiegazione complementare sulle regole di costruzione dei supporti di tipo raggruppamento.
Livello
Questo campo permette di indicare il livello di una tabella nell'ambito della stuttura ramificata delle relazioni tra tabelle:
Tabella
Questo campo permette di includere una nuova tabella nell'ambito della stuttura ramificata delle relazioni. L'utente è aiutato da una lista di selezione associata o da un tunnel verso l'oggetto di gestione delle tabelle X3.
Chiave
Questo campo permette di indicare il campo nella nuova tabella inclusa che contiene il valore corrispondente al campo equivalente nella tabella parente. L'utente può selezionare il campo tra l'elenco deli campi che compongono la tabella.
Tabella parente
L'utente è invitato ad indicare il nome della tabella di livello superiore nella struttura ramificata delle relazioni. L'utente viene aiutato da una lista di selezione che contiene tutte le tabelle di livello immediatamente superiore.
Chiave parente
Questo campo permette di indicare il campo nella tabella parente che contiene il valore corrispondente al campo equivalente nella tabella di livello inferiore. L'utente può selezionare il campo tra la l'elenco dei campi che compongono la tabella.
Indice
Questo campo non ha un oggetto nell'ambito di un supporto di raggruppamento. Viene di conseguenza disattivato.
Filtro o Componenete di chiave
Le associazioni tra campo e campo sono facili da definire e sono convenienti per relazioni a componente unica.
Tuttavia, alcune relazioni hanno bisogno di informazioni complementari per essere stabilite correttamente.
La tabella degli indirizzi (BPADDRESS) è un esempio calzante. Quest'ultima include un campo BPANUM che contiene il codice dell'entità per la quale è definito l'indirizzo. Una relazione costruita come segue sembra plausibile:
Livello | Tabella | Chiave | Tabella parente | Chiave parente |
1 | BPADDRESS | BPANUM | BPARTNER | BPRNUM |
Il problema consiste nel fatto che il campo BPANUM può contenere un codice Terzo, un codice Società oppure un codice Sito. E' richiesta un'informazione complementare per discriminare in maniera più precisa la relazione tra BPADRESS e BPARTNER. Questa informazione è memorizzata nel campo BPATYP. Se si vuole essere sicuri di lavorare solo sul sotto-insieme degli indirizzi relativi ai terzi, occorre quindi aggiungere un filtro complementare alla relazione:
Livello | Tabella | Chiave | Tabella parente | Chiave parente | Filtro |
1 | BPADDRESS | BPANUM | BPARTNER | BPRNUM | [F:BPA]BPATYP = 1 |
L'inserimento del filtro complementare è condizionato al rispetto di alcune regole di sintassi:
Operatore | Sintassi richiesta |
E | & |
O | | |
Non | ! |
E non | &! |
O non | |! |
[F :seguita dal codice abbreviato di tre lettere della tabella nel dizionario X3 poi ].
Per esempio, per la tabella BPADDRESS: [F :BPA]
Richiamo delle regole di parametrizzazione:
La definizione di un supporto di raggruppamento è condizionata ad alcune regole:
Il supporto ha l'obiettivo di facilitare la redazione e l'esecuzione di un codice applicativo destinato a generare una popolazione di un dato target nell'ambito di un targeting.
Questo tipo di supporto va usato solo quando risulta difficile o impossibile ricorrere ad un supporto di primo livello o ad un supporto di raggruppamento di tabelle.
Per definire un supporto di questo tipo basta definire il tipo di Programma e confermare la sua creazione.
Definire il tipo di supporto come Programma ha l'effetto di disattivare la griglia di inserimento dei componenti del supporto e di attivare in compenso il menù Funzioni - Definizione programma.
Per iniziare la stesura del programma, l'utente deve cliccare sul menù funzioni - Definizione programma.
Una volta generato, il traprogramma può essere indifferentemente aperto e modificato sia dal supporto di selezione che dal menù Sviluppo - Dizionario Programmi - programmi.
Il supporto di selezione prende in carico la redazione di uno scheletro di programma i cui diversi obiettivi sono:
Lo scheletro del programma è composto dalle diverse sezioni seguenti:
La fine del programma si occupa di disattivare gli eventuali filtri posti sulla tabella target.
Per capire meglio i casi e il tipo di supporto di selezione adatto, il riquadro qui sotto illustra le qualità di ognuno dei vari tipi. In seguito rimane solo da arbitrarli in funzione delle limitazioni di un targeting.
Tipi di supporti | Qualità | ||
Ergonomia di gestione | Performante | Potenza di targeting | |
Primo livello | Sì | Sì | Limitata |
Raggruppamento di tabelle | Sì | Dipende dall'espressione della richiesta | Estesa |
Programma | No | Dipende dalla stesura del programma | Illimitata |
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
| Dans le cadre d’un support de premier niveau, ce champ estqualifié automatiquement avec une valeur qui ne doit jamais êtredifférente de 1. En effet, la cible est toujours au niveau 0. Cesupport n’autorise que des relations directes avec la cible et doncde niveau 1. Il est par conséquent interdit de saisir une valeursupérieure ou inférieure à 1. Dans le cadre d’un support de regroupement, ce champ permetd’indiquer le niveau d’une table au sein de l’arborescence desrelations inter-tables. Le niveau 0 correspond à la cible. Le niveau 1 correspond à une table directement reliée à lacible. Le niveau 2 correspond à une table reliée à une table de niveau1. Etc.... |
| Dans le cadre d’un support de premier niveau, cette zone permetde saisir la table à mettre en relation avec la cible. Dans le cadre d’un support de regroupement, ce champ permetd’inclure une nouvelle table au sein de l’arborescence desrelations. L’utilisateur est aidé dans les deux cas par une liste desélection associée ou bien d’un tunnel vers l’OBJet de gestion destables X3. |
| Dans le cadre d’un support de premier niveau, cette zone permetd’indiquer le champ dans la table liée qui contient la valeurcorrespondant à la clé primaire de la cible. L’utilisateur peutsélectionner ce champ parmi la liste des zones composant la tableliée. Par exemple, dans le cas d’une association de la table desRendez-vous (BAPPOINT) avec la cible des Tiers, le champ contenantle nom du Tiers visité est APTCMP. C’est donc précisément ce champqui doit être mentionné dans la colonne « Clé ». Dans le cadre d’un support de regroupement, cette zone permetd’indiquer le champ dans la nouvelle table incluse qui contient lavaleur correspondant au champ équivalent dans la table parent.L’utilisateur peut sélectionner ce champ parmi la liste des zonescomposant la table. |
| Dans le cadre d’un support de premier niveau, le niveau parentest toujours connu du système. Cette information est donc toujoursrenseignée par défaut avec le code de la table cible. Dans le cadre d’un support de regroupement, l’utilisateur estinvité à indiquer ici le nom de la table de niveau supérieur dansl’arborescence des relations. L’utilisateur est aidé pour cela parune liste de sélection contenant toutes les tables de niveauimmédiatement supérieur. |
| Dans le cadre d’un support de premier niveau, le niveau parentest toujours connu du système. Cette information est donc toujoursrenseignée par défaut avec le nom du champ représentant la cléprimaire de la table cible. Dans le cadre d’un support de regroupement, cette zone permetd’indiquer le champ dans la table parent qui contient la valeurcorrespondant au champ équivalent dans la table de niveauinférieur. L’utilisateur peut sélectionner ce champ parmi la listedes zones composant la table. |
| Lorsque l’on relie une table à une cible, cela signifie que l’ona préalablement veillé à disposer d’un index permettant de réaliserla jointure souhaitée. Si cet index est à composante unique, le système prendra alorsautomatiquement en charge la qualification des zones « Index » et «Composantes de clé ». En effet, il dispose dans ce cas de toutesles informations nécessaires à ce travail de façon fiable. En revanche, si l’index est à composantes multiples,l’utilisateur est invité à indiquer l’index à utiliser pourréaliser la jointure. Ce dernier est aidé pour cela par une listede sélection contenant tous les index disponibles dans la table àrelier. Cette zone n’a pas d’OBJet dans le cadre d’un support deregroupement. Elle est par conséquent désactivée. |
| Support de type liaisons de premier niveau : Cette zone est exploitée de façon différente d’un point de vuesyntaxique suivant que l’on défini un support de premier niveau oubien un support de regroupement. Dans le cadre d’un support depremier niveau, il faut s’attacher à définir les valeurs desdifférentes composantes de l’index indiqué précédemment. Le nombre de valeurs saisies doit absolument être égal au nombrede composantes de clé de l’index. Il n’est pas possible d’utiliseruniquement la première ou la seconde partie d’un index. Règles syntaxiques de saisie des composantes de clé : 1 / Chaque composante de clé doit être séparée par un pointvirgule. 2 / Chaque valeur alphanumérique doit être délimitée par desguillemets. 3 / Bien que non obligatoire, mais afin d’éviter tout risque deconflit de nom de variables, il est vivement conseillé de faireprécéder chaque nom de champ par son abréviation standard declasse. Support de type regroupement : Les associations de champ à champ sont faciles à définir etconviennent parfaitement pour des relations à composanteunique. Malheureusement, certaines relations nécessitent desinformations complémentaires pour être correctement établies. La table des Adresses (BPADDRESS) est un bon exemple. Celle-cicontient un champ BPANUM contenant le code de l’entité pourlaquelle l’adresse est définie. Le problème réside dans le fait quele champ BPANUM peut contenir aussi bien un code de Tiers qu’uncode de Société ou bien encore un code de Site. Une informationcomplémentaire est donc requise pour discriminer plus précisémentla relation entre BPADRESS et BPARTNER. Cette information eststockée dans le champ BPATYP. Si l’on veut s’assurer de netravailler que sur le sous-ensemble des adresses relatif aux tiers,il fait donc ajouter un filtre complémentaire à la relation. |
Chiudi
Questo menù attiva la creazione e la redazione dello scheletro di un programma di tipo generazione di una popolazione semplice. L'associazione tra il supporto ed il programma in questione è realizzata in automatico.
Il nome fisico di questo programma è visualizzato nel campo Programma della scheda di supporto di selezione.
Oltre ai messaggi generici, i seguenti messaggi d'errore possono apparire al momento dell'inserimento :
Errore durante la generazione del modello di programma.
Questo messaggio appare quando il sistema non è stato in grado di costruire la struttura di base del programma di un supporto di selezione di tipo Programma.
Alcune tabelle non permettono di accedere al target.
Questo messaggio appare se un utente cerca di confermare la creazione o la modifica di un supporto di selezione che comporta una descrizione errata di relazione tra tabelle.