Utilizzo delle proprietà SourceExpr e DestExpr
Nell’ultima sezione, abbiamo discusso su come aggiungere istanze di tabella a una mappatura. In questa sezione, vedremo come accedere ai dati dei campi in una tabella. E come usare valori costanti e filtri.
Il modulo permette di leggere i dati dai campi delle tabelle, ogni volta che c’è una proprietà SourceExpr (espressione sorgente). Il SourceExpr può essere utilizzato anche per specificare valori costanti o per richiamare funzioni. Troverete questa proprietà sulle linee dati di mappatura di tipo di formato NAV e sulle linee dati delle mappature di esportazione. Ma questa proprietà è disponibile anche per parametri di funzione personalizzata e per estendere i messaggi di errore. Ci sono altre opzioni, che discuteremo più avanti in questa sezione.
Per scrivere i dati nei campi della tabella c’è un’altra proprietà chiamata DestExpr (espressione di destinazione). Questa proprietà consente anche di controllare i dati rispetto a un filtro specificato, invece di memorizzarli. Entreremo nei dettagli tra un attimo. È importante sapere che è possibile scrivere dati in qualsiasi campo di un’istanza di una tabella, anche se la Mode tabella è impostata su Read. La scrittura su una tabella in modalità di lettura chiamerà la logica di validazione del NAV, ma non modifichiamo il record. Sulle nostre tabelle buffer si può usare questo per memorizzare un valore per un certo tempo nella mappatura. Su altre tabelle dipenderà dalla logica di validazione, se è sicuro utilizzare una tabella in lettura per memorizzare temporaneamente i dati.
La proprietà SourceExpr
Il tipo di sorgente specifica il tipo di dati che si desidera leggere. I valori ammessi sono:
Un valore costante che viene inserito nella mappatura.
Un campo di un’istanza di una tabella, che è una delle linee di mappatura parent di questa linea di mappatura. Nel caso in cui si voglia leggere un campo somma si deve essere fuori dall’istanza della tabella, ma al di sotto di essa.
Si desidera leggere i dati da una funzione integrata o personalizzata.
Questa proprietà è stata aggiunta in Anvaigo EDI Connect 4.00.
Questa proprietà è disponibile solo se SrcType è impostato su Const. Questa proprietà specifica il tipo di dati del valore costante. È necessario selezionare il tipo di dati, per evitare errori dovuti alle diverse località utilizzate durante l’installazione e il runtime. Nella versione precedente dovevi assicurarti che la localizzazione durante l’installazione fosse la stessa che durante il runtime per evitare, ad esempio, che i numeri fossero interpretati diversamente.
È possibile scegliere tra i seguenti tipi di dati:
Un valore di testo costante.
Un testo che può contenere caratteri speciali, come un ritorno a capote<CR> C’è un elenco di tutti i caratteri speciali supportati.
Un valore booleano, come True o False.
Un valore di opzione. Si dovrebbe usare il valore intero dell’opzione nel database.
Un valore intero (32 bit).
Un valore decimale.
Un valore intero grande (64 bit).
Il valore contiene una durata.
Il valore è un valore del codice Dynamics (solo maiuscolo, non consente tutti i caratteri).
Rappresenta un valore di data.
Rappresenta un valore temporale.
Rappresenta un valore combinato di data e ora.
Una formula per la data.
Un ID unico globale (GUID).
Questa proprietà è disponibile solo se SrcType è impostato su Const. Rappresenta il valore costante che si desidera utilizzare.
Questa proprietà è disponibile solo se SrcType è impostato su Function. È possibile utilizzare AssistEdit per specificare l’oggetto e la funzione. Se i parametri di funzione richiesti, anche questi saranno SourceExpr, ma non supportano il nesting delle funzioni.
Questa proprietà è disponibile solo se SrcType è impostato su Field. Selezionare l’istanza della tabella da cui leggere i dati. La tabella deve essere uno dei genitori della linea di mappatura corrente, per leggere i dati di un record. Se vuoi leggere i campi somma, devi essere sotto l’istanza della tabella, ma non un figlio di essa.
Questa proprietà è disponibile solo se SrcType è impostato su Field. Seleziona la colonna/campo da cui si desidera leggere.
È possibile specificare una traduzione del valore, per cambiare il valore selezionato in un altro valore target. C’è una sezione su come impostare le traduzioni dei valori.
Il codice della traduzione del valore da utilizzare.
Cosa dovrebbe accadere se il valore non viene trovato nella traduzione del valore.
Il modulo non fa nulla se la traduzione è mancante. Utilizza il valore originale senza traduzione.
Uscita di un valore vuoto.
Aggiungere una voce del registro delle informazioni e utilizzare il valore originale.
Aggiungere una voce del registro degli avvisi e utilizzare il valore originale.
Interrompere immediatamente la mappatura e registrare un errore.
Creare una voce di registro degli errori e non completare con successo la mappatura, ma continuare con l’elaborazione per trovare anche altri errori.
Questa proprietà è nascosta per impostazione predefinita. È possibile specificare un elenco di valori consentiti e creare errori, se si tenta di esportare un altro valore.
L’elenco dei valori ammessi. È possibile utilizzare AssistEdit o inserire i termini separati da virgola.
Cosa dovrebbe accadere, se il valore sorgente non è nella lista dei valori consentiti.
Non utilizzare la validazione avanzata e ignorare i valori della lista.
Creare una voce del registro delle informazioni.
Creare una voce di registro degli avvisi.
Interrompere immediatamente la mappatura con un messaggio di errore.
Restituisce un errore nell’esecuzione della mappatura, ma continua ad elaborare la mappatura, per trovare anche altri errori.
La proprietà DestExpr
Selezionare l’obiettivo per un valore. Sono validi i seguenti valori:
Vuoto significa che il valore viene ignorato. È possibile utilizzare questa opzione per saltare i campi sulle importazioni o, ad esempio, per ignorare un valore di ritorno della funzione.
Il valore deve essere controllato rispetto a un filtro Dynamics. Se il filtro non corrisponde, il valore non viene accettato. A seconda del convertitore questo si traduce in un messaggio di errore o nel saltare una sezione della mappatura. Imparerete di più sull’uso dei filtri per i convertitori specifici sulla documentazione di ogni convertitore.
Il valore dovrebbe essere scritto in un campo di un’istanza di tabella in questa mappatura.
Questa proprietà è disponibile solo se DestType è impostato su Filter. Il filtro Dinamica il valore viene confrontato con il filtro Dynamics. Il valore sarà interpretato come valore di testo per l’applicazione del filtro. Un esempio tipico è “BY|IV”, per consentire i valori “BY” e “IV”.
Questa proprietà è disponibile solo se DestType è impostato su Field. Seleziona l’istanza della tabella su cui scrivere il valore. L’istanza della tabella deve essere uno dei genitori della linea di mappatura corrente.
Questa proprietà è disponibile solo se DestType è impostato su Field. Il nome del campo/nome della colonna del campo di destinazione sulla tabella.
Questa proprietà è disponibile solo se DestType è impostato su Field. Questa proprietà è disponibile solo come proprietà avanzata. Impostando questa proprietà a False si salta il trigger di validazione Microsoft Dynamics 365 Business Central per quel campo.
Sii molto prudente quando usi False. Si dovrebbe disattivare la validazione solo dopo aver consultato un programmatore. Non disattivarlo su nessuna delle tabelle standard di Dynamics, tranne che si sappia realmente cosa si sta facendo. È possibile rendere inutilizzabile il Microsoft Dynamics 365 Business Central, saltando il codice di convalida.
Questa proprietà è disponibile solo se DestType è impostato su Field e si sta utilizzando il convertitore NAV. Ulteriori informazioni sono disponibili nella pagina del convertitore.