#0
by MaxS
Сделал автоматическую отправку сообщения обмена по e-mail каждые 15 минут. Но если никто допустим не работает в выходные и связь пропала. То центральная база будет забиваь почтовый ящик сообщениями до бесконечности. Как узнать были ли изменения зарегистрированных объектов за прошедшее время?
#2
by MaxS
Неужели это выяснить сложнее, чем дать заключение о том, были ли американцы на луне? ;) Пока напрашивается мысль завести в узле список, куда записывать ссылки на измененные объекты. И перед очередным обменом проверять изменилось ли что-нибудь. Но это мне кажется извращением.
#3
by RomaKRSK
почитай про ВыбратьИзменения. Как у тебя получилось "Сделал автоматическую отправку сообщения обмена по e-mail каждые 15 минут" не зная планов обмена? :)
#4
by MaxS
Тип: ВыборкаДанных. Описание: Формирует выборку измененные данные для передачи их в тот или иной узел плана обмена. При этом в процессе выборки изменений в записи регистрации изменений проставляется номер сообщения обмена данными, в котором должны передаваться изменения. Номер сообщения в записи регистрации проставляется для того, чтобы при подтверждении приема сообщения, в котором передавались изменения соответствующие записи регистрации изменений были удалены и в дальнейшем изменения больше не передавались. В моем случае _нет_ подтверждения приема сообщения. Нужно при отсутствии изменений в базе увеличить интервал отправки сообщений. (например не каждые 15 мин, а каждый час. Если пол дня нет изменений то отправлять сообщения раз в день. Если неделю нет изменений в базе, то отправлять раз в неделю и т.д. )
#5
by RomaKRSK
Может тогда и не выгружать повторно, раз "В моем случае _нет_ подтверждения приема сообщения."? что за база "Если неделю нет изменений в базе"? нах тогда вапще обмен?
#6
by MaxS
Как не выгружать повторно? Как узнать были ли изменения в базе? ;) Ну например ушли все праздновать новый год на пару недель. Связь с периферийной базой пропала. Зачем засорять ящик? Как вариант, можно самому же чистить ящик от старых писем, если есть туда доступ. а если доступа туда нет?
#7
by RomaKRSK
Пока ВыборкаИзменений.Следующий Цикл - получаешь изменения. ё... а еще можно ящик чистить автоматически, удаляя, например письмо после сохранения аттачмента от опр.адресата. Удачи. учите матчасть
#8
by MaxS
что-то мы зациклились ваш ответ 7 равен 3. См. мои ответы (2,4,6). Попробую еще раз ;) Через ВыборкаИзменений получаем зарегистрированные изменения. А как получить информацию о изменении зарегистрированных изменений?
#9
by avmlvm
"КАК получить информацию о изменении зарегистрированных изменений?" Поставь "лог" при приёме изменений.. И так как они делаются БЕЗ ВСЯКИХ ПРОВЕРОК - считай, что они "внесены"... Ну или сам пиши проверку (ну-у.. знаешь что должно поменяться, знаешь, ЧТО у тебя было "до", ну и знаешь ЧТО у тебя "после"... И тут проверку сделать (раз плюнуть" (но оно тебе надо?) :-))) Удачи
#10
by MaxS
Ну вот конкретный ответ. Если никак, значит придётся делать(или не делать) это самому. ;) А пока выяснился такой момент. почтовый ящик, КУДА отправляются сообщения будет нам _доступен_ для изменений. Т.е. можно(если нужно) чистить его.
#11
by Pashkaa
У меня сделано по другому. Я не проверяю были ли изменения с момента последней выгрузки, я проверяю есть ли от узла который отправляет файл этот же файл в почтовом ящике и ВСЁ Логика такая, если файл отправленный не прочитан значит нефиг отправлять заново т.к. его всё равно ни кто не считает
#12
by avmlvm
хм-м.. что за глупости :-))) Если посылаешь файл с тем же самым именем (которое указывает кто "источник", а кто "приёмник") то проблема - решается.. А при обмене система сама проверит, что бы номер сообщения был не меньший, чем ожидалось :-) Удачи
#13
by MaxS
А если были изменения изменений? и файл в ящике лежит. По вашей логике в ящик не попадёт последнее состояние базы? распознать для кого письмо в ящике не проблема. На той стороне, допустим система умеет чистить ящик от лишнего и забирать последнее. Просто не хочется чтобы в ящике лежало, например 672 письма.
#15
by MaxS
Нет ещё. просто внедрили, на одной стороне автообмен запустили, базой ещё не пользуются, на том конце ещё не начали принимать. Сервер доволен что у него работа есть - отправляет письма непрерывно ;)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как узнать какие изменения были произведены в базе (а точнее в справочнике)
- Планы обмена, правила обмена, КД
- Правила обмена, планы обмена, универсальный обменриб - запутался
- Как узнать какие изменения были внесены в конфигурацию
- Подскажите как узнать дату последнего изменения документа, используя план обмена?
В этой группе 1С
- Настройка 1С 8.0 и SQL Server 2005 Enterprise
- Как коректировать записи регистра бухгалтерии без перепроведения документа?
- Прочитал ПБУ 18/02 и теперь не пойму зачем в 1с ведется налоговый учет...
- v8: Не могу разобраться с СправочникОбъект.ОбменДанными.Загрузка = Истина
- Как запиндюрить случайный выбор файла из папки
- Как в делфи удалить все строки из поля Memo
- Зарегистрировал компоненту 1CBarCode.dll под WINDOWS 2003 SERVER и не рабо
- Карточка счета и Инвентаризационная опись по 10-ке показывают разные данные
- v7: Документ не делает проводок, нет операций?
- DynamicWrapper функция не возвращает строковое значение
- Свертка Торговля и склад
- SQL, делаю архив лога, а текущий лог не уменьшается?
- Как дать пользователю права администратора на контроллере домена
- Как скопировать роль с другой конфигурации?
- Отчеты, отчеты и еще раз отчеты.
- Можно ли получить область из другого макета?
- Форма списка справочника с закладками
- v7: Импорт/Экспорт документов 1С ЗиК 7.7
- Сервер не смог выделить память из невыгружаемого пула памяти
- v8: Можно ли уменьшить dt - файл выгрузки