Имя: Пароль:
1C
 
просмотр логов обмена документов
0 dfxz
 
28.05.10
11:04
При двустороннем обмене УТ БП переносятся не все документы. Поскажите где кроме журнала регистрации (там ни чего нет) можно посмотреть/получить список документов при обмене ? В частности не переносится документ Поступление товаров и услуг.
1 Живой Ископаемый
 
28.05.10
11:07
нужно посмотреть зарегены ли они хотя бы... посмотреть можно запросом
2 Живой Ископаемый
 
28.05.10
11:07
или методом ВыбратьИзменения() плана обмена (если я не наврал)
3 dfxz
 
28.05.10
11:10
В регистрации изменений для обмена напростив всех документов авторегистрация соит запретить, но я ни как не могу найти как её разрешить.
4 dfxz
 
28.05.10
11:33
???
5 hhhh
 
28.05.10
11:39
(3) это нормально. Там не авторегистрация, а ручная: в коде значит регистрируют.
6 Живой Ископаемый
 
28.05.10
11:41
2(3) это не то.
7 Живой Ископаемый
 
28.05.10
11:43
Я имею в виду зарегистрирован ы ли они - эти документы, которые ты думаешь должны быть выгружены.
8 dfxz
 
28.05.10
11:54
а что тогда значит зарегистрированы, стоит ли свойство выгружать в настройке обмена данными вкладка обмен по правилам ? Да, стоит.
9 dfxz
 
28.05.10
11:54
в УТ флажки БУ НУ в документе установлены
10 Живой Ископаемый
 
28.05.10
11:59
2(9) плевать на эти флажки... они изменениями не рулят.
(8) вот дядька, вот почему ты такой не любопытный? вот прямо на первой странице  есть похожая тема:
v8: Обмен с РИБ, не все выгружается
и твоя проблема - не у тебя первого... можно было бы на форуме поискать...
Может я конечно злой или нервный, и нужно было бы просто не отвечать ничего, но просто какой-то безнадежное чувство возникает, и не хочется повторять своими словами в частности про регистрацию то, что и так в любом букваре расписано.. Но который ты почему-то не читал.
11 Живой Ископаемый
 
28.05.10
12:01
кроме того, тебе даже был подсказан метод... как оказалось, я даже правильно написал назщвание.. ты бы уже мог посмотреть его описание в СП. не почитал. цитирую, пусть тебе будет стыдно:
===
ПланыОбменаМенеджер (ExchangePlansManager)
ВыбратьИзменения (SelectChanges)
Синтаксис:
ВыбратьИзменения(<Узел>, <Номер сообщения>, <Фильтр выборки>)
Параметры:
<Узел> (обязательный)
Тип: ПланОбменаСсылка. Узел, для передачи в который отбираются изменения.
<Номер сообщения> (обязательный)
Тип: Число. Номер сообщения обмена данными, в который будут помещены выбранные изменения.
<Фильтр выборки> (необязательный)
Тип: Неопределено, Объект метаданных, СсылкаНаОбъект, НаборЗаписей, Массив. Неопределено - фильтр пуст, выбираются все изменения по узлу;
Объект метаданных - выбираются изменения в основной таблице, связанной с данным объектом метаданных;
СсылкаНаОбъект - фактически, может быть выбрана только одна запись об изменении данного объекта, либо ни одной, если объект не менялся;
НаборЗаписей - набор записей регистра, может быть не выбран, для фильтрации изменений используется лишь отбор набора записей;
Массив - все элементы массива имеют один из перечисленных выше типов, кроме Неопределено. Условия фильтрации соединяются по ИЛИ.
Значение по умолчанию: Неопределено
Возвращаемое значение:
Тип: ВыборкаДанных.
Описание:
Формирует выборку измененные данные для передачи их в тот или иной узел плана обмена. При этом в процессе выборки изменений в записи регистрации изменений проставляется номер сообщения обмена данными, в котором должны передаваться изменения. Номер сообщения в записи регистрации проставляется для того, чтобы при подтверждении приема сообщения, в котором передавались изменения соответствующие записи регистрации изменений были удалены и в дальнейшем изменения больше не передавались.
Пример:
ЗаписьСообщения = ПланыОбмена.СоздатьЗаписьСообщения();
Запись = Новый ЗаписьXML;
Запись.ОткрытьФайл(ИмяФайла);
ЗаписьСообщения.НачатьЗапись(Запись, Узел);
Выб = ПланыОбмена.ВыбратьИзменения(ЗаписьСообщения.Получатель,
       ЗаписьСообщения.НомерСообщения);
Пока Выб.Следующий() Цикл
   Объект = Выб.Получить();
   ЗаписатьXML(Запись, Объект);
КонецЦикла;
ЗаписьСообщения.ЗакончитьЗапись();
Запись.Закрыть();
12 dfxz
 
28.05.10
12:10
за ответ спасибо, про не внимательность согласен, но упрек админам сайта - поиск организован далеко не лучшим образом и я этот форум уже вторую неделю лопачу, и поверте проще случайно накнуться на нужную ветку чем пользоваться поиском.
13 Живой Ископаемый
 
28.05.10
12:11
да, есть такое... скажем статьюи про Альтернативное создание начального образа, которая лежит тут же, на сайте - легче найти гуглом, чем местным поиском.
14 dfxz
 
28.05.10
12:46
а как правильно указать узел ОбменУправлениеТорговлейБухгалтерия в коде ЗаписьСообщения.НачатьЗапись(Запись, Узел); ?
15 Живой Ископаемый
 
28.05.10
12:48
легче всего выбрать этот узел на форме. И потом выбранное значение и передать.
16 dfxz
 
28.05.10
14:17
на форме разместить элемент поле ввода. Данные: СсылкаНаОбьект (из реквизитов формы)Тип значения: ПланОбменаСылка. Как получить Узел Тип ПланОбменаСсылка с элемента формы. ЭлементФормы.СсылкаНаОбьект ?
17 Живой Ископаемый
 
28.05.10
14:23
нет, просто СсылкаНаОбъект. это реквизит формы, он доступен для чтения непосредственно... и это.. почему не смотришь типовые? например в Сервис\Прочие Обмены\Настройки Обменов данными?
18 dfxz
 
28.05.10
14:30
Типовые??? смотрел но ни чего не увидел, я если честно до сих пор не пойму что значит зарегистрирован для обмена.
19 dfxz
 
28.05.10
14:35
правила регистрации обьектов стоят типовые
20 Живой Ископаемый
 
28.05.10
14:37
блин, ну это невероятно...
Ну вот есть база. Мы вводим документ. В конфигураторе написано что авторегистрация для этого типа. При записи этого документа он помечается как зарегистрированный для обмена - то есть как изменнеый. Физически это означает что для каждого типа объектов создается еще одна таблица, в которую пишется ссылка на объект, на узел плана обмена и номер сообщения.
Наступает пора обменяться. (внимание, далее на самом деле все наоборот - сначала второе, потом первое, но чтобы было понятно, поменял порядок) Обработка вызывает метод описанный в (11) - и получает ссылки на объекты, которые нужно выгрузить этим сообщением. Выгружает. Потом загружает сообщение, полученное от другого узла. Читает первым делом номер сообщения, и из таблицы изменений УДАЛЯЕТ все записи для объектов для данного узла с номером сообщения равным или меньшим тому, которое приняла та, другая база... Чтобы не хранить эту запись до скончания веков.
===
2(19) нету правил регистрации (если я только не пропустил чего-то), есть правила конвертации
21 Живой Ископаемый
 
28.05.10
14:40
когда мы читаем сообщение от другой базы - мы как бы получаем квитанцию о том, какое наше предыдущее сообщение загружено. И удаляем регистрацию всех объектов. Они уже не измененные - другая база их получила.
22 dfxz
 
28.05.10
14:46
бОЛЬШОЙ РАХМАТ!!! И теперь добивая напоследок правильно ли я понимаю что правила регистрации обьектов создаются с помощью КД, путем загрузки в КД информации о структурах обеих БД с последующим созданием правил? И что после первого обмена необходимо правила выгрузки в базу обмена загрузить правила Правила_обмена_Постоянный_обмен_БП_УТ.xml из последнего релиза конфигурации ?
23 Живой Ископаемый
 
28.05.10
14:47
и вот все то что я криво написал в (20) практически до атома ражеванно в этой ТОЛСТОЙ КНИГЕ(ТМ)
http://v8.1c.ru/metod/books/book.jsp?id=63
в 15-й главе
====
еще раз. Правил регистрации НЕ БЫВАЕТ
24 Живой Ископаемый
 
28.05.10
14:48
И да, правила КОНВЕРТАЦИИ создаются в КД. но они не влияют на факт регистрации объекта как измененного.. правила КОНВЕРТАЦИИ вступают в дело только при выгрузке/загрузке непосредственно.
25 Живой Ископаемый
 
28.05.10
14:49
" И что после первого обмена необходимо правила выгрузки в базу обмена загрузить правила Правила_обмена_Постоянный_обмен_БП_УТ.xml из последнего релиза конфигурации ?" - что-то тут меня смущает, но с этим обемном не работал, атк что вполне может быть... Следовательно про него нужно читать в документации отдельно.. Или хотя бы просто нажать кнопку "Справка"
26 dfxz
 
28.05.10
14:55
"Обмен данными между конфигурациями
""Управление торговлей"" и ""Бухгалтерия предприятия"""

Внимание: изменены правила обмена данными.
"Для корректной работы обмена данными необходимо в настройках обмена в конфигурациях ""Управление торговлей"" и ""Бухгалтерия предприятия"" заменить правила обмена на правила обмена из комплектов правил, находящегося в файлах поставки релиза конфигурации.  
Настройки обмена  доступны:
- В конфигурации ""Управление торговлей"" в меню ""Сервис - Прочие обмены данными - Все настройки обмена данными - Обмен данными с 1С:Бухгалтерия 8"".
- В конфигурации ""Бухгалтерия предприятия"" в меню ""Сервис - Прочие обмены данными - Все настройки обмена данными - Обмен данными с 1С:Управление торговлей"".
В настройке обмена данными воспользуйтесь кнопкой ""Загрузить правила из файла"".
Комплект правил обмена включает в себя правила обмена для первого и постоянного обмена данными.
Для настроенного обмена данными используйте файлы правил обмена c названием ""Постоянный обмен"":
        Правила_обмена_Постоянный_Обмен_УТ_БП.xml
        Правила_обмена_Постоянный_Обмен_БП_УТ.xml"
"При настройке обмена данными в конфигурации ""Управление торговлей"" следует также заменить правила обмена на правила обмена из комплекта правил, находящегося в файлах поставки релиза конфигурации.
В процессе настройки обмена данными необходимо дважды заменить правила обмена:
После первого этапа помощника настройки обмена данными необходимо заменить правила обмена в созданной настройке обмена данными на комплект правил для первого обмена данными из файлов поставки конфигурации:
         Правила_обмена_Первый_Обмен_УТ_БП.xml
         Правила_обмена_Первый_Обмен_БП_УТ.xml
После выполнения обмена справочниками в помощнике настройки обмена данными замените правила обмена в настройке обмена данными на комплект правил для постоянного обмена данными из файлов поставки конфигурации:
         Правила_обмена_Постоянный_Обмен_УТ_БП.xml
         Правила_обмена_Постоянный_Обмен_БП_УТ.xml"
"В связи с внесением новой функциональности временно накладываются ограничения по совместной работе конфигураций ""Управление торговлей"" - ""Бухгалтерия предприятия"":
в  двустороннем обмене данными ""Управление торговлей"" - ""Бухгалтерия предприятия"" не поддерживается перенос счетов-фактур полученных в случае, если договор контрагента, по которому был выписан счет-фактура:
1. Присутствует в информационных базах конфигураций ""Управление торговлей"" и ""Бухгалтерия предприятия"";
2. В конфигурации ""Бухгалтерия предприятия"" начисление НДС при исполнении обязанностей налогового агента по договору производится при оплате."
27 Живой Ископаемый
 
28.05.10
14:59
итак, возвращаясь к проблеме - зарегистрированы ли как измененные интересующие тебя документы?
28 ASU_Diamond
 
28.05.10
15:01
операции/обработка/регистрация изменений для обмена
29 dfxz
 
28.05.10
15:07
Книга к сожалению дома посмотреть главу смогу вечером, в обработке регистрация изменений для обмена в 3 посте я писал что стоит запретить.
30 Живой Ископаемый
 
28.05.10
15:10
о боже... в этой обработке нужно смотреть не запретить или разрешить а ан твоем виде документов - цифру, сколько зарегистрировано, и если там цифры нет - то вот тебе и ответ почему ими не обменивается.
31 ASU_Diamond
 
28.05.10
15:11
(29) и что?
ставишь галочку "Отображать объекты, для которых зарегистрированы изменения", жмешь "показать изменения" и смотришь что зарегистрировано.
32 dfxz
 
28.05.10
15:13
изначально 0 ,сейчас этим и занимаюсь
33 ASU_Diamond
 
28.05.10
15:14
(+31) ну а если все изменения не интересует, то правая кнопка на нужном объекте и выбрать "показать зарегистрированные изменения данного типа"
34 ASU_Diamond
 
28.05.10
15:15
(32) заведи новый документ и посмотри зарегистрируется он или нет.
35 ASU_Diamond
 
28.05.10
15:17
(32) изначально пусто, потому что ты наверное уже загрузил данные из второй базы
36 dfxz
 
28.05.10
15:20
да загрузил, документ создал цифра изменилась
37 dfxz
 
28.05.10
15:21
да и еще уточню на всяк случай не загружается документ пост товаров и услуг из УТ в БП
38 ASU_Diamond
 
28.05.10
15:25
(37) добавь его в обработке вручную - может был сбой какой или документ ввели до того как настроили обмен.
39 dfxz
 
28.05.10
15:26
как ?
40 ASU_Diamond
 
28.05.10
15:35
(39) ожидал этот вопрос
правая кнопка на объекте, добавить регистрацию
только не добавляй для всех :)
41 dfxz
 
28.05.10
15:37
Это я уже сделал, более того,я создал документ в УТ и запустил обмен, в информационном сообщении сказано что 1 документ загружен но его нет, сейчай смотрю журнал регистрации
42 dfxz
 
28.05.10
15:41
в логах говорится что не заданы правила регистрации для обьекта пост товаров и услуг
43 Живой Ископаемый
 
28.05.10
15:43
правил регистрации не бывает.
44 dfxz
 
28.05.10
15:45
Событие: Обмен данными.Правила регистрации объектов
Коментарий: Для объекта Документ.ПоступлениеТоваровУслуг не заданы правила регистрации
45 Живой Ископаемый
 
28.05.10
15:51
круто... значит нужно искать эту строчку в конфигураторе, ставить точку останова на пару строчк выше нее и смотреть почему так получается. Чтобы узнать что это за правила регистрации и где их задать.
46 dfxz
 
28.05.10
15:52
уже делаю....
47 dfxz
 
28.05.10
15:53
а задаются они в настройках обмена правила регистрации обьектов на узлах плана обмена...
48 dfxz
 
28.05.10
15:54
Функция ПолучитьОбщееПравилоРегистрацииОбъекта(ПланыОбменаДляРегистрации, ОбъектМетаданных, Источник, ПроверятьСсылку)
   ОбъектМетаданныхПолноеИмя = ОбъектМетаданных.ПолноеИмя();
   
   // получаем массив всех ПРО для текущего объекта метаданных
   МассивПравилРегистрацииОбъекта = ПолучитьМассивПравилРегистрацииОбъекта(Источник, ПланыОбменаДляРегистрации, ОбъектМетаданных, ОбъектМетаданныхПолноеИмя);
   
   Если МассивПравилРегистрацииОбъекта.Количество() = 0 Тогда
       
       // фиксируем ошибку в журнале регистрации
       НСтрока = НСтр("ru = 'Для объекта %1 не заданы правила регистрации'");
       
       СтрокаСообщения = ОбменДаннымиКлиентСервер.ПодставитьПараметрыВСтроку(НСтрока, ОбъектМетаданныхПолноеИмя);
       
       ЗаписьЖурналаРегистрацииПРО(СтрокаСообщения, ОбъектМетаданных);
       
       Возврат Неопределено // ПРО для объекта не заданы ни для одного плана обмена
   КонецЕсли;
   
   // выполняем правила регистрации по свойствам Объекта;
   // если на заданном Плане обмена регистрировать объект не нужно,
   // то удаляем это правило регистрации из массива правил МассивПравилРегистрацииОбъекта;
   // таким образом выключаем ПРО для соответсвующего Плана обмена
   // ПРО = ПРОБ + ПРОП
   //
   // ПРОБ - Правила регистрации по свойствам Объекта
   // ПРОП - Правила регистрации по свойствам Плана обмена
   
   ПравилаРегистрацииПоСвойствамОбъекта(МассивПравилРегистрацииОбъекта, Источник, ПроверятьСсылку);
   
   Если МассивПравилРегистрацииОбъекта.Количество() = 0 Тогда
       Возврат Неопределено; // по результату работы ПРОБ - объект регистрации не подлежит; выходим
   КонецЕсли;
   
   // получаем структуру свойств объекта для всех используемых планов обмена
   СвойстваОбъекта = ПолучитьСвойстваОбъектаПоПравиламРегистрацииОбъекта(МассивПравилРегистрацииОбъекта);
   
   // получаем свойства объекта в строковом представлении
   СвойстваОбъектаСтрокой = ПолучитьСвойстваОбъектаСтрокой(СвойстваОбъекта);
   
   // получаем текст запроса
   ТекстЗапроса = ПолучитьТекстЗапросаПоПравиламРегистрацииОбъекта(МассивПравилРегистрацииОбъекта);
   
   // создаем ПРО из полученных значений параметров
   ОбщееПравилоРегистрацииОбъекта = Новый Структура;
   
   ОбщееПравилоРегистрацииОбъекта.Вставить("ОбъектМетаданныхИмя",     ОбъектМетаданныхПолноеИмя);
   ОбщееПравилоРегистрацииОбъекта.Вставить("ТекстЗапроса",            ТекстЗапроса);
   ОбщееПравилоРегистрацииОбъекта.Вставить("СвойстваОбъекта",         СвойстваОбъекта);
   ОбщееПравилоРегистрацииОбъекта.Вставить("СвойстваОбъектаСтрокой",  СвойстваОбъектаСтрокой);
   
   Возврат ОбщееПравилоРегистрацииОбъекта
   
КонецФункции
49 dfxz
 
28.05.10
16:12
ну что есть еще мысли по этому поводу
50 dfxz
 
28.05.10
16:19
а правила регистрации обьектов создаются в КД
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn