Scegli se selezionare una tabella o scrivere una query SQL personalizzata
@if (useCustomQuery)
{
Query SQL Custom:
Controlli di Sicurezza Attivi:
• Solo query SELECT sono permesse
• Operazioni come INSERT, UPDATE, DELETE, DROP sono bloccate
• Query multiple separate da ; non sono consentite
• La query verrà automaticamente ottimizzata per il trasferimento dati
Record @GetStartRecord()-@GetEndRecord() di @fileData[selectedSheet].Count
@currentPage di @GetTotalPages(selectedSheet)
@if (fileSheets.ContainsKey(selectedSheet))
{
#
@foreach (var column in fileSheets[selectedSheet])
{
@column
}
@{
var dataToShow = GetCurrentPageData();
var startRecord = GetStartRecord();
}
@for (int i = 0; i < dataToShow.Count; i++)
{
var row = dataToShow[i];
var absoluteRowIndex = startRecord + i;
Ogni valore di chiave univoco viene associato a un record di destinazione
Più sorgenti diverse possono gestire lo stesso oggetto business usando lo stesso valore chiave
Gli aggiornamenti avvengono automaticamente quando si trova un'associazione esistente
Il sistema individua automaticamente le chiavi dove possibile, ma puoi sempre scegliere manualmente
@if (requiresManualKeySelection || selectedSourceType != "database")
{
Selezione del campo chiave obbligatoria. Scegli un campo che identifichi univocamente ogni record.
}
else if (!string.IsNullOrEmpty(suggestedPrimaryKey))
{
Primary Key rilevata: @suggestedPrimaryKey (consigliato per l'identificazione univoca)
}
@if (!string.IsNullOrEmpty(sourceKeyField))
{
Campo chiave selezionato: @sourceKeyField
Questo campo verrà utilizzato per identificare univocamente i record sorgente
@if (sourceKeyField == suggestedPrimaryKey)
{
Ottima scelta! Stai usando la Primary Key della tabella.
}
}
else
{
Campo chiave richiesto Seleziona un campo che identifichi univocamente ogni record per abilitare il sistema di associazioni.
@if (!string.IsNullOrEmpty(suggestedPrimaryKey))
{
Consiglio: seleziona @suggestedPrimaryKey (Primary Key rilevata)
}
}
}
else
{
Sistema associazioni disabilitato
Tutti i record verranno sempre inseriti come nuovi. Non sarà possibile tracciare aggiornamenti automatici.
}
}
@if (fieldMappings.Any())
{
}
@if (fieldMappings.Any())
{
@fieldMappings.Count mapping(s) configurati
@if (useRecordAssociations)
{
Modalità Smart Update
@if (!string.IsNullOrEmpty(sourceKeyField))
{
(Chiave: @sourceKeyField)
}
else
{
(Rilevamento automatico)
}
}
else
{
Modalità Insert Only
}
}
else
{
Configura almeno una mappatura per iniziare
}