448 lines
27 KiB
VB.net
448 lines
27 KiB
VB.net
Imports System
|
|
Imports System.IO
|
|
Imports System.ComponentModel
|
|
Imports System.Collections.Generic
|
|
Imports System.Diagnostics
|
|
Imports System.Text
|
|
|
|
Imports DevExpress.ExpressApp
|
|
Imports DevExpress.ExpressApp.Actions
|
|
Imports DevExpress.Persistent.Base
|
|
Imports DevExpress.XtraGrid.Views.Grid
|
|
|
|
Imports DevExpress.ExpressApp.Win.Editors
|
|
Imports DevExpress.Xpo
|
|
Imports DevExpress.XtraGrid.Columns
|
|
Imports DevExpress.XtraEditors.Controls
|
|
Imports DevExpress.XtraEditors.Repository
|
|
Imports DevExpress.Data
|
|
Imports DevExpress.ExpressApp.Editors
|
|
Imports DevExpress.Data.Filtering
|
|
|
|
|
|
Public Class InsertGridToRTF_VC
|
|
Inherits DevExpress.ExpressApp.ViewController
|
|
Dim _RichEditControl As RichEditControl
|
|
Public Sub New()
|
|
MyBase.New()
|
|
InitializeComponent()
|
|
RegisterActions(components)
|
|
|
|
End Sub
|
|
Protected Overrides Sub OnViewControlsCreated()
|
|
MyBase.OnViewControlsCreated()
|
|
If View.Id = "CRMEstate_Leads_DetailView" Then
|
|
'_RichEditControl = TryCast(View, DetailView).GetItems(Of RichEditPropertyEditor)(0).RichEditUserControl.RichEditControl
|
|
End If
|
|
End Sub
|
|
Private Sub aInsertGridToRTF_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aInsertGridToRTF.Execute
|
|
Dim _DetailView As DetailView = CType(View, DetailView)
|
|
Dim _CRMEstate_Leads As CRMEstate_Leads = TryCast(e.CurrentObject, CRMEstate_Leads)
|
|
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
|
|
Dim _ImmovablesGroupsParameters As ImmovablesGroupsParameters = _ocur.FindObject(Of ImmovablesGroupsParameters)(CriteriaOperator.Parse("ImmovablesGroups=?", _CRMEstate_Leads.ImmovablesPriceListHeader.ImmovablesGroups))
|
|
|
|
If _CRMEstate_Leads.DocumentBody Is Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = _ImmovablesGroupsParameters.DocumentBody
|
|
If _CRMEstate_Leads.DocumentBody Is Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = "{\rtf1\deff0{\fonttbl{\f0 Times New Roman;}}" & _
|
|
"{\colortbl\red0\green0\blue0 ;\red0\green0\blue255 ;}{\*\listoverridetable}{\stylesheet {\ql\cf0 Normal;}" & _
|
|
"{\*\cs1\cf0 Default Paragraph Font;}{\*\cs2\sbasedon1\cf0 Line Number;}{\*\cs3\ul\cf1 Hyperlink;}}\sectd\pard\plain" & _
|
|
"\ql\f1\par\pard\plain\ql\f1\par\pard\plain\ql\f1\par\pard\plain\ql{\f2\fs18\cf0 imapartmentsim}\f2\fs18\cf2\par" & _
|
|
"\pard\plain\ql\f2\fs18\cf0\par\pard\plain\ql{\f2\fs18\cf0 imgaragesim}\f2\fs18\cf0\par\pard\plain\ql\f2\fs18\cf0\par" & _
|
|
"\pard\plain\ql{\f2\fs18\cf0 imofficesim}\f2\fs18\cf0\par\pard\plain\ql\f2\fs18\cf0\par\pard\plain\ql{\f2\fs18\cf0 imcontainerim}" & _
|
|
"\f2\fs18\cf0\par\pard\plain\ql\f1\par}"
|
|
End If
|
|
End If
|
|
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("{\cf0 im}{\cf0 apartments}{\cf0 im}", "{\cf0 imapartmentsim}")
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("{\cf0 im}{\cf0 garages}{\cf0 im}", "{\cf0 imgaragesim}")
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("{\cf0 im}{\cf0 offices}{\cf0 im}", "{\cf0 imofficesim}")
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("{\cf0 im}{\cf0 container}{\cf0 im}", "{\cf0 imcontainerim}")
|
|
|
|
'=========================== ColorTable =======================================
|
|
Dim _actColorNum As Int32 = 0
|
|
Dim _OrigColorTable As String
|
|
Dim _ColorTable As String = (_CRMEstate_Leads.DocumentBody.Remove(0, (InStr(_CRMEstate_Leads.DocumentBody, "{\colortbl")) + "{\colortbl".Length - 1))
|
|
_ColorTable = _ColorTable.Remove(InStr(_ColorTable, "}") - 1) '--Act Color table
|
|
Dim _ColorArray As String() = _ColorTable.Split(New [Char]() {";"c})
|
|
Dim _CTable As New StringBuilder()
|
|
_CTable.Append("{\colortbl")
|
|
For _ik As Int32 = 0 To _ColorArray.Length - 2
|
|
_CTable.Append(_ColorArray(_ik) & ";")
|
|
Next
|
|
_CTable.Append("\red240\green240\blue240 ;}")
|
|
_OrigColorTable = "{\colortbl" & _ColorTable & "}"
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace(_OrigColorTable, _CTable.ToString())
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("improjectim", _CRMEstate_Leads.ImmovablesPriceListHeader.ImmovablesGroups.ShortName)
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("imlastnameim", _CRMEstate_Leads.LastName)
|
|
_CRMEstate_Leads.DocumentBody = _CRMEstate_Leads.DocumentBody.Replace("imfirstnameim", _CRMEstate_Leads.FirstName)
|
|
'=================================================================================
|
|
|
|
'=========================== Apartments =======================================
|
|
Dim _CRMEstate_Leads_Immovables_Apartments As ListPropertyEditor
|
|
_CRMEstate_Leads_Immovables_Apartments = TryCast(View, DetailView).FindItem("Selected_Apartments")
|
|
|
|
If _CRMEstate_Leads_Immovables_Apartments.ListView IsNot Nothing Then
|
|
Dim _ListView_Apartments As ListView = CType(_CRMEstate_Leads_Immovables_Apartments.ListView, ListView)
|
|
Dim _GridListEditor_Apartments As GridListEditor = TryCast(_ListView_Apartments.Editor, GridListEditor)
|
|
Dim _Grid_Apartments As GridView = TryCast(_GridListEditor_Apartments.GridView, GridView)
|
|
|
|
If _Grid_Apartments IsNot Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = RTFTableCreator(_Grid_Apartments, "imapartmentsim", _CRMEstate_Leads.DocumentBody)
|
|
End If
|
|
End If
|
|
|
|
'=================================================================================
|
|
|
|
'=========================== Offices ==========================================
|
|
Dim _CRMEstate_Leads_Immovables_Offices As ListPropertyEditor
|
|
_CRMEstate_Leads_Immovables_Offices = TryCast(View, DetailView).FindItem("Selected_Offices")
|
|
|
|
If _CRMEstate_Leads_Immovables_Offices.ListView IsNot Nothing Then
|
|
Dim _ListView_Offices As ListView = CType(_CRMEstate_Leads_Immovables_Offices.ListView, ListView)
|
|
Dim _GridListEditor_Offices As GridListEditor = TryCast(_ListView_Offices.Editor, GridListEditor)
|
|
Dim _Grid_Offices As GridView = TryCast(_GridListEditor_Offices.GridView, GridView)
|
|
|
|
If _Grid_Offices IsNot Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = RTFTableCreator(_Grid_Offices, "imofficesim", _CRMEstate_Leads.DocumentBody)
|
|
End If
|
|
End If
|
|
'=================================================================================
|
|
|
|
'=========================== Garages ==========================================
|
|
Dim _CRMEstate_Leads_Immovables_Garages As ListPropertyEditor
|
|
_CRMEstate_Leads_Immovables_Garages = TryCast(View, DetailView).FindItem("Selected_Garages")
|
|
If _CRMEstate_Leads_Immovables_Garages.ListView IsNot Nothing Then
|
|
Dim _ListView_Garages As ListView = CType(_CRMEstate_Leads_Immovables_Garages.ListView, ListView)
|
|
Dim _GridListEditor_Garages As GridListEditor = TryCast(_ListView_Garages.Editor, GridListEditor)
|
|
Dim _Grid_Garages As GridView = TryCast(_GridListEditor_Garages.GridView, GridView)
|
|
|
|
If _Grid_Garages IsNot Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = RTFTableCreator(_Grid_Garages, "imgaragesim", _CRMEstate_Leads.DocumentBody)
|
|
End If
|
|
End If
|
|
'=================================================================================
|
|
|
|
'=========================== Container ==========================================
|
|
Dim _CRMEstate_Leads_Immovables_Container As ListPropertyEditor
|
|
_CRMEstate_Leads_Immovables_Container = TryCast(View, DetailView).FindItem("Selected_Container")
|
|
If _CRMEstate_Leads_Immovables_Container.ListView IsNot Nothing Then
|
|
Dim _ListView_Container As ListView = CType(_CRMEstate_Leads_Immovables_Container.ListView, ListView)
|
|
Dim _GridListEditor_Container As GridListEditor = TryCast(_ListView_Container.Editor, GridListEditor)
|
|
Dim _Grid_Container As GridView = TryCast(_GridListEditor_Container.GridView, GridView)
|
|
|
|
If _Grid_Container IsNot Nothing Then
|
|
_CRMEstate_Leads.DocumentBody = RTFTableCreator(_Grid_Container, "imcontainerim", _CRMEstate_Leads.DocumentBody)
|
|
End If
|
|
End If
|
|
'=================================================================================
|
|
End Sub
|
|
Private Sub aInsertGridToRTFCurrentPos_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aInsertGridToRTFCurrentPos.Execute
|
|
'Dim _DetailView As DetailView = CType(View, DetailView)
|
|
Dim _CRMEstate_Leads As CRMEstate_Leads = TryCast(e.CurrentObject, CRMEstate_Leads)
|
|
|
|
Dim _CRMEstate_Leads_Immovables As ListPropertyEditor
|
|
_CRMEstate_Leads_Immovables = TryCast(View, DetailView).FindItem("CRMEstate_Leads_Immovables")
|
|
|
|
Dim _ListView As ListView = CType(_CRMEstate_Leads_Immovables.ListView, ListView)
|
|
Dim _GridListEditor As GridListEditor = TryCast(_ListView.Editor, GridListEditor)
|
|
Dim _Grid As GridView = TryCast(_GridListEditor.GridView, GridView)
|
|
|
|
|
|
_RichEditControl.Document.InsertText(_RichEditControl.Document.CaretPosition, "LilaLiba")
|
|
|
|
|
|
Dim _RTFTable As String = RTFTableCreatorCurrentPos(_Grid)
|
|
|
|
Dim _DocumentBody_NEW As String = _CRMEstate_Leads.DocumentBody
|
|
_DocumentBody_NEW = _CRMEstate_Leads.DocumentBody.Replace("LilaLiba", _RTFTable)
|
|
_CRMEstate_Leads.DocumentBody = ""
|
|
_CRMEstate_Leads.DocumentBody = _DocumentBody_NEW
|
|
|
|
' _RichEditControl.Document.InsertRtfText(_DocumentPosition, RTFTableCreatorCurrentPos(_Grid))
|
|
'_RichEditControl.Document.CaretPosition = _RichEditControl.Document.Range.End
|
|
|
|
|
|
End Sub
|
|
Private Function RTFTableCreatorCurrentPos(_Grid As GridView) ', _DocumentBody As String) As String
|
|
Dim _RTFtext As New StringBuilder
|
|
Dim _RowNum As Integer = _Grid.RowCount
|
|
Dim _ColumnsNum As Integer = _Grid.Columns.Count
|
|
Dim irowIndex As Integer = 0
|
|
'--Fejléc kiírása RTFként--
|
|
|
|
_RTFtext.Append("\par\pard\plain\ql\par\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10" & _
|
|
"\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
For _ik As Integer = 0 To _ColumnsNum - 1
|
|
If _Grid.Columns(_ik).Visible = True Then
|
|
_RTFtext.Append("\clvertalt\clcbpat2\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10" &
|
|
"\cltxlrtb\clftsWidth3\clwWidth3302\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _ik)
|
|
End If
|
|
Next
|
|
For _ik As Integer = 0 To _ColumnsNum - 1
|
|
If _Grid.Columns(_ik).Visible = True Then
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\b\cf0" & _Grid.Columns(_ik).Caption & "}\b\cell")
|
|
End If
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10" & _
|
|
"\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
For _ik As Integer = 0 To _ColumnsNum - 1
|
|
If _Grid.Columns(_ik).Visible = True Then
|
|
_RTFtext.Append("\clvertalt\clcbpat2\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10" &
|
|
"\cltxlrtb\clftsWidth3\clwWidth3302\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _ik)
|
|
End If
|
|
Next
|
|
irowIndex += 1
|
|
|
|
'' --Adatsorok kiírása RTFként--
|
|
For _ik As Integer = 0 To _RowNum - 2
|
|
|
|
_RTFtext.Append("\row")
|
|
For _jk As Integer = 0 To _ColumnsNum - 2
|
|
If _Grid.Columns(_jk).Visible = True Then
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\cf0" & (_Grid.GetRowCellValue(_ik, _Grid.Columns(_jk)).ToString()) & "}\cell")
|
|
End If
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
|
|
For _jk As Integer = 0 To _ColumnsNum - 1
|
|
If _Grid.Columns(_jk).Visible = True Then
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth3302" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _jk)
|
|
End If
|
|
Next
|
|
irowIndex += 1
|
|
Next
|
|
|
|
''--Utolsó sor --
|
|
_RTFtext.Append("\row")
|
|
For _jk As Integer = 0 To _ColumnsNum - 2
|
|
If _Grid.Columns(_jk).Visible = True Then
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\cf0" & (_Grid.GetRowCellValue(_RowNum - 1, _Grid.Columns(_jk)).ToString()) & "}\cell")
|
|
End If
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\lastrow\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
|
|
For _jk As Integer = 0 To _ColumnsNum - 1
|
|
If _Grid.Columns(_jk).Visible = True Then
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth3302" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _jk)
|
|
End If
|
|
Next
|
|
_RTFtext.Append("\row\pard\plain\ql\par")
|
|
|
|
'_DocumentBody_NEW = _DocumentBody.Replace(_Tag, _RTFtext.ToString())
|
|
'_DocumentBody_NEW = _DocumentBody_NEW.Replace("{\colortbl\red0\green0\blue0 ;\red0\green0\blue255 ;}", "{\colortbl\red0\green0\blue0 ;\red0\green0\blue255 ;\red192\green192\blue192 ;}")
|
|
|
|
Return _RTFtext.ToString()
|
|
End Function
|
|
Private Sub aRestoreDocumentTemplate_Execute(sender As System.Object, e As DevExpress.ExpressApp.Actions.SimpleActionExecuteEventArgs) Handles aRestoreDocumentTemplate.Execute
|
|
Try
|
|
Dim _ocur As Xpo.XPObjectSpace = View.ObjectSpace
|
|
Dim _CRMEstate_Leads As CRMEstate_Leads = TryCast(View.SelectedObjects(0), CRMEstate_Leads)
|
|
If _CRMEstate_Leads Is Nothing Then Throw New Exception("*Váratlan hiba történt, a folyamat megszakadt!")
|
|
|
|
Dim _ImmovablesGroupsParameters As ImmovablesGroupsParameters = _ocur.FindObject(Of ImmovablesGroupsParameters)(CriteriaOperator.Parse("ImmovablesGroups=?", _
|
|
_CRMEstate_Leads.ImmovablesPriceListHeader.ImmovablesGroups))
|
|
|
|
If _ImmovablesGroupsParameters Is Nothing Then Throw New Exception("*Nincs beállítva ingatlancsoport paraméter!")
|
|
|
|
_CRMEstate_Leads.DocumentBody = _ImmovablesGroupsParameters.DocumentBody
|
|
_ocur.CommitChanges()
|
|
Catch ex As Exception
|
|
MsgBox(ex.Message, MsgBoxStyle.OkOnly)
|
|
End Try
|
|
|
|
End Sub
|
|
|
|
'-------------------Functions----------------------
|
|
Function RTFTableCreator(_Grid As GridView, _Tag As String, _DocumentBody As String, Optional _FontSize As String = "8", _
|
|
Optional _FontType As String = "Tahoma", Optional _RGB As String = "240,240,240") As String
|
|
|
|
|
|
Dim _DocumentBody_NEW As String
|
|
Dim _HeaderFillColor As Int32 ' -- Current table header fill color index in colot table
|
|
|
|
If _RGB <> "240,240,240" Then
|
|
Dim _Parameters As String() = ColorTablereplacement(_DocumentBody, _RGB)
|
|
_HeaderFillColor = Convert.ToInt32(_Parameters(0))
|
|
_DocumentBody = _Parameters(1)
|
|
Else
|
|
'Dim _ColorTable As String = (_DocumentBody.Remove(0, (InStr(_DocumentBody, "{\colortbl")) + "{\colortbl".Length - 1))
|
|
'_ColorTable = _ColorTable.Remove(InStr(_ColorTable, "}") - 1) '--Act Color table
|
|
'Dim _ColorArray As String() = _ColorTable.Split(New [Char]() {";"c})
|
|
'For _ik = 0 To _ColorArray.Length - 1
|
|
' If _ColorArray(_ik) = "\red240\green240\blue240 " Then
|
|
' _HeaderFillColor = _ik
|
|
' Exit For
|
|
' End If
|
|
'Next
|
|
_HeaderFillColor = 2
|
|
End If
|
|
|
|
If _Grid.DataRowCount > 0 Then
|
|
Dim _FontSizeNUM As Int32 = (Convert.ToInt32(_FontSize) * 2) ' -- Font size in half-points (the default is 16). => Size 8!!!
|
|
Dim _RTFtext As New StringBuilder
|
|
Dim _RowNumFull As Integer = _Grid.RowCount
|
|
Dim _RowNum As Integer = _Grid.DataRowCount
|
|
Dim _ColumnsNum As Integer = _Grid.Columns.Count
|
|
Dim irowIndex As Int32 = 0
|
|
Dim _LastCellIndex As Int32 = 0
|
|
|
|
'--Header to RTF format--
|
|
'=================================================================================
|
|
_RTFtext.Append("\pard\plain\ql\par\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10" & _
|
|
"\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
|
|
For _ik As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
_RTFtext.Append("\clvertalt\clcbpat2\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10" &
|
|
"\cltxlrtb\clftsWidth3\clwWidth3302\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _ik)
|
|
If _LastCellIndex < _ik Then
|
|
_LastCellIndex = _ik
|
|
End If
|
|
Next
|
|
For _ik As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\b\fs" & _FontSizeNUM & "\cf0 " & _Grid.Columns.View.VisibleColumns(_ik).Caption & "}\b\cell")
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10" & _
|
|
"\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
For _ik As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
_RTFtext.Append("\clvertalt\clcbpat" & _HeaderFillColor & "\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10" &
|
|
"\cltxlrtb\clftsWidth3\clwWidth3302\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _ik)
|
|
Next
|
|
irowIndex += 1
|
|
'' --Data to RTF format--
|
|
'=================================================================================
|
|
For _ik As Int16 = 0 To _RowNumFull - 2
|
|
If _Grid.IsGroupRow(_Grid.Columns.View.GetVisibleRowHandle(_ik)) = True Then
|
|
_RTFtext.Append("\row")
|
|
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & (_Grid.GetGroupRowDisplayText(_Grid.Columns.View.GetVisibleRowHandle(_ik)).ToString) & "}\cell")
|
|
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trftsWidth1\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108\tblindtype3\tblind0")
|
|
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth9619" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _LastCellIndex)
|
|
|
|
irowIndex += 1
|
|
Else
|
|
_RTFtext.Append("\row")
|
|
|
|
For _jk As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
If _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName <> "System.Double" And _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName <> "System.Boolean" Then
|
|
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & (_Grid.GetRowCellDisplayText(_Grid.Columns.View.GetVisibleRowHandle(_ik), _Grid.Columns.View.VisibleColumns(_jk))) & "}\cell")
|
|
ElseIf _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName = "System.Boolean" Then
|
|
If _Grid.GetRowCellValue(_Grid.Columns.View.GetVisibleRowHandle(_ik), _Grid.Columns.View.VisibleColumns(_jk)) = True Then
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & "Van" & "}\cell")
|
|
Else
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & "Nincs" & "}\cell")
|
|
End If
|
|
Else
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0\qr " & LTrim(RTrim(Format(_Grid.Columns.View.GetRowCellValue(_Grid.Columns.View.GetVisibleRowHandle(_ik), _Grid.Columns.View.VisibleColumns(_jk)), "#,##0.00"))) & "}\qr\cell")
|
|
|
|
End If
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
|
|
For _jk As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth3302" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _jk)
|
|
Next
|
|
irowIndex += 1
|
|
End If
|
|
Next
|
|
'--Last row --
|
|
'=================================================================================
|
|
If _Grid.IsGroupRow(_Grid.Columns.View.GetVisibleRowHandle(_RowNumFull - 1)) = True Then
|
|
_RTFtext.Append("\row")
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & (_Grid.GetGroupRowDisplayText(_Grid.Columns.View.GetVisibleRowHandle(_RowNumFull - 1)).ToString) & "}\cell")
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trftsWidth1\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108\tblindtype3\tblind0")
|
|
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth9619" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _LastCellIndex)
|
|
Else
|
|
_RTFtext.Append("\row")
|
|
For _jk As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
If _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName <> "System.Double" And _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName <> "System.Boolean" Then
|
|
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & (_Grid.Columns.View.GetRowCellDisplayText(_RowNum - 1, _Grid.Columns.View.VisibleColumns(_jk))) & "}\cell")
|
|
ElseIf _Grid.Columns.View.VisibleColumns(_jk).ColumnType.FullName = "System.Boolean" Then
|
|
If _Grid.IsGroupRow(_Grid.Columns.View.GetVisibleRowHandle(_RowNumFull - 1)) = True Then
|
|
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & "Van" & "}\cell")
|
|
Else
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0 " & "Nincs" & "}\cell")
|
|
End If
|
|
Else
|
|
_RTFtext.Append("\pard\plain\ql\intbl{\fs" & _FontSizeNUM & "\cf0\qr " & LTrim(RTrim(Format(_Grid.Columns.View.GetRowCellValue(_Grid.Columns.View.GetVisibleRowHandle(_RowNumFull - 1), _Grid.Columns.View.VisibleColumns(_jk)), "#,##0.00"))) & "}\qr\cell")
|
|
End If
|
|
Next
|
|
|
|
_RTFtext.Append("\trowd\irow" & irowIndex & "\irowband" & irowIndex & "\lastrow\trbrdrt\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrr\brdrs\brdrw10" & _
|
|
"\trleft-108\trautofit1\trpaddfl3\trpaddl108\trpaddfr3\trpaddr108")
|
|
''---
|
|
For _jk As Integer = 0 To _Grid.Columns.View.VisibleColumns.Count - 1
|
|
|
|
_RTFtext.Append("\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth3302" & _
|
|
"\clpadfr3\clpadr108\clpadft3\clpadt108\cellx" & _jk)
|
|
Next
|
|
End If
|
|
|
|
_RTFtext.Append("\row\pard\plain\ql")
|
|
_DocumentBody_NEW = _DocumentBody.Replace(_Tag, _RTFtext.ToString())
|
|
If _DocumentBody_NEW.Contains("\fonttbl{\f0 Times New Roman;") Then
|
|
_DocumentBody_NEW = _DocumentBody_NEW.Replace("\fonttbl{\f0 Times New Roman;", "\fonttbl{\f0 " & _FontType & ";") 'Font table remake
|
|
End If
|
|
Else
|
|
_DocumentBody_NEW = _DocumentBody.Replace(_Tag, " ")
|
|
End If
|
|
|
|
Return _DocumentBody_NEW
|
|
End Function
|
|
Function ColorTablereplacement(_DocumentBody As String, _RGB As String) As String()
|
|
Dim _Parameters(1) As String
|
|
Dim _RGBArray As String() = _RGB.Split(New [Char]() {","c})
|
|
|
|
Dim _actColorNum As Int32 = -1
|
|
Dim _ColorTable As String = (_DocumentBody.Remove(0, (InStr(_DocumentBody, "{\colortbl")) + "{\colortbl".Length - 1))
|
|
_ColorTable = _ColorTable.Remove(InStr(_ColorTable, "}") - 1) '--Act Color table
|
|
Dim _ColorArray As String() = _ColorTable.Split(New [Char]() {";"c})
|
|
|
|
For _ik As Int32 = 0 To _ColorArray.Length - 1
|
|
If _ColorArray(_ik) = "\red" & _RGBArray(0) & "\green" & _RGBArray(1) & "\blue" & _RGBArray(2) & " " Then
|
|
_actColorNum = _ik
|
|
End If
|
|
Next
|
|
If _actColorNum = -1 Then
|
|
Dim _CTable As New StringBuilder()
|
|
_CTable.Append("{\colortbl")
|
|
For _ik As Int32 = 0 To _ColorArray.Length - 2
|
|
_CTable.Append(_ColorArray(_ik) & ";")
|
|
Next
|
|
_CTable.Append("\red" & _RGBArray(0) & "\green" & _RGBArray(1) & "\blue" & _RGBArray(2) & " ;}")
|
|
Dim _OrigColorTable As String = "{\colortbl" & _ColorTable & "}"
|
|
_DocumentBody = _DocumentBody.Replace(_OrigColorTable, _CTable.ToString())
|
|
_Parameters(0) = _ColorArray.Length - 1
|
|
_Parameters(1) = _DocumentBody
|
|
Else
|
|
_Parameters(0) = _actColorNum
|
|
_Parameters(1) = _DocumentBody
|
|
End If
|
|
Return _Parameters
|
|
End Function
|
|
End Class
|