gifts2017

Аська или мессенджер для 1С

Опубликовал Игорь l (iilashin) в раздел Программирование - Практика программирования

Обмен сообщениями в 1С

Аська.

Требования и подключение:

1) Режим работы тонкий клиент

2) Наличие ПараметрыСеанса.ТекущийПользователь тип СправочникСсылка.пользователи (ну это во всех конфигурациях)

3) Из CF файла добавить в конфигурацию 2 регистра сведений , см.скриншот

Изменить тип измерений

ОТ, КОМУ, ПОЛЬЗОВАТЕЛЬ  с типа "СТРОКА" на тип "СправочникСсылка.Пользователи"


это все. 

Пример использования:

1) добавить в конфигурацию обработку мессенджер.

2) Размещаем на произвольной форме кнопку для открытия мессенджера.

3) в модуле формы в процедуре ПриОткрытии() пишем 

ПодключитьОбработчикОжидания("ПроверкаНовогоСМС", 60*3) ; // каждые 3 минуты проверяем новое сообщение

4)

&НаКлиенте
Процедура ПроверкаНовогоСМС()
    Если ЕстьНовоеСМС() Тогда
         Элементы.КнопкаМессенджер.Картинка = КартинкаНовоеСМС();
    Иначе 
         Элементы.КнопкаМессенджер.Картинка = КартинкаНЕТСМС();
    КонецЕсли;
КонецПроцедуры

5)

&НаСервереБезКонтекста
Функция ЕстьНовоеСМС()
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| МАКСИМУМ(ртРазговоры.ДатаРазговора) КАК ДатаРазговора
|ПОМЕСТИТЬ Разговоры
|ИЗ
| РегистрСведений.ртРазговоры КАК ртРазговоры
|ГДЕ
| (ртРазговоры.От = &текпользователь
| ИЛИ ртРазговоры.Кому = &текпользователь)
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| МАКСИМУМ(ртРазговорыДатаПросмотра.ДатаПрочтения) КАК ДатаПрочтения
|ПОМЕСТИТЬ РазговорыДатаПросмотра
|ИЗ
| РегистрСведений.ртРазговорыДатаПросмотра КАК ртРазговорыДатаПросмотра
|ГДЕ
| ртРазговорыДатаПросмотра.Пользователь = &текпользователь
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВЫБОР
| КОГДА Разговоры.ДатаРазговора ЕСТЬ NULL 
| ИЛИ РазговорыДатаПросмотра.ДатаПрочтения ЕСТЬ NULL 
| ТОГДА ЛОЖЬ
| ИНАЧЕ ВЫБОР
| КОГДА Разговоры.ДатаРазговора > РазговорыДатаПросмотра.ДатаПрочтения
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ
| КОНЕЦ КАК ЕстьНовое
|ИЗ
| РазговорыДатаПросмотра КАК РазговорыДатаПросмотра,
| Разговоры КАК Разговоры
|;
|
|////////////////////////////////////////////////////////////////////////////////
|УНИЧТОЖИТЬ Разговоры
|;
|
|////////////////////////////////////////////////////////////////////////////////
|УНИЧТОЖИТЬ РазговорыДатаПросмотра";

Запрос.УстановитьПараметр("текпользователь", параметрысеанса.ТекущийПользователь);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
  Если Выборка.ЕстьНовое Тогда
    Возврат истина;
  КонецЕсли;
КонецЕсли;

Возврат ложь;

КонецФункции

 

Скачать файлы

Наименование Файл Версия Размер
CF и обработка одним архивом 17
.rar 20,25Kb
18.05.15
17
.rar 20,25Kb Скачать
Файл конфигурации (2 регистра сведений) 4
.cf 8,32Kb
15.05.15
4
.cf 1 8,32Kb Скачать
Форма мессенджера в виде внешней обработки 8
.epf 16,74Kb
18.05.15
8
.epf 16,74Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Николай (Nick_Godspeed) 18.05.15 13:06
Треш и угар. Это даже не велосипед. Это самокат без колес.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа