/// <summary>
        /// Pega os dados da tela para popular um model
        /// </summary>
        /// <returns>Model populado</returns>
        private mKitGrupoPeca PegaDadosTela()
        {
            mKitGrupoPeca model = new mKitGrupoPeca();
            rKitGrupoPeca regra = new rKitGrupoPeca();

            try
            {
                model.IdKit = regra.BuscaIdMaximo();
                model.Dat_alt = DateTime.Now;
                model.Flg_ativo = true;
                model.Nom_grupo = this.txtNmKit.Text;
                model.IdKitReal = this.txtCodigoKit.Text;

                return model;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                model = null;
            }
        }
 /// <summary>
 /// Busca Kit atravez do filtro escolhido pelo usuario
 /// </summary>
 /// <param name="nomeKit">o filtro passado pelo usuário pode ser Vazio</param>
 /// <returns>DataTable com o resultado da query</returns>
 private DataTable BuscaKit(string nomeKit)
 {
     rKitGrupoPeca regraKit = new rKitGrupoPeca();
     try
     {
         if (this.rdbFiltroCodigo.Checked == true)
         {
             return regraKit.BuscaKitCodigo(nomeKit);
         }
         else
         {
             return regraKit.BuscaKitGrupoPecaNome(nomeKit);
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         regraKit = null;
     }
 }
        /// <summary>
        /// Insere no banco os dados do model
        /// </summary>
        private void Insere()
        {
            mKitGrupoPeca model;
            rKitGrupoPeca regra = new rKitGrupoPeca();
            rItemKit regraItemKit = new rItemKit();

            try
            {
                this.ValidaDadosNulos();
                model = this.PegaDadosTela();
                this.AbreTelaResumo();
                regra.ValidarInsere(model);
                this.CompletaListaModelItemKit(model);
                foreach (mItemKit modelItemKit in this._modelItemKit)
                {
                    regraItemKit.ValidarInsere(modelItemKit);
                }
                this.btnLimpar_Click(null, null);
                this.btnAceitar.Enabled = false;
                MessageBox.Show("Registro Salvo com Sucesso!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.NomeKitExistenteException)
            {
                MessageBox.Show("Nome do Kit já existe!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                this.txtNmKit.Focus();
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.CodigoRealKitExistenteException)
            {
                MessageBox.Show("Código do Kit já existe!", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                this.txtCodigoKit.Focus();
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.KitSemItemException)
            {
                MessageBox.Show("É Necessário Associar um Item ao Kit", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                this.btnBuscarItemDtGrid.Focus();
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.NomeKitVazioException)
            {
                MessageBox.Show("É Necessário Preencher o Nome do Kit", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                this.txtNmKit.Focus();
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.CodigoRealKitVazioException)
            {
                MessageBox.Show("É Necessário Preencher o código do Kit", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
                this.txtCodigoKit.Focus();
            }
            catch (BUSINESS.Exceptions.KitGrupoPeca.TelaResumoCanceladaException)
            {

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1);
            }
            finally
            {
                model = null;
                regra = null;
                regraItemKit = null;
            }
        }
 private void PopulaModelCompletoAlteracao()
 {
     rKitGrupoPeca regraKit = new rKitGrupoPeca();
     DataTable dtRegistroKit = null;
     try
     {
         dtRegistroKit = regraKit.BuscaUmRegistro(this._model);
         this._model.Deserialize(dtRegistroKit);
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         regraKit = null;
         if (dtRegistroKit != null)
         {
             dtRegistroKit.Dispose();
             dtRegistroKit = null;
         }
     }
 }
 private void PopulaGrid()
 {
     rKitGrupoPeca regra = new rKitGrupoPeca();
     DataTable dt = new DataTable();
     try
     {
         dt = regra.BuscaKitGrupoPecaNome(this.txtFiltro.Text);
         dgKit.DataSource = dt;
         dgKit.Columns[0].Visible = false;
         dgKit.Columns[3].Visible = false;
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         regra = null;
         dt = null;
     }
 }
 private void DeletaCadastro()
 {
     rKitGrupoPeca regraKit = new rKitGrupoPeca();
     try
     {
         regraKit.ValidarDeleta(this._model);
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         regraKit = null;
     }
 }
 private void CriaNoKitGrupoPeca(int idKitGrupoPeca, int qtdeProduto, TreeNode noP)
 {
     DataTable dtKitGrupoPeca = null;
     TreeNode noKitGrupoPeca = null, noItem = null;
     rKitGrupoPeca regraKitGrupoPeca = new rKitGrupoPeca();
     try
     {
         dtKitGrupoPeca = regraKitGrupoPeca.BuscaKitGrupoPecaTree(idKitGrupoPeca);
         foreach (DataRow linha in dtKitGrupoPeca.Rows)
         {
             noKitGrupoPeca = new TreeNode(linha["id_kit_real"].ToString());
             this.CriaNoItemKit(Convert.ToInt32(linha["id_kit"]), qtdeProduto, noKitGrupoPeca);
             noP.Nodes.Add(noKitGrupoPeca);
             //noKitGrupoPeca.Nodes.Add(noItem);
         }
         //return noKitGrupoPeca;
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         regraKitGrupoPeca = null;
         noKitGrupoPeca = null;
         noItem = null;
         if (dtKitGrupoPeca != null)
         {
             dtKitGrupoPeca.Dispose();
             dtKitGrupoPeca = null;
         }
     }
 }