Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
21 ноя 2024, 16:47

Обмен между базами

Автор esscargoott, 11 сен 2024, 13:49

0 Пользователей и 1 гость просматривают эту тему.

esscargoott

Есть задача разработать механизм обмена данными между двумя базами – если в одной базе внесли документ (как я понял провести определённый документ), то в другой базе у работающих пользователей на экране всплывает отчет (думаю сделать сообщение которое покажет список из тч документа с номенклатурой и количеством), показывающий данные из этого документа.

Делаю выгрузку в xml файл на диске С там хранится вся тч документа, теперь не знаю как сделать так чтоб в другой базе файл прочитать и вывести пользователям. Как дать понять базе2 что в базе1 был проведен документ и пора читать данные с файла?

Максим75

esscargoott, такую задачу можно решить через сервисы (HTTP или веб), но для этого база "приемник" должна быть опубликована для работы через веб-интерфейс. Тогда в базе "приемнике" пишите сервис, и вызываете из базы "отправителя" некую функцию этого сервиса и что-то в эту функцию передаете, в "приемнике" при обращении к этой функции выводите сообщение пользователям.
ну как то так.

вот недалеко в ветке есть пример с сервисом.

ну или в базе "приемнике" с определенным интервалом ищете в какой-то определенной папке файл с нужным именем, если находите - то обрабатываете файл, выводите сообщение пользователям и файл затираете. А в "отправителе" при проведении документа в эту папку что-то пишите. Так работают в типовых обмены между разными базами.

esscargoott

Максим75, просто я вообще не разбираюсь в сервисах этих и норм примера в инете не нашла, может знаете статьи или сайты где можно подробно прочитать?

Максим75

esscargoott, да так в поисковике и забиваете примеры веб или http сервисов в 1С, их вагон.
тут вопрос, сможете ли Вы базу опубликовать (если она еще не опубликована), да и дадут ли на это разрешение.
может пробовать вторую часть из моего поста. делаете обработчик ожидания, который с периодичностью запускает некую обработку, которая уже "смотрит" в нужную жестко прописанную папку и если находит там файл с нужным именем, то запускает его обработку. и т.д.

esscargoott

Максим75, насчет второй части. мне надо как в задании сказано чтоб при введении документа у других появлялся некий отчет. те если сделать обработчик ожидания то он будет просто так смотреть в папку, а надо чтоб при проведении в другой базе

fruitella

Можно настроить авточтение твоего файла. Обработка будет срабатывать по регламентному заданию. Куда нибудь это запиши, хоть в хранилище настроек,потом его чисти, перед каждым заполнением.
Можно при запуске 1с, при открытии какого-то документа или подписке на какое-то событие выводить инфу пользователю. Настроить можно по разному.
Сперва файл свой прочитай с данными, а потом переходи к заключительной части, это вывод информации для пользователя.

Максим75

esscargoott, так и говорите, если чтобы сразу - то надо публиковать базу, рисовать сервис и т.д.
если с некоей задержкой (ну там 10 секунд) - то через файл на диске. при проведении документа пишите файл (на каждый документ свой, в имени как-то шифруете номер дока, дату дока или еще что-то), а программа "приемник" с периодичностью допустим 10 секунд смотрит в папку. Находит нужный файл/файлы - принимает, выводит сообщение пользователю, и обязательно при окончании обработки файла его там затирать, чтобы не вываливались сообщения на один и тот же документ кучу раз.

может есть еще какие варианты - я не знаю, надо подождать пока ГУРУ ответят.

esscargoott

Максим75, а как понять какой файл нужен второй базе? Мен получается надо открыть и прочитать все файлы (файл) в папке, а как передать их имена в код???

Максим75

esscargoott, да просто все xml файлы, что есть в папке, обрабатываете.
можете для верности писать в сам xml-файл какой-то реквизит, т.е. если есть этот реквизит в структуре файла, то однозначно файл надо обрабатывать. главное его потом удалить из папки.
ну а если файл не нужный, то просто пропускать.
как то так.

Теги:  обмен 

Похожие темы (5)

Рейтинг@Mail.ru

Поиск