Имя: Пароль:
1C
1С v8
Конвертация из УТ 10,3 в УТ 10,3
,
0 Evgeniy86
 
07.11.11
21:35
Настроил правила обмена данными все отлично столкнулся с проблемой выгрузки ШК по ПКО Номенклатура. Задача вообщем такая. При выгрузке не всей номенклатуры надо что бы прицепом у той номенклатуры которая выгружается грузились еще и регистр сведений ШК по этим позициям номенклатуры. В регистре сведений в ПКО Штрихкоды в ПКС Владелец пробовал выбирать правило номенклатура, но все как то не тащит прицепом ШК. У кого был опыт подскажите как выйти из ситуации. Заранее спасибо.
1 DrShad
 
07.11.11
21:42
значит идешь прямо до поворота и сразу налево до заката
2 DrShad
 
07.11.11
21:42
почему вы не способны сформулировать четко вопрос?
3 BuHu
 
07.11.11
21:43
(0)в ПКО номенклатуры , после выгрузки обработать регистр ШК  ?
4 Evgeniy86
 
07.11.11
21:45
Четкий вопрос: Как при выгрузки номенклатуры, определенной части справочника вытащить еще и привязанные к ней ШК из регистра ШК.
5 Evgeniy86
 
07.11.11
21:46
(3) Я думаю должен быть типовой механизм КД
6 acsent
 
07.11.11
21:47
послевыгрузки, выгрузитьпоправилу
7 DrShad
 
07.11.11
21:48
(5) для КД это два совершенно самостоятельных объекта и ей пофиг на желания некоторых пользователей
8 BuHu
 
07.11.11
21:48
(5) в (6) вполне себе типовой механизм )
9 DrShad
 
07.11.11
21:49
(8) +1
10 Evgeniy86
 
07.11.11
21:52
(6) Можно поподробней, в ПКО РегистрСведенийШК Обработчик ПослеВыгрузки Пишем ВыгрузитьПоПравилу.Номенклатура; Я правильно понял?
11 Evgeniy86
 
07.11.11
21:54
(5) Спасибо за советы. Только больше поучений чем дела
12 Михей
 
07.11.11
21:58
(10)

НЗ = РегистрСведений.Штрихкоды.СоздатьНаборЗаписей();
НЗ.Отбор.Владелец.Установить(Источник);
НЗ.Прочитать();

Для Индекс = 0 По НЗ.Количество() - 1 Цикл
ВыгрузитьПоПравилу(НЗ[Индекс], , , , "Штрихкоды"); //Тут точно не помню параметр по счету
КонецЦикла;
13 BuHu
 
07.11.11
21:58
(10)пишешь запрос , получаешь ШК , выгружаешь по правилу ... как то так
14 DrShad
 
07.11.11
22:00
(12) все хорошо, но конструкция
Для Индекс = 0 По НЗ.Количество() - 1 Цикл
как-то некошерно выглядит
15 Михей
 
07.11.11
22:02
(14) с чего это?
16 DrShad
 
07.11.11
22:05
(15) потому что НЗ это такая же коллекция значений как и остальные
17 Evgeniy86
 
07.11.11
23:00
Ребят всем спасибо за подсказки. Вот вариант моего решения
В ПКО Номенклатура в обработчике После выгрузки пишем код:

Запрос = Новый Запрос("
|ВЫБРАТЬ
| Штрихкоды.Владелец,
| Штрихкоды.ЕдиницаИзмерения,
| Штрихкоды.Качество,
| Штрихкоды.СерияНоменклатуры,
| Штрихкоды.ТипШтрихкода,
| Штрихкоды.УдалитьВладелец,
| Штрихкоды.УдалитьЕдиницаИзмерения,
| Штрихкоды.УдалитьКачество,
| Штрихкоды.УдалитьКод,
| Штрихкоды.УдалитьСерияНоменклатуры,
| Штрихкоды.УдалитьТипШтрихкода,
| Штрихкоды.УдалитьХарактеристикаНоменклатуры,
| Штрихкоды.УдалитьШтрихкод,
| Штрихкоды.ХарактеристикаНоменклатуры,
| Штрихкоды.Штрихкод
|ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды
|ГДЕ
| Штрихкоды.Владелец = &Владелец");

Запрос.УстановитьПараметр("Владелец", Источник);
Выборка = Запрос.Выполнить().Выбрать();
Сообщить(Выборка.Количество());
Пока Выборка.Следующий() Цикл
ВыгрузитьПоПравилу(Выборка, , , , "Штрихкоды");
КонецЦикла;


И все работает.
18 Поручик
 
08.11.11
00:24
(17) Автор, ты дятел. И вот почему. В КД2 в справочной информации по обработчикам есть подобный код для контактной информации. Достаточно было посмотреть его, немного включить мозг и не изобретать велосипеды.