EDI Business Transaction Type
Il tipo di transazione commerciale definisce un possibile caso commerciale generale. Può trattarsi, ad esempio, di una fattura in uscita o di ordini in entrata.
Questa struttura di dati viene utilizzata anche per definire la raccolta automatica dei dati, ad esempio per trovare tutte le nuove fatture nel sistema e attivare le azioni EDI. Il tipo di transazione aziendale definisce anche il modo in cui il partner EDI viene determinato dai dati aziendali.
Ogni flusso di transazione è composto da uno o più tipi di transazione commerciale, che utilizzano diversi punti di ingresso al processo, che determinano il modo in cui i dati vengono gestiti in ogni fase. La comprensione di questi diversi tipi di struttura del EDI Business Transaction Type è essenziale per impostare processi EDI efficienti e affidabili.
Process Entry Point
Incoming Transmission
Questo tipo viene utilizzato per ricevere e importare dati da sistemi esterni in Dynamics 365 Business Central. In genere è il primo passo di una transazione ed è responsabile del parsing del file di ingresso (ad esempio, EDIFACT, XML, CSV) e dell’importazione dei dati in una struttura buffer interna.
- Caso d’uso esemplificativo: Ricezione di ordini di acquisto o fatture da partner commerciali.
Data Collection
Questo tipo viene utilizzato per estrarre i dati da Dynamics 365 Business Central. Raccoglie i record necessari da tabelle quali ordini di vendita, fatture o spedizioni, preparandoli per l’esportazione.
- Caso d’uso esemplificativo: Raccolta di ordini di vendita aperti da esportare come risposte o conferme d’ordine.
Sub-Process
Il tipo Sub Process è utilizzato principalmente per lavorare con strutture buffer, come il documento EDI o le relative tabelle buffer. A differenza degli altri tipi che operano direttamente su un singolo file (Dati in arrivo) o su un record di origine in Business Central (Raccolta dati), le attività di sottoprocesso operano solitamente sui dati intermedi del buffer.
Questo tipo è essenziale per strutturare e controllare il flusso della logica di elaborazione negli scenari di importazione ed esportazione.
Casi d’uso principali
- Trasformazione del buffer: Negli scenari di importazione, un file in arrivo viene prima mappato in una struttura buffer. Un sottoprocesso si occupa quindi di elaborare ulteriormente il buffer. Può trattarsi di un’elaborazione 1:1 del buffer o di uno scenario 1:n in cui un record in arrivo genera più voci nel buffer.
- Gestione dei lotti con tolleranza agli errori: Quando un singolo file contiene più documenti aziendali (ad esempio, più ordini), ogni record del buffer può essere elaborato in un proprio sottoprocesso. In questo modo si garantisce che un errore in un documento non blocchi l’elaborazione degli altri.
- Preparazione Mapping esportazione: Nei flussi di esportazione, il tipo di raccolta dati raccoglie i record come le fatture di vendita o le spedizioni e li prepara in strutture buffer. Un sottoprocesso viene quindi utilizzato per elaborare questo buffer, trasformando o mapping i dati, prima che vengano emessi come XML, EDIFACT o altro formato richiesto.
Dall’interno della mapping, il record associato alla transazione commerciale (ad esempio, un documento EDI) è sempre accessibile, quindi ogni volta che si desidera modificare il record principale per un’ulteriore elaborazione, è possibile utilizzare un sottoprocesso.
Convenzioni di denominazione
Pur essendo liberi di utilizzare qualsiasi codice, si consiglia di utilizzare convenzioni di denominazione coerenti. Di seguito sono riportate le nostre convenzioni, che aiutano a identificare immediatamente lo scopo della transazione e il suo ruolo all’interno della catena di elaborazione.
Il nome di ciascun tipo di transazione commerciale segue tipicamente questo formato:
[DOCUMENT_TYPE]_[ROLE]
Dove:
- [DOCUMENT_TYPE] descrive il documento aziendale in corso di elaborazione (ad esempio, ORDINI, FATTURAZIONI, DENARO).
- [ROLE] indica la funzione del sottotipo all’interno della transazione.
Suffissi di ruolo consigliati
Suffisso | Sottotipo | Descrizione |
---|---|---|
_INCOMING | Incoming Transmission | Gestisce i file in arrivo (ad esempio, XML, EDIFACT) per l’importazione. |
_COLLECT | Data Collection | Raccoglie i dati da Business Central (ad esempio, le fatture). |
_PROCESSING | Sub-Process | Elabora i dati del buffer (ad esempio, la trasformazione dell’importazione). |
_OUTGOING | Sub-Process | Trasformazione finale del buffer e mapping prima dell’esportazione. |
Esempi di modelli di denominazione:
- ORDERS_INCOMING
Utilizzato per importare i file degli ordini di acquisto in arrivo nelle tabelle buffer. - ORDERS_PROCESSING
Preparare i dati e creare gli ordini di vendita dal record buffer creato dalla ORDERS_INCOMING. - INVOIC_COLLECT
Raccoglie le fatture di vendita pubblicate e i record buffer creati. - INVOIC_OUTGOING
Mappa e trasforma il buffer delle fatture raccolte in un formato EDI in uscita.
Campi
Questo campo fa parte della chiave primaria. È possibile utilizzare qualsiasi codice. Si consiglia un codice descrittivo, come INVOICE_OUT, ORDERS_IN, ecc.
A seconda del Process Entry Point, questo campo definisce la tabella utilizzata per i record delle transazioni commerciali.
Questo campo memorizza l’ID della tabella Transaction Data Table.
Questo campo definisce il campo utilizzato come numero di riferimento nella tabella delle transazioni commerciali. Questo campo non influenza alcuna logica di elaborazione, ma è il campo di ricerca principale per trovare il documento dal punto di vista dell’utente finale.
È il numero di campo tecnico per il campo Reference No. Field
La possibilità di utilizzare questo campo dipende dal Process Entry Point.
Definisce che il partner di comunicazione per questo EDI Business Transaction Type dipende da un valore della Transaction Data Table.
Il partner di comunicazione è uno solo per questo EDI Business Transaction Type.
Definisce il campo utilizzato per trovare il partner di comunicazione.
Campo tecnico n. per il campo Relation Field Name.
Questo campo definisce il punto di ingresso del processo. Il punto di ingresso del processo determina molte delle altre opzioni disponibili.
Il processo ha come punto di ingresso i dati esistenti in Microsoft Dynamics 365 Business Central. Questa opzione consente di definire i lavori di raccolta automatica.
(Il valore intero di questa opzione nel database è 0)
Il processo inizia con una trasmissione da un canale di comunicazione.
(Il valore intero di questa opzione nel database è 1)
Il processo è una sottoparte di un altro processo. La Transaction Data Table non deve essere necessariamente la stessa. Questa opzione definisce che questo tipo di transazione commerciale può essere chiamato solo come sottoprocesso di un altro.
(Il valore intero di questa opzione nel database è 2)
Definisce se si desidera attivare la raccolta automatica dei dati. È necessario definire anche un lavoro che avvii la raccolta automatica. Con questa opzione è possibile definire quale tipo di campo viene utilizzato per rilevare i nuovi record.
Non si desidera attivare la raccolta automatica dei dati.
(Il valore intero di questa opzione nel database è 0)
Si tiene traccia delle modifiche in base al timestamp SQL. Questo è possibile solo con Microsoft Dynamics 2013R2 e versioni successive. Nella BC 17 è stato introdotto un nuovo campo di sistema che contiene la data/ora dell’ultima modifica. Si consiglia vivamente di utilizzarlo con l’opzione Date Field.
(Il valore intero di questa opzione nel database è 1)
Si vuole utilizzare un campo data.
(Il valore intero di questa opzione nel database è 2)
Si desidera utilizzare un campo di codice.
(Il valore intero di questa opzione nel database è 3)
Si vuole utilizzare un flag booleano: false significa che i dati non sono ancora stati esportati. Il campo viene modificato automaticamente. Questa opzione non funziona sulle tabelle di sistema protette, come le intestazioni delle fatture.
(Il valore intero di questa opzione nel database è 4)
Esportare sempre tutti i record. Può essere utile per esportare, ad esempio, tutti gli ordini aperti. I filtri della DataView sono ancora applicati, il che offre la possibilità di utilizzare campi o criteri personalizzati.
(Il valore intero di questa opzione nel database è 5)
Questa opzione consente di esportare tutte le voci più recenti di un determinato periodo di tempo. Ad esempio, se si specifica “30 giorni” e si utilizza la “Data di registrazione”, il modulo esporterà tutte le registrazioni più recenti di 30 giorni. Se si ignorano i duplicati, è possibile verificare la presenza di nuovi documenti in un intero arco di tempo ed esportare solo quelli che non sono stati esportati.
(Il valore intero di questa opzione nel database è 6)
Specifica come gestire le voci in cui non è possibile trovare il partner di comunicazione.
Creare voci e contrassegnarle.
(Il valore intero di questa opzione nel database è 0)
Non creare voci nella tabella delle transazioni commerciali.
(Il valore intero di questa opzione nel database è 1)
Definisce il campo utilizzato per trovare nuove voci.
Il numero del campo tecnico per il campo Change Detection Field Name.
Definisce una vista tabella che viene applicata in aggiunta ai criteri per la raccolta automatica dei dati.
Memorizza l’ultimo timestamp. Se la Automatic Data Collection è impostata su
SQL Timestamp, viene applicato un filtro alla tabella dei dati, cercando solo le voci con un valore superiore a questo. Dopo l’esecuzione del lavoro, l’ultimo valore viene memorizzato in questo campo.
Memorizza l’ultimo timestamp. Se la Automatic Data Collection è impostata su Code Field, viene applicato un filtro alla tabella dei dati, cercando solo le voci con un valore superiore a questo. Dopo l’esecuzione del lavoro, l’ultimo valore viene memorizzato in questo campo.
Memorizza l’ultimo timestamp. Se la Automatic Data Collection è impostata su Date Field, viene applicato un filtro alla tabella dei dati, cercando solo le voci con un valore superiore a questo. Dopo l’esecuzione del lavoro, l’ultimo valore viene memorizzato in questo campo.
Memorizza la data/ora di creazione di questa tabella.
Memorizza la data/ora di modifica di questo record.