Estensione di un'entità di dati
Quando si aggiungono campi alle tabelle, è necessario assicurarsi che l'entità di dati corrispondente includa questi campi. È inoltre possibile estendere le entità di dati esistenti con questi nuovi campi. Le entità di dati hanno due parti:
- Entità di dati: è necessario creare un'estensione dell'entità di dati esistente.
- Tabella di staging: è necessario creare manualmente un'estensione di tabella per una tabella di staging.
È anche possibile aggiungere nuovi campi a un'entità di dati creando un'entità duplicata e aggiungendo i nuovi campi e le nuove funzionalità. Ciò significa che non è necessario estendere l'entità originale.
Aggiunta di nuovi campi per estendere un'entità di dati
È possibile aggiungere campi a un'entità di dati creando un'estensione. Ad esempio, si consideri uno scenario in cui si crea un nuovo campo PhoneMobile (EDT: PhoneMobile) come estensione della tabella CustTable. In questo caso, è possibile creare un'estensione per l'entità di dati completando i passaggi seguenti:
Trovare l'entità di dati CustCustomerV3Entity in Esplora applicazioni (in Modello di dati) in Visual Studio. (Oltre alle opzioni consuete, assicurarsi che il modello faccia riferimento ai pacchetti Directory, Dimensions e PersonnelCore).
Fare clic con il pulsante destro del mouse sull'entità di dati per aprire il menu di scelta rapida, quindi selezionare Crea estensione. Il sistema aggiunge un'estensione per CustCustomerV3Entity al progetto in Esplora soluzioni.
Selezionare l'estensione per aggiungerla alla finestra di progettazione.
Andare al nodo Origini dati, selezionare CustTable, selezionare Campi, quindi trovare il nuovo campo PhoneMobile.
Fare clic con il pulsante destro del mouse sul nuovo campo PhoneMobile per aprire il menu di scelta rapida, quindi selezionare Copia.
Andare al nodo Campi nell'entità di dati. Fare clic con il pulsante destro del mouse sul nodo per aprire il menu di scelta rapida, quindi selezionare Incolla. Il nuovo campo dovrebbe ora essere visibile in CustCustomerV3Entity.
Selezionare Salva tutto. Fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni per aprire il menu di scelta rapida, quindi selezionare Compila.
Fare nuovamente clic con il pulsante destro del mouse sul progetto per aprire il menu di scelta rapida e selezionare Sincronizza <proprio progetto> con il database (se disponibile). L'entità di dati CustCustomerV3Entity appare come estesa e include il campo PhoneMobile.
È possibile creare estensioni di codice trovando l'entità di dati in Esplora applicazioni, facendo clic con il pulsante destro del mouse per aprire il menu di scelta rapida e selezionando Crea estensione di codice.
Il sistema crea una classe per le estensioni di codice dell'entità di dati. A questo punto, è possibile estendere i metodi con Catena di comando o creare nuovi metodi.
Ad esempio, è possibile creare una colonna calcolata sull'entità di dati. A quel punto, il sistema crea il metodo statico nella classe di estensione del codice.
Tenere conto delle prestazioni quando si eseguono estensioni dell'entità di dati ed estensioni di codice dell'entità di dati. Per altre informazioni, consultare l'unità precedente di questo modulo.
Come procedura consigliata, l'organizzazione potrebbe richiedere uno standard di denominazione per i nuovi campi, ad esempio un prefisso specifico. Tuttavia, l'esempio fornito in questa unità non usa alcuno standard di denominazione.
Estensione di una tabella di staging
Nella finestra di progettazione è possibile usare Rigenera tabella di staging e Aggiorna tabella di staging per aggiungere campi a una tabella di staging. Tuttavia, questo metodo non è possibile per un'estensione di entità di dati. È necessario creare i campi manualmente usando un'estensione di tabella.
- Trovare la tabella CustCustomerV3Staging in Esplora applicazioni.
- Fare clic con il pulsante destro del mouse sulla tabella per aprire il menu di scelta rapida, quindi selezionare Crea estensione. Il sistema aggiunge un'estensione per CustCustomerV3Staging al progetto in Esplora soluzioni.
- Selezionare l'estensione per aggiungerla alla finestra di progettazione.
- Trovare il tipo di dati esteso per il campo che si desidera aggiungere. In questo esempio è Tipo di dati esteso PhoneMobile che è necessario trascinare nel nodo Campi per la tabella di staging.
- Selezionare Salva tutto. Selezionare il progetto in Esplora soluzioni per aprire il menu di scelta rapida, quindi selezionare Compila.
- Fare nuovamente clic con il pulsante destro del mouse sul progetto per aprire il menu di scelta rapida e selezionare Sincronizza <proprio progetto> con il database (se disponibile). Il nuovo campo nella tabella di staging appare ora come sincronizzato con SQL server.
Nota
I campi e il tipo di dati per i campi in un'estensione di tabella di staging e in un'estensione di entità di dati devono essere gli stessi. Se si usano tipi di dati diversi, al termine della compilazione si verifica un errore di procedura consigliata.
Aggiornamento di un elenco di entità e verifica dell'estensione
Se si desidera usare le modifiche apportate a un'entità dalle estensioni, selezionare Aggiorna entità nelle app per la finanza e le operazioni. L'opzione Aggiorna entità ricrea i mapping per un'entità, inclusi i nuovi campi.
Per aggiornare manualmente nel front-end, andare a Gestione dati > Parametri framework > Impostazioni entità > Aggiorna elenco entità. Con l'aggiornamento dell'elenco entità si garantisce che tutte le entità siano disponibili in ambiente e abbiano i metadati più recenti.
Gli sviluppatori possono aprire SQL Server Management Studio per verificare la vista e la tabella create rispettivamente per l'entità di dati e la tabella di staging. Le estensioni alle entità di dati dovrebbero apparire sia nell'entità di dati sia nella tabella di staging.
