First create solution

This commit is contained in:
2017-03-08 11:21:27 +01:00
commit a2fb86bacf
5508 changed files with 1082238 additions and 0 deletions
@@ -0,0 +1,70 @@
Imports Microsoft.VisualBasic
Imports System
Imports System.Linq
Imports System.Text
Imports DevExpress.Xpo
Imports DevExpress.ExpressApp
Imports System.ComponentModel
Imports DevExpress.ExpressApp.DC
Imports DevExpress.Data.Filtering
Imports DevExpress.Persistent.Base
Imports System.Collections.Generic
Imports DevExpress.ExpressApp.Model
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.Persistent.Validation
'<ImageName("BO_Contact")> _
'<DefaultProperty("DisplayMemberNameForLookupEditorsOfThisType")> _
'<DefaultListViewOptions(MasterDetailMode.ListViewOnly, False, NewItemRowPosition.None)> _
'<Persistent("DatabaseTableName")> _
<DefaultClassOptions(), NavigationItem(False), CreatableItem(False)> _
Public Class SpreadImport ' Specify more UI options using a declarative approach (http://documentation.devexpress.com/#Xaf/CustomDocument2701).
Inherits BaseObject ' Inherit from a different class to provide a custom primary key, concurrency and deletion behavior, etc. (http://documentation.devexpress.com/#Xaf/CustomDocument3146).
Private _SpreadFile As FileData
Private _SpreadXML As String
Public Sub New(ByVal session As Session)
MyBase.New(session)
End Sub
Public Overrides Sub AfterConstruction()
MyBase.AfterConstruction()
' Place your initialization code here (http://documentation.devexpress.com/#Xaf/CustomDocument2834).
End Sub
<Browsable(False)> _
Property SpreadFile As FileData
Get
Return _SpreadFile
End Get
Set(value As FileData)
SetPropertyValue("SpreadFile", _SpreadFile, value)
End Set
End Property
Property SpreadXML As String
Get
Return _SpreadXML
End Get
Set(value As String)
SetPropertyValue("SpreadXML", _SpreadXML, value)
End Set
End Property
'Private _PersistentProperty As String
'<XafDisplayName("My display name"), ToolTip("My hint message")> _
'<ModelDefault("EditMask", "(000)-00"), Index(0), VisibleInListView(False)> _
'<Persistent("DatabaseColumnName"), RuleRequiredField(DefaultContexts.Save)> _
'Public Property PersistentProperty() As String
' Get
' Return _PersistentProperty
' End Get
' Set(ByVal value As String)
' SetPropertyValue("PersistentProperty", _PersistentProperty, value)
' End Set
'End Property
'<Action(Caption:="My UI Action", ConfirmationMessage:="Are you sure?", ImageName:="Attention", AutoCommit:=True)> _
'Public Sub ActionMethod()
' ' Trigger a custom business logic for the current record in the UI (http://documentation.devexpress.com/#Xaf/CustomDocument2619).
' Me.PersistentProperty = "Paid"
'End Sub
End Class
@@ -0,0 +1,59 @@
Partial Class SpreadImportVC
<System.Diagnostics.DebuggerNonUserCode()> _
Public Sub New(ByVal Container As System.ComponentModel.IContainer)
MyClass.New()
'Required for Windows.Forms Class Composition Designer support
Container.Add(Me)
End Sub
'Component overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Component Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Component Designer
'It can be modified using the Component Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.components = New System.ComponentModel.Container()
Me.aSpreadImport_LoadDocument = New DevExpress.ExpressApp.Actions.SimpleAction(Me.components)
Me.aSpreadImport_SaveDocument = New DevExpress.ExpressApp.Actions.SimpleAction(Me.components)
'
'aSpreadImport_LoadDocument
'
Me.aSpreadImport_LoadDocument.Caption = "aSpreadImport_LoadDocument"
Me.aSpreadImport_LoadDocument.ConfirmationMessage = Nothing
Me.aSpreadImport_LoadDocument.Id = "aSpreadImport_LoadDocument"
Me.aSpreadImport_LoadDocument.TargetObjectType = GetType(Nuvolar.[Module].Win.SpreadImport)
Me.aSpreadImport_LoadDocument.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root
Me.aSpreadImport_LoadDocument.TargetViewType = DevExpress.ExpressApp.ViewType.DetailView
Me.aSpreadImport_LoadDocument.ToolTip = Nothing
Me.aSpreadImport_LoadDocument.TypeOfView = GetType(DevExpress.ExpressApp.DetailView)
'
'aSpreadImport_SaveDocument
'
Me.aSpreadImport_SaveDocument.Caption = "aSpreadImport_SaveDocument"
Me.aSpreadImport_SaveDocument.ConfirmationMessage = Nothing
Me.aSpreadImport_SaveDocument.Id = "aSpreadImport_SaveDocument"
Me.aSpreadImport_SaveDocument.TargetObjectType = GetType(Nuvolar.[Module].Win.SpreadImport)
Me.aSpreadImport_SaveDocument.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root
Me.aSpreadImport_SaveDocument.TargetViewType = DevExpress.ExpressApp.ViewType.DetailView
Me.aSpreadImport_SaveDocument.ToolTip = Nothing
Me.aSpreadImport_SaveDocument.TypeOfView = GetType(DevExpress.ExpressApp.DetailView)
End Sub
Friend WithEvents aSpreadImport_LoadDocument As DevExpress.ExpressApp.Actions.SimpleAction
Friend WithEvents aSpreadImport_SaveDocument As DevExpress.ExpressApp.Actions.SimpleAction
End Class
@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="aSpreadImport_LoadDocument.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="aSpreadImport_SaveDocument.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>216, 19</value>
</metadata>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
@@ -0,0 +1,147 @@
Imports Microsoft.VisualBasic
Imports System
Imports System.Linq
Imports System.Text
Imports DevExpress.ExpressApp
Imports DevExpress.Data.Filtering
Imports System.Collections.Generic
Imports DevExpress.Persistent.Base
Imports DevExpress.ExpressApp.Utils
Imports DevExpress.ExpressApp.Layout
Imports DevExpress.ExpressApp.Actions
Imports DevExpress.ExpressApp.Editors
Imports DevExpress.ExpressApp.Templates
Imports DevExpress.Persistent.Validation
Imports DevExpress.ExpressApp.SystemModule
Imports DevExpress.ExpressApp.Model.NodeGenerators
Imports DevExpress.XtraSpreadsheet
Imports DevExpress.Persistent.BaseImpl
' For more typical usage scenarios, be sure to check out http://documentation.devexpress.com/#Xaf/clsDevExpressExpressAppViewControllertopic.
Partial Public Class SpreadImportVC
Inherits ViewController
Private _SpreadsheetControl As SpreadsheetControl
Public Sub New()
InitializeComponent()
RegisterActions(components)
' Target required Views (via the TargetXXX properties) and create their Actions.
End Sub
Protected Overrides Sub OnActivated()
MyBase.OnActivated()
' Perform various tasks depending on the target View.
If View.Id = "SpreadImport_DetailView" Then
Dim _DetailView As DetailView = TryCast(View, DetailView)
Dim _SpreadXML_ViewItem As ViewItem = _DetailView.FindItem("SpreadXML")
If _SpreadXML_ViewItem IsNot Nothing Then
AddHandler _SpreadXML_ViewItem.ControlCreated, AddressOf _SpreadXML_ViewItem_ControlCreated
End If
AddHandler Frame.GetController(Of ModificationsController).SaveAction.Executing, AddressOf SpreadImport_DetailView_SaveAction_Executing
AddHandler Frame.GetController(Of ModificationsController).SaveAndCloseAction.Executing, AddressOf SpreadImport_DetailView_SaveAction_Executing
Frame.GetController(Of NewObjectViewController).Active.SetItemValue("", False)
Frame.GetController(Of ModificationsController).SaveAndNewAction.Active.SetItemValue("", False)
End If
End Sub
Protected Overrides Sub OnViewControlsCreated()
MyBase.OnViewControlsCreated()
' Access and customize the target View control.
End Sub
Protected Overrides Sub OnDeactivated()
' Unsubscribe from previously subscribed events and release other references and resources.
MyBase.OnDeactivated()
End Sub
Private Sub _SpreadXML_ViewItem_ControlCreated(sender As Object, e As EventArgs)
Dim _SpreadImport As SpreadImport = TryCast(View.SelectedObjects(0), SpreadImport)
Dim _ItemControl As Object = TryCast(sender, ViewItem).Control
Dim _SpreadSimpleUserControl As SpreadSimpleUserControl = TryCast(_ItemControl, SpreadSimpleUserControl)
If _SpreadSimpleUserControl IsNot Nothing Then
_SpreadsheetControl = TryCast(_ItemControl, SpreadSimpleUserControl).SpreadsheetControl1
If _SpreadImport IsNot Nothing Then
If _SpreadImport.SpreadFile IsNot Nothing Then
Dim _FilePath As String = System.IO.Path.Combine(System.IO.Path.GetTempPath(), _SpreadImport.SpreadFile.FileName)
Dim _Stream As System.IO.Stream = New System.IO.FileStream(_FilePath, System.IO.FileMode.Create)
_SpreadImport.SpreadFile.SaveToStream(_Stream)
_Stream.Close()
Dim _StreamFile = New System.IO.FileStream(_FilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read)
Dim _StreamReader As New System.IO.StreamReader(_StreamFile)
Dim workbook As DevExpress.Spreadsheet.IWorkbook = _SpreadsheetControl.Document
_StreamFile.Seek(0, System.IO.SeekOrigin.Begin)
workbook.LoadDocument(_StreamFile, DevExpress.Spreadsheet.DocumentFormat.OpenXml)
_StreamFile.Close()
End If
End If
End If
End Sub
Private Sub SpreadImport_DetailView_SaveAction_Executing(sender As Object, e As ComponentModel.CancelEventArgs)
Dim _SpreadImport As SpreadImport = TryCast(View.SelectedObjects(0), SpreadImport)
Dim _ocur As Xpo.XPObjectSpace = TryCast(View.ObjectSpace, Xpo.XPObjectSpace)
Dim _DetailView As DetailView = TryCast(View, DetailView)
Dim _SpreadXML_ViewItem As ViewItem = _DetailView.FindItem("SpreadXML")
Dim _ItemControl As Object
Dim _SpreadSimpleUserControl As SpreadSimpleUserControl
If _SpreadXML_ViewItem IsNot Nothing Then
_ItemControl = _SpreadXML_ViewItem.Control
_SpreadSimpleUserControl = TryCast(_ItemControl, SpreadSimpleUserControl)
_SpreadsheetControl = TryCast(_ItemControl, SpreadSimpleUserControl).SpreadsheetControl1
End If
If _SpreadsheetControl IsNot Nothing Then
Dim _FilePath As String = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "IMPORT.XML")
Dim _Stream As System.IO.Stream = New System.IO.FileStream(_FilePath, System.IO.FileMode.Create)
_SpreadsheetControl.Document.SaveDocument(_Stream, DevExpress.Spreadsheet.DocumentFormat.OpenXml)
_Stream.Close()
Dim _StreamFile = New System.IO.FileStream(_FilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read)
Dim _StreamReader As New System.IO.StreamReader(_StreamFile)
_StreamFile.Seek(0, System.IO.SeekOrigin.Begin)
Dim _FileData As FileData
_FileData = _ocur.CreateObject(Of FileData)()
_FileData.LoadFromStream("IMPORT.XML", _StreamFile)
_SpreadImport.SpreadFile = _FileData
End If
End Sub
Private Sub aSpreadImport_LoadDocument_Execute(sender As Object, e As SimpleActionExecuteEventArgs) Handles aSpreadImport_LoadDocument.Execute
Dim openFileDialog1 As New Windows.Forms.OpenFileDialog()
openFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
openFileDialog1.Filter = "XML files (*.xml)|*.xml|All files (*.*)|*.*"
openFileDialog1.FilterIndex = 1
openFileDialog1.RestoreDirectory = True
If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
_SpreadsheetControl.LoadDocument(openFileDialog1.FileName, DevExpress.Spreadsheet.DocumentFormat.OpenXml)
End If
End Sub
Private Sub aSpreadImport_SaveDocument_Execute(sender As Object, e As SimpleActionExecuteEventArgs) Handles aSpreadImport_SaveDocument.Execute
Dim openFileDialog1 As New Windows.Forms.SaveFileDialog()
openFileDialog1.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
openFileDialog1.Filter = "XML files (*.xml)|*.xml|All files (*.*)|*.*"
openFileDialog1.FilterIndex = 1
openFileDialog1.RestoreDirectory = True
If openFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
_SpreadsheetControl.SaveDocument(openFileDialog1.FileName, DevExpress.Spreadsheet.DocumentFormat.OpenXml)
End If
End Sub
End Class