141 lines
6.3 KiB
VB.net

Imports System.IO
Imports DD_LIB_Standards
Imports DevExpress.XtraPrinting
Public Class frmDoc_Links
Private Sub frmDoc_DocLinks_Load(sender As Object, e As EventArgs) Handles Me.Load
Try
Refresh_Grid_Data()
If ClassWindreamDocGrid.DT_RESULTFILES.Rows.Count = 1 Then
Me.Text = $"Document-Links for file: {ClassWindreamDocGrid.DT_RESULTFILES.Rows(0).Item("DOC_PATH")}"
Else
Me.Text = $"Document-Links for file: NODOC-ID"
End If
bbtnitmdeletelink.Enabled = False
Select Case CURRENT_FILE_RIGHT
Case "RW"
bbtnitmdeletelink.Enabled = True
Case "RWA"
bbtnitmdeletelink.Enabled = True
End Select
Catch ex As Exception
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in frmDoc_DocLinks_Load", ex.Message, ex.StackTrace)
End Try
End Sub
Sub Refresh_Grid_Data()
Try
Dim DT_RECORDS As DataTable
Dim oSql = $"select * FROM VWPMO_CUST_DOC_OBJECT_LINKS WHERE DocID = {CURRENT_DOC_ID}"
DT_RECORDS = clsDatabase.Return_Datatable(oSql)
If Not IsNothing(DT_RECORDS) Then
BarStaticItemStatus.Caption = $"{DT_RECORDS.Rows.Count} links for Document found!"
grvwGrid.Columns.Clear()
GridControlRecords.DataSource = DT_RECORDS
'grvwGrid.Columns.Item("already linked").Fixed = True
Try
grvwGrid.Columns.Item("DocID").Visible = False
grvwGrid.Columns.Item("RecordID").Visible = False
'grvwGrid.Columns.Item("FULL_FILENAME").Visible = False
Try
grvwGrid.Columns.Item("VALUE").Visible = False
Catch ex1 As Exception
LOGGER.Warn("Column VALUE not part of VWPMO_CUST_DOC_OBJECT_LINKS" & ex1.Message)
End Try
grvwGrid.OptionsView.ColumnAutoWidth = False
grvwGrid.BestFitColumns()
Catch ex As Exception
LOGGER.Error(ex)
End Try
GridControlRecords.RefreshDataSource()
'If DT_RECORDS.Rows.Count > 10000 Then
' BarButtonItem2.Enabled = False
'Else
' BarButtonItem2.Enabled = True
'End If
Else
MsgBox($"Please check Your link-object-relation: {oSql}", MsgBoxStyle.Exclamation)
End If
Catch ex As Exception
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in Sub Refresh_Grid_Data", ex.Message, ex.StackTrace)
End Try
End Sub
Private Sub BarButtonItem1_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbtnitmdeletelink.ItemClick
Dim oDocID = grvwGrid.GetRowCellValue(grvwGrid.FocusedRowHandle, "DocID")
Dim oRECORD_ID = grvwGrid.GetRowCellValue(grvwGrid.FocusedRowHandle, "RecordID")
If IsNothing(oDocID) Then
Exit Sub
End If
LOGGER.Debug($"RecordLink will be removed Record: {oRECORD_ID} - DocID: {oDocID} ")
Try
If ClassFileResult.Delete_ResultFile(oDocID, oRECORD_ID, 0) = True Then
ClassHelper.InsertEssential_Log(oDocID, "DOC-ID", $"RECORD LINK {oRECORD_ID} REMOVED FROM DOC-SEARCH")
End If
Catch ex As Exception
ClassHelper.MSGBOX_Handler("ERROR", "Unexpected Error in Removing DocRecord-Link", ex.Message, ex.StackTrace)
End Try
Refresh_Grid_Data()
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
Try
Dim saveFileDialogDocSearchResult As New SaveFileDialog
saveFileDialogDocSearchResult.Filter = "Excel File|*.xlsx"
saveFileDialogDocSearchResult.Title = "Export to Excel:"
saveFileDialogDocSearchResult.ShowDialog()
If saveFileDialogDocSearchResult.FileName <> "" Then
Dim oOptions As XlsxExportOptionsEx = New XlsxExportOptionsEx
oOptions.ShowGridLines = True
oOptions.AllowSortingAndFiltering = DevExpress.Utils.DefaultBoolean.True
oOptions.ExportType = DevExpress.Export.ExportType.DataAware
oOptions.ExportMode = XlsxExportMode.SingleFile
oOptions.AllowFixedColumnHeaderPanel = DevExpress.Utils.DefaultBoolean.True
Cursor = Cursors.WaitCursor
GridControlRecords.MainView.ExportToXlsx(saveFileDialogDocSearchResult.FileName, oOptions)
Dim result As MsgBoxResult
Dim msg = String.Format("Datei wurde erstellt! Wollen Sie diese nun öffnen?")
If USER_LANGUAGE <> "de-DE" Then
msg = String.Format("File was created. Do You want to open excel?")
End If
result = MessageBox.Show(msg, "Exporting result:", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If result = MsgBoxResult.Yes Then
Process.Start(saveFileDialogDocSearchResult.FileName)
End If
End If
Catch ex As Exception
MsgBox("Unexpected Error in ExportExcel: " & ex.Message, MsgBoxStyle.Critical)
End Try
Cursor = Cursors.Default
End Sub
Private Sub frmDoc_Links_MaximizedBoundsChanged(sender As Object, e As EventArgs) Handles MyBase.MaximizedBoundsChanged
End Sub
Private Sub frmDoc_Links_SizeChanged(sender As Object, e As EventArgs) Handles Me.SizeChanged
Try
grvwGrid.OptionsView.ColumnAutoWidth = False
grvwGrid.BestFitColumns()
Catch ex As Exception
End Try
End Sub
Private Sub OrdnerÖffnenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OrdnerÖffnenToolStripMenuItem.Click
Dim oPAth = grvwGrid.GetFocusedRowCellValue(grvwGrid.Columns("FULL_FILENAME"))
Dim oDocID = grvwGrid.GetFocusedRowCellValue(grvwGrid.Columns("DocID"))
For Each row As DataRow In ClassWindreamDocGrid.DT_RESULTFILES.Rows
ClassHelper.Open_Folder(oPAth, oDocID)
Next
End Sub
End Class