From c2d27e089accd12660e684393fda1a60a65a9b0e Mon Sep 17 00:00:00 2001 From: pitzm Date: Tue, 5 Dec 2023 11:44:54 +0100 Subject: [PATCH] 3D Pie auf Main gesetzt --- .../EnvelopeGenerator.Common.vbproj | 1 + EnvelopeGenerator.Common/Models/ChartModel.vb | 28 +++++++++++++++ .../Controllers/BaseController.vb | 2 ++ .../Controllers/EnvelopeListController.vb | 34 ++++++++++++++++++- .../EnvelopeGenerator.Form.vbproj | 8 +++++ .../My Project/licenses.licx | 13 +++---- EnvelopeGenerator.Form/frmMain.Designer.vb | 3 +- EnvelopeGenerator.Form/frmMain.resx | 6 ++-- EnvelopeGenerator.Form/frmMain.vb | 12 ++++++- 9 files changed, 95 insertions(+), 12 deletions(-) create mode 100644 EnvelopeGenerator.Common/Models/ChartModel.vb diff --git a/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj b/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj index fb3a52fb..9eea5b7a 100644 --- a/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj +++ b/EnvelopeGenerator.Common/EnvelopeGenerator.Common.vbproj @@ -139,6 +139,7 @@ + diff --git a/EnvelopeGenerator.Common/Models/ChartModel.vb b/EnvelopeGenerator.Common/Models/ChartModel.vb new file mode 100644 index 00000000..ede833f8 --- /dev/null +++ b/EnvelopeGenerator.Common/Models/ChartModel.vb @@ -0,0 +1,28 @@ +Imports System.Data.SqlClient +Imports DigitalData.Modules.Base +Imports DigitalData.Modules.Logging + +Public Class ChartModel + Inherits BaseModel + + Public Sub New(pState As State) + MyBase.New(pState) + + End Sub + + Public Function LoadPIEExample() As DataTable + Try + Dim oSQL As String + oSQL = " SELECT 'ALLE' as Argument, 100 as Value" + oSQL += " UNION " + oSQL += " SELECT 'Komplett', 33 " + + Dim oTable As DataTable = Database.GetDatatable(oSQL) + + Return oTable + Catch ex As Exception + Logger.Error(ex) + Return Nothing + End Try + End Function +End Class diff --git a/EnvelopeGenerator.Form/Controllers/BaseController.vb b/EnvelopeGenerator.Form/Controllers/BaseController.vb index ed241d3e..007e9047 100644 --- a/EnvelopeGenerator.Form/Controllers/BaseController.vb +++ b/EnvelopeGenerator.Form/Controllers/BaseController.vb @@ -13,6 +13,7 @@ Public MustInherit Class BaseController Public HistoryModel As HistoryModel Public UserModel As UserModel Public EmailModel As EmailModel + Public ChartModel As ChartModel Public ActionService As ActionService @@ -35,6 +36,7 @@ Public MustInherit Class BaseController HistoryModel = New HistoryModel(pState) UserModel = New UserModel(pState) EmailModel = New EmailModel(pState) + ChartModel = New ChartModel(pState) End Sub Public Function DeleteEnvelope(pEnvelope As Envelope) As Boolean diff --git a/EnvelopeGenerator.Form/Controllers/EnvelopeListController.vb b/EnvelopeGenerator.Form/Controllers/EnvelopeListController.vb index e5801ecc..f171ed8f 100644 --- a/EnvelopeGenerator.Form/Controllers/EnvelopeListController.vb +++ b/EnvelopeGenerator.Form/Controllers/EnvelopeListController.vb @@ -1,4 +1,5 @@ -Imports EnvelopeGenerator.Common +Imports DevExpress.XtraCharts +Imports EnvelopeGenerator.Common Public Class EnvelopeListController Inherits BaseController @@ -18,4 +19,35 @@ Public Class EnvelopeListController Return MyBase.DeleteEnvelope(pEnvelope) End Function + Public Function GetPieChart() As ChartControl + Dim oChartControl As ChartControl = New ChartControl With { + .Name = "ChartControl1", + .Dock = DockStyle.Fill + } + + Dim oSerie As Series = New Series("PIE Title", ViewType.Pie3D) With { + .LegendTextPattern = "{A}" + } + + Dim pieLabel As PieSeriesLabel = TryCast(oSerie.Label, PieSeriesLabel) + If pieLabel IsNot Nothing Then + pieLabel.Position = PieSeriesLabelPosition.Outside + End If + + Dim xAxisTitle As String = "Argument" + Dim yAxisTitle As String = "Value" + + Dim oTable As DataTable = ChartModel.LoadPIEExample() + + For Each oRow In oTable.Rows + Dim value1 As String = CStr(oRow.Item(xAxisTitle)) + Dim value2 As String = CStr(oRow.Item(yAxisTitle)) + oSerie.Points.Add(New SeriesPoint(value1, value2)) + Next + + oSerie.ArgumentScaleType = ScaleType.Qualitative + oChartControl.Series.Add(oSerie) + + Return oChartControl + End Function End Class diff --git a/EnvelopeGenerator.Form/EnvelopeGenerator.Form.vbproj b/EnvelopeGenerator.Form/EnvelopeGenerator.Form.vbproj index 9091b4dd..8b68eda9 100644 --- a/EnvelopeGenerator.Form/EnvelopeGenerator.Form.vbproj +++ b/EnvelopeGenerator.Form/EnvelopeGenerator.Form.vbproj @@ -43,11 +43,19 @@ + + + + False + D:\ProgramFiles\DevExpress 21.2\Components\Bin\Framework\DevExpress.XtraCharts.v21.2.dll + + + diff --git a/EnvelopeGenerator.Form/My Project/licenses.licx b/EnvelopeGenerator.Form/My Project/licenses.licx index 6f2ce757..acc83b3e 100644 --- a/EnvelopeGenerator.Form/My Project/licenses.licx +++ b/EnvelopeGenerator.Form/My Project/licenses.licx @@ -1,14 +1,15 @@ DevExpress.XtraEditors.Repository.RepositoryItemComboBox, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraCharts.ChartControl, DevExpress.XtraCharts.v21.2.UI, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraBars.BarManager, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraBars.Ribbon.RibbonControl, DevExpress.XtraBars.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.SearchLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraNavBar.NavBarControl, DevExpress.XtraNavBar.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraEditors.Repository.RepositoryItemPictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.SearchLookUpEdit, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.PictureEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraEditors.ComboBoxEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraDataLayout.DataLayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a +DevExpress.XtraEditors.Repository.RepositoryItemTextEdit, DevExpress.XtraEditors.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a DevExpress.XtraLayout.LayoutControl, DevExpress.XtraLayout.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a -DevExpress.XtraGrid.GridControl, DevExpress.XtraGrid.v21.2, Version=21.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a diff --git a/EnvelopeGenerator.Form/frmMain.Designer.vb b/EnvelopeGenerator.Form/frmMain.Designer.vb index 2a3622c9..928b907a 100644 --- a/EnvelopeGenerator.Form/frmMain.Designer.vb +++ b/EnvelopeGenerator.Form/frmMain.Designer.vb @@ -94,7 +94,7 @@ Partial Class frmMain 'SplitContainerControl1.Panel2 ' resources.ApplyResources(Me.SplitContainerControl1.Panel2, "SplitContainerControl1.Panel2") - Me.SplitContainerControl1.SplitterPosition = 438 + Me.SplitContainerControl1.SplitterPosition = 272 ' 'XtraTabControl1 ' @@ -263,6 +263,7 @@ Partial Class frmMain Me.GridCompleted.MainView = Me.ViewCompleted Me.GridCompleted.MenuManager = Me.RibbonControl Me.GridCompleted.Name = "GridCompleted" + Me.GridCompleted.ShowOnlyPredefinedDetails = True Me.GridCompleted.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewReceiversCompleted, Me.ViewCompleted}) ' 'ViewReceiversCompleted diff --git a/EnvelopeGenerator.Form/frmMain.resx b/EnvelopeGenerator.Form/frmMain.resx index 33ad53ca..492b412c 100644 --- a/EnvelopeGenerator.Form/frmMain.resx +++ b/EnvelopeGenerator.Form/frmMain.resx @@ -394,7 +394,7 @@ 0 - 1088, 438 + 1088, 272 3 @@ -505,7 +505,7 @@ 112 - 1086, 415 + 1086, 249 3 @@ -523,7 +523,7 @@ 0 - 1086, 415 + 1086, 249 Abgeschlossene Umschläge diff --git a/EnvelopeGenerator.Form/frmMain.vb b/EnvelopeGenerator.Form/frmMain.vb index 1fd89a6f..cd827fd6 100644 --- a/EnvelopeGenerator.Form/frmMain.vb +++ b/EnvelopeGenerator.Form/frmMain.vb @@ -1,4 +1,6 @@ -Imports DevExpress.XtraSplashScreen +Imports DevExpress.Utils.Extensions +Imports DevExpress.XtraSplashScreen +Imports DevExpress.XtraCharts Imports DigitalData.GUIs.Common Imports DigitalData.Modules.Base Imports DigitalData.Modules.Config @@ -6,6 +8,7 @@ Imports DigitalData.Modules.Database Imports DigitalData.Modules.Logging Imports EnvelopeGenerator.Common Imports EnvelopeGenerator.Common.My +Imports DevExpress.Charts.Native Public Class frmMain Private LogConfig As LogConfig @@ -70,6 +73,8 @@ Public Class frmMain LoadEnvelopes() LoadCompletedEnvelopes() + LoadCharts() + Catch ex As Exception Logger.Error(ex) End Try @@ -92,6 +97,11 @@ Public Class frmMain GridCompleted.DataSource = Controller.ListCompleted() End Sub + Private Sub LoadCharts() + Dim oChartControl As ChartControl = Controller.GetPieChart() + Me.SplitContainerControl1.Panel2.AddControl(oChartControl) + End Sub + Private Sub btnCreateEnvelope_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles btnCreateEnvelope.ItemClick Dim oHandle = SplashScreenManager.ShowOverlayForm(Me) Try