|
Конвертация данных | ☑ | ||
---|---|---|---|---|
0
revril
14.03.13
✎
23:11
|
Добрый вечер!Необходимо выполнить перенос справочников Сотрудники, Физлица и др, у которых есть свойство (указано в свойствах объекта в плане видов характеристик) Действующие и оно равно истина.Обмен омсуществляется между однотипными конфигурациями. Подскажите пожалуйста как задать условие при выгрузке или загрузке?
|
|||
1
GenV
14.03.13
✎
23:33
|
Посмотри описание обработчика "Перед обработкой" ПВД в КД. Там есть пример - это один из вариантов решения.
|
|||
2
Худой
15.03.13
✎
10:46
|
"Обмен омсуществляется между однотипными конфигурациями"
Так "однотипными" или одинаковыми? Если конфы одинаковые, то есть обработка штатная, которая это делает без проблем. |
|||
3
lxndr
15.03.13
✎
10:48
|
(2) ей еще фильтрануть надо по свойству
|
|||
4
Худой
15.03.13
✎
11:03
|
(3)Вот насчет фильров там не помню. Нажо глянуть
|
|||
5
dgamelya
15.03.13
✎
12:03
|
В обработчике перед загрузкой сделала отбор, но документы не загружаются почему то
Запрос = Новый Запрос(); Запрос.Текст = " ВЫБРАТЬ |ЗначенияСвойствОбъектов.Значение | ИЗ | РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ГДЕ | ЗначенияСвойствОбъектов.Объект = &Док |И ЗначенияСвойствОбъектов.Свойство = &Свойство"; Запрос.УстановитьПараметр("Док",Источник.Ссылка); Запрос.УстановитьПараметр("Свойство", ПланывидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("САМ00000001")); Результат = Запрос.Выполнить().Выбрать(); Проверено = Ложь; Если Результат.Следующий() Тогда Проверено = Результат.Значение; КонецЕсли; |
|||
6
lxndr
15.03.13
✎
12:21
|
(5) в обработчике ПередОбработкой для ПВД (!!) делай примерно так:
Запрос = Новый Запрос(); Запрос.Текст = " ВЫБРАТЬ |ЗначенияСвойствОбъектов.Объект КАК Док | ИЗ | РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ГДЕ | ЗначенияСвойствОбъектов.Значение |И ЗначенияСвойствОбъектов.Свойство = &Свойство"; Запрос.УстановитьПараметр("Свойство", ПланывидовХарактеристик.СвойстваОбъектов.НайтиПоКоду("САМ00000001")); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл ВыгрузитьПоПравилу(Результат.Док); КонецЕсли; |
|||
7
dgamelya
15.03.13
✎
14:48
|
спасибо, так выгружает правда все документы, без разбора чему равно значение свойства. Буду искать дальше в чем проблема)
|
|||
8
К_Дач
15.03.13
✎
14:52
|
(7) Читай внимательно описание ПВД... там надо задать значение переменной Выборка. Выгрузить по правилу не надо. Ну и посмотри сначала в консоли, что твой запрос возвращает
|
|||
9
cw014
15.03.13
✎
14:53
|
НайтиПоКоду("САМ00000001")
:))) Улыбнуло... Коды САМ00000001, Я-САМ00000001, ОН-САМ00000001, ОНО-САМО0000001 :))))) |
|||
10
dgamelya
15.03.13
✎
15:01
|
ВЫБРАТЬ
|ЗначенияСвойствОбъектов.Объект КАК Док | ИЗ | РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов | ГДЕ | ЗначенияСвойствОбъектов.Значение = Истина |И ЗначенияСвойствОбъектов.Свойство = &Свойстo Запрос возвращает элементы справочника, которые как раз нужны для выгрузки |
|||
11
dgamelya
15.03.13
✎
16:27
|
вообщем теперь если выгружаю регистр сведений значениеСвойствОбъектов то выгружаются все элементы справочника ,а если не выгружаю это регистр, то срабатывает отбор, но в элементе справочника не проставляется значение свойства
|
|||
12
К_Дач
15.03.13
✎
17:54
|
Тут есть недокументированная тонкость)))
Названия полей выборки должны совпадать с названием полей, как если бы отрабатывала стандартная выгрузка? То есть Твое "Как Док" не пойдет. Надо "Как Ссылка". |
|||
13
К_Дач
15.03.13
✎
17:55
|
Ну и ВыборкаДанных = Запрос.Выполнить();
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |