Расширение возможностей УРБД (1С 7.7) + исходники на С++

31.10.11

Интеграция - Обмен между базами 1C

Обработка позволяет настроить правила выгрузки из центральной базы в периферийные.

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

Наименование Файл Версия Размер
Настройка правил.
.rar 129,31Kb
242
.rar 129,31Kb 242 Скачать
Исходники
.rar 1,58Mb
27
.rar 1,58Mb 27 Скачать

Для работы этой обработки необходимо чтобы на компьютере был установлен WinRAR, а также 1С++.

Первый запуск "Настройка УРБД.ert" стоит производить в НЕмонопольном режиме на центральной базе, так как она копирует ДБФ файл и читает из него какие периферийные базы у вас есть. После изменения настроек периферийных баз потребуется запуск этой обработки в немонопольном режиме, для того чтобы она смогла прочесть ваши изменения.

Настройка очень простая, нужно указать, при каком значении реквизита будет выгружаться (не выгружаться) тот или иной документ (справочник). Старайтесь для одного документа (справочника) создавать не более одного правила, так как программа все равно обработает только то правило, которое ей первым встретится.

URBD_2.exe лучше всего запускать из bat файла или из командной строки с передачей ему параметра, где храниться файл с настройками, сгенерированный "Настройка УРБД.ert", например

E:\Base\URBD\URBD_2.exe E:\Base\<каталог вашей базы>\URBD\

Часть ошибок программа пытается сохранять в файлы, один файл появляется в той же папке откуда запускался exe файл, а второй появляется в папочке <каталог вашей базы>\URBD.

 

Добавленно 21 июня 2011г.

См. также

SALE! 10%

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0. Переносятся остатки, документы и справочники

Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v7.7 Платформа 1С v8.3 1С:Бухгалтерия 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0 | Продукт является развитием и исправлением ошибок стандартной обработки для выгрузки данных из 1С Бухгалтерии 7.7 в Бухгалтерию 3.0 | Предоставляем техподдержку | Обновляем на новые релизы 1С | Перенос из 7.7 является сложным, и на рынке сложно найти специалистов 1С по "семерке" - наши сотрудники помогут вам выполнить переход в рамках техподдержки предлагаемого переноса данных!

50722 45650 руб.

26.05.2020    33908    10    67    

16

Конфигурация "Информационный киоск". Обработки выгрузки товаров для ТиС 9.2, УТ 10.3, УТ 11 (обмен данными с любой конфигурацией 1С 7.7, 8.х)

Оптовая торговля Розничная торговля Обмен между базами 1C Сканер штрих-кода Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Управленческий учет Платные (руб)

Конфигурация предназначена для организации offline доступа клиента (покупателя) к информации о товарах, услугах или дисконтных картах посредством сканирования штрих-кода. Основная цель – мгновенно предоставить наиболее актуальную информацию о цене, остатках, наименовании товара (услуги) или накоплениях, держателе, состоянии дисконтной карты.

1800 руб.

21.12.2014    59233    8    21    

20

Выгрузка данных из 1С 7.7. в формате EnterpriseData 1.6 (универсальный формат обмена) в конфигурации 8.3

Обмен между базами 1C Платформа 1С v7.7 Платформа 1С v8.3 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обработка позволяет выгружать данные из ТиС 7.7 в конфигурации 8.3 для сдачи отчетности, для переноса данных при переходе на 8.3, для организации обмена внутри компании при использовании разных версий 1С в структурных подразделениях или формирования отгрузочных накладных для клиентов.

6000 руб.

18.05.2020    22690    59    39    

35

Выгрузка из 1С ТиС 9.2 в 1С БП 3.0 с дополнительными фильтрами по Фирме, Складу, Контрагенту, Проекту, Автору и Юрлицу

Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 Бухгалтерский учет Управленческий учет Абонемент ($m)

Обработка и правила обмена данными для выгрузки документов и всех связанных с ними справочников из 1С7.7 ТиС 9.2 в 1С8.3 БП 3.0 через файл XML. В типовых конфигурациях уже есть такое решение. Это немного доработанные правила и сама обработка выгрузки, добавлена возможность устанавливать отбор по выгружаемым документам по Фирме, Контрагенту, Складу, Проекту, Автору, ЮрЛицу. А также это внешняя обработка, что даёт возможность адаптировать её под нетиповую ТиС. Обработка и правила тестировались на платформах: 1С: Предприятие 7.7 и 1С: Предприятие 8.3.18.1334. На типовых конфигурациях: «Торговля + склад», редакция 9.2 (7.70 1004) и «Бухгалтерия предприятия» редакция 3.0 (3.0.96.30).

1 стартмани

13.08.2021    8364    52    Kuzya_brаtsk    8    

11

Переход с 1С:Комплексной 7.7 на 1С:УТ 10.3

Обмен между базами 1C Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 1С:Управление торговлей 10 1С:Комплексная 7.7 Россия Управленческий учет Платные (руб)

Начните вести учет в УТ 10.3! Перенесите все свои данные в УТ 10.3 в любом месяце года и продолжите вести учет! Программа перенесёт любое количество баз с документами и остатками в больших количествах. Обработка выгрузки выполнит проверку исходных данных и сформирует отчет о найденных ошибках в справочниках и документах. Партии переносятся с себестоимостью. Штрихкоды номенклатуры загружаются. Цена переносится. Автор консультирует.

8400 руб.

17.03.2021    15534    5    13    

6

Обмен данными ЗУП 3.1 - Бухгалтерия 7.7

Зарплата Обмен между базами 1C Бухгалтерский учет 7.7 Сложные периодические расчеты 1С:Бухгалтерия 7.7 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Как известно, Бухгалтерия 7.7 не имеет штатной возможности для обмена с ЗУП 3.1. Данная разработка пригодится тем, кто перешел с ЗиК 2.3 на ЗУП 3.1, но вынужден по каким-то своим причинам оставаться на Бухгалтерии 7.7.

18000 руб.

29.09.2020    13583    2    0    

5

Конвертация данных из 1С 8.3 в 7.7 (версия КД 2.1). Перенос данных из 8.3 в 7.7. Создание в современной 1С 8.3 XML в формате КД2. Инструкции и примеры переноса данных из любой современной 1С 8.3 в устаревшую конфигурацию 1С 7.7, через Конвертацию данных 2

Обмен между базами 1C Платформа 1С v7.7 Платформа 1С v8.3 1С:Конвертация данных Бесплатно (free)

При переходе на новую версию 1С в период параллельной эксплуатации может возникнуть необходимость обратной конвертации данных (по правилам КД версии 2.1) из 1С:Предприятие 8.3 в 1С:Предприятие 7.7 для переноса данных из 1С:Предприятие 8.3 в 7.7. Сделать это поможет следующая инструкция по КД2 о том, как создать новую конвертацию из 8.3 в 7.7, сохранить модуль и правила загрузки данных, сделать загрузку данных. КД2.

17.10.2019    14018    ksnik    0    

15

Загрузка адресов произвольного формата (КЛАДР и нестандартных "грязных" адресов) в ФИАС современных конфигураций из 1С 7.7

Загрузка и выгрузка в Excel Обмен между базами 1C Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 1С:ERP Управление предприятием 2 Абонемент ($m)

Описание технологии загрузки любых адресов из 1С 7.7 с разложением по ФИАС в современные конфигурации 1C 8.3 на примере ERP. Предлагаемый способ просто чудо, он гарантирует результат, он очень простой и качественный! Моя обработка является синтаксическим анализатором, который подставляет в строку грязного адреса выражение "Дом №" и "Корпус", благодаря чему грязные адреса 7.7 сами очень хорошо раскладываются по значимым полям ФИАС - заполняется область, город, улица, дом, корпус.. все раскладывается само с помощью встроенного механизма современных конфигураций 1С 8.3, который написали сами сотрудники фирмы 1С!

1 стартмани

16.08.2019    19259    17    ksnik    12    

8
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. iov 406 27.05.10 16:32 Сейчас в теме
тоесть это для DBF баз и это не пользуется штатным механизмом?
2. Izosin 50 27.05.10 20:18 Сейчас в теме
Это дополнение к штатному механизму УРБД. У нас ДБФ версия, работает с января месяца, пока что полет нормальный. На SQL не пробовал, у меня нет под рукой SQL версии.

EXE файл берет файл выгрузки, распакивывает его, загружает в себя, и обрабатывает согласно правилам. После этого данные обратно записываются в файл и упаковываются. Разбивка на строки в некоторых местах нарушается но в целом в файле выгрузки синтаксис полностью сохраняется.

Этот файл также может обрабатывать певоначальный файл выгрузки.

Основная задача которая решалась при написании этой обработки это разделение документов по складам. У нас центральная база стоит в центральном офисе, и в каждом магазине периферийная база. Сейчас каждый магазин имеет в своей базе только те документы которые относятся к его складу или кассе, и никаких чужих документов нет. Периферийные базы стали намного меньше, а следовательно и работают намного быстрее. Плюс ко всему даже если какой нибудь умелец скопирует базу, он получит движения только по этому магазину.
3. sytkosa 119 27.05.10 23:49 Сейчас в теме
Гы... я пад сталом "Основная задача которая решалась при написании этой обработки это разделение документов по складам." А что миграцию обектов использвать религия не позволяет.... зачем весь этот велосипед
4. Izosin 50 28.05.10 08:12 Сейчас в теме
8SiriuS8 Представь простую ситуацию. Есть 3 базы, централная база это центральный склад, 2 перифериные базы это магазины, товар поступает на центральный склад, а может поступать на прямую в магазин. Вроде бы самый простой пример. Если мне кто нибудь объяснит как можно сделать так чтобы документы относящиеся только к центру или к Магазин1 не попадали в Магазин2, то я наверно поменяю свое вероисповедание.
5. nikitan 94 28.05.10 09:23 Сейчас в теме
(4) рекомендую поменять свое вероисповедание

На вкладке "Миграция" поставь точку в нужном месте и будет счастье.
Прикрепленные файлы:
6. Izosin 50 28.05.10 09:49 Сейчас в теме
(5) Наверно слишком упростил пример.
Предположим что у нас есть Центр (Центральная база), Склад(периферийная), Фин отдел (который к сожалению находиться не в одном здании с центральным офисом) и куча магазинов. В некоторых магазинах сидят менеджеры которые управляют магазинами находящимися в его городе.

Теперь Вопрос - Какую мне галочку поставить чтобы на складе видели документы только касаемые движения ТМЦ, в фин отделе движения денег, Менеджеры видели только те документы которые относятся к их региону, а магазин только свои документы?

По началу все было сделано правами, я писал новые ограничения, народ искал возможности обхода этих ограничений. Ведь любая периферийная база имела полный набор документов, а значит любому знающему человеку не составит труда скопировать базу, зайти туда с админскими правами и посмотреть все что ему надо. А так в в периферийной базе содержаться только те документы которые касаются только этого участка работы. Правда есть куча ограничений и эта система не лишена недостатков, но все равно она решает поставленную мне задачу.
7. nikitan 94 28.05.10 10:07 Сейчас в теме
(6) Ну если любой знающий человек может скопировать базу, то это уже потенциальная большая дыра.
А так, имхо, достаточно штатного механизма и ограничения пользователей по правам (возможно даже с "привязкой" к префиксу ИБ).
8. iov 406 28.05.10 11:45 Сейчас в теме
(0)ну смысл понятен - решение хоть и внешнее но оригинальное...
Есть вопросы:
-что происходит если файл выгрузки содержит измененный MD?
- изменяется только файл выгрузки ? Какие файлы еще задействованы? (это к работе на sql)
- выложи исходники программы если не жалко... (это лично для посмотреть и возможно добавить некоторый функционал).
9. Izosin 50 28.05.10 14:08 Сейчас в теме
(8) Если в файле выгрузки содержится MD файл, он там и остается, уже проверенно не только в лабораторных условиях, но и на боевой базе. Так же можно обрабатывать и первоначальный файл выгрузки, они хоть немного и отличаются, но не настолько чтобы 1С потом не смогла загрузить обратно.

Меняется только файл данных в архиве, он создается заново после обработки данных по правилам. На SQL как я уже писал не тестировал, если УРБД на SQL работает с тем же форматом то думаю будет все равно DBF или SQL. Все необходимые файлы внешняя обработка создает сама в папке с базой данных. Обработка не отслеживает изменения конфигурации поэтому при изменении состава реквизитов, или их очередность у документов(справочников) советую перепроверить сохраненные правила, Сам попадал уже на эти грабли после того как удалил один реквизит и реквизит "Склад" стал не 7-м по списку а 6-м. При добавлении реквизитов в конце или переименовании ничего не меняется.

Это третья попытка реализовать задачу. В начале я попробовал редактировать 1SUPDTS.DBF, но я быстро понял что документы такие как ПеремещениеТМЦ или Перемещение денег выгружаются с движениями по складу(кассе) которые к этой базе не имеют отношения. Пришлось разобраться с форматом файла выгрузки и написать обработку в 1С которая меняла это файл, но и тут была проблема. Во первых я так и не придумал быстрого и надежного способа, как из одного батника запускать конфигуратор для автообмена и предприятие для выполнение данной обработки. Во вторых все это было настолько медленно что я взялся за изучение С++. Разница меня поразила, то что 1С делала в течении 20 минут программа написанная на С++ выполняла менее чем за минуту, при потреблении памяти почти в 2 раза меньше.

Надеюсь все кто будет пользоваться этой обработкой будут отдавать себе отчет о всех проблемах которые на него сваляться.
13. Dolly_EV 269 02.06.10 11:44 Сейчас в теме
(9) Плюс не глядя! когда я встал перед проблемой разбора *.dat файла - так и не решился реализовать.

(3,5,7) Рекомендую задуматься, зачем компания ПиБи сделала в свое время "Менеджер обмена данными", который успешно продавала.

По поводу SQL - быстрее это будет работать на триггерах.
10. victuan 4232 02.06.10 05:23 Сейчас в теме
Меня заинтересовало.
А можно ли сделать, чтобы по правилам менять вид выгруженного документа?
Например выгружаем из ЦБ ПеремещениеТМЦ, а в ПБ загрузиться ПоступлениеТМЦ (или ОприходованиеТМЦ)?
Чтобы остатки ТМЦ на на ПБ не уходили в "-" по "чужим" складам.
Было бы очень интересно
11. Izosin 50 02.06.10 09:51 Сейчас в теме
К сожалению менять нельзя. Обработка работает с данными находящимися в файле выгрузки, она понятия не имеет о существовании 1С и уж тем более какая там конфигурация. Все что можно это удалить или оставить в этом файле какие нибудь данные. Механизм выгрузки/загрузки из 1С используется стандартный, который в УРБД.

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

Небольшой совет: Если есть желание разобраться побыстрее с этой обработкой, то скормите ей файл первоначальной выгрузки, еще на стадии формирования периферийной базы. Обычно я это делал так: создавал периферийную базу, делал под нее настройки, а потом в DBF файле менял этой базе признак на вновь созданную и выгружал с нуля. После обработки этого файла и загрузки в пустую базу сразу станет видно что выгрузилось а что нет.
12. Удалить 02.06.10 11:21 Сейчас в теме
(11) Я не совсем понял, вы удаляете часть данных документа или целиком документ? Все перемещения вводятся только в центральную базу?

(10, 11) Можно сделать, но тогда Вам надо будет фильтровать и входящий файл. Но лучше УРБД для этого не использовать.

(8) +1 и если есть, описания формата файла обмена и механизма обмена.

(6) Какую задачу выполняет региональная база (менеджер) с учётом описанных Вами ограничений?

(1) Формат файла обмена не зависит от версии 1С. Для SQL версии есть более универсальное решение - хранимая процедура, фильтрующаяя 1SUpdts по произвольным правилам.
14. Izosin 50 02.06.10 12:19 Сейчас в теме
(12) Пойду по порядку:

Удаляться может как целиком документ или справочник, но также если документ не удаляется у него могут удаляться записи о движении по регистрам. Точней проверяются у всех документов которые остаются, и также для каждого регистра по любому измерению можно настроить правило выгружать/не выгружать. Отметка о сделанном движении удаляется из файла переноса данных, и при загрузке в периферийную базу этого движения не будет. Но стоит этот документ перепровести 1С снова сделает все движения которые она должна была сделать у этого документа. Если движения ограничить в конфигураторе, то при проведении в периферийной базе документа он получит неполные движения и эти неполные движения попадут в основную базу, так что с этой проблемой я никак не могу разобраться. Пока что я ограничил проведение документов "ПеремещениеТМЦ" и "Перемещение денег" в базах которые не могут оперировать хотя бы одним из складов.

Заменить один документ на другой в файле выгрузки это из области фантастики, программа написанная на С++ понятия не имеет ни о структуре данных нового документа, и тем более она не сможет сделать корректные движения. Либо придется написать программу которая будет если и не превосходить по сложности саму 1С то не будет уступать ей.

Механизм выгрузки/загрузки полностью штатный, влезть в dll и внести туда корректировки как это делает 1C++ или Formex я не могу. Даже если случайно найдутся описание библиотек УРБД то мне потребуется не один год чтобы изучить С++ до такой степени что бы написать что нибудь стоящее. Описание формата файла как такого нет, но этот формат очень похож на XML, насколько похож я не могу сказать так как о XML имею только поверхностные представления.

В региональной базе можно выписывать любые документы принадлежащие этой базе кроме Перемещений, Хотя и их тоже можно выписывать если эта база оперирует двумя и более складами/кассами, и склад/касса принадлежат этой базе.

P.S. Думаю такое можно организовать и при передаче данных из периферийной базы в центральную, например если в периферийной базе ведется еще какая нибудь деятельность которая не должна отражаться в центральной базе. Но для этого придется немного поправить внешнюю обработку "Настройка УРБД.ert" чтобы можно было написать правила для центральной базы.

(13) В SQL на тригерах или в DBF простым удалением записи можно ограничить выгрузку документа/справочника но если документ выгружается то выгружается со всеми движениями, по всем регистрам. А используя мой метод например можно у всех выгружаемых документов выкинуть записи о движении по регистру определенного склада, и тогда в отчетах этого склада просто не будет. Да и файлы содержащие движения по этому регистру будут меньше, а значит 1С будет работать быстрее.
16. Dolly_EV 269 02.06.10 14:05 Сейчас в теме
(14) полностью согласен, просто вспомнил про триггеры / хранимые процедуры.... вобщем мега-труд! респект! ;)
(15) вот такой пример: Миграция "Место создания-Центр+Доп.Коды", и тут в бухгалтерии (ЦБ) делают расходную накладную по складу Периф. базы (т.е. она должна попасть в периферику) - все кабздец... начинается "поиск остатков", звонки, выяснения, и потом наконец очередному буху или оператору является "открытие", что так оказывается делать "низзя"... можно конечно наворотить кучу запретов (типа невозможности создания накладной в ЦБ по складу из периф. ИБ), но это решение намного красивее
18. Удалить 02.06.10 15:33 Сейчас в теме
(16) А потом будете выяснять, из-за чего баланс не идёт :( И всех собак на "кривую 1С" повесят.

(15) Настройка штатной миграции позволяет направить документы только в базы-подписчики, а их списком нельзя управлять динамически. В Вашем примере базы L и D будут идентичны центральной ч асти этого объекта. А бывает нужно ввести документ в центральной и направить его в одну из периферийных.

(14) ТИИ в периферийной базе при этом проходит нормально, верно?
У Вас движения в регистре "зеркальны", поэтому "восстановить недостающие" не многим сложнее, чем удалить лишние.
Теперь о движениях регистра. Почему не поставить запрет на миграцию сведений в регистре, и пользоваться следующим алгоритмом:
1) Ввести справочник с реквизитами "База, в которой документ перепровести" и "Документ". В него при записи документа писать ссылку на документ;
2) В документе предусмотреть движения регистров в зависимости от места проведения;
3) После обмена, обрабатывать этот справочник и проводить "новые" документы с отключённым признаком регистрации изменений?
Заодно можно обрабатывать коллизии обмена, о которых УРБД не сообщает впринципе.

(13) Точно, я ошибся, в нете действительно гуляло решение на тригерах. Но это не удобно на загруженных серверах. Но самый большой изврат который я видел на УРБД - трёхзвенка.
maxchaos; +1 Ответить
20. vazubov@gmail.com 03.06.10 08:37 Сейчас в теме
(16) (17) (18) Вообщем смысл понятен, надо так надо.
15. vazubov@gmail.com 02.06.10 12:46 Сейчас в теме
Ставлю плюс за изобретательность и проделанную работу. Молодец. Но nikitan правильно говорит, делается это через миграцию в свойствах документа(справочника, константы). Все это настраивается в центральной базе. Например есть переферийки L, D, M, K. Допустим документ был создан в базе K и должен попадать в базы L и D (соответсвенно в базе М его быть не должно), тогда см. скрин .....
Если же документ должен в перф. базу попадать(не попадать) по условию, это конечно здорово, но в чем смысл?
Прикрепленные файлы:
17. Izosin 50 02.06.10 15:05 Сейчас в теме
(15) Простой пример на одном документе "ОтчетККМ". Этот документ выписывается в каждом магазине, но зачем магазину "А" видеть продажи магазина "В", но эти документы создаются в периферийной базе, но вот например "ПеремещениеТМЦ", "Перемещение Денег", "Списание" выписывают в периферийной базе на центральном складе, но попасть эти документы должны каждый в свою периферийную базу. Они должны быть во всех базах, но разделены с учетом их принадлежности к каждой периферийной базе. Есть масса задач которые не решает стандартный УРБД. Мой только дополняет небольшими дополнениями, при этом внося дополнительную головную боль админу(программисту) который это будет обслуживать.
19. sinas 02.06.10 23:26 Сейчас в теме
ставлю плюс хотя:
подобная идея уже была реализована ... не помню правда кем ... даже обсуждение было
сам ломал голову над использование урбд (да и до сих пор тоже)
вроде бы все правильно но ... как на счет движения документов особенно по партиям
про некоторые отчеты можно забыть
21. serj_lb 22.03.11 17:13 Сейчас в теме
А скажите Из Центральной путь
Выгрузить -куда?
В Периферийной загрузить - откуда ?
В настройки баз ,
я,делал путь, в кот. выгр. из ЦБ
в ПБ я делал путь загрузки в каталог результата ,
там было пусто .
Из описания я понял что каталог в который я делаю выгрузку из ЦБ - Исходный каталог
Загружаю в ПБ из Каталога результатов , но там пусто ?
22. harutyunb 05.07.12 17:58 Сейчас в теме
тема интересная но сложная, должен быть простой алгоритм для работы!
Оставьте свое сообщение