Exemplo n.º 1
0
        private void btnStartCapture_Click(object sender, EventArgs e)
        {
            if (bw.IsBusy != true)
            {
                bwArgs = new bwWorkerArgs(config.Attr.EMDRServer, config.Attr.DataSource, config.Attr.MergeDuplicates,
                    config.Attr.CaptureHistory, config.Attr.CaptureOrders);

                bw.RunWorkerAsync(bwArgs);

                if (trimBw.IsBusy != true)
                {
                    trimBw.RunWorkerAsync();
                }
            }
            else
            {
                MessageBox.Show(@"The Background Workers did not start because they are in a busy state",
                        "Error: BackgroundWorker Busy", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);
            }

            tsCaptureState.Text = @"Capture Status: Running";
            tsTrimState.Text = @"Trim Status: Active";
            btnStopCapture.Enabled = true;
            btnStartCapture.Enabled = false;
        }
Exemplo n.º 2
0
        private void loadMessages(EMDRData edata, bwWorkerArgs bwinargs)
        {
            emdrDSTableAdapters.emdrHistoryDataTableAdapter hisTblAdptr= new emdrDSTableAdapters.emdrHistoryDataTableAdapter();
            emdrDSTableAdapters.emdrOrderDataTableAdapter ordTblAdptr = new emdrDSTableAdapters.emdrOrderDataTableAdapter();

            hisTblAdptr.Connection.ConnectionString = bwinargs.ConnStr;
            ordTblAdptr.Connection.ConnectionString = bwinargs.ConnStr;

            foreach (Rowset rs in edata.Rowsets)
            {
                if (bwinargs.CaptureHistory)
                {
                    foreach (History hs in rs.HistoryRows)
                    {
                        hisTblAdptr.insEmdrHistoryData((int)rs.RegionID, rs.TypeID, hs.Date, hs.DateLocalTime,
                            hs.Orders, hs.Quantity, hs.High, hs.Low, hs.Average);
                    }
                }

                if (bwinargs.CaptureOrders)
                {
                    foreach (Order or in rs.OrderRows)
                    {
                        if (bwinargs.MergeDupes)
                        {
                            //We are merging duplicates (i.e. keeping newest record only)
                            ordTblAdptr.mergeEMDROrderData((int)rs.RegionID, rs.TypeID,
                                rs.GeneratedAt, rs.GeneratedAtLocalTime,
                                or.IssueDate, or.IssueDateLocalTime, (int)or.SolarSystemID,
                                or.StationID, or.OrderID, or.Range, or.VolEntered, or.VolRemaining, or.MinVolume, or.Price,
                                or.Duration, BitConverter.GetBytes(or.Bid)[0]);
                        }
                        else
                        {
                            //Capturing everything, something else is dealing with the multiple rows per orderid
                            ordTblAdptr.Insert((int)rs.RegionID, rs.TypeID,
                                rs.GeneratedAt, rs.GeneratedAtLocalTime,
                                or.IssueDate, or.IssueDateLocalTime, (int)or.SolarSystemID,
                                or.StationID, or.OrderID, or.Range, or.VolEntered, or.VolRemaining, or.MinVolume, or.Price,
                                or.Duration, BitConverter.GetBytes(or.Bid)[0]);

                        }
                    }
                }
            }

            return;
        }