Имя: Пароль:
1C
1С v8
выбор по спецификации
,
0 Kurbash
 
19.06.13
12:29
УПП последний релиз- такая ситуация:
хочу сделать обработку ТЧ материалы в документе отчет производства за смену, чтобы заполнял данные по спецификации. Конечно она есть штатная такая. но в спецификации есть элементы, на которые тоже есть спецификации..получается некая рекурсия....никто не сталкивался?
Наваял простенький запрос:
ВЫБРАТЬ
              |    СпецификацииНоменклатурыИсходныеКомплектующие.Количество,
              |    СпецификацииНоменклатурыИсходныеКомплектующие.Номенклатура.Ссылка,
              |    СпецификацииНоменклатурыИсходныеКомплектующие.Номенклатура.БазоваяЕдиницаИзмерения
              |ИЗ
              |    Справочник.СпецификацииНоменклатуры.ИсходныеКомплектующие КАК СпецификацииНоменклатурыИсходныеКомплектующие
              |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СпецификацииНоменклатуры КАК СпецификацииНоменклатуры
              |        ПО СпецификацииНоменклатурыИсходныеКомплектующие.Ссылка = СпецификацииНоменклатуры.Ссылка
              |            И СпецификацииНоменклатурыИсходныеКомплектующие.Номенклатура = СпецификацииНоменклатуры.Ссылка
              |            И СпецификацииНоменклатурыИсходныеКомплектующие.Спецификация = СпецификацииНоменклатуры.Ссылка
              |ГДЕ
              |    СпецификацииНоменклатуры.Наименование = &Наименование

как тепрь здесь эиу рекурсию прикрутить?
1 vicof
 
19.06.13
12:31
запрос в цикле
2 vicof
 
19.06.13
12:34
Ну или в скдшке попробовать соединять спецификации
3 Kurbash
 
19.06.13
12:38
в цикле для каждой номенклатуре?
4 slin-dev
 
19.06.13
12:40
(0) Надо до начальных материалов раскрутить что-ли?
Используй лучше функцию РазузлованиеНоменклатуры.РазузловатьНоменклатуру
5 vicof
 
19.06.13
12:40
(3) ну это я пошутил, не надо так делать. Лучше по СКД почитай, как соединять наборы данных самих к себе по иерархии
6 slin-dev
 
19.06.13
12:42
Со спецификациями не всё так просто
для частного случая можно и с СКД попробовать замутить... но что-то я сомневаюсь
7 Kurbash
 
19.06.13
12:44
(4)-ага, пример есть?
8 Kurbash
 
19.06.13
12:49
ау
9 Cyberhawk
 
19.06.13
12:50
Глубина вложенности спецификаций у вас на уровне конфигурации ограничена или может быть бесконечной?
10 Kurbash
 
19.06.13
12:55
,tcrjytxyj d njv nj b ltkj
11 Kurbash
 
19.06.13
12:55
бесконечной в том то и дело
12 slin-dev
 
19.06.13
12:57
(7)
[code]
Источник = Новый Структура;
       Источник.Вставить("Номенклатура", СтрокаТЧ.Номенклатура);
       Источник.Вставить("ХарактеристикаНоменклатуры", СтрокаТЧ.ХарактеристикаНоменклатуры);
       Источник.Вставить("ЕдиницаИзмерения", СтрокаТЧ.ЕдиницаИзмерения);
       Источник.Вставить("Коэффициент", СтрокаТЧ.Коэффициент);
       Источник.Вставить("Количество", СтрокаТЧ.Количество);
       Источник.Вставить("Спецификация", СтрокаТЧ.Спецификация);
       
       Результат = Неопределено;
       Параметры = Новый Структура;
       
       МассивОшибок = РазузлованиеНоменклатуры.РазузловатьНоменклатуру(Источник, Результат, Параметры);
[/code]
13 slin-dev
 
19.06.13
12:57
или как там код вставлять?
14 slin-dev
 
19.06.13
12:58
в параметре Результат собственно результат и возвращается
15 NcSteel
 
19.06.13
12:58
(12) типовая разузловка медленная.
16 slin-dev
 
19.06.13
12:58
отладчиком посмотри
17 slin-dev
 
19.06.13
12:59
(15) зато достаточно универсальна
18 NcSteel
 
19.06.13
13:07
(17) Меня это не удовлетворяло ))) накатал свою, работает в разы.
19 Kurbash
 
19.06.13
13:12
(18) поделишься?
20 Kurbash
 
19.06.13
14:29
ау