public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs)
            {
                global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
                global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
                PackagePerPromoType ds = new PackagePerPromoType();

                xs.Add(ds.GetSchemaSerializable());
                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
                any1.Namespace       = "http://www.w3.org/2001/XMLSchema";
                any1.MinOccurs       = new decimal(0);
                any1.MaxOccurs       = decimal.MaxValue;
                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any1);
                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
                any2.Namespace       = "urn:schemas-microsoft-com:xml-diffgram-v1";
                any2.MinOccurs       = new decimal(1);
                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any2);
                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute1.Name       = "namespace";
                attribute1.FixedValue = ds.Namespace;
                type.Attributes.Add(attribute1);
                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute2.Name       = "tableTypeName";
                attribute2.FixedValue = "PackageDataTable";
                type.Attributes.Add(attribute2);
                type.Particle = sequence;
                return(type);
            }
        public override global::System.Data.DataSet Clone()
        {
            PackagePerPromoType cln = ((PackagePerPromoType)(base.Clone()));

            cln.InitVars();
            cln.SchemaSerializationMode = this.SchemaSerializationMode;
            return(cln);
        }
        public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs)
        {
            PackagePerPromoType ds = new PackagePerPromoType();

            global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
            global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
            xs.Add(ds.GetSchemaSerializable());
            global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny();
            any.Namespace = ds.Namespace;
            sequence.Items.Add(any);
            type.Particle = sequence;
            return(type);
        }
Пример #4
0
        private void buttonPackageType_Click(object sender, RibbonControlEventArgs e)
        {
            PseudoProgressForm progress = new PseudoProgressForm();

            progress.ProgressLabel = "Querying SAP...";
            BackgroundWorker    backgroundWorker           = new BackgroundWorker();
            PackagePerPromoType packageSalesPerTypeDataset =
                new PackagePerPromoType();

            backgroundWorker.DoWork +=
                delegate(object workSender, DoWorkEventArgs eventArg)
            {
                PackagePerPromoType.PackageDataTable packageSalesTable =
                    packageSalesPerTypeDataset.Package;

                Sales sales = DataHelper.GetSalesData();

                foreach (Sales.PackageRow packageRow in sales.Package.Rows)
                {
                    PackagePerPromoType.PackageRow packageSaleRow = packageSalesTable.NewPackageRow();
                    packageSaleRow.PackageID               = packageRow.PackageID;
                    packageSaleRow.PackageName             = packageRow.PackageName;
                    packageSaleRow.GoldPackageCount        = 0;
                    packageSaleRow.SilverPackageCount      = 0;
                    packageSaleRow.BronzePackageCount      = 0;
                    packageSaleRow.GoldPackageTotalSales   = 0;
                    packageSaleRow.SilverPackageTotalSales = 0;
                    packageSaleRow.BronzePackageTotalSales = 0;
                    foreach (DataRow saleRow in packageRow.GetChildRows("Package_PackageSale"))
                    {
                        Sales.PackageSaleRow salesPackageSaleRow = saleRow as Sales.PackageSaleRow;
                        foreach (DataRow eventRow in salesPackageSaleRow.GetChildRows("PackageSale_EventSale"))
                        {
                            Sales.EventSaleRow salesEventSaleRow = eventRow as Sales.EventSaleRow;

                            switch (salesEventSaleRow.PackageType)
                            {
                            case "Gold":
                                packageSaleRow.GoldPackageCount      += 1;
                                packageSaleRow.GoldPackageTotalSales += salesEventSaleRow.Price;
                                break;

                            case "Silver":
                                packageSaleRow.SilverPackageCount      += 1;
                                packageSaleRow.SilverPackageTotalSales += salesEventSaleRow.Price;
                                break;

                            case "Bronze":
                                packageSaleRow.BronzePackageCount      += 1;
                                packageSaleRow.BronzePackageTotalSales += salesEventSaleRow.Price;
                                break;
                            }
                        }
                    }
                    packageSalesTable.AddPackageRow(packageSaleRow);
                }
            };

            backgroundWorker.RunWorkerCompleted +=
                delegate(object workSender, RunWorkerCompletedEventArgs eventArg)
            {
                progress.Close();
                progress.Dispose();

                ExcelHelper.LoadExcelSheet(
                    "PackageSalesPerPromoType",
                    Resources.PackageSalesPerPromoType,
                    packageSalesPerTypeDataset);
            };

            backgroundWorker.RunWorkerAsync();
            progress.ShowDialog();
        }