/// <summary>
        /// Método para salvar os emails que vem da tela.
        /// </summary>
        /// <param name="id_contato"></param>
        /// <param name="oConn"></param>
        private void salvaEmails(int id_contato, IDbPersist oConn)
        {
            DataRow dr_email = ConnAccess.getNewRow(oConn, "contato_email");

            int qtde_emails = RendLibrary.Helper.RequestValue <int>("qtde_emails").Value;

            string str_ids = "0";
            int    ordem   = 0;
            string emails  = "";

            for (int i = 0; i <= qtde_emails; i++)
            {
                string email = RendLibrary.Helper.RequestString("email" + i.ToString());

                if (email.Trim() != String.Empty)
                {
                    ordem++;

                    if (emails != String.Empty)
                    {
                        emails += ", ";
                    }

                    emails                    += email.Trim();
                    dr_email["email"]          = email;
                    dr_email["id_contato"]     = id_contato;
                    dr_email["ordem_cadastro"] = ordem;

                    string sql_item = " select id from contato_email where email='" + email + "' and id_contato=" + id_contato.ToString();
                    object id_tmp   = ConnAccess.executeScalar(oConn, sql_item);

                    if (id_tmp != null && id_tmp != DBNull.Value)
                    {
                        dr_email["id"] = id_tmp;
                        ConnAccess.Update(oConn, dr_email, "id");
                    }
                    else
                    {
                        ConnAccess.Insert(oConn, dr_email, "id", true);
                        dr_email["id"] = ConnAccess.getMax(oConn, "id", dr_email.Table.TableName, " where id_contato = " + id_contato.ToString());
                    }

                    str_ids += "," + dr_email["id"].ToString();
                }
            }
            ConnAccess.executeCommand(oConn, " delete from contato_email where id_contato = " + id_contato.ToString() + " and id not in ( " +
                                      str_ids + " ) ");


            ConnAccess.executeCommand(oConn, " update contato set emails = '" + emails + "' where id  = " + id_contato.ToString());
        }
Esempio n. 2
0
    /// <summary>
    /// Esta função irá excluir os dados..
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void gvwDados_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
    {
        if (e.NewSelectedIndex < 0)
        {
            return;
        }

        atualizaTabela(this.gDt);

        string cod = gvwDados.Rows[e.NewSelectedIndex].Cells[0].Text;

        if (cod == String.Empty || cod == "&nbsp;")
        {
            try
            {
                this.gDt.Rows.RemoveAt(e.NewSelectedIndex);
            }
            catch { }
            gvwDados.DataSource = this.gDt;
            gvwDados.DataBind();

            this.my_dvMensagem.InnerHtml = "Exclus&atilde;o realizada com sucesso!";
            return;
        }



        this.gDt.Rows.RemoveAt(e.NewSelectedIndex);

        ConnAccess.executeCommand(ConnAccess.getConn(), " delete from " + G_Table + " where id = " + cod);

        gvwDados.DataSource = this.gDt;
        gvwDados.DataBind();


        //Utilities.JavaScript.ExecuteScript(this.Page, "calculaTotal(null,'')", true);

        this.my_dvMensagem.InnerHtml = "Exclus&atilde;o realizada com sucesso!";
    }
Esempio n. 3
0
    protected virtual void excluir(DataRow entidade, Boolean carregaGrid, string msg)
    {
        try
        {
            //ConnAccess.Delete(entidade);

            string nomepk = ConnAccess.getNomePrimaryKey(entidade.Table);

            string sql = " delete from " + entidade.Table.TableName + " where " + nomepk + " = " +
                         entidade[nomepk].ToString();

            ConnAccess.executeCommand(ConnAccess.getConn(), sql);

            if (carregaGrid)
            {
                this.carregaGrid();
            }

            if (msg != String.Empty)
            {
                Alert(msg);
            }

            this.limpaForm();
        }
        catch (System.Data.OleDb.OleDbException bex)
        {
            Alert("Não foi possível excluir este registro, pois " + bex.Message + "!");
            this.HouveErro = true;
            //Response.End();
        }
        catch (Exception e)
        {
            throw (e);
        }
    }
        public ActionResult Cadastro()
        {
            DataAccess.IDbPersist oConn = base.getMainConn();

            DataRow registro = ConnAccess.getNewRow(oConn, "contato");
            DataRow dr_email = ConnAccess.getNewRow(oConn, "contato_email");

            DataTable dtEmails = dr_email.Table;

            string id         = RendLibrary.Helper.RequestString("id");
            string acao       = RendLibrary.Helper.RequestString("acao");
            string ispostback = RendLibrary.Helper.RequestString("ispostback");



            if (ispostback == "1")
            {
                if (id.Trim() != String.Empty && RendLibrary.Helper.isInteger(id))
                {
                    registro = ConnAccess.getRow(oConn, "contato", "id", id);
                }

                RendLibrary.Helper.loadDataRowFromForm(registro);

                if (registro["data_cadastro"] == DBNull.Value)
                {
                    registro["data_cadastro"] = DateTime.Now;
                }
            }

            if (acao == "SAVE")
            {
                if (registro["id"] == DBNull.Value)
                {
                    registro["data_cadastro"] = DateTime.Now;

                    ConnAccess.Insert(oConn, registro, "id", true);
                    registro["id"] = ConnAccess.getMax(oConn, "id", "contato", "");
                }
                else
                {
                    ConnAccess.Update(oConn, registro, "id");
                }

                if (registro["id"] != DBNull.Value)
                {
                    this.salvaEmails(Convert.ToInt32(registro["id"]), oConn);
                }

                TempData["st_Mensagem"] = "Contato salvo com sucesso!";
                //TempData["st_Mensagem"] = "Contato salvo com sucesso!";

                Response.Redirect("Cadastro?id=" + registro["id"].ToString() + "&acao=LOAD", true);
                Response.End();
            }


            if (acao == "DEL" && id.Trim() != String.Empty && RendLibrary.Helper.isInteger(id))
            {
                ConnAccess.executeCommand(oConn, " delete from contato where id = " + id.ToString());
                TempData["st_Mensagem"] = "Contato removido com sucesso!";

                Response.Redirect("Cadastro", true);
                Response.End();
            }


            if (id.Trim() != String.Empty && RendLibrary.Helper.isInteger(id))
            {
                registro = ConnAccess.getRow(oConn, "contato", "id", id);
                dtEmails = ConnAccess.fetchData(oConn, " select * from contato_email where id_contato = " +
                                                id + " order by ordem_cadastro ");
            }

            if (dtEmails.Rows.Count <= 0)
            {
                dtEmails.Rows.Add(dr_email.ItemArray);
            }

            ViewData["registro"] = registro;
            ViewData["DtEmails"] = dtEmails;

            return(View());
        }