EDMIService: catch single table failing to be fetched
This commit is contained in:
parent
6a47fc6830
commit
9b10bc80e1
@ -28,43 +28,48 @@ Public Class DatatableJob
|
|||||||
Dim oCronDetails As DataTable = oMSSQL.GetDatatable(oCronSQL)
|
Dim oCronDetails As DataTable = oMSSQL.GetDatatable(oCronSQL)
|
||||||
|
|
||||||
For Each oRow As DataRow In oCronDetails.Rows
|
For Each oRow As DataRow In oCronDetails.Rows
|
||||||
|
Dim oDatatableName As String = NotNull(oRow.Item("DT_NAME"), String.Empty)
|
||||||
|
Dim oParentColumn As String = NotNull(oRow.Item("DT_COLUMN"), String.Empty)
|
||||||
|
Dim oChildColumn As String = NotNull(oRow.Item("CHILD_DT_COLUMN"), String.Empty)
|
||||||
Dim oConnectionId As Integer = NotNull(oRow.Item("CON_ID"), String.Empty)
|
Dim oConnectionId As Integer = NotNull(oRow.Item("CON_ID"), String.Empty)
|
||||||
Dim oTitle As String = NotNull(oRow.Item("TITLE"), String.Empty)
|
Dim oTitle As String = NotNull(oRow.Item("TITLE"), String.Empty)
|
||||||
Dim oSQL As String = NotNull(oRow.Item("COMMAND"), String.Empty)
|
Dim oSQL As String = NotNull(oRow.Item("COMMAND"), String.Empty)
|
||||||
Dim oDatatableName As String = NotNull(oRow.Item("DT_NAME"), String.Empty)
|
|
||||||
|
|
||||||
oLogger.Debug("Running Command-Job [{0}]", oTitle)
|
Try
|
||||||
oLogger.Debug("Datatable Name: {0}", oDatatableName)
|
oLogger.Debug("Running Command-Job [{0}]", oTitle)
|
||||||
oLogger.Debug("Connection Id: {0}", oConnectionId)
|
oLogger.Debug("Datatable Name: {0}", oDatatableName)
|
||||||
|
oLogger.Debug("Connection Id: {0}", oConnectionId)
|
||||||
|
|
||||||
Dim oConnectionString = oMSSQL.Get_ConnectionStringforID(oConnectionId)
|
Dim oConnectionString = oMSSQL.Get_ConnectionStringforID(oConnectionId)
|
||||||
Dim oTable = oMSSQL.GetDatatableWithConnection(oSQL, oConnectionString)
|
Dim oTable = oMSSQL.GetDatatableWithConnection(oSQL, oConnectionString)
|
||||||
oTable.TableName = oDatatableName
|
oTable.TableName = oDatatableName
|
||||||
oLogger.Debug("Result Datatable [{0}] contains [{1}] rows", oTable.TableName, oTable.Rows.Count)
|
oLogger.Debug("Result Datatable [{0}] contains [{1}] rows", oTable.TableName, oTable.Rows.Count)
|
||||||
|
|
||||||
Dim oResultTable = New JobResult.ResultTable() With {
|
Dim oResultTable = New JobResult.ResultTable() With {
|
||||||
.Table = oTable,
|
.Table = oTable,
|
||||||
.DetailRow = oRow
|
.DetailRow = oRow
|
||||||
}
|
}
|
||||||
|
|
||||||
Dim oChildTableNAme As String = NotNull(oRow.Item("CHILD_DT_NAME"), String.Empty)
|
Dim oChildTableNAme As String = NotNull(oRow.Item("CHILD_DT_NAME"), String.Empty)
|
||||||
|
|
||||||
If oChildTableNAme <> String.Empty Then
|
If oChildTableNAme <> String.Empty Then
|
||||||
Dim oParentColumn As String = NotNull(oRow.Item("DT_COLUMN"), String.Empty)
|
oLogger.Debug("Child Datatable [{0}] defined, Relation: Parent [{1}] -> Child [{2}]", oChildTableNAme, oParentColumn, oChildColumn)
|
||||||
Dim oChildColumn As String = NotNull(oRow.Item("CHILD_DT_COLUMN"), String.Empty)
|
|
||||||
oLogger.Debug("Child Datatable [{0}] defined, Relation: Parent [{1}] -> Child [{2}]", oChildTableNAme, oParentColumn, oChildColumn)
|
|
||||||
|
|
||||||
Dim oChildTable As DataTable = oMSSQL.GetDatatableWithConnection($"SELECT * FROM {oChildTableNAme}", oConnectionString)
|
Dim oChildTable As DataTable = oMSSQL.GetDatatableWithConnection($"SELECT * FROM {oChildTableNAme}", oConnectionString)
|
||||||
oChildTable.TableName = oChildTableNAme
|
oChildTable.TableName = oChildTableNAme
|
||||||
oLogger.Debug("Child Datatable [{0}] contains [{1}] rows", oChildTable.TableName, oChildTable.Rows.Count)
|
oLogger.Debug("Child Datatable [{0}] contains [{1}] rows", oChildTable.TableName, oChildTable.Rows.Count)
|
||||||
|
|
||||||
oResultTable.ChildTable = oChildTable
|
oResultTable.ChildTable = oChildTable
|
||||||
oResultTable.ChildRelationColumn = oChildColumn
|
oResultTable.ChildRelationColumn = oChildColumn
|
||||||
oResultTable.TableRelationColumn = oParentColumn
|
oResultTable.TableRelationColumn = oParentColumn
|
||||||
End If
|
End If
|
||||||
|
|
||||||
oLogger.Info("Fetched Datatable [{0}]", oDatatableName)
|
oLogger.Info("Fetched Datatable [{0}]", oDatatableName)
|
||||||
oResult.Tables.Add(oResultTable)
|
oResult.Tables.Add(oResultTable)
|
||||||
|
Catch ex As Exception
|
||||||
|
oLogger.Warn("Execute: Error while saving Table: [{0}]", oDatatableName)
|
||||||
|
oLogger.Error(ex)
|
||||||
|
End Try
|
||||||
Next
|
Next
|
||||||
|
|
||||||
' Das Ergebnis speichern
|
' Das Ergebnis speichern
|
||||||
@ -72,7 +77,7 @@ Public Class DatatableJob
|
|||||||
|
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
oLogger.Error(ex)
|
oLogger.Error(ex)
|
||||||
oLogger.Warn("Unhandled exception while executing SQL for Datatable {0}", oCronJobTitle)
|
oLogger.Warn("Execute: Unhandled exception while executing SQL for Datatable {0}", oCronJobTitle)
|
||||||
End Try
|
End Try
|
||||||
|
|
||||||
Return Task.FromResult(True)
|
Return Task.FromResult(True)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user