10 Approfondimenti su Utilizzo Campi Tabella nei Processi

10.1 Approfondimenti su Utilizzo Campi Tabella nei Processi

Per poterne sfruttare il contenuto all'interno dei processi, il sistema mette a disposizione (nella picklist "Seleziona opzione") una sezione dedicata per ogni campo tabella coinvolto nei moduli o form dinamiche associate al processo (Figura 1)

image.png

Figura 1

Cliccando su una sezione specifica, il sistema permette di selezionare rapidamente una tra le colonne presenti nel campo tabella preso in esame (Figura 2)

image.png

Figura 2

NOTA BENE: il sistema esegue in automatico un filtro basandosi sul campo di partenza dal quale si sta consultando la picklist "Seleziona opzioni", di conseguenza mostrerà solamente le colonne del campo tabella la cui tipologia può essere accettata dal campo di partenza.
Se, ad esempio, all'interno del campo "Membro di" del modulo Azienda volessi inserire il contenuto della colonna di tipo testo "Indirizzo", il sistema non renderò disponibile tale colonna, questo perché permetterà di selezionare solamente le colonne del campo tabella di tipologia "Relazionato a".
Nel caso in cui non fossero presenti colonne di tale tipologia, il sistema non renderà disponibile l'intera sezione del campo tabella (Figura 3)

image.png

Figura 3

In alternativa, è possibile accedere alle colonne del campo tabella selezionando la sezione relativa al modulo in cui si trova il campo tabella e scorrendo tra i vari campi disponibili (Figura 4 e 5)

image.png

Figura 4

image.png

Figura 5

Una volta selezionata la colonna del campo tabella interessata, verrà presentata un'ulteriore picklist alla destra del campo "Seleziona opzioni", dalla quale sarà possibile selezionare una tra le voci disponibili (Figura 6)

image.png

Figura 6

- "Somma" -> solo per le colonne di tipologia Numero, Valuta e Percentuale, permette di ottenere la somma di tutte le righe presenti nel campo tabella interessato.
NOTA BENE: questa voce sarà comunque disponibile anche per le altre tipologie di colonne ma, logicamente, non produrrà alcun risultato.

-"Minimo" -> solo per le colonne di tipologia Numero, Valuta e Percentuale, permette di ottenere il valore più basso tra tutte le righe presenti nel campo tabella interessato.
NOTA BENE: questa voce sarà comunque disponibile anche per le altre tipologie di colonne ma, logicamente, non produrrà alcun risultato.

-"Massimo" -> solo per le colonne di tipologia Numero, Valuta e Percentuale, permette di ottenere il valore più alto tra tutte le righe presenti nel campo tabella interessato.
NOTA BENE: questa voce sarà comunque disponibile anche per le altre tipologie di colonne ma, logicamente, non produrrà alcun risultato.

-"Media" -> solo per le colonne di tipologia Numero, Valuta e Percentuale, permette di ottenere il valore medio tra tutte le righe presenti nel campo tabella interessato.
NOTA BENE: questa voce sarà comunque disponibile anche per le altre tipologie di colonne ma, logicamente, non produrrà alcun risultato.

-"Ultimo" -> permette di ottenere il valore dell'ultima riga presente nel campo tabella interessato.

-"Sequenza" -> permette di ottenere il valore di una riga specifica (se presente) del campo tabella.
Per indicare esattamente il numero della riga si dovrà compilare il campo dedicato che verrà presentato sulla destra e infine cliccare sul pulsante dedicato (Figura 7)

Immagine 2024-09-19 101725.png

Figura 7

Nel caso in cui volessimo, invece, prendere in considerazione solamente una parte delle righe presenti nel campo tabella, dovremo necessariamente utilizzare un'azione di cicla righe (per approfondimenti sul suo funzionamento visionare il capitolo 10.2 del manuale dei processi)

Questo perché, se non eseguiamo un ciclo sul campo tabella, il sistema prenderà in considerazione sempre TUTTE le righe presenti nel campo tabella.

Infatti, all'interno di un'azione di cicla righe, sarà possibile indicare delle condizioni che permetteranno di coinvolgere solamente le righe che le soddisfano.
Queste condizioni dovranno essere indicate nella sezione "Condizioni sul campo" (Figura 8)

image.png

Figura 8

Per utilizzare solamente le colonne delle righe che si stanno ciclando e che rispettano le condizioni impostate, all'interno della picklist "Seleziona" disponibile alla destra del campo "Seleziona opzioni" sarà possibile selezionare una voce aggiuntiva denominata "Corrente" (Figura 9)

NtWimage.png

Figura 9

Per comprenderne al meglio il funzionamento, qui di seguito viene riportato un esempio di azione di cicla righe sul campo tabella "Sedi" del modulo Azienda (Figura 10) dal quale vogliamo creare un record del modulo custom "Sedi" per ogni riga avente nella colonna Stato il valore "IT".

image.png


Figura 10

All'interno del processo configuriamo un'azione di cicla righe e per ogni riga crea entità del modulo custom "Sedi" (Figura 11)

image.png

Figura 11

Nella sezione "Condizioni sul campo" andiamo ad inserire Stato = "IT" mentre nella sezione "Modulo" selezioniamo la voce "Sede"(Figura 12)

image.png

Figura 12

Nei campi relativi all'indirizzo del modulo Sede inseriamo il contenuto delle varie colonne selezionando sempre la voce "Corrente" della picklist "Seleziona" disponibile alla destra del campo "Seleziona opzioni" (Figura 13)

image.png

Figura 13

Riprendendo la Figura 10, come risultato finale otterremo la creazione di due record totali del modulo Sedi, il primo record corrispondente alla prima riga e il secondo record corrispondente alla terza riga.



10.2 Somma parziale delle righe di un campo tabella coinvolte in un ciclo

Come anticipato nel capitolo 10.1, per eseguire la somma parziale delle righe di un campo tabella coinvolte in un ciclo, non è possibile utilizzare la voce "Somma", in quanto, il sistema prenderà sempre in considerazione TUTTE le righe presenti all'interno del campo tabella.

Infatti, la voce "Somma" è una variabile disponibile anche nel caso in cui non si esegua un ciclo.
La sua esistenza è finalizzata ad ottenere facilmente la somma di tutte le righe di un campo tabella senza dover necessariamente configurare un'azione di cicla righe.

Quindi, per ottenere il risultato desiderato, si dovrà configurare un'azione di cicla righe e per ogni riga "Aggiorna entità", in questo modo andremo a salvare il totale all'interno di un campo di un modulo o di una form dinamica (dalla versione 24.08 in poi).
Una volta inserite la condizione nella sezione "Condizioni sul campo" per coinvolgere nel ciclo solamente le righe interessate, nell'azione di aggiorna entità si dovrà sfruttare la funzione SDK fieldAction Standard "vte_sum()" (per approfondimenti vedere capitolo 12.1) per aggiungere (ad ogni ciclo) il valore della riga corrente al contenuto che è già presente nel campo in cui si sta salvando il risultato.

ATTENZIONE! -> nel caso in cui si configurasse un processo che si scatena in maniera ricorrente, per ottenere il risultato corretto si deve impostare un'azione di aggiorna entità che svuoti il contenuto del campo nel quale si vuole salvare il risultato.

ESEMPIO DI UTILIZZO

Per comprenderne al meglio il funzionamento, qui di seguito viene riportato un esempio di un'azione di cicla righe sul campo tabella "Partecipanti" (Figura 1) del modulo Leads dal quale vogliamo calcolare la somma della colonna "Numero" solamente delle righe aventi nella colonna "Tipologia" il valore "Rivenditore" e salvarne il risultato nel campo "Totale Rivenditori" (Figura 2)

image.png

Figura 1

image.png

Figura 2

All'interno del processo configuriamo un'azione di cicla righe e per ogni riga aggiorna entità del modulo "Leads" (Figura 3 e 4)

image.png
Figura 3

image.png

Figura 4

Nella sezione "Condizioni sul campo" andiamo ad inserire "Tipologia" = "Rivenditore" (Figura 5)

image.png

Figura 5

All'interno del campo "Totale Rivenditori" andiamo a richiamare la funzione SDK interessata attraverso la picklist "Selezione Opzione" ed accedendo alla sezione "Funzioni SDK" (Figura 6)

image.png

Figura 6

Come primo parametro inseriamo la variabile che identifica il contenuto del campo "Totale Rivenditori" (Figura 7)

image.png

Figura 7

Come secondo parametro inseriamo la variabile che identifica il valore corrente della colonna "Numero" delle righe del campo tabella coinvolte nel ciclo (Figura 8)

image.png

Figura 8

Riprendendo le Figure 1 e 2, come risultato finale otterremo la somma della colonna "Numero" della prima e terza riga del campo tabella, che nel nostro caso corrisponde al valore 8 (Figura 9)

image.png

Figura 9