Esempio n. 1
0
        public bool SaveMailingListSharing(MailingListItem ml)
        {
            using (var cn = new SqlConnection(connectionString))
            {
                using (var cmd = new SqlCommand())
                {
                    cmd.Connection     = cn;
                    cmd.CommandTimeout = cmdTimeout;

                    cn.Open();
                    SqlTransaction trans = cn.BeginTransaction();
                    cmd.Transaction = trans;

                    try
                    {
                        // delete old
                        cmd.CommandText = "DELETE FROM vw—писки–ассылкиќбщие WHERE  од—писка–ассылки = @ID";
                        AddParam(cmd, "@ID", SqlDbType.Int, ml.ID);

                        cmd.ExecuteNonQuery();

                        if (ml.SharedEmploees.Count != 0)
                        {
                            cmd.CommandText = string.Empty;

                            for (int idx = 0; idx < ml.SharedEmploees.Count; idx++)
                            {
                                Employee emp = ml.SharedEmploees[idx];
                                cmd.CommandText +=
                                    string.Format(
                                        "INSERT INTO vw—писки–ассылкиќбщие ( од—писка–ассылки,  од—отрудника) VALUES(@ID, @Emp{0}){1}",
                                        idx, Environment.NewLine);
                                AddParam(cmd, string.Format("@Emp{0}", idx), SqlDbType.Int, emp.ID);
                            }
                            cmd.ExecuteNonQuery();
                        }

                        trans.Commit();

                        return(true);
                    }
                    catch (SqlException sex)
                    {
                        trans.Rollback();
                        ProcessSqlEx(sex, cmd, "SaveMailingListSharing", true);
                    }
                    catch (Exception ex)
                    {
                        trans.Rollback();
                        ErrorMessage(true, ex, null, "SaveMailingListSharing");
                    }
                    finally
                    {
                        cn.Close();
                    }
                    return(false);
                }
            }
        }
Esempio n. 2
0
        public bool SaveMailingList(MailingListItem ml)
        {
            using (var cn = new SqlConnection(connectionString))
            {
                using (var cmd = new SqlCommand())
                {
                    cmd.Connection     = cn;
                    cmd.CommandTimeout = cmdTimeout;

                    cn.Open();
                    SqlTransaction trans = cn.BeginTransaction();
                    cmd.Transaction = trans;

                    try
                    {
                        // renaming
                        cmd.CommandText =
                            "UPDATE " + tableName +
                            " SET " + nameField + " = @Name" +
                            " WHERE " + idField + " = @ID";

                        AddParam(cmd, "@Name", SqlDbType.NVarChar, ml.Name);
                        AddParam(cmd, "@ID", SqlDbType.Int, ml.ID);

                        if (cmd.ExecuteNonQuery() == 0)
                        {
                            throw new Exception("ќшибка переименовани¤ списка рассылки (ID = " + ml.ID + ")");
                        }

                        if (OverwriteEmployees(cmd, ml.ID, ml.Employees) == 0)
                        {
                            throw new Exception("ќшибка сохранени¤ сотрудников списка рассылки (ID = " + ml.ID + ")");
                        }

                        trans.Commit();

                        return(true);
                    }
                    catch (SqlException sex)
                    {
                        trans.Rollback();
                        ProcessSqlEx(sex, cmd, "SaveMailingList", true);
                    }
                    catch (Exception ex)
                    {
                        trans.Rollback();
                        ErrorMessage(true, ex, null, "SaveMailingList");
                    }
                    finally
                    {
                        cn.Close();
                    }
                    return(false);
                }
            }
        }
Esempio n. 3
0
 public MailingListEditDialog(MailingListItem ml) : this()
 {
     this.ml = ml;
 }
 public MailingListShareDialog(MailingListItem ml) : this()
 {
     this.ml = ml;
 }