Class ImportEngine
- Namespace
- TimeCockpit.Data.Import
- Assembly
- TimeCockpit.Data.Import.dll
public abstract class ImportEngine
- Inheritance
-
Object
ImportEngine
- Derived
-
- Inherited Members
-
Object.ToString()
Object.Equals(Object)
Object.Equals(Object, Object)
Object.ReferenceEquals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Constructors
ImportEngine(DataContext)
public ImportEngine(DataContext dataContext)
Parameters
dataContext DataContext
Properties
CurrentRowCount
public abstract int CurrentRowCount { get; }
Property Value
- Int32
DataContext
public DataContext DataContext { get; }
Property Value
- DataContext
DefinitionName
public string DefinitionName { get; set; }
Property Value
- String
MessageCount
public int MessageCount { get; }
Property Value
- Int32
OriginalSource
public byte[] OriginalSource { get; set; }
Property Value
- Byte[]
SourceFileName
public string SourceFileName { get; set; }
Property Value
- String
Methods
AddMessage(Exception)
protected void AddMessage(Exception e)
Parameters
e Exception
AddMessage(ImportMessage.Kind, String)
protected void AddMessage(ImportMessage.Kind kind, string message)
Parameters
kind ImportMessage.Kind
message String
FetchUpdateKeys(ImportColumnDefinition[], ModelEntityBase, Int32)
protected abstract Dictionary<int, string> FetchUpdateKeys(ImportColumnDefinition[] keyColumns, ModelEntityBase targetEntity, int defaultHeaderRowNumber)
Parameters
keyColumns ImportColumnDefinition[]
targetEntity ModelEntityBase
defaultHeaderRowNumber Int32
Returns
- Dictionary<Int32, String>
public static string FormatStatusMessage(int messageCount, bool cancelled)
Parameters
messageCount Int32
cancelled Boolean
Returns
- String
GetCellKeyValue(ImportColumnDefinition)
public abstract object GetCellKeyValue(ImportColumnDefinition column)
Parameters
column ImportColumnDefinition
Returns
- Object
GetCellValue(ImportColumnDefinition)
public abstract object GetCellValue(ImportColumnDefinition column)
Parameters
column ImportColumnDefinition
Returns
- Object
GetCellValueBoolean(Object, out Boolean)
protected virtual bool GetCellValueBoolean(object cellValue, out bool b)
Parameters
cellValue Object
b Boolean
Returns
- Boolean
GetCellValueDateTime(Object, out DateTime)
protected virtual bool GetCellValueDateTime(object cellValue, out DateTime dt)
Parameters
cellValue Object
dt DateTime
Returns
- Boolean
GetCellValueDecimal(Object, out Decimal)
protected virtual bool GetCellValueDecimal(object cellValue, out decimal d)
Parameters
cellValue Object
d Decimal
Returns
- Boolean
GetCellValueGuid(Object, out Guid)
protected virtual bool GetCellValueGuid(object cellValue, out Guid g)
Parameters
cellValue Object
g Guid
Returns
- Boolean
GetCellValueString(Object, out String)
protected virtual bool GetCellValueString(object cellValue, out string s)
Parameters
cellValue Object
s String
Returns
- Boolean
GetKeyValue(DataContext, ModelEntityBase, Dictionary<ImportColumnDefinition, Int32>, ImportColumnDefinition, Dictionary<ImportColumnDefinition, ModelProperty>, Object)
protected string GetKeyValue(DataContext dataContext, ModelEntityBase targetEntity, Dictionary<ImportColumnDefinition, int> numbers, ImportColumnDefinition kc, Dictionary<ImportColumnDefinition, ModelProperty> properties, object keyValue)
Parameters
dataContext DataContext
targetEntity ModelEntityBase
numbers Dictionary<ImportColumnDefinition, Int32>
kc ImportColumnDefinition
properties Dictionary<ImportColumnDefinition, ModelProperty>
keyValue Object
Returns
- String
GetReportData()
public abstract byte[] GetReportData()
Returns
- Byte[]
public virtual void GetReportMetadata(string definitionName, DateTime exportTimestamp, out string filename, out string mimeType)
Parameters
definitionName String
exportTimestamp DateTime
filename String
mimeType String
public abstract void GetSourceMetadata(out string filename, out string mimeType)
Parameters
filename String
mimeType String
HasMoreRows()
public abstract bool HasMoreRows()
Returns
- Boolean
ImportColumn(ImportColumnDefinition, Object, EntityObject, Boolean)
protected virtual void ImportColumn(ImportColumnDefinition column, object cellValue, EntityObject target, bool includeAllinRelations)
Parameters
column ImportColumnDefinition
cellValue Object
target EntityObject
includeAllinRelations Boolean
ImportRow(ImportColumnDefinition[], EntityObject, Boolean)
public void ImportRow(ImportColumnDefinition[] columns, EntityObject target, bool includeAllinRelations)
Parameters
columns ImportColumnDefinition[]
target EntityObject
includeAllinRelations Boolean
ImportSheet(ImportSheetDefinition)
public void ImportSheet(ImportSheetDefinition sheetDefinition)
Parameters
sheetDefinition ImportSheetDefinition
IsCellEmpty(Object)
protected virtual bool IsCellEmpty(object cellValue)
Parameters
cellValue Object
Returns
- Boolean
LoadPreviewData(Int32, Byte[], Dictionary<String, Int32>, Int32)
public abstract PreviewWorkbook LoadPreviewData(int sampleSize, byte[] sourceData, Dictionary<string, int> headerRowPosition = null, int defaultHeaderRowNumber = 1)
Parameters
sampleSize Int32
sourceData Byte[]
headerRowPosition Dictionary<String, Int32>
defaultHeaderRowNumber Int32
Returns
- PreviewWorkbook
MoveToNextRow()
public abstract void MoveToNextRow()
public void PerformImport(ImportBookDefinition definition, bool saveOnSuccess, byte[] sourceData, string definitionName, Guid importTaskId, Guid? definitionId = default(Guid? ), CancellationToken? cancelToken = default(CancellationToken? ))
Parameters
definition ImportBookDefinition
saveOnSuccess Boolean
sourceData Byte[]
definitionName String
importTaskId Guid
definitionId Nullable<Guid>
cancelToken Nullable<CancellationToken>
PerformPostProcessExpressions(DataContext, EntityObject, IEnumerable<ImportColumnDefinition>, Boolean)
public void PerformPostProcessExpressions(DataContext dataContext, EntityObject eo, IEnumerable<ImportColumnDefinition> columnDefinitions, bool includeAllinRelations)
Parameters
dataContext DataContext
eo EntityObject
columnDefinitions IEnumerable<ImportColumnDefinition>
includeAllinRelations Boolean
PrepareImportSheet(ImportSheetDefinition)
public abstract bool PrepareImportSheet(ImportSheetDefinition sheet)
Parameters
sheet ImportSheetDefinition
Returns
- Boolean
PrepareImportWorkbook(ImportBookDefinition)
public abstract bool PrepareImportWorkbook(ImportBookDefinition book)
Parameters
book ImportBookDefinition
Returns
- Boolean
PreprocessValue(DataContext, ModelEntityBase, ImportColumnDefinition, Object)
public object PreprocessValue(DataContext targetContext, ModelEntityBase targetEntity, ImportColumnDefinition icd, object sourceValue)
Parameters
targetContext DataContext
targetEntity ModelEntityBase
icd ImportColumnDefinition
sourceValue Object
Returns
- Object
SavePreviewData(PreviewWorkbook)
public abstract byte[] SavePreviewData(PreviewWorkbook previewWorkbook)
Parameters
previewWorkbook PreviewWorkbook
Returns
- Byte[]
SetRowMessage(ImportSheetDefinition, String, Boolean, Boolean)
public virtual void SetRowMessage(ImportSheetDefinition sheetDefinition, string text, bool isError, bool isModification)
Parameters
sheetDefinition ImportSheetDefinition
text String
isError Boolean
isModification Boolean
TryFindRelation(ImportColumnDefinition, Relation, String, Boolean, out EntityObject)
protected virtual bool TryFindRelation(ImportColumnDefinition column, Relation targetRelation, string value, bool includeAll, out EntityObject resultingEntityObject)
Parameters
column ImportColumnDefinition
targetRelation Relation
value String
includeAll Boolean
resultingEntityObject EntityObject
Returns
- Boolean
TrySetProperty(ImportColumnDefinition, ModelProperty, EntityObject, Object)
protected virtual void TrySetProperty(ImportColumnDefinition column, ModelProperty targetProperty, EntityObject target, object cellValue)
Parameters
column ImportColumnDefinition
targetProperty ModelProperty
target EntityObject
cellValue Object
Events
OnEntityObjectSaved
public event ImportEngine.EntityObjectSaved OnEntityObjectSaved
Event Type
- ImportEngine.EntityObjectSaved
OnMessage
public event ImportEngine.MessageCallback OnMessage
Event Type
- ImportEngine.MessageCallback
OnProgress
public event ImportEngine.ProgressCallback OnProgress
Event Type
- ImportEngine.ProgressCallback
OnReportFinished
public event ImportEngine.SaveReportCallback OnReportFinished
Event Type
- ImportEngine.SaveReportCallback