Компания, в которой я работаю занимается розничной торговлей. У нас 6 магазинов + офис.
Все это работает на дописаной 1с77 ТиC + УРБД. В каждом магазине компьютер, на неи 1с77 ТиС + Самописным фронт + Торговое оборудование. Магазины небольшие - от 70 до 150кв.м. Кроме кассовых функций, 1с77 в магазине служит для оприходования товара, печати этикеток, инвентаризаций, и т.п.
DropBox уже третье решение по обмену файлами.
Первый был через электропочту. Файлы отправлял-получал обработкой, с помощью внешней компоненты. Плюсы в том что худо-бедно работало. Минусы: некоторые письма сервера резали как спам, иногда бывало подвиснет интернет и при пересылке большого файла (при обновлении конфиги 4,7мб) компонента не могла прокачать письмо и все повисало и т.п. проблемы
Второй способ обмен через FTP. Работало стабильно, но минусы теже. При пересылке большого файла работа магазина вставала... Или FTP сервер подвис и 1с его не видит, или в магазине интернет отпал... Файлы отправлял получал в самой 1с с помощью DialMail.dll
Была даже написана небольшая софтинка на VB.Net, она умела запускать конфигуратор с параметрами, переименовывать файлы обмена и отправлять-забирать их с FTP сервера. Но на магазинах она не прижилась... по некотрым причинам...
Ну и последний вариант это обмен с помощью DropBox
http://www.DropBox.com это сервис синхронизации информации одного компьютера с любым другим на котором запущен сервис с тем же логин\паролем. Также сервис позволяет синхронизировать одну папку одного аккаунта с другим аккаунтом (Share folder)
На хабре часто делятся не стандартными способами использования этим удобным сервисом http://habrahabr.ru/tag/dropbox/
Для каждого узла УРБД (офис и магазины) завел отдельный аккаунт в BropBox. В центральном акк сделал несколько папок (по числу распределенных узлов) и рашарил каждую папку центрального узла с соответствующим аккаунтом DropBox распределенного узла УРБД.
Можно было конечно использовать один и тот же аккаунт BropBox во всех магазинах, но в этом случае файл обмена каждого магазина грузился бы в каждый магазин. Если это вечерний файл обмена магазина, то размер примерно 1-2 Кб, и фиг бы с ним, пусть грузится по всем магазинам. Но если была изменена конфига (а она у меня в постоянном тюнинге :) то файл обмена уже 4,8Мб При 6 распределенных узлах это каждый магазин должен прогрузить 4,8Мб*6 при обновлении
В общем то сам алгоритм обмена:
При обмене Центр -> Переферийная база
- 1сЦентр генерирует файл параметров для запуска конфигуратора
- 1сЦентр генерирует cmd.bat для:
- запуска конфигуратора с файлом парамтеров из п.1
- переименования файла выгрузки (например 4050.zip -> pr_405_2010-06-30_12-00-05.zik) это делаю чтоб каждый файл обмена был уникальный и не потерялся при следующем обмене
- копирования файла pr_405_2010-06-30_12-00-05.zik в архив и в папку DropBox_а для конкретного узла
- удаления файлов параметров, cmd.bat, лога УРБД
- 1сЦентр запускает cmd.bat и закрывает сама себя. Практика показала что времени на закрытие 1с до запуска конфигуратора очень даже хватает
После того как обмен отработает и файл попадет в папку DropBox_а можно работать в 1сЦентр, а переферийный комп получит свой файл когда DropBox прокачает его. Даже если нет интернета в офисе или магазине, файл дойдет когда инет появится. В идеале через минут 5-10 можно звонить в магазин и просить чтоб нажали обмен.
Примерно так же настроен обмен папкой ExtForms из офиса в магазины
Если кто-то решит зарегистрироваться в DropBox, пожалуста, используйте мой реферал :) за это добавляют место на сервере (250Мб за каждого подписавшегося)
https://www.dropbox.com/referrals/NTU3NzE3ODk
Буду рад ответить на вопросы :)
UPD По поводу приложенной обработки:
1) папку DropBox я разместил в каталоге базы данных
2) в константы добавил КодУРБД, без миграции. Т.о. в центральной базе она равна "000", в переферийных коду УРБД из конфигуратора
3) в настройках автообмена УРБД указал общую папку выгрузки-загрузки КаталогИБ() + "Exch", внутри этой папки есть папка "Архив".
Для автоматической настройки этой опции пытался использовать скрипты, но пока ничего не получилось... попытки описаны тут: http://www.forum.mista.ru/topic.php?id=490386