может кто то скажет почему так происходит
Даю кода
Модуль управляемого приложения
&НаКлиенте
Процедура ОбработатьОжидание()Экспорт
РезультатПроверкиСообщений = ОбщийМодульЧат.ПроверитьНаличиеСообщенийСервер();
Если Не РезультатПроверкиСообщений = "" Тогда
Сообщить("Сообщение чата " + РезультатПроверкиСообщений);
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ПриНачалеРаботыСистемы()
ПодключитьОбработчикОжидания("ОбработатьОжидание",5,);
&НаСервере
Функция ПроверитьНаличиеСообщенийСервер() Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СообщенияЧата.Текст
|ИЗ
| РегистрСведений.СообщенияЧата КАК СообщенияЧата
|ГДЕ
| СообщенияЧата.ДатаВремя = &ТекущаяДата";
Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДата());
Выборка = Запрос.Выполнить().Выбрать();
ТекстСообщения = "";
Если Выборка.Следующий() Тогда
ТекстСообщения = Выборка.Текст;
КонецЕсли;
Возврат ТекстСообщения;
КонецФункции
и как часто датаВремя сообщения совпадает с текущейДатой ?
уберите в проверке на клиенте НЕ - посмотрите как работает
sava1 @ Сегодня, 15:26
,
по идеи код должин был таким
| СообщенияЧата.НачалоПериод <= &ТекущаяДата
| И СообщенияЧата.КонецПериода >= &ТекущаяДата";
Перем глПоследняяДатаВремяЧата Экспорт
&НаКлиенте
Процедура ПриНачалеРаботыСистемы()
глПоследняяДатаВремяЧата = ТекущаяДата();
ПодключитьОбработчикОжидания("ОбработатьОжидание",5,);
КонецПроцедуры
&НаСервере
Функция ПроверитьНаличиеСообщенийСервер() Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СообщенияЧата.Текст
|ИЗ
| РегистрСведений.СообщенияЧата КАК СообщенияЧата
|ГДЕ
| СообщенияЧата.ДатаВремя МЕЖДУ &ДатаНачала И &ДатаОкончания";
Запрос.УстановитьПараметр("ДатаНачала", глПоследняяДатаВремяЧата);
Запрос.УстановитьПараметр("ДатаОкончания", ТекущаяДата());
Выборка = Запрос.Выполнить().Выбрать();
ТекстСообщения = "";
Если Выборка.Следующий() Тогда
ТекстСообщения = Выборка.Текст;
КонецЕсли;
глПоследняяДатаВремяЧата = ТекущаяДата()+1;
Возврат ТекстСообщения;
КонецФункции
&НаСервере
Функция ПроверитьНаличиеСообщенийСервер() Экспорт
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СообщенияЧата.Текст
|ИЗ
| РегистрСведений.СообщенияЧата КАК СообщенияЧата
|ГДЕ
| СообщенияЧата.ДатаВремя МЕЖДУ &ДатаНачала И &ДатаОкончания";
Запрос.УстановитьПараметр("ДатаНачала", глПоследняяДатаВремяЧата);
ДатаОкончания = ТекущаяДата();
Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
Выборка = Запрос.Выполнить().Выбрать();
ТекстСообщения = "";
Если Выборка.Следующий() Тогда
ТекстСообщения = Выборка.Текст;
КонецЕсли;
глПоследняяДатаВремяЧата = ДатаОкончания + 1;
Возврат ТекстСообщения;
КонецФункции
Vidocq05 @ Вчера, 19:03
,
Ну почти все руль только во так заработало
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СообщенияЧата.Текст
|ИЗ
| РегистрСведений.СообщенияЧата КАК СообщенияЧата
|ГДЕ
| СообщенияЧата.ДатаВремя МЕЖДУ &ДатаНачала И &ДатаОкончания
|
|УПОРЯДОЧИТЬ ПО
| СообщенияЧата.ДатаВремя УБЫВ
|АВТОУПОРЯДОЧИВАНИЕ";
Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ТекущаяДата()));
ДатаОкончания = КонецДня(ТекущаяДата());
Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания);
Выборка = Запрос.Выполнить().Выбрать();
ТекстСообщения = "";
Если Выборка.Следующий() Тогда
ТекстСообщения = Выборка.Текст;
КонецЕсли;
Возврат ТекстСообщения;
Batchir @ Сегодня, 10:02
,
Проще сделал
Ужал временными рамками
Может конечно не верно сделал но работает и не флудит
конечна интересная тема но ставить для мой базы не вижу смысла и самому интересно довести что то до ума
Установка системы взаимодействия
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua