Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
Добрый день, все.
Помогите организовать отсылку сообщения на электронную почту результат запроса, если удовлетворяется условие.

Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64) Jul 9 2008 14:17:44 Copyright (c) 1988-2008 Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600: )

Ситуация такая: есть ежедневно обновляемая таблица. Таблица дропается и создается в джобе. В ней есть поля с данными типа int (кол-во дней) и поле "Ответственный", хочу чтобы при условии когда кол-во дней достигает какого-то значения высылалось сообщение оператору(тому в зависимости от того какое ФИО стоит в поле "ответственный") на мейл. Подскажите как это реализовать =).

Database mail настроен, тестовые сообщения ходят.
29 мар 12, 12:40    [12332744]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 5122
селект из вашей таблицы с вашими условиями + @@rowcount + sp_send_dbmail
29 мар 12, 13:12    [12333045]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
Дедушка,

огромное спасибо. То, что нужно!
Только еще 1 вопрос =)
в письме приходит не таблица, а не удобное для восприятия представление:



№ Контрагенты
номер договора
дата заключения Передмет договора
Сумма договора Начало срока Окончание срока Категория
источник финансирования
Ответственный
Примечание
ost_dney

Это так столбцы раскидывает, не подскажите капк сделать лучше вид?
30 мар 12, 05:18    [12337491]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
хммм, а здесь ничего так =)
приложил письмо в формате outlook

К сообщению приложен файл (Договора.msg - 36Kb) cкачать
30 мар 12, 05:28    [12337493]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
Все, сделал через @body_format = 'HTML' ;
примеры тут: http://msdn.microsoft.com/ru-ru/library/ms190307.aspx
30 мар 12, 06:50    [12337525]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
PavlovRoman
Таблица дропается и создается
Меня всешда это прикалывало.
Дропается, так чтобы очистилось капитально, с контрольным в голову. TRUNCATE/DELETE же не пойдёт, они плохо работают, иногда недочищают.
А все процедуры/скрыпты запускаются конечно же от sa/владельца базы.
30 мар 12, 10:02    [12338100]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
Mnior,

дропается, потому что данные вставляются через SELECT * into table FROM OPENDATASOURCE, а такая конструкция не вставляет в уже существующую таблицу.
30 мар 12, 12:48    [12339534]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
PavlovRoman
дропается, потому что данные вставляются через SELECT into

- А почему вы делаете через SELECT INTO, а не через INSERT SELECT?
- Чтобы создать таблицу, после её DROP-а!


спасибо, повеселил
1 апр 12, 03:40    [12346656]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
PavlovRoman
Member

Откуда:
Сообщений: 27
Mnior,

Спасибо, что указали еще один способ. Когда создавал тему импорт данных из экселя, так как не мог сделать автоимпорт Вы видимо не учавствовали в обсуждении и я пользовался тем способом, который подсказали (нагуглил) и он работал.
3 апр 12, 03:29    [12354604]     Ответить | Цитировать Сообщить модератору
 Re: отсылка сообщения на электронную почту  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
PavlovRoman, у этих способов очень разные побочные эффекты.
Вообщето иметь ALTER права на рабочей конфиграции это брешь в безопастрости, нестабильность, непредсказуемость системы, невозможность сбора статистики +100500 других пагубных вещей.
Обычно один раз делается установка системы, разорачивающая базу, а далее вставка/изменение данных. ALTER применяется в очень специфичных случаях. В которых прописывабтся привелегии доступа отдельно и специально, + дополнительные проверки на невероятные варианты запуска.

Не надо приравнивать вещи, даже если они все подсвечиваются одним цветом в каком-то редакторе.
3 апр 12, 17:21    [12359253]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить