Имя: Пароль:
1C
1С v8
Кто может объяснить мне что такое планы обмена, узлы обмена и как происходит обмен?
0 Сергей-88
 
19.10.11
20:10
Добрый вечер.
Читаю книгу Радченко о планах обмена, узлы обмена...и не могу ни чего понять,  может кто объяснит простым языком?)
По дружбе и если кому просто хочется помочь :-)
1 Михаил Козлов
 
19.10.11
20:45
Если коротко, давайте на примере.
Управленческий учет велется в УТ. Есть несколько розничных точек, где стоит 1С: Розница.
Бухучет ведется в нескольких БД 1С: БП. В эти БД должны выгружаться (и из них приходить) документы отдельно по разным юр. лицам.
Задействованные планы обмена: обмен с БП и обмен с Розницей. План обмна определяет правила, по которым происходит обмен.
В плане обмена "Обмен с БП" заводятся узлы для каждого юр. лица с фильтром по организации.
В плане обмена "Обмен с Розницей" заводятся узлы для каждой розничной точки.
В этих узлах регистрируются объекты для обмена (справовники, документы, регистры сведений и пр.) в соответствии с фильтрами по организациям и розничным точкам.
При выполнении обмена в соответсвии с правилами происходит выгрузка/загрузка зарегистрированных объектов.
2 Сергей-88
 
19.10.11
20:59
Оо спасибо большое за такой хороший ответ! Буду дальше копать!
3 acsent
 
19.10.11
20:59
Планы обмена просто регистрируют факт изменения
4 Сергей-88
 
19.10.11
21:13
А где записываются правила обмена тогда?
5 Alex_MA
 
19.10.11
21:25
(4)правила обмена создаются в конфигурации "схема конвертации данных"
6 Alex_MA
 
19.10.11
21:26
(4)если интересно, то на ИТС есть демонстрационная конфигурация, там все хорошо описано
7 ПесняПроЗайцев
 
19.10.11
21:29
(0) Брось читать глупые книги и займись практикой. Это, наверное, будет самый дружественный совет. И! Полезный!
8 Dirk Diggler
 
19.10.11
21:30
(6) как называется?
9 acsent
 
19.10.11
21:40
Планы обмена - это всего лишь небольшая часть подсистемы обмена.
10 Сергей-88
 
19.10.11
21:45
Ясно.  Спасибо всем.
11 wade25
 
19.10.11
21:49
(5) Не обязательно только там =)
12 wade25
 
19.10.11
21:49
Вот полезно будет =) http://www.mykod.info/
13 verba
 
19.10.11
22:03
(11) Так он о ней, видимо и говорит, только странно называет :)
14 Сергей-88
 
19.10.11
22:17
Wade25     спасибо за ссылку! Большое!) А что разве кд 1 и кд 2 ещё бывает?
16 Stim213
 
19.10.11
22:20
Дебет слева, Кредит справа
17 Сергей-88
 
20.10.11
10:17
А что такое узлы обмена в плане обмена? Допустим в книге есть план обмена-филиалы, и в нем какие то узлы, вот это что?
18 Поручик
 
20.10.11
10:46
(17) Почитать книги не предлагать?
19 Живой Ископаемый
 
20.10.11
10:54
2(17) узлы - это элементы справочнико-подобного объекта "план обмена". каждый узел представляет собой информацию о другой базе - то есть самой базы наша база не видит, но имеет о ней представление благодаря соответствующему узлу в плане обмена.
20 Сергей-88
 
20.10.11
17:31
А каким образом происходит тогда запись данных в файл xml, я просмотрел примеры и там вроде все на автомате, или как? Или где то можно указать записывать документ или нет
21 reggyman
 
20.10.11
17:37
Звездочка в документе на форме в заголовке (модификация егойная) + участие в плане обмена = автомат в регистрации (если распределенная база данных, если нет - ручками). Посмотеть - в составе плаов обмена.
22 Живой Ископаемый
 
20.10.11
17:38
если РИБ, то все на автомате... выбираются изменения, зарегистрированные в служебных таблицах для нужного узла, вызывается движковый сериализатор для каждого объекта и полученный ХМЛ-текст записывается в ХМЛ-запись, которая потом сохраняется в файл... Если не РИБ, то в принципе тоже самое, но ХМЛ-текст для каждого объекта ты получаешь сам согласно правил ли, еще чего.. но в общем сам.
23 Сергей-88
 
20.10.11
17:43
Спасибо за ответы! Буду дальше смотреть. Просто я думал запись в xml документ происходит на подобии как.. И запись в ексель, ну по строчна, например-
Xml.код=справочники.сотрудники.код
...
...
И так далее
Или нет?
24 Живой Ископаемый
 
20.10.11
17:44
2(23)если РИБ, то нет, ты же сам заметил что автоматом...
читай еще:
Книга знаний: УРБД на v8 за четыре шага.
25 Пришел в тапках
 
20.10.11
17:44
(0) Здесь без бутылки не разобраться )
26 reggyman
 
20.10.11
17:45
(23) неа, это прерогатива разработчиков платформы хотя (22) все сказал.... Ты скажи что конкретно надо сделать и особенно - сколькоденегзаэтодают - и помогут...
27 Живой Ископаемый
 
20.10.11
17:48
то есть вот буквально весь код, который выгружает зарегистрированные для текущего узла изменения в файл:

  ЗаписьXML = Новый ЗаписьXML();//создали объект
     ИмяФайлаСообщения = КаталогВременныхФайлов() + "Message_" +
                         СокрЛП(ПланыОбмена.РаспределеннаяБаза.ЭтотУзел().Код) +
                         "_" + СокрЛП(Узел.Код) + ".xml"; //эта и строчка и ниже - служебные по созданию файла
     ЗаписьXML.ОткрытьФайл(ИмяФайлаСообщения);
     ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения(); //создаем сообщение
     ЗаписьСообщения.НачатьЗапись(ЗаписьXML,Узел); //начали запись
     ПланыОбмена.ЗаписатьИзменения(ЗаписьСообщения); //вот это может происходить долго, и все происходит в платформе
     ЗаписьСообщения.ЗакончитьЗапись(); //закончили сообщение
     ЗаписьXML.Закрыть(); //закрыли запись
28 Сергей-88
 
20.10.11
19:31
Вроде тут как бы все изменения в базе сразу записываются. И передаются. А вот если я хочу допустим передать ещё и справочник сотрудники в которых не было изменении? Или передать группу- клавиатуры, справочника номенклатура но без других групп как тогда поступать?
29 EvgeniuXP
 
20.10.11
19:41
(6) не имея представления (теории) можешь так на практиковаться - что мама не горюй.
30 Живой Ископаемый
 
20.10.11
19:43
2(28) Смотри Фокус. изначально эти данные должны быть и в базе источнике, и в базе приемнике.. если их где-то нет, и они например создаются в источнике, они попадают в таблицу регистрации для узла-приемника.. и однажды уходят таки с каким-то сообщением и таким образом появляются в базе-приемнике. Все что для этого нужно, чтобы нужные объекты метаданных просто учавствовали в плане обмена и их регистрация происходила автоматом (значение разрешить автоматическую регистрацию - в разрешить). Если в силу каких-то причин они не были зарегены, их можно зарегить насильно... Если же эти объекты не включены в план обмена - то одно из двух - либо ты слажал, либо ты хитрый сукин сын, который будет потом вручную экземпляры этих объектов сериализовывать и дописывать в файл сообщения (или передавать другим способом) и в базе-приемнике также их загружать вручную спецаильно написанным кодом на языке 1С
31 Живой Ископаемый
 
20.10.11
19:45
то есть если изменений в справочнике не было - тебе нет нужды передавать ни элементы ни группы.
32 Сергей-88
 
20.10.11
19:49
Ааа...получается планы обмена только для этого сделаны? Теперь ясно. А вот для чего тогда используется конфигурация конвертация данных? Если и так все работает и передается
33 Живой Ископаемый
 
20.10.11
19:51
для создания правил обмена между базами с разными конфами. Например между УТ и БП. в таком случае план обмена не может использоваться с галкой РИБ, и юзается исклюбчительно для регистрации изменений.. все остальное пишешь сам . см. (3),(9)
34 Сергей-88
 
20.10.11
19:56
Ясно. Сейчас более менее стало понятно. А каким образом можно например посмотреть этот план обмена в конфигурации? Ну именно код. Это нужно загрузить КД и там открыть уже этот файл хмл выгруженный из базы источника например так?
35 reggyman
 
20.10.11
19:57
неа, это разные вещи. Чтобы "посмотреть" код плана обмена надо открыть его модуль.
36 Сергей-88
 
20.10.11
20:02
Хм...а почему тогда нельзя отредактировать допустим этот код как вы говорите в модуле плана обмена а нужно Использовать КД?
37 reggyman
 
20.10.11
20:04
Потому что КД - независимая конфигурация, а план обмена - часть конфигурации какой-либо.
38 Sk0rp
 
20.10.11
20:37
(36) Это не только код. Это набор условий, правил, кусков кода, структурированный таким образом, каким понимает его обработка универсального обмена данными.
39 Живой Ископаемый
 
20.10.11
22:57
2(36) Потому что он очень большой этот код, его просто добуя если говорить мягко. И чтобы отделять мухи от котлет, и не обременять каждую типовую конфу кодом который предполагает знание всех остальных типовых конф, эти правила и код разрабатываются отдельно, отдельными людьми, правила сохраняют в ХМЛ, и но правда все равно в конфу добавляют  в виде макета (насколько я это знаю).
40 Сергей-88
 
21.10.11
10:35
Не очень понятно все равно, надо книгу по конвертации данных читать.
41 Живой Ископаемый
 
21.10.11
10:38
2(40) там просто удобнее это делать потому что объекты разных конф представлены визуально, и код привязан/погруппирован удобно.. а потом когда это выгружается - посмотри - один сплошной текст, и разобраться в нем...
42 Сергей-88
 
21.10.11
10:59
Понятно. А там все на языке хмл сделано? То есть нужно его выучить сначала да?
43 Живой Ископаемый
 
21.10.11
11:02
нет как раз, там сделано все по максимум визуально, а код который нужно писать - либо в77 либо в8, в зависимости от того, для каких баз пишешь конвертацию. И как раз КД2 чем хороша, что она тебя абстрагирует от ХМЛ.
44 Живой Ископаемый
 
21.10.11
11:02
ну и ХМЛ не язык программирования ни капли, поэтому смысла его учить..
45 Сергей-88
 
21.10.11
11:05
Так... Интересно. Вы пишете про КД2 значит есть ещё и КД1 ? Чем они отличаются? Вот есть книга конвертация данных, с ней какая идет версия не помните?
46 Живой Ископаемый
 
21.10.11
11:07
ничем не отличаются... КД1 была на 77. Ты же не спрашиваешь почему штурмовик Ил-2, и где Ил-1?
47 Живой Ископаемый
 
21.10.11
11:07
в смысле нет КД1 больше. :)
48 Живой Ископаемый
 
21.10.11
11:11
ну а книжка - какая книжка? я знаю ее название?
49 Сергей-88
 
21.10.11
11:11
Ясно) спасибо за ответы.
А вот ещё такой вопрос, у меня стоит версия 1с УТ 10.3 мне нужно сделать обмен с БП 8, я нашел в плане обмена такой обмен, вот как мне можно просмотреть его теперь в конфигурацИи КД2 ?
50 Сергей-88
 
21.10.11
11:12
Книга-конвертация данных, толстая такая) ещё для 8.0 написана была. Она помоемому одна по этои теме
51 Живой Ископаемый
 
21.10.11
11:13
посмотреть как этот план обмена читает правила.. Насколько я помню, правила хранятся в общих макетах в виде двоичного макета.. Можно сохранить его в ХМЛ-файл, и потом полученный ХМЛ файл загрузить в КД2 как правила.
52 Живой Ископаемый
 
21.10.11
11:13
у книг есть название и автор... толщина не является определяющим фактором, равно как и цвет.
53 Живой Ископаемый
 
21.10.11
11:15
эта книга?
http://v8.1c.ru/metod/books/book.jsp?id=121

про КД2.
54 Сергей-88
 
21.10.11
11:21
Я к сожалению не помню сейчас автора, она у меня на другом компьютере.
Значит мне нужно найти этот макет, и загрузить..так понятно.
А вот не давно мне поставили задачу выгрузить остатки товары и цены из типовой УТ11 в битрикс, я попробывал стандартным методом, там есть выгрузка на сайт, все элементы справочников загружалис в битрикс хорошо а вот цены и остатки нет. Хотя по регистрам из которых должны браться эти данные есть все значения, но все равно цены и остатки не загружалис, я мучился мучился и так и не нашел причину...вот мне теперь можно найти этот макет общий который отвечает за обмен данными с сайтом сохранить его в хмл и просмотреть почему не работает в КД2 ??
55 Сергей-88
 
21.10.11
11:22
Да. Эта книга.
56 Живой Ископаемый
 
21.10.11
11:22
ну... с Битриксом не обменивался; но возможно и так...
57 Сергей-88
 
21.10.11
11:26
Спасибо за помощь!:-)