예제 #1
0
        private void btnProcessar_Click(object sender, EventArgs e)
        {
            if (!this.ValidarAntesProcessamento())
                return;

            if (saveFileDialog1.ShowDialog() != DialogResult.OK)
                return;

            if (File.Exists(saveFileDialog1.FileName))
            {
                MessageBox.Show("Nome de arquivo já em uso. Selecione um nome diferente.");
                return;
            }

            lblProgresso.Visible = true;
            progressBar1.Visible = true;

            ContmaticProcessParameters parameters = new ContmaticProcessParameters();

            parameters.CodigoEmpresa = cbxEmpresas.SelectedValue.ToString();
            parameters.DataInicial = DateTimeHelper.GetFirstDayOfTheMonth(dtpInicio.Value);
            parameters.DataFinal = DateTimeHelper.GetLastDayOfTheMonth(dtpFim.Value);
            parameters.CaminhoArquivo = saveFileDialog1.FileName;

            if (rdbCompleto.Checked)
            {
                parameters.TipoArquivo = TipoArquivo.ContmaticCompleto;
            }
            else if (rdbIventario.Checked)
            {
                parameters.TipoArquivo = TipoArquivo.ContmaticIventario;
            }
            else if (rdbParticipante.Checked)
            {
                parameters.TipoArquivo = TipoArquivo.ContmaticParticipante;
            }
            else if (rdbECF.Checked)
            {
                parameters.TipoArquivo = TipoArquivo.ContmaticECF;
            }
            

            if (rdbRemessaOriginal.Checked)
                parameters.TipoRemessa = TipoRemessa.Original;
            else
                parameters.TipoRemessa = TipoRemessa.Substituta;

            ContmaticProcessController controller = new ContmaticProcessController(parameters);
            controller.Initialize();
            ExecuteAsynchronousControllerDelegate execucaoController =
                new ExecuteAsynchronousControllerDelegate(ExecuteContmaticProcessController);
            execucaoController.BeginInvoke(controller, null, null);

        }
 public ContmaticProcessController(ContmaticProcessParameters parameters)
 {
     this._parameters = parameters;
     this.AsynchronousExecution +=
         new AsynchronousExecutionHandler(ContmaticProcessController_AsynchronousExecution);
     this.AsynchronousExecutionAborted +=
         new AsynchronousExecutionAbortedHandler(ContmaticProcessController_AsynchronousExecutionAborted);
 }