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,50 @@
namespace Nuvolar.Module
{
partial class AuditTrailVCC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aGetAuditTrailC = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aGetAuditTrailC
//
this.aGetAuditTrailC.Caption = "aGet Audit Trail C";
this.aGetAuditTrailC.Category = "View";
this.aGetAuditTrailC.ConfirmationMessage = null;
this.aGetAuditTrailC.Id = "aGetAuditTrailC";
this.aGetAuditTrailC.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject;
this.aGetAuditTrailC.ToolTip = null;
this.aGetAuditTrailC.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aGetAuditTrail_Execute);
}
#endregion
internal DevExpress.ExpressApp.Actions.SimpleAction aGetAuditTrailC;
}
}
@@ -0,0 +1,72 @@
using System;
using System.Linq;
using DevExpress.ExpressApp;
using DevExpress.Data.Filtering;
using System.Collections.Generic;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Xpo;
using DevExpress.Xpo;
using DevExpress.Persistent.BaseImpl;
using System.Runtime.InteropServices;
namespace Nuvolar.Module
{
// For more typical usage scenarios, be sure to check out http://documentation.devexpress.com/#Xaf/clsDevExpressExpressAppViewControllertopic.
public partial class AuditTrailVCC : ViewController
{
public AuditTrailVCC()
{
InitializeComponent();
RegisterActions(components);
TargetViewType = ViewType.ListView;
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
Frame.GetController<AuditTrailVCC>().aGetAuditTrailC.Active.SetItemValue("", false);
if( View.Id.Contains("AuditDataItemPersistent")) {
Frame.GetController<AuditTrailVCC>().aGetAuditTrailC.Active.SetItemValue("", false);
}
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aGetAuditTrail_Execute(object sender, SimpleActionExecuteEventArgs e)
{
//XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
//XPCollection<AuditDataItemPersistent> _AuditDataItemPersistent_Collection = default(XPCollection<AuditDataItemPersistent>);
//XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
//CollectionSource _CS = new CollectionSource(_onew, typeof(AuditDataItemPersistent));
//_AuditDataItemPersistent_Collection = AuditedObjectWeakReference.GetAuditTrail(_ocur.Session, View.SelectedObjects[0]);
//_CS.BeginUpdateCriteria();
//_CS.Criteria.Clear();
//_CS.Criteria["First"] = CriteriaOperator.Parse("1=2");
//_CS.EndUpdateCriteria();
//if (_AuditDataItemPersistent_Collection != null) {
// foreach ( var _AuditDataItemPersistent in _AuditDataItemPersistent_Collection) {
// _CS.Add(_onew.GetObject(_AuditDataItemPersistent));
// }
// e.ShowViewParameters.CreatedView = Application.CreateListView("AuditDataItemPersistent_ListView", _CS, false);
// e.ShowViewParameters.NewWindowTarget = NewWindowTarget.Separate;
// e.ShowViewParameters.TargetWindow = TargetWindow.NewModalWindow;
//}
}
}
}
@@ -0,0 +1,126 @@
<?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="aGetAuditTrailC.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</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,54 @@
namespace Nuvolar.Module
{
partial class CustomersOrderVC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aOpenWindowsExplorer = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aOpenWindowsExplorer
//
this.aOpenWindowsExplorer.Caption = "aOpen Windows Explorer";
this.aOpenWindowsExplorer.ConfirmationMessage = null;
this.aOpenWindowsExplorer.Id = "aOpenWindowsExplorer";
this.aOpenWindowsExplorer.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject;
this.aOpenWindowsExplorer.TargetObjectType = typeof(Nuvolar.Module.CustomersOrder);
this.aOpenWindowsExplorer.ToolTip = null;
this.aOpenWindowsExplorer.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aOpenWindowsExplorer_Execute);
//
// CustomersOrderVC
//
this.Actions.Add(this.aOpenWindowsExplorer);
}
#endregion
private DevExpress.ExpressApp.Actions.SimpleAction aOpenWindowsExplorer;
}
}
@@ -0,0 +1,65 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Layout;
using DevExpress.ExpressApp.Model.NodeGenerators;
using DevExpress.ExpressApp.SystemModule;
using DevExpress.ExpressApp.Templates;
using DevExpress.ExpressApp.Utils;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.Validation;
using DevExpress.ExpressApp.Xpo;
using System.IO;
using System.Collections;
using System.Diagnostics;
using System.Windows.Forms;
namespace Nuvolar.Module
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class CustomersOrderVC : ViewController
{
public CustomersOrderVC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aOpenWindowsExplorer_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
CustomersOrder _CustomersOrder = (CustomersOrder)View.SelectedObjects[0];
if (_CustomersOrder != null) {
if (string.IsNullOrEmpty(_CustomersOrder.DocumentPath)==false)
{
if (Directory.Exists(_CustomersOrder.DocumentPath))
{
Process.Start(_CustomersOrder.DocumentPath);
}
}
}
}
}
}
@@ -0,0 +1,126 @@
<?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="aOpenWindowsExplorer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</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,40 @@
namespace Nuvolar.Module.Controllers
{
partial class DeliveryNoteOut_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
//
// DeliveryNoteOut_VC
//
}
#endregion
}
}
@@ -0,0 +1,53 @@
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Xpo;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class DeliveryNoteOut_VC : ViewController
{
public DeliveryNoteOut_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aPrintSelectedDeliveryNoteOuts_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
DeliveryNoteOutHeader _DeliveryNoteOutHeader = View.SelectedObjects[0] as DeliveryNoteOutHeader;
if (_DeliveryNoteOutHeader.DeliveryNoteOutType.ReportDataV2!=null)
{
XAFPrintHelper _XAFPrintHelper = new XAFPrintHelper(_ocur, Frame, _DeliveryNoteOutHeader.DeliveryNoteOutType.ReportDataV2, CriteriaOperator.Parse("DeliveryNoteOutHeader.Oid=?", _DeliveryNoteOutHeader.Oid));
_XAFPrintHelper.ShowPreviewV2PDF();
//XtraReport report = ReportDataProvider.ReportsStorage.LoadReport(_DeliveryNoteOutHeader.DeliveryNoteOutType.ReportDataV2);
//var dataSource = (DevExpress.Persistent.Base.ReportsV2.ISupportCriteria)report.DataSource;
//dataSource.Criteria = CriteriaOperator.Parse("DeliveryNoteOutHeader.Oid=?", _DeliveryNoteOutHeader.Oid);
//Frame.GetController<ReportServiceController>().SetupBeforePrint(report, null, null, false, null, false);
//report.ShowPreview();
}
}
}
}
@@ -0,0 +1,123 @@
<?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="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
@@ -0,0 +1,40 @@
namespace Nuvolar.Module.Controllers
{
partial class InvoiceHeader_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
//
// InvoiceHeader_VC
//
}
#endregion
}
}
@@ -0,0 +1,102 @@
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Xpo;
using DevExpress.Persistent.BaseImpl;
using DevExpress.ExpressApp.ReportsV2;
using System.Windows.Forms;
using DevExpress.XtraReports.UI;
using System.Diagnostics;
using DevExpress.XtraReports;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class InvoiceHeader_VC : ViewController
{
public InvoiceHeader_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aPrintSelectedInvoicesV2_Execute(object sender, SimpleActionExecuteEventArgs e)
{
//var stopwatch = new Stopwatch();
//stopwatch.Start();
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
InvoiceHeader _InvoiceHeader = View.SelectedObjects[0] as InvoiceHeader;
IReportDataV2 reportData = _ocur.FindObject<ReportDataV2>(CriteriaOperator.Parse("[DisplayName] = 'Kimenő számla'"));
string handle = ReportDataProvider.ReportsStorage.GetReportContainerHandle(reportData);
Frame.GetController<ReportServiceController>().ShowPreview(handle,CriteriaOperator.Parse("InvoiceHeader.Oid=?",_InvoiceHeader.Oid));
//stopwatch.Stop();
//long elapsed_time = stopwatch.ElapsedMilliseconds;
//MessageBox.Show(elapsed_time.ToString("#,##0.00"), "Time", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
private void aPrintSelectedInvoicesV2V_Execute(object sender, SimpleActionExecuteEventArgs e)
{
Debug.WriteLine("============ REPORT START ===========================================================================");
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
InvoiceHeader _InvoiceHeader = View.SelectedObjects[0] as InvoiceHeader;
IReportDataV2 reportData = _ocur.FindObject<ReportDataV2>(CriteriaOperator.Parse("[DisplayName] = 'Kimenő számla'"));
XtraReport report = ReportDataProvider.ReportsStorage.LoadReport(reportData);
var dataSource = (DevExpress.Persistent.Base.ReportsV2.ISupportCriteria)report.DataSource;
dataSource.Criteria = CriteriaOperator.Parse("InvoiceHeader.Oid=? and InvoiceHeader.Customers.Oid=?", _InvoiceHeader.Oid,_InvoiceHeader.Customers.Oid);
string handle = ReportDataProvider.ReportsStorage.GetReportContainerHandle(reportData);
//Frame.GetController<ReportServiceController>().SetupBeforePrint(report, null, CriteriaOperator.Parse("InvoiceHeader.Oid=?", _InvoiceHeader.Oid), true, null, false);
Frame.GetController<ReportServiceController>().SetupBeforePrint(report, null,null , false, null, false);
//report.PrintDialog();
report.ShowPreview();
Debug.WriteLine("============ REPORT STOP ===========================================================================");
}
private void aPrintSelectedInvoicesV2PDF_Execute(object sender, SimpleActionExecuteEventArgs e)
{
Debug.WriteLine("============ REPORT START ===========================================================================");
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
InvoiceHeader _InvoiceHeader = View.SelectedObjects[0] as InvoiceHeader;
//IReportDataV2 reportData = _ocur.FindObject<ReportDataV2>(CriteriaOperator.Parse("[DisplayName] = 'Kimenő számla'"));
//XtraReport report = ReportDataProvider.ReportsStorage.LoadReport(reportData);
Nuvolar.Module.ReportV2.Report_Invoice _RI=new Nuvolar.Module.ReportV2.Report_Invoice();
//ReportPrintTool _PrintTool = new ReportPrintTool(_RI as IReport);
//string handle = ReportDataProvider.ReportsStorage.GetReportContainerHandle(reportData);
//Frame.GetController<ReportServiceController>().ShowPreview(handle, CriteriaOperator.Parse("InvoiceHeader.Oid=?", _InvoiceHeader.Oid));
_RI.FilterString = CriteriaOperator.Parse("InvoiceHeader=?", _InvoiceHeader.Oid).ToString();
//var dataSource = (DevExpress.Persistent.Base.ReportsV2.ISupportCriteria)_RI.DataSource;
Frame.GetController<ReportServiceController>().SetupBeforePrint(_RI, null, CriteriaOperator.Parse("InvoiceHeader=?",_InvoiceHeader.Oid), true, null, false);
_RI.ShowPreview();
Debug.WriteLine("============ REPORT STOP ===========================================================================");
//_RI.DataSource=_ocur.Session.da
//(_RI.DataSource as DevExpress.DataAccess.Sql.SqlDataSource).Connection.ConnectionString = _ocur.Session.ConnectionString;
//_RI.ExportToPdf(@"c:\temp\kutya.pdf");
//Process.Start(@"c:\temp\kutya.pdf");
}
}
}
@@ -0,0 +1,123 @@
<?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="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
@@ -0,0 +1,54 @@
namespace Nuvolar.Module
{
partial class NavInvoiceReportVC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aCreateNAVInvoiceReportXML = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aCreateNAVInvoiceReportXML
//
this.aCreateNAVInvoiceReportXML.ActionMeaning = DevExpress.ExpressApp.Actions.ActionMeaning.Accept;
this.aCreateNAVInvoiceReportXML.Caption = "aCreate NAVInvoice Report XML";
this.aCreateNAVInvoiceReportXML.ConfirmationMessage = "aCreateNAVInvoiceReportXML";
this.aCreateNAVInvoiceReportXML.Id = "aCreateNAVInvoiceReportXML";
this.aCreateNAVInvoiceReportXML.TargetObjectType = typeof(Nuvolar.Module.NAVInvoiceReport);
this.aCreateNAVInvoiceReportXML.ToolTip = null;
this.aCreateNAVInvoiceReportXML.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aCreateNAVInvoiceReportXML_Execute);
//
// NavInvoiceReportVC
//
this.Actions.Add(this.aCreateNAVInvoiceReportXML);
}
#endregion
private DevExpress.ExpressApp.Actions.SimpleAction aCreateNAVInvoiceReportXML;
}
}
@@ -0,0 +1,204 @@
using System;
using System.Linq;
using DevExpress.ExpressApp;
using System.Collections.Generic;
using DevExpress.ExpressApp.Actions;
using DevExpress.Persistent.Validation;
using System.Xml;
using DevExpress.Xpo;
using DevExpress.ExpressApp.Xpo;
using DevExpress.Data.Filtering;
using Nuvolar.Module;
using System.Globalization;
using System.Windows.Forms;
namespace Nuvolar.Module
{
// For more typical usage scenarios, be sure to check out http://documentation.devexpress.com/#Xaf/clsDevExpressExpressAppViewControllertopic.
public partial class NavInvoiceReportVC : ViewController
{
public NavInvoiceReportVC()
{
InitializeComponent();
RegisterActions(components);
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aCreateNAVInvoiceReportXML_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
NAVInvoiceReport _NAVInvoiceReport = (NAVInvoiceReport)View.SelectedObjects[0];
//Kritéria a törzsbõl
System.String _Criteria=" IsEditable=false and IsProforma=false and DocumentNumber!='' and IsNull(DocumentNumber)=false";
if (string.IsNullOrEmpty(_NAVInvoiceReport.DocumentNumberFrom)==false & string.IsNullOrEmpty(_NAVInvoiceReport.DocumentNumberTo)==false)
{
_Criteria += string.Format(" and (DocumentNumber>='{0}' and DocumentNumber <='{1}')", _NAVInvoiceReport.DocumentNumberFrom, _NAVInvoiceReport.DocumentNumberTo);
}
_Criteria += " and (GetDate(DateCreated)>=? and GetDate(DateCreated)<=?)";
XPCollection<InvoiceHeader> _InvoiceHeader_Collection = new XPCollection<InvoiceHeader>(_onew.Session, CriteriaOperator.Parse(_Criteria, _NAVInvoiceReport.FromDate, _NAVInvoiceReport.ToDate));
_InvoiceHeader_Collection.Sorting.Add(new SortProperty("DateCreated", DevExpress.Xpo.DB.SortingDirection.Ascending));
System.String _Filename = string.Format(@"NR{0:yyyyMMddHHmm}.xml", System.DateTime.Now);
if (Validator.RuleSet.ValidateAll(View.ObjectSpace, View.SelectedObjects, DefaultContexts.Save))
{
XmlWriterSettings settings = new XmlWriterSettings() { Indent = true, NewLineOnAttributes = true };
using (XmlWriter writer = XmlWriter.Create(string.Format(@"{0}\{1}",_NAVInvoiceReport.OutputPath,_Filename), settings))
{
writer.WriteStartDocument();
writer.WriteStartElement("szamlak", @"http://schemas.nav.gov.hu/2013/szamla");
writer.WriteElementString("export_datuma", DateTime.Now.ToString(@"yyyy-MM-dd"));
writer.WriteElementString("export_szla_db", _InvoiceHeader_Collection.Count.ToString());
writer.WriteElementString("kezdo_ido", _NAVInvoiceReport.FromDate.ToString(@"yyyy-MM-dd"));
writer.WriteElementString("zaro_ido", _NAVInvoiceReport.ToDate.ToString(@"yyyy-MM-dd"));
writer.WriteElementString("kezdo_szamlaszam", _NAVInvoiceReport.DocumentNumberFrom);
writer.WriteElementString("zaro_szamlaszam", _NAVInvoiceReport.DocumentNumberTo);
foreach (InvoiceHeader _InvoiceHeader in _InvoiceHeader_Collection)
{
writer.WriteStartElement("szamla");
writer.WriteStartElement("fejlec");
writer.WriteElementString("szlasorszam", _InvoiceHeader.DocumentNumber);
writer.WriteElementString("szlatipus", "1");
writer.WriteElementString("szladatum", _InvoiceHeader.DateCreated.ToString(@"yyyy-MM-dd"));
writer.WriteElementString("teljdatum", _InvoiceHeader.DateExecution.ToString(@"yyyy-MM-dd"));
writer.WriteEndElement();//fejlec
writer.WriteStartElement("szamlakibocsato");
writer.WriteElementString("adoszam", _InvoiceHeader.Saved_CustomersFrom_VATNumber);
writer.WriteElementString("kisadozo", "false");
writer.WriteElementString("nev", _InvoiceHeader.Saved_CustomersFrom_Name);
writer.WriteStartElement("cim");
writer.WriteElementString("iranyitoszam", _InvoiceHeader.Saved_CustomersFrom_Address_ZipPostal);
writer.WriteElementString("telepules", _InvoiceHeader.Saved_CustomersFrom_Address_City);
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NameOfStreet") != null)
{ writer.WriteElementString("kozterulet_neve", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NameOfStreet").ToString()); }
else
{ writer.WriteElementString("kozterulet_neve", _InvoiceHeader.Saved_CustomersFrom_Address_Street); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("District") != null) { writer.WriteElementString("kerulet", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("District").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("TypeOfStreet") != null) { writer.WriteElementString("kozterulet_jellege", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("TypeOfStreet").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NumberOfStreet") != null) { writer.WriteElementString("hazszam", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NumberOfStreet").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("Building") != null) { writer.WriteElementString("epulet", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("Building").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("StairCase") != null) { writer.WriteElementString("lepcsohaz", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("StairCase").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("Floor") != null) { writer.WriteElementString("szint", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("Floor").ToString()); }
if (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NumberOfDoor") != null) { writer.WriteElementString("ajto", _InvoiceHeader.CustomersFrom.Address1.GetMemberValue("NumberOfDoor").ToString()); }
//writer.WriteElementString("kerulet", (_InvoiceHeader.CustomersFrom.Address1.GetMemberValue("District") ?? "").ToString());
writer.WriteElementString("egyeni_vallalkozo", "");
writer.WriteElementString("ev_nyilv_tart_szam", "");
writer.WriteElementString("ev_neve", "");
writer.WriteEndElement();//cim
writer.WriteEndElement();//szamlakibocsato
writer.WriteStartElement("vevo");
writer.WriteElementString("nev", _InvoiceHeader.Saved_Customers_Name);
writer.WriteStartElement("cim");
writer.WriteElementString("iranyitoszam", _InvoiceHeader.Saved_Customers_Address_ZipPostal);
writer.WriteElementString("telepules", _InvoiceHeader.Saved_Customers_Address_City);
if (_InvoiceHeader.Customers.Address1.GetMemberValue("NameOfStreet") != null)
{ writer.WriteElementString("kozterulet_neve", _InvoiceHeader.Customers.Address1.GetMemberValue("NameOfStreet").ToString()); }
else
{ writer.WriteElementString("kozterulet_neve", _InvoiceHeader.Saved_Customers_Address_Street); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("District") != null) { writer.WriteElementString("kerulet", _InvoiceHeader.Customers.Address1.GetMemberValue("District").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("TypeOfStreet") != null) { writer.WriteElementString("kozterulet_jellege", _InvoiceHeader.Customers.Address1.GetMemberValue("TypeOfStreet").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("NumberOfStreet") != null) { writer.WriteElementString("hazszam", _InvoiceHeader.Customers.Address1.GetMemberValue("NumberOfStreet").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("Building") != null) { writer.WriteElementString("epulet", _InvoiceHeader.Customers.Address1.GetMemberValue("Building").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("StairCase") != null) { writer.WriteElementString("lepcsohaz", _InvoiceHeader.Customers.Address1.GetMemberValue("StairCase").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("Floor") != null) { writer.WriteElementString("szint", _InvoiceHeader.Customers.Address1.GetMemberValue("Floor").ToString()); }
if (_InvoiceHeader.Customers.Address1.GetMemberValue("NumberOfDoor") != null) { writer.WriteElementString("ajto", _InvoiceHeader.Customers.Address1.GetMemberValue("NumberOfDoor").ToString()); }
writer.WriteEndElement();//cim
writer.WriteEndElement();//vevo
foreach (InvoiceRows _InvoiceRows in _InvoiceHeader.InvoiceRows)
{
writer.WriteStartElement("termek_szolgaltatas_tetelek");
writer.WriteElementString("termeknev", _InvoiceRows.ShortName);
writer.WriteElementString("menny", _InvoiceRows.QTT.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("mertekegys", _InvoiceRows.Units.ShortName);
writer.WriteElementString("nettoar", _InvoiceRows.SumPriceHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("nettoegysar", _InvoiceRows.ListPriceHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("adokulcs", _InvoiceRows.VAT.KeyValue.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("adoertek", (_InvoiceRows.SumPriceBruttoHUF - _InvoiceRows.SumPriceHUF).ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("bruttoar", _InvoiceRows.SumPriceBruttoHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteEndElement();//termek_szolgaltatas_tetelek
}
writer.WriteStartElement("zaradekok");
writer.WriteElementString("adoment_hiv", "false");
writer.WriteEndElement(); //zaradekok
writer.WriteStartElement("nem_kotelezo");
writer.WriteElementString("fiz_hatarido", _InvoiceHeader.DatePayment.ToString(@"yyyy-MM-dd"));
writer.WriteElementString("fiz_mod", _InvoiceHeader.PaymentOption.ShortName);
writer.WriteElementString("penznem", _InvoiceHeader.CurrencyName.ShortName);
writer.WriteEndElement(); //nem_kotelezo
writer.WriteStartElement("osszesites");
foreach (InvoiceVATRows _InvoiceVATRows in _InvoiceHeader.InvoiceVATRows)
{
writer.WriteStartElement("afarovat");
writer.WriteElementString("nettoar", _InvoiceVATRows.AmountNettoHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("adokulcs", _InvoiceVATRows.VAT.KeyValue.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("adoertek", _InvoiceVATRows.AmountVATHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("bruttoar", _InvoiceVATRows.AmountBruttoHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteEndElement(); //afarovat
}
writer.WriteStartElement("vegosszeg");
writer.WriteElementString("nettoarossz", _InvoiceHeader.TotalNettoHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("afaertekossz", _InvoiceHeader.TotalVATHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteElementString("bruttoarossz", _InvoiceHeader.TotalBruttoHUF.ToString("F", CultureInfo.InvariantCulture));
writer.WriteEndElement(); //vegosszeg
writer.WriteEndElement(); //osszesites
writer.WriteEndElement(); //szamla
}
writer.WriteEndElement();
writer.WriteEndDocument();
MessageBox.Show(string.Format("A letöltés befejezõdött !\nA fájl a következõ helyen :\n{0}", string.Format(@"{0}\{1}", _NAVInvoiceReport.OutputPath, _Filename)), "Adatletöltés állapota", MessageBoxButtons.OK);
}
}
}
private void simpleAction1_Execute(object sender, SimpleActionExecuteEventArgs e)
{
DevExpress.ExpressApp.Reports.Win.ReportsController _ReportsController = Frame.GetController<DevExpress.ExpressApp.Reports.Win.ReportsController>();
_ReportsController.ShowReportDesignerAction.DoExecute();
}
}
}
@@ -0,0 +1,126 @@
<?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="aCreateNAVInvoiceReportXML.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>146, 17</value>
</metadata>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>
+107
View File
@@ -0,0 +1,107 @@
namespace Nuvolar.Module.Controllers
{
partial class OrderIn_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aMoveOrderIn = new DevExpress.ExpressApp.Actions.PopupWindowShowAction(this.components);
this.aOrderInStorageOut = new DevExpress.ExpressApp.Actions.PopupWindowShowAction(this.components);
this.aMoveOrderInBack = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
this.aDeliveryNoteOutPrint_Divided = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aMoveOrderIn
//
this.aMoveOrderIn.AcceptButtonCaption = null;
this.aMoveOrderIn.CancelButtonCaption = null;
this.aMoveOrderIn.Caption = "aMove Order In";
this.aMoveOrderIn.Category = "";
this.aMoveOrderIn.ConfirmationMessage = null;
this.aMoveOrderIn.Id = "aMoveOrderIn";
this.aMoveOrderIn.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject;
this.aMoveOrderIn.TargetObjectType = typeof(Nuvolar.Module.OrderInHeader);
this.aMoveOrderIn.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root;
this.aMoveOrderIn.TargetViewType = DevExpress.ExpressApp.ViewType.DetailView;
this.aMoveOrderIn.ToolTip = null;
this.aMoveOrderIn.TypeOfView = typeof(DevExpress.ExpressApp.DetailView);
this.aMoveOrderIn.CustomizePopupWindowParams += new DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventHandler(this.aMoveOrderIn_CustomizePopupWindowParams);
this.aMoveOrderIn.Execute += new DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventHandler(this.aMoveOrderIn_Execute);
//
// aOrderInStorageOut
//
this.aOrderInStorageOut.AcceptButtonCaption = null;
this.aOrderInStorageOut.CancelButtonCaption = null;
this.aOrderInStorageOut.Caption = "aOrder In Storage Out";
this.aOrderInStorageOut.Category = "aOrderInStorageOut";
this.aOrderInStorageOut.ConfirmationMessage = null;
this.aOrderInStorageOut.Id = "aOrderInStorageOut";
this.aOrderInStorageOut.TargetObjectType = typeof(Nuvolar.Module.OrderInHeader);
this.aOrderInStorageOut.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root;
this.aOrderInStorageOut.TargetViewType = DevExpress.ExpressApp.ViewType.DetailView;
this.aOrderInStorageOut.ToolTip = null;
this.aOrderInStorageOut.TypeOfView = typeof(DevExpress.ExpressApp.DetailView);
this.aOrderInStorageOut.CustomizePopupWindowParams += new DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventHandler(this.aOrderInStorageOut_CustomizePopupWindowParams);
this.aOrderInStorageOut.Execute += new DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventHandler(this.aOrderInStorageOut_Execute);
//
// aMoveOrderInBack
//
this.aMoveOrderInBack.Caption = "aMove Order In Back";
this.aMoveOrderInBack.ConfirmationMessage = "Are you sure ?";
this.aMoveOrderInBack.Id = "aMoveOrderInBack";
this.aMoveOrderInBack.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject;
this.aMoveOrderInBack.TargetObjectType = typeof(Nuvolar.Module.OrderInRows);
this.aMoveOrderInBack.ToolTip = null;
this.aMoveOrderInBack.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aMoveOrderInBack_Execute);
//
// aDeliveryNoteOutPrint_Divided
//
this.aDeliveryNoteOutPrint_Divided.Caption = "aDeliveryNoteOutPrint_Divided";
this.aDeliveryNoteOutPrint_Divided.Category = "View";
this.aDeliveryNoteOutPrint_Divided.ConfirmationMessage = null;
this.aDeliveryNoteOutPrint_Divided.Id = "aDeliveryNoteOutPrint_Divided";
this.aDeliveryNoteOutPrint_Divided.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireSingleObject;
this.aDeliveryNoteOutPrint_Divided.TargetObjectType = typeof(Nuvolar.Module.DeliveryNoteOutRows);
this.aDeliveryNoteOutPrint_Divided.ToolTip = null;
this.aDeliveryNoteOutPrint_Divided.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aDeliveryNoteOutPrint_Divided_Execute);
//
// OrderIn_VC
//
this.Actions.Add(this.aMoveOrderIn);
this.Actions.Add(this.aOrderInStorageOut);
this.Actions.Add(this.aMoveOrderInBack);
this.Actions.Add(this.aDeliveryNoteOutPrint_Divided);
}
#endregion
private DevExpress.ExpressApp.Actions.PopupWindowShowAction aMoveOrderIn;
private DevExpress.ExpressApp.Actions.PopupWindowShowAction aOrderInStorageOut;
private DevExpress.ExpressApp.Actions.SimpleAction aMoveOrderInBack;
internal DevExpress.ExpressApp.Actions.SimpleAction aDeliveryNoteOutPrint_Divided;
}
}
@@ -0,0 +1,541 @@
using System;
using System.Linq;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.SystemModule;
using DevExpress.ExpressApp.Utils;
using DevExpress.ExpressApp.Xpo;
using Nuvolar.Module.BusinessObjects.Popup;
using DevExpress.Xpo;
using DevExpress.Persistent.BaseImpl;
using System.Collections;
//using System.Windows.Forms;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class OrderIn_VC : ViewController
{
public OrderIn_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aMoveOrderIn_Execute(object sender, PopupWindowShowActionExecuteEventArgs e)
{
//XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
XPObjectSpace _onew = View.ObjectSpace as XPObjectSpace;
OrderInMovePopup _OrderInMovePopup = (OrderInMovePopup)e.PopupWindow.View.SelectedObjects[0];
Guid _GUID=Guid.Empty;
if (_OrderInMovePopup.OrderInHeaderTo == null)
{
return;
}
foreach (StorageOutRowsInRows _StorageOutRowsInRows in _OrderInMovePopup.StorageOutRowsInRows)
{
if (_StorageOutRowsInRows.QTT_Will > 0 && _StorageOutRowsInRows.QTT_Will<=_StorageOutRowsInRows.QTT)
{
if (_StorageOutRowsInRows.StorageOutRows.OrderInRows.DividedOriginal == 0)
{
_StorageOutRowsInRows.StorageOutRows.OrderInRows.DividedOriginal = 1;
_GUID = Guid.NewGuid();
_StorageOutRowsInRows.StorageOutRows.OrderInRows.DividedGUID = _GUID;
}
else
{
_GUID = _StorageOutRowsInRows.StorageOutRows.OrderInRows.DividedGUID;
}
_StorageOutRowsInRows.StorageOutRows.OrderInRows.QTT-= _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRows.StorageOutRows.OrderInRows.QTT_DeliveryNoted-= _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRows.StorageOutRows.OrderInRows.QTT_Storaged-= _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRows.QTT -= _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRows.QTT_To_DeliveryOut -= _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRows.DividedGUID = _GUID;
if (_StorageOutRowsInRows.DividedOriginal==0) {_StorageOutRowsInRows.DividedOriginal = 1; _StorageOutRowsInRows.DividedGUID = _GUID; }
if (_StorageOutRowsInRows.StorageOutRows.DividedOriginal == 0) { _StorageOutRowsInRows.StorageOutRows.DividedOriginal = 1; _StorageOutRowsInRows.StorageOutRows.DividedGUID = _GUID; }
OrderInRows _OrderInRows = _onew.GetObject(_StorageOutRowsInRows.StorageOutRows.OrderInRows);
OrderInRows _OrderInRowsNew = _onew.CreateObject<OrderInRows>();
_OrderInRowsNew.DividedOriginal = 2;
_OrderInRowsNew.DividedGUID = _GUID;
_OrderInRowsNew.APCSheetByProducts = _OrderInRows.APCSheetByProducts;
_OrderInRowsNew.Description = _OrderInRows.Description;
_OrderInRowsNew.DescriptionPrivate = _OrderInRows.DescriptionPrivate;
_OrderInRowsNew.DiscountPriceDEV = _OrderInRows.DiscountPriceDEV;
_OrderInRowsNew.DiscountPriceHUF = _OrderInRows.DiscountPriceHUF;
_OrderInRowsNew.ListPriceDEV = _OrderInRows.ListPriceDEV;
_OrderInRowsNew.ListPriceHUF = _OrderInRows.ListPriceHUF;
_OrderInRowsNew.ListPriceOriginalHUF = _OrderInRows.ListPriceOriginalHUF;
_OrderInRowsNew.OrderInHeader = _onew.GetObject(_OrderInMovePopup.OrderInHeaderTo);
_OrderInRowsNew.Products = _OrderInRows.Products;
_OrderInRowsNew.QTT = _StorageOutRowsInRows.QTT_Will;
_OrderInRowsNew.QTT_DeliveryNoted = _StorageOutRowsInRows.QTT_Will;
_OrderInRowsNew.QTT_Invoiced = 0;
_OrderInRowsNew.QTT_Process = 0;
_OrderInRowsNew.QTT_Storaged = _StorageOutRowsInRows.QTT_Will;
_OrderInRowsNew.QTT_To = 0;
_OrderInRowsNew.QualityOption = _OrderInRows.QualityOption;
_OrderInRowsNew.RowGroup1 = _OrderInRows.RowGroup1;
_OrderInRowsNew.RowGroup2 = _OrderInRows.RowGroup2;
_OrderInRowsNew.RowIndex = 0;
_OrderInRowsNew.VAT = _OrderInRows.VAT;
StorageOutRows _StorageOutRows = _onew.GetObject(_StorageOutRowsInRows.StorageOutRows);
StorageOutRows _StorageOutRowsNew = _onew.CreateObject<StorageOutRows>();
_StorageOutRowsNew.StorageOutHeader = _StorageOutRows.StorageOutHeader;
_StorageOutRowsNew.OrderInRows = _OrderInRowsNew;
_StorageOutRowsNew.Products = _StorageOutRows.Products;
_StorageOutRowsNew.QTT = _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsNew.QTT_To_DeliveryOut = _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsNew.QTT_Will = 0;
_StorageOutRowsNew.RowIndex = 0;
_StorageOutRowsNew.StorageComputed = _StorageOutRows.StorageComputed;
_StorageOutRowsNew.StorageOutHeader = _StorageOutRows.StorageOutHeader;
_StorageOutRowsNew.DividedGUID = _GUID;
_StorageOutRowsNew.DividedOriginal = 2;
StorageOutRowsInRows _StorageOutRowsInRowsNew = _onew.CreateObject<StorageOutRowsInRows>();
_StorageOutRowsInRowsNew.StorageOutRows = _StorageOutRowsNew;
_StorageOutRowsInRowsNew.QTT = _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRowsNew.QTT_To_DeliveryOut = _StorageOutRowsInRows.QTT_Will;
_StorageOutRowsInRowsNew.QTT_Will = 0;
_StorageOutRowsInRowsNew.RowIndex = 0;
_StorageOutRowsInRowsNew.StorageInRows = _onew.GetObject(_StorageOutRowsInRows.StorageInRows);
_StorageOutRowsInRowsNew.DividedGUID = _GUID;
_StorageOutRowsInRowsNew.DividedOriginal = 2;
DeliveryNoteOutRows _DeliveryNoteOutRows = _onew.FindObject<DeliveryNoteOutRows>(CriteriaOperator.Parse("StorageOutRowsInRows.Oid=?",_StorageOutRowsInRows.Oid));
if (_DeliveryNoteOutRows!=null)
{
if (_DeliveryNoteOutRows.DividedOriginal == 0) { _DeliveryNoteOutRows.DividedOriginal = 1; _DeliveryNoteOutRows.DividedGUID = _GUID; }
_DeliveryNoteOutRows.QTT -= _StorageOutRowsInRows.QTT_Will;
DeliveryNoteOutRows _DeliveryNoteOutRowsNew = _onew.CreateObject<DeliveryNoteOutRows>();
_DeliveryNoteOutRowsNew.DeliveryNoteOutHeader = _onew.GetObject(_DeliveryNoteOutRows.DeliveryNoteOutHeader);
_DeliveryNoteOutRowsNew.Note = "";
_DeliveryNoteOutRowsNew.QTT = _StorageOutRowsInRows.QTT_Will;
_DeliveryNoteOutRowsNew.QTT_Invoiced = 0;
_DeliveryNoteOutRowsNew.QTT_Will = 0;
_DeliveryNoteOutRowsNew.RowIndex = 0;
_DeliveryNoteOutRowsNew.StorageOutRowsInRows = _StorageOutRowsInRowsNew;
_DeliveryNoteOutRowsNew.DividedGUID = _GUID;
_DeliveryNoteOutRowsNew.DividedOriginal = 2;
}
_onew.CommitChanges();
}
}
//Frame.GetController<RefreshController>().RefreshAction.DoExecute();
//View.Refresh();
}
private void aMoveOrderIn_CustomizePopupWindowParams(object sender, CustomizePopupWindowParamsEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
OrderInHeader _OrderInHeader = (OrderInHeader)View.SelectedObjects[0];
OrderInMovePopup _OrderInMovePopup = _onew.CreateObject<OrderInMovePopup>();
_onew.Session.ExecuteNonQuery("UPDATE StorageOutRowsInRows set DividedOriginal=0 WHERE DividedOriginal IS NULL");
_OrderInMovePopup.OrderInHeader = _onew.GetObject<OrderInHeader>(_OrderInHeader);
e.View = Application.CreateDetailView(_onew, "OrderInMovePopup_DetailView", true, _OrderInMovePopup);
}
private void aOrderInStorageOut_Execute(object sender, PopupWindowShowActionExecuteEventArgs e)
{
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
UnitOfWork _uow_lock = new UnitOfWork(_onew.Session.DataLayer);
User _User = _onew.GetObject(SecuritySystem.CurrentUser as User);
StorageComputed _StorageComputed;
try
{
//--==Ellenőrzések==--
//____________________________________________________________________________________________________________________
OrderInHeader _OrderInHeader = _onew.GetObjectByKey<OrderInHeader>((View.SelectedObjects[0] as OrderInHeader).Oid);
StorageSelectPopup _StorageSelectPopup = _onew.GetObject(e.PopupWindow.View.SelectedObjects[0] as StorageSelectPopup);
if (_OrderInHeader.OrderInRows.Count <= 0)
{
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\OrderInRows", "NoRowsInOrder"),
string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain"))));
}
ArrayList _OrderInRows_Collection = new ArrayList();
foreach (OrderInRows _OrderInRows in _OrderInHeader.OrderInRows)
{
if (_OrderInRows.QTT_Process > 0)
{
if (_OrderInRows.QTT_Process + _OrderInRows.QTT_Storaged + _OrderInRows.QTT_Storaged_Will > _OrderInRows.QTT)
{
//// Ha meghaladja a kitárolás a rendelteket
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\OrderInRows", "TooMutchQuantityInOrderIn"),
_OrderInRows.RowIndex.ToString() + string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain"))));
}
if (_OrderInRows.QTT_Process + _OrderInRows.QTT_DeliveryNoted > _OrderInRows.QTT)
{
//// Ha meghaladja a kiszállítás a rendelteket
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\OrderInRows", "TooMutchQuantityInOrderIn"),
_OrderInRows.RowIndex.ToString() + string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain"))));
}
//// Szabad készlet ellenőrzése
_StorageComputed = _onew.FindObject<StorageComputed>(CriteriaOperator.Parse("Storage.Oid=? AND Products.Oid=?", _StorageSelectPopup.Storage.Oid,
_OrderInRows.Products.Oid));
if (_StorageComputed == null)
{
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\StorageComputed", "NoProductsInStorage"),
_OrderInRows.RowIndex, _OrderInRows.Products.ShortName, _StorageSelectPopup.Storage.ShortName) + "\n" +
string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain")));
}
if ((_StorageComputed.QTTFree < _OrderInRows.QTT_Process))
{
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\StorageComputed", "NoProductsInStorage"),
_OrderInRows.RowIndex, _OrderInRows.Products.ShortName, _StorageSelectPopup.Storage.ShortName) + "\n" +
string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain")));
}
if (_StorageComputed != null)
{
//// Mimimum ár ellenőrzés
if ((Application.Model.Options as IModelOptionsExtender).RequreMinimumPriceCheck)
{
if (_StorageComputed.MimumumPriceOutHUF < _OrderInRows.FinalPriceHUF)
{
throw new Exception(string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\StorageComputed", "BadMinimumPrice"),
_OrderInRows.RowIndex, _OrderInRows.Products.ShortName, _StorageComputed.MimumumPriceOutHUF, _OrderInRows.FinalPriceHUF) + "\n" +
string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain")));
}
}
}
_OrderInRows_Collection.Add(_onew.GetObjectByKey<OrderInRows>(_OrderInRows.Oid));
}
}
if (_OrderInRows_Collection.Count == 0)
throw new Exception(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\OrderInRows", "NoSelectionforStorageOutandDeliveryNoteOut") + "\n" +
string.Format(CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions", "MsgBoxCheckItAgain")));
//--==Zárolás==--
//____________________________________________________________________________________________________________________
if (!LockingModule.LockObject(_uow_lock, typeof(StorageComputed), "-", _User))
{
LockingObject _LockingObject = _onew.FindObject<LockingObject>(CriteriaOperator.Parse("TableName=?", typeof(StorageComputed).Name + "-" + "-"));
string _Prompt = DevExpress.ExpressApp.Utils.CaptionHelper.GetLocalizedText("Exceptions\\NuvolarExceptions\\StorageComputed", "CanNotStorageInByLocking");
throw new Exception(string.Format(_Prompt, _LockingObject.User.FullName, _LockingObject.ObjectCreated));
return;
}
else
{
//--==Kitárolás==--
//____________________________________________________________________________________________________________________
StorageOutHeader _StorageOutHeader = new StorageOutHeader(_onew.Session);
_StorageOutHeader.Active = true;
_StorageOutHeader.CustomersFrom = _onew.GetObjectByKey<CustomersFrom>(_OrderInHeader.CustomersFrom.Oid);
_StorageOutHeader.Customers = _onew.GetObjectByKey<Customers>(_OrderInHeader.Customers.Oid);
_StorageOutHeader.StorageMoveType = _onew.GetObjectByKey<StorageMoveType>(_StorageSelectPopup.StorageMoveType.Oid);
_StorageOutHeader.Storage = _onew.GetObjectByKey<Storage>(_StorageSelectPopup.Storage.Oid);
foreach (OrderInRows _OrderInRows in _OrderInRows_Collection)
{
double _QTT_Mod = 0;
double _QTT_Free = 0;
double _QTT_ReservedOut = 0;
double _QTT_Will_Out = 0;
StorageOutRows _StorageOutRows = new StorageOutRows(_onew.Session);
_StorageOutRows.StorageOutHeader = _StorageOutHeader;
_StorageOutRows.Products = _onew.GetObjectByKey<Products>(_OrderInRows.Products.Oid);
_StorageOutRows.OrderInRows = _onew.GetObjectByKey<OrderInRows>(_OrderInRows.Oid);
XPCollection<StorageInRows> _StorageInRows_Collection = new XPCollection<StorageInRows>(PersistentCriteriaEvaluationBehavior.InTransaction,
_onew.Session, CriteriaOperator.Parse("StorageInHeader.Storage=? and StorageInHeader.IsEditable=False and StorageInHeader.IsStorno=False and Products=?",
_StorageOutHeader.Storage, _onew.GetObjectByKey<Products>(_OrderInRows.Products.Oid)));
_StorageInRows_Collection.Sorting.Add(new SortProperty("StorageInHeader.CreateDate", DevExpress.Xpo.DB.SortingDirection.Ascending));
_QTT_Mod = _OrderInRows.QTT_Process;
foreach (StorageInRows _StorageInRows in _StorageInRows_Collection)
{
_QTT_Free = _StorageInRows.QTT - _StorageInRows.QTT_Out - _StorageInRows.QTT_Out_Will;
if (_QTT_Free > 0)
{
if (_QTT_Free < _QTT_Mod)
{
_StorageInRows.QTT_Out_Will += _QTT_Free;
_StorageOutRows.QTT_Will += _QTT_Free;
_QTT_Mod -= _QTT_Free;
//------- FIFO sor beszúrása
StorageOutRowsInRows _StorageOutRowsInRows = _onew.FindObject<StorageOutRowsInRows>(CriteriaOperator.Parse("StorageInRows=? and StorageOutRows=?", _StorageInRows, _StorageOutRows), true);
if (_StorageOutRowsInRows != null)
{
_StorageOutRowsInRows.QTT += _QTT_Free;
}
else
{
_StorageOutRowsInRows = new StorageOutRowsInRows(_onew.Session);
_StorageOutRowsInRows.StorageInRows = _StorageInRows;
_StorageOutRowsInRows.StorageOutRows = _StorageOutRows;
_StorageOutRowsInRows.QTT = _QTT_Free;
}
}
else
{
_StorageInRows.QTT_Out_Will += _QTT_Mod;
_StorageOutRows.QTT_Will += _QTT_Mod;
//------- FIFO sor beszúrása
StorageOutRowsInRows _StorageOutRowsInRows = _onew.FindObject<StorageOutRowsInRows>(CriteriaOperator.Parse("StorageInRows=? and StorageOutRows=?", _StorageInRows, _StorageOutRows), true);
if (_StorageOutRowsInRows != null)
{
_StorageOutRowsInRows.QTT += _QTT_Mod;
}
else
{
_StorageOutRowsInRows = new StorageOutRowsInRows(_onew.Session);
_StorageOutRowsInRows.StorageInRows = _StorageInRows;
_StorageOutRowsInRows.StorageOutRows = _StorageOutRows;
_StorageOutRowsInRows.QTT = _QTT_Mod;
}
break; // TODO: might not be correct. Was : Exit For
}
}
}
_StorageOutRows.RowIndex = _StorageOutHeader.StorageOutRows.Count;
_StorageComputed = _onew.FindObject<StorageComputed>(CriteriaOperator.Parse("Storage=? and Products=?", _StorageOutHeader.Storage,
_onew.GetObjectByKey<Products>(_OrderInRows.Products.Oid)), true);
_QTT_ReservedOut = _StorageComputed.QTTReservedOut;
XPCollection<StorageOutRows> _StorageOutRows_Collection_R = new XPCollection<StorageOutRows>(PersistentCriteriaEvaluationBehavior.InTransaction,
_onew.Session, CriteriaOperator.Parse("QTT_Will>0 and StorageOutHeader.Storage=? and Products=?", _StorageOutHeader.Storage,
_onew.GetObjectByKey<Products>(_OrderInRows.Products.Oid)));
foreach (StorageOutRows _StorageOutRows_R in _StorageOutRows_Collection_R)
{
_QTT_Will_Out += _StorageOutRows_R.QTT_Will;
}
_StorageComputed.QTTFree = _StorageComputed.QTTFree - (_QTT_Will_Out - _QTT_ReservedOut);
_StorageComputed.QTTReservedOut = _QTT_Will_Out;
}
//--Kitárolás véglegesítése--
//____________________________________________________________________________________________________________________
foreach (StorageOutRows _StorageOutRows in _StorageOutHeader.StorageOutRows)
{
XPCollection<StorageOutRowsInRows> _StorageOutRowsInRows_Collection = new XPCollection<StorageOutRowsInRows>(PersistentCriteriaEvaluationBehavior.InTransaction, _onew.Session, CriteriaOperator.Parse("StorageOutRows=?", _StorageOutRows));
foreach (StorageOutRowsInRows _StorageOutRowsInRows in _StorageOutRowsInRows_Collection)
{
if (_StorageOutRowsInRows.QTT > 0)
{
XPCollection<StorageMoveEvents> _StorageMoveEvents_Collection = new XPCollection<StorageMoveEvents>(PersistentCriteriaEvaluationBehavior.InTransaction, _onew.Session, CriteriaOperator.Parse("StorageInRows=?", _StorageOutRowsInRows.StorageInRows));
_StorageMoveEvents_Collection.Sorting.Add(new SortProperty("ObjectCreated", DevExpress.Xpo.DB.SortingDirection.Descending));
_StorageOutRowsInRows.StorageInRows.QTT_Out += _StorageOutRowsInRows.QTT;
_StorageOutRowsInRows.StorageInRows.QTT_Out_Will -= _StorageOutRowsInRows.QTT;
StorageMoveEvents _StorageMoveEvents = new StorageMoveEvents(_onew.Session);
_StorageMoveEvents.StorageInRows = _StorageOutRowsInRows.StorageInRows;
_StorageMoveEvents.StorageOutRows = _StorageOutRowsInRows.StorageOutRows;
if (_StorageMoveEvents_Collection.Count > 0)
{
_StorageMoveEvents.QTT_Free_Before = _StorageMoveEvents_Collection[0].QTT_Free_After;
}
else
{
_StorageMoveEvents.QTT_Free_Before = 0;
}
_StorageMoveEvents.QTT = (-1) * _StorageOutRowsInRows.QTT;
_StorageMoveEvents.QTT_Free_After = _StorageMoveEvents.QTT_Free_Before + _StorageMoveEvents.QTT;
_StorageMoveEvents.MoveEventsType = eMoveEventsType.StorageOutFinal;
_StorageMoveEvents.ExecutionDate = _StorageOutRowsInRows.StorageOutRows.StorageOutHeader.CreateDate;
}
}
_StorageOutRows.QTT += _StorageOutRows.QTT_Will;
if (_StorageOutRows.OrderInRows != null)
{
double _QTT_WillOrug = _StorageOutRows.QTT_Will;
OrderInRows _OrderInRows = _onew.GetObjectByKey<OrderInRows>(_StorageOutRows.OrderInRows.Oid);
_OrderInRows.QTT_Storaged += _StorageOutRows.QTT_Will;
_OrderInRows.QTT_Process = 0;
}
_StorageComputed = _onew.FindObject<StorageComputed>(CriteriaOperator.Parse("Products=? and Storage=?", _StorageOutRows.Products, _StorageOutRows.StorageOutHeader.Storage), true);
_StorageComputed.QTTReservedOut -= _StorageOutRows.QTT_Will;
_StorageOutRows.QTT_Will = 0;
}
_StorageOutHeader.IsEditable = false;
_StorageOutHeader.IsFinalized = true;
_onew.CommitChanges();
Frame.GetController<RefreshController>().RefreshAction.DoExecute();
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
LockingModule.UnLockObject(_uow_lock, typeof(StorageComputed), "-", _User);
}
}
private void aOrderInStorageOut_CustomizePopupWindowParams(object sender, CustomizePopupWindowParamsEventArgs e)
{
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
OrderInHeader _OrderInHeader = View.SelectedObjects[0] as OrderInHeader;
StorageSelectPopup _StorageSelectPopup = _onew.CreateObject<StorageSelectPopup>();
e.View = Application.CreateDetailView(_onew, "StorageSelectPopup_DetailView", false, _StorageSelectPopup);
}
private void aMoveOrderInBack_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
OrderInRows _OrderInRows = View.SelectedObjects[0] as OrderInRows;
UnitOfWork _uow = new UnitOfWork(_onew.Session.DataLayer);
if (_OrderInRows!=null && _OrderInRows.DividedOriginal==1)
{
Guid _GUID = _OrderInRows.DividedGUID;
double _QTT = _OrderInRows.QTT;
string _SQL = "";
// s.ExecuteNonQuery("UPDATE Products SET ProductName='a_'+ProductName WHERE UnitPrice>@price AND ProductName LIKE 'A%'", new string[] { "@price" }, new object[] { 10 });
// StorageOutRowsInRows
try
{
string[] _stringparam = null;
object[] _objectparam = null;
_uow.ExplicitBeginTransaction();
XPQuery<StorageOutRowsInRows> _StorageOutRowsInRows_Q = new XPQuery<StorageOutRowsInRows>(_uow, true);
var query = from q in _StorageOutRowsInRows_Q
where q.DividedGUID == _GUID
group q by q.StorageInRows into g
select new { a = g.Key.Oid, s = g.Sum(x => x.QTT) };
foreach (var item in query)
{
_SQL = "UPDATE StorageOutRowsInRows set QTT=@QTT,QTT_To_DeliveryOut=@QTT WHERE StorageInRows=@StorageInRows AND DividedGUID=@DividedGUID AND DividedOriginal=1";
_stringparam = new string[] { "@QTT", "@StorageInRows", "@DividedGUID" };
_objectparam = new object[] { item.s, item.a, _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
}
XPQuery<StorageOutRows> _StorageOutRows_Q = new XPQuery<StorageOutRows>(_uow, true);
var query2 = from q in _StorageOutRows_Q
where q.DividedGUID == _GUID
group q by q.DividedGUID into g
select new { a = g.Key, s = g.Sum(x => x.QTT) };
foreach (var item in query2)
{
_SQL = "UPDATE StorageOutRows set QTT=@QTT WHERE DividedGUID=@DividedGUID AND DividedOriginal=1";
_stringparam = new string[] { "@QTT", "@DividedGUID" };
_objectparam = new object[] { item.s, _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
}
XPQuery<StorageOutRowsInRows> _StorageOutRowsInRows_QD = new XPQuery<StorageOutRowsInRows>(_uow, true);
var query3 = from q in _StorageOutRowsInRows_QD
where q.DividedGUID == _GUID && q.DividedOriginal == 1
group q by q.Oid into g
select new { a = g.Key, s = g.Sum(x => x.QTT) };
foreach (var item in query3)
{
_SQL = "UPDATE DeliveryNoteOutRows set QTT=@QTT WHERE StorageOutRowsInRows=@StorageOutRowsInRows AND DividedGUID=@DividedGUID AND DividedOriginal=1";
_stringparam = new string[] { "@QTT", "@StorageOutRowsInRows", "@DividedGUID" };
_objectparam = new object[] { item.s, item.a, _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
}
XPQuery<OrderInRows> _OrderInRows_Q = new XPQuery<OrderInRows>(_uow, true);
var query4 = from q in _OrderInRows_Q
where q.DividedGUID == _GUID
group q by q.DividedGUID into g
select new { a = g.Key, s = g.Sum(x => x.QTT) };
foreach (var item in query4)
{
_SQL = "UPDATE OrderInRows set QTT=@QTT,QTT_DeliveryNoted=@QTT,QTT_Storaged=@QTT WHERE DividedGUID=@DividedGUID AND DividedOriginal=1";
_stringparam = new string[] { "@QTT", "@DividedGUID" };
_objectparam = new object[] { item.s, _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
}
// -------========= Törlések ==========-------------
_SQL = "DELETE FROM DeliveryNoteOutRows WHERE DividedGUID=@DividedGUID AND DividedOriginal=2";
_stringparam = new string[] { "@DividedGUID" };
_objectparam = new object[] { _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
_SQL = "DELETE FROM StorageOutRowsInRows WHERE DividedGUID=@DividedGUID AND DividedOriginal=2";
_stringparam = new string[] { "@DividedGUID" };
_objectparam = new object[] { _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
_SQL = "DELETE FROM StorageOutRows WHERE DividedGUID=@DividedGUID AND DividedOriginal=2";
_stringparam = new string[] { "@DividedGUID" };
_objectparam = new object[] { _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
_SQL = "DELETE FROM OrderInRows WHERE DividedGUID=@DividedGUID AND DividedOriginal=2";
_stringparam = new string[] { "@DividedGUID" };
_objectparam = new object[] { _GUID };
_uow.ExecuteNonQuery(_SQL, _stringparam, _objectparam);
_uow.ExplicitCommitTransaction();
}
catch (Exception _Exception)
{
_uow.ExplicitRollbackTransaction();
throw _Exception;
}
finally
{
_uow.ExplicitRollbackTransaction();
}
}
NestedFrame nestedFrame = Frame as NestedFrame;
if (nestedFrame != null)
{
View parentView = nestedFrame.View as View;
if (parentView != null)
parentView.ObjectSpace.Refresh();
}
}
private void aDeliveryNoteOutPrint_Divided_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
DeliveryNoteOutRows _DeliveryNoteOutRows = View.SelectedObjects[0] as DeliveryNoteOutRows;
if (_DeliveryNoteOutRows !=null)
{
XAFPrintHelper _XAFPrintHelper = new XAFPrintHelper(_ocur, Frame, _DeliveryNoteOutRows.DeliveryNoteOutHeader.DeliveryNoteOutType.ReportDataV2, CriteriaOperator.Parse("Oid=?",_DeliveryNoteOutRows.Oid));
_XAFPrintHelper.ShowPreviewV2();
}
}
}
}
@@ -0,0 +1,135 @@
<?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="aMoveOrderIn.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 95</value>
</metadata>
<metadata name="aOrderInStorageOut.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 56</value>
</metadata>
<metadata name="aMoveOrderInBack.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>180, 17</value>
</metadata>
<metadata name="aDeliveryNoteOutPrint_Divided.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>192, 368</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,55 @@
namespace Nuvolar.Module.Controllers
{
partial class Products_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aUNCheck = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aUNCheck
//
this.aUNCheck.Caption = "aUNCheck";
this.aUNCheck.ConfirmationMessage = null;
this.aUNCheck.Id = "aUNCheck";
this.aUNCheck.TargetObjectType = typeof(Nuvolar.Module.Products);
this.aUNCheck.TargetViewType = DevExpress.ExpressApp.ViewType.ListView;
this.aUNCheck.ToolTip = null;
this.aUNCheck.TypeOfView = typeof(DevExpress.ExpressApp.ListView);
this.aUNCheck.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aUNCheck_Execute);
//
// Products_VC
//
this.Actions.Add(this.aUNCheck);
}
#endregion
private DevExpress.ExpressApp.Actions.SimpleAction aUNCheck;
}
}
@@ -0,0 +1,66 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Layout;
using DevExpress.ExpressApp.Model.NodeGenerators;
using DevExpress.ExpressApp.SystemModule;
using DevExpress.ExpressApp.Templates;
using DevExpress.ExpressApp.Utils;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.Validation;
using DevExpress.ExpressApp.Xpo;
using DevExpress.Xpo;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class Products_VC : ViewController
{
public Products_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aUNCheck_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _onew = Application.CreateObjectSpace() as XPObjectSpace;
XPCollection<Products> _Products_Collection =new XPCollection<Products>(_onew.Session,CriteriaOperator.Parse("UNNumber like 'UN%'"));
foreach (Products _Products in _Products_Collection)
{
UNList _UNList = _onew.FindObject<UNList>(CriteriaOperator.Parse("ShortName=?",_Products.UNNumber));
ProductsUNList _ProductsUNList = _onew.FindObject<ProductsUNList>(CriteriaOperator.Parse("Products=? and UNList=?",_Products,_UNList));
if (_ProductsUNList==null && _UNList!=null)
{
_ProductsUNList = _onew.CreateObject<ProductsUNList>();
_ProductsUNList.Products = _Products;
_ProductsUNList.UNList = _UNList;
_onew.CommitChanges();
}
}
}
}
}
@@ -0,0 +1,126 @@
<?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="aUNCheck.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</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,19 @@
Folder Description
The "Controllers" project folder is intended for storing Controller classes
that can change the default XAF application flow and add new features.
Relevant Documentation
Extend Functionality
http://help.devexpress.com/#Xaf/CustomDocument2623
Controller Class
http://help.devexpress.com/#Xaf/clsDevExpressExpressAppControllertopic
ViewController Class
http://help.devexpress.com/#Xaf/clsDevExpressExpressAppViewControllertopic
WindowController Class
http://help.devexpress.com/#Xaf/clsDevExpressExpressAppWindowControllertopic
@@ -0,0 +1,56 @@
namespace Nuvolar.Module.Controllers
{
partial class ReportV2_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.aConvertToReportV2 = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// aConvertToReportV2
//
this.aConvertToReportV2.Caption = "aConvert To Report V2";
this.aConvertToReportV2.ConfirmationMessage = null;
this.aConvertToReportV2.Id = "aConvertToReportV2";
this.aConvertToReportV2.TargetObjectType = typeof(DevExpress.Persistent.BaseImpl.ReportData);
this.aConvertToReportV2.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root;
this.aConvertToReportV2.TargetViewType = DevExpress.ExpressApp.ViewType.ListView;
this.aConvertToReportV2.ToolTip = null;
this.aConvertToReportV2.TypeOfView = typeof(DevExpress.ExpressApp.ListView);
this.aConvertToReportV2.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aConvertToReportV2_Execute);
//
// ReportV2_VC
//
this.Actions.Add(this.aConvertToReportV2);
}
#endregion
private DevExpress.ExpressApp.Actions.SimpleAction aConvertToReportV2;
}
}
@@ -0,0 +1,77 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Layout;
using DevExpress.ExpressApp.Model.NodeGenerators;
using DevExpress.ExpressApp.SystemModule;
using DevExpress.ExpressApp.Templates;
using DevExpress.ExpressApp.Utils;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.Validation;
using DevExpress.ExpressApp.Xpo;
using DevExpress.Persistent.BaseImpl;
using DevExpress.ExpressApp.Reports;
using DevExpress.XtraReports.UI;
using DevExpress.Persistent.Base.ReportsV2;
using System.IO;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class ReportV2_VC : ViewController
{
public ReportV2_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aConvertToReportV2_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = View.ObjectSpace as XPObjectSpace;
foreach (ReportData _ReportData in View.SelectedObjects)
{
if (_ocur.FindObject<ReportDataV2>(new BinaryOperator("DisplayName", _ReportData.ReportName)) == null)
{
ReportDataV2 reportDataV2 = _ocur.CreateObject<ReportDataV2>();
reportDataV2.DisplayName = _ReportData.ReportName;
XafReport report = (XafReport)_ReportData.LoadReport(_ocur);
XtraReport reportV2 = new XtraReport();
CollectionDataSource dataSource = new CollectionDataSource();
dataSource.ObjectTypeName = report.DataType.FullName;
dataSource.CriteriaString = report.Filtering.Filter;
using (MemoryStream ms = new MemoryStream())
{
report.SaveLayout(ms);
ms.Seek(0, SeekOrigin.Begin);
reportV2.LoadLayout(ms);
reportV2.DataSource = dataSource;
}
DevExpress.ExpressApp.ReportsV2.ReportDataProvider.ReportsStorage.SaveReport(reportDataV2, reportV2);
}
}
_ocur.CommitChanges();
}
}
}
@@ -0,0 +1,126 @@
<?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="aConvertToReportV2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</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,51 @@
using System;
using DevExpress.ExpressApp.Actions;
namespace Nuvolar.Module.Controllers
{
partial class StoragePDACollectionHeader_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
//
// aStoragePDARow_Divide
//
this.aStoragePDARow_Divide.CustomizePopupWindowParams += new DevExpress.ExpressApp.Actions.CustomizePopupWindowParamsEventHandler(this.aStoragePDARow_Divide_CustomizePopupWindowParams);
this.aStoragePDARow_Divide.Execute += new DevExpress.ExpressApp.Actions.PopupWindowShowActionExecuteEventHandler(this.aStoragePDARow_Divide_Execute);
//
// aStoragePDARow_Merge
//
this.aStoragePDARow_Merge.SelectionDependencyType = DevExpress.ExpressApp.Actions.SelectionDependencyType.RequireMultipleObjects;
this.aStoragePDARow_Merge.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.aStoragePDARow_Merge_Execute);
}
#endregion
}
}
@@ -0,0 +1,135 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using DevExpress.ExpressApp.Editors;
using DevExpress.ExpressApp.Layout;
using DevExpress.ExpressApp.Model.NodeGenerators;
using DevExpress.ExpressApp.SystemModule;
using DevExpress.ExpressApp.Templates;
using DevExpress.ExpressApp.Utils;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.Validation;
using DevExpress.ExpressApp.Xpo;
using Nuvolar.Module.BusinessObjects;
using DevExpress.Xpo;
namespace Nuvolar.Module.Controllers
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class StoragePDACollectionHeader_VC : Nuvolar.Module.StoragePDACollectionHeaderVC
{
public StoragePDACollectionHeader_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void aStoragePDARow_Divide_Execute(object sender, PopupWindowShowActionExecuteEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
StoragePDACollectionRowsH _StoragePDACollectionRowsH = (StoragePDACollectionRowsH)e.PopupWindow.View.SelectedObjects[0];
StoragePDACollectionRows _StoragePDACollectionRows = (StoragePDACollectionRows)View.SelectedObjects[0];
if (_StoragePDACollectionRowsH.QTT_Will > 0 && _StoragePDACollectionRows.QTT>= _StoragePDACollectionRowsH.QTT_Will)
{
StoragePDACollectionRows _StoragePDACollectionRows_Divided = _ocur.CreateObject<StoragePDACollectionRows>();
_StoragePDACollectionRows_Divided.ConnectOid = _StoragePDACollectionRows.Oid;
_StoragePDACollectionRows.ConnectOid = _StoragePDACollectionRows.Oid;
_StoragePDACollectionRows.QTT = _StoragePDACollectionRows.QTT - _StoragePDACollectionRowsH.QTT_Will;
_StoragePDACollectionRows_Divided.Barcode = _StoragePDACollectionRows.Barcode;
_StoragePDACollectionRows_Divided.Description = _StoragePDACollectionRows.Description;
_StoragePDACollectionRows_Divided.PacketNumber = _StoragePDACollectionRows.PacketNumber;
_StoragePDACollectionRows_Divided.Products = _StoragePDACollectionRows.Products;
_StoragePDACollectionRows_Divided.QTT = _StoragePDACollectionRowsH.QTT_Will;
_StoragePDACollectionRows_Divided.SerialNumber = "";
_StoragePDACollectionRows_Divided.StorageLocation = null;
_StoragePDACollectionRows_Divided.StoragePDACollectionHeader = _StoragePDACollectionRows.StoragePDACollectionHeader;
_ocur.CommitChanges();
}
}
private void aStoragePDARow_Divide_CustomizePopupWindowParams(object sender, CustomizePopupWindowParamsEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
XPObjectSpace _onew = (XPObjectSpace)Application.CreateObjectSpace();
StoragePDACollectionRowsH _StoragePDACollectionRowsH=_onew.CreateObject<StoragePDACollectionRowsH>();
StoragePDACollectionRows _StoragePDACollectionRows = (StoragePDACollectionRows)View.SelectedObjects[0];
Guid _ConnectOid = _StoragePDACollectionRows.ConnectOid;
double _QTT_Remaining = 0;
double _QTT_Divided = 0;
double _QTT_Original = 0;
if (_ConnectOid==Guid.Empty)
{
_QTT_Remaining = _StoragePDACollectionRows.QTT;
_QTT_Divided = 0;
_QTT_Original = _StoragePDACollectionRows.QTT;
}
else
{
XPCollection<StoragePDACollectionRows> _StoragePDACollectionRows_Collection = new XPCollection<StoragePDACollectionRows>(_ocur.Session,
CriteriaOperator.Parse("ConnectOid=? and StoragePDACollectionHeader=?", _ConnectOid,_StoragePDACollectionRows.StoragePDACollectionHeader));
foreach (StoragePDACollectionRows _SPDACR in _StoragePDACollectionRows_Collection)
{
_QTT_Original += _SPDACR.QTT;
if (_SPDACR.StorageLocation!=null)
{
_QTT_Divided += _SPDACR.QTT;
}
}
_QTT_Remaining = _QTT_Original - _QTT_Divided;
}
_StoragePDACollectionRowsH.QTT_Original = _QTT_Original;
_StoragePDACollectionRowsH.QTT_Divided = _QTT_Divided;
_StoragePDACollectionRowsH.QTT_Remaining = _QTT_Remaining;
e.View = Application.CreateDetailView(_onew, "StoragePDACollectionRowsH_DetailView", true, _StoragePDACollectionRowsH);
}
private void aStoragePDARow_Merge_Execute(object sender, SimpleActionExecuteEventArgs e)
{
XPObjectSpace _ocur = (XPObjectSpace)View.ObjectSpace;
StoragePDACollectionRows _StoragePDACollectionRows_Base = (StoragePDACollectionRows)View.SelectedObjects[0];
List<StoragePDACollectionRows> _CC = new List<StoragePDACollectionRows>();
foreach (StoragePDACollectionRows _StoragePDACollectionRows in View.SelectedObjects)
{
if (_StoragePDACollectionRows.Oid!=_StoragePDACollectionRows_Base.Oid)
{
if (_StoragePDACollectionRows.ConnectOid==_StoragePDACollectionRows_Base.ConnectOid)
{
if (_StoragePDACollectionRows.StorageLocation==_StoragePDACollectionRows_Base.StorageLocation)
{
_CC.Add(_StoragePDACollectionRows);
_StoragePDACollectionRows_Base.QTT = _StoragePDACollectionRows_Base.QTT + _StoragePDACollectionRows.QTT;
}
}
}
}
_ocur.Delete(_CC);
_ocur.CommitChanges();
}
}
}
@@ -0,0 +1,132 @@
<?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="aImportCSVToStoragePDA.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>392, 17</value>
</metadata>
<metadata name="aStoragePDARow_Divide.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>205, 17</value>
</metadata>
<metadata name="aStoragePDARow_Merge.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</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,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Nuvolar.Module.Controllers
{
public class WorkEventArgs:EventArgs
{
public int Count { get; set; }
public int CurrentValue { get; set; }
public string Message { get; set; }
}
}
@@ -0,0 +1,56 @@
namespace Nuvolar.Module.Controllers.nopCommerce
{
partial class nopC_VC
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.anopC_LoadHU = new DevExpress.ExpressApp.Actions.SimpleAction(this.components);
//
// anopC_LoadHU
//
this.anopC_LoadHU.Caption = "anopC_LoadHU";
this.anopC_LoadHU.ConfirmationMessage = null;
this.anopC_LoadHU.Id = "anopC_LoadHU";
this.anopC_LoadHU.TargetObjectType = typeof(Nuvolar.Module.BusinessObjects.nopCommerce.nopCParameters);
this.anopC_LoadHU.TargetViewNesting = DevExpress.ExpressApp.Nesting.Root;
this.anopC_LoadHU.TargetViewType = DevExpress.ExpressApp.ViewType.DetailView;
this.anopC_LoadHU.ToolTip = null;
this.anopC_LoadHU.TypeOfView = typeof(DevExpress.ExpressApp.DetailView);
this.anopC_LoadHU.Execute += new DevExpress.ExpressApp.Actions.SimpleActionExecuteEventHandler(this.anopC_LoadHU_Execute);
//
// nopC_VC
//
this.Actions.Add(this.anopC_LoadHU);
}
#endregion
private DevExpress.ExpressApp.Actions.SimpleAction anopC_LoadHU;
}
}
@@ -0,0 +1,81 @@
using System;
using System.Collections.Generic;
using System.Linq;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Actions;
using System.Xml;
using System.IO;
using System.Reflection;
using System.Diagnostics;
using Nuvolar.Module.BusinessObjects.nopCommerce;
namespace Nuvolar.Module.Controllers.nopCommerce
{
// For more typical usage scenarios, be sure to check out https://documentation.devexpress.com/eXpressAppFramework/clsDevExpressExpressAppViewControllertopic.aspx.
public partial class nopC_VC : ViewController
{
public nopC_VC()
{
InitializeComponent();
// Target required Views (via the TargetXXX properties) and create their Actions.
}
protected override void OnActivated()
{
base.OnActivated();
// Perform various tasks depending on the target View.
}
protected override void OnViewControlsCreated()
{
base.OnViewControlsCreated();
// Access and customize the target View control.
}
protected override void OnDeactivated()
{
// Unsubscribe from previously subscribed events and release other references and resources.
base.OnDeactivated();
}
private void anopC_LoadHU_Execute(object sender, SimpleActionExecuteEventArgs e)
{
nopCParameters _nopCParameters=(nopCParameters)View.SelectedObjects[0];
StreamReader _textStreamReader;
string _StrBuffer;
Assembly _assembly = Assembly.GetExecutingAssembly();
_textStreamReader = new StreamReader(_assembly.GetManifestResourceStream("Nuvolar.Module.XML.nopCommerce_hu.xml"));
_StrBuffer = _textStreamReader.ReadToEnd();
DevExpress.Xpo.Session _Session = new DevExpress.Xpo.Session();
_Session.ConnectionString = DevExpress.Xpo.DB.MSSqlConnectionProvider.GetConnectionString(string.Format("{0},{1}", _nopCParameters.SQLServer, _nopCParameters.SQLPort),
_nopCParameters.SQLUserName, _nopCParameters.SQLPassword, "NCC");
_Session.AutoCreateOption = DevExpress.Xpo.DB.AutoCreateOption.SchemaAlreadyExists;
if (_Session.IsConnected) { _Session.Disconnect(); };
_Session.Connect();
XmlReaderSettings _XmlReaderSettings = new XmlReaderSettings();
using (XmlReader _XMLReader = XmlReader.Create(new StringReader(_StrBuffer)))
{
while (_XMLReader.Read())
{
string _ResourceName;
string _ResourceValue;
_XMLReader.ReadToFollowing("LocaleResource");
_XMLReader.MoveToFirstAttribute();
_ResourceName = _XMLReader.Value;
_XMLReader.ReadToFollowing("Value");
if (_XMLReader.Name=="Value")
{
_ResourceValue = _XMLReader.ReadElementContentAsString();
//string _SQL = "if not exists";
string _SQL= " delete from [NCC].[dbo].[LocaleStringResource] where [LanguageId]=2 and [ResourceName]='{0}' and [ResourceValue]='{1}'\n";
_SQL += " insert [NCC].[dbo].[LocaleStringResource] ([LanguageId],[ResourceName],[ResourceValue]) select 2,'{0}','{1}' ";
_Session.ExecuteNonQuery(string.Format(_SQL,_ResourceName,_ResourceValue.Replace("'","''")));
}
}
}
}
}
}
@@ -0,0 +1,126 @@
<?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="anopC_LoadHU.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
</root>