Exemplo n.º 1
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            string Msg   = "";
            bool   CadOk = false;

            SetDados();
            if (operacao == Operacao.oDelete)
            {
                //Conexao.IniciaTransacao("DelArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                try
                {
                    arquivosController.DeletarMonitoramentos(arquivosModel.id_arquivo);
                    cadMaptoControl.DeletarMapeamentos(arquivosModel.id_arquivo);
                    Msg = arquivosController.CadArquivosBase.PersisteNoBanco(arquivosModel, OperacaoToInt(operacao));
                    //Conexao.CommitaTransacao("DelArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                    LimparTela();
                    if (!Global.IsNullOrEmpty(Msg))
                    {
                        MessageBox.Show(Msg);
                    }
                }
                catch (Exception ex)
                {
                    //Conexao.ConcelaTransacao("DelArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                    MessageBox.Show($"{Msg}. Motivo: {ex.Message}");
                }
            }
            else
            {
                if (cbServicos.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar em qual Serviço será cadastrado o Arquivo.");
                    cbServicos.Focus();
                    return;
                }

                if (cbPacote.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar em qual Pacote será cadastrado o Arquivo.");
                    cbPacote.Focus();
                    return;
                }

                if (edtNomeArquivo.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o Nome do Arquivo.");
                    edtNomeArquivo.Focus();
                    return;
                }

                if (edtMascaraArquivo.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar a Máscara do Arquivo.");
                    edtMascaraArquivo.Focus();
                    return;
                }

                if (cbTpCarga.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o Tipo da Carga.");
                    cbTpCarga.Focus();
                    return;
                }

                if (cbTpArquivo.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o Tipo do Arquivo.");
                    cbTpArquivo.Focus();
                    return;
                }

                if (cbTpArquivo.Text == "DELIMITADO" && edtDelimitador.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar  o Delimitador.");
                    edtDelimitador.Focus();
                    return;
                }

                if (cbTpArquivo.Text == "EXCEL" && edtNomePlanilha.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o nome da planilha.");
                    edtNomePlanilha.Focus();
                    return;
                }

                if (edtDirEntrada.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o diretório de entrada dos arquivos.");
                    edtDirEntrada.Focus();
                    return;
                }

                if (dgvMapeamentos.Rows.Count == 1 && dgvMapeamentos.Rows[0].Cells[1].Value == null)
                {
                    MessageBox.Show("Favor inserir pelo menos 1 Mapeamento.");
                    edtDirEntrada.Focus();
                    return;
                }

                if (edtTabelaDestino.Text.Length == 0)
                {
                    MessageBox.Show("Favor informar o Nome da Tabela Destino.");
                    edtTabelaDestino.Focus();
                    return;
                }

                if (edtBaseBusiness.Text.Length > 0)
                {
                    DialogResult Result = MessageBox.Show($"Este procedimento irá criar uma Base de Dados com o nome {edtBaseBusiness.Text}. Deseja continuar?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (Result == DialogResult.No)
                    {
                        edtBaseBusiness.Focus();
                        return;
                    }
                }

                //Conexao.IniciaTransacao("CadArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                try
                {
                    if (operacao == Operacao.oInsert)
                    {
                        if (arquivosController.ArquivoCadastrado(edtNomeArquivo.Text, arquivosModel.id_pacote))
                        {
                            if (!(cbTpArquivo.Text == "EXCEL" && ckbPossuiVariasAba.Checked))
                            {
                                MessageBox.Show("Já foi cadastrado um arquivo com este nome. Favor informar outro nome.");
                                edtNomeArquivo.Focus();
                                return;
                            }
                        }
                        if (arquivosController.TabelaDSTCadastrada(edtTabelaDestino.Text))
                        {
                            MessageBox.Show("Já foi cadastrado um arquivo com este Nome de Tabela Destino. Favor informar outro nome.");
                            edtTabelaDestino.Focus();
                            return;
                        }
                    }
                    Msg   = arquivosController.CadArquivosBase.PersisteNoBanco(arquivosModel, OperacaoToInt(operacao));
                    CadOk = true;
                }
                catch (Exception ex)
                {
                    CadOk = false;
                    MessageBox.Show($"{Msg}. Motivo: {ex.Message}");
                }

                if (operacao == Operacao.oInsert)
                {
                    monitoramentosModel.id_arquivo = arquivosController.CadArquivosBase.GetLastReg(arquivosModel);
                }
                else
                {
                    monitoramentosModel.id_arquivo = Convert.ToInt32(arquivosController.CadArquivosBase.isNullResultZero(edtIdArquivos.Text));
                }

                monitoramentosModel.id_servico = arquivosController.CadArquivosBase.GetidServico(cbServicos.Text);
                monitoramentosModel.status     = cbStatus.Text;
                try
                {
                    string msgMonitoramento = cadMonitBase.PersisteNoBanco(monitoramentosModel, OperacaoToInt(operacao));
                    bool   cadMaptoOk       = SetDadosMapeamento(monitoramentosModel.id_arquivo);
                    if (CadOk && cadMaptoOk)
                    {
                        //Conexao.CommitaTransacao("CadArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                        LimparTela();
                        MessageBox.Show(Msg);
                    }
                    else
                    {
                        //Conexao.ConcelaTransacao("CadArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                        MessageBox.Show($"Erro inesperado ao cadastrar o arquivo. Favor verificar.");
                    }
                }
                catch (Exception ex)
                {
                    //Conexao.ConcelaTransacao("CadArquivo", arquivosController.CadArquivosBase.conexao.Conn);
                    MessageBox.Show($"{Msg}. Motivo: {ex.Message}");
                }
            }
        }