Имя: Пароль:
1C
1С v8
Как вывести в макет данные, согласно иерархиий в справочнике.
0 goleaff2006
 
31.05.13
06:10
Есть запрос
ВЫБРАТЬ
Номенклатура.Ссылка КАК Номенклатура,
Номенклатура.ЭтоГруппа КАК ЭтоГруппа,
Организации.Ссылка КАК Фирма
ИЗ
Справочник.Номенклатура КАК Номенклатура,
Справочник.Организации КАК Организации
ГДЕ
Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)

УПОРЯДОЧИТЬ ПО
ЭтоГруппа ИЕРАРХИЯ,
Номенклатура ИЕРАРХИЯ

в результате возвращает
Номенклатура этоГруппа Фирма
Молочные продукты Истина Фирма1
Сыр Адыгейский Ложь Фирма1
Сыр Адыгейский Ложь Фирма2
Сыр Адыгейский Ложь Фирма3
Молочные продукты Истина Фирма2
Молочные продукты Истина Фирма3

Т.е. упорядочивает по иерархии по первой найденной группе.
1 Любопытная
 
31.05.13
06:12
Выбирай родителя из номенклатуры в качестве группы и упорядочивай по нему
2 goleaff2006
 
31.05.13
06:22
(1) результат тот же самый.
3 Stormicon
 
31.05.13
06:24
А поменять
Номенклатура.Ссылка В ИЕРАРХИИ(&Ссылка)
на
Номенклатура.Ссылка В (&Ссылка)
не поможет?
4 Escander
 
31.05.13
06:26
а разве
УПОРЯДОЧИТЬ ПО Номенклатура ИЕРАРХИЯ

не работает?
5 goleaff2006
 
31.05.13
06:26
(3)нет.
6 goleaff2006
 
31.05.13
06:27
(4) я показал как выводит.
Номенклатура этоГруппа Фирма
Молочные продукты Истина Фирма1
Сыр Адыгейский Ложь Фирма1
Сыр Адыгейский Ложь Фирма2
Сыр Адыгейский Ложь Фирма3
Молочные продукты Истина Фирма2
Молочные продукты Истина Фирма3
7 Wobland
 
31.05.13
06:28
фирму уже выключи
8 Stormicon
 
31.05.13
06:29
А что вообще нужно получить в конце? Сформулируй конечную цель, а то мы догадываемся конечно...
9 goleaff2006
 
31.05.13
06:31
Вроде задача казалась то простая,а не тут то было.Необходимо в макете получить список номенклатуры точно такой же как в справочнике, притом могут быть дублирующиеся записи например товар
товар
детальные записи, а получается
товар
детальные записи
товар
10 Wobland
 
31.05.13
06:32
что за макет?
11 goleaff2006
 
31.05.13
06:33
вывести в обычный табдок. Без скд.
12 Wobland
 
31.05.13
06:35
итоги по номенклатура.родитель
13 goleaff2006
 
31.05.13
06:37
(12) тоже самое что и упорядочить номенклатура.родитель иерархия не катит.
14 Wobland
 
31.05.13
06:42
ну нет так нет
15 goleaff2006
 
31.05.13
07:14
какие есть идеи?
16 1Сергей
 
31.05.13
07:17
(15) см (7)
17 1Сергей
 
31.05.13
07:18
и вот это убери нахрен: ЭтоГруппа ИЕРАРХИЯ,
18 goleaff2006
 
31.05.13
07:27
(17)фирма нужна.ЭтоГруппа ИЕРАРХИЯ необходима чтобы группы располагались вверху.
19 Wobland
 
31.05.13
07:33
(18) на зачем тебе фирма?
20 1Сергей
 
31.05.13
07:34
(18) в общем, переходи на 7.7, там это реализовано :)
21 goleaff2006
 
31.05.13
07:35
(18) вот мне бы из 7.7 примерчик . чтобы вывести какой номенклатуре какая фирма соответствует.
22 Wobland
 
31.05.13
07:36
(21) словами можешь это соответствие назвать?
23 goleaff2006
 
31.05.13
07:37
связь номенклатур с фирмой по коду, я запрос просто упростил.
24 Wobland
 
31.05.13
07:39
(23) ну а тебе упрощённый ответ сказали. дальше сам
25 1Сергей
 
31.05.13
07:40
(21)

   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Период с ВыбНачПериода по ВыбКонПериода;
   |ТМЦ = Регистр.ОстаткиТМЦ.ТМЦ;
   |Организация = Регистр.ОстаткиТМЦ.Организация;
   |Количество = Регистр.ОстаткиТМЦ.Количество;
   |Функция КоличествоКонОст = КонОст(Количество);
   |Группировка ТМЦ;
   |Группировка Организация;
   |"//}}ЗАПРОС
26 goleaff2006
 
31.05.13
07:41
(24)(25)петросяны =))
27 goleaff2006
 
31.05.13
07:43
была бы у меня 7 давно пример там посмотрел, как выводят без скд .
28 1Сергей
 
31.05.13
07:43
(26) в смысле? просил пример по 7.7 - держи
29 goleaff2006
 
31.05.13
07:44
Пример вывода номенклатуры по иерархий  в каком нибудь отчете типа "товары на складах" если он тв 7 существует конечно же .
30 1Сергей
 
31.05.13
07:45
(29) ну, на

Процедура Сформировать()
   Перем Запрос, ТекстЗапроса, Таб;
   //Создание объекта типа Запрос
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Период с ВыбНачПериода по ВыбКонПериода;
   |ТМЦ = Регистр.ОстаткиТМЦ.ТМЦ;
   |Организация = Регистр.ОстаткиТМЦ.Организация;
   |Количество = Регистр.ОстаткиТМЦ.Количество;
   |Функция КоличествоКонОст = КонОст(Количество);
   |Группировка ТМЦ;
   |Группировка Организация;
   |"//}}ЗАПРОС
   ;
   // Если ошибка в запросе, то выход из процедуры
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Возврат;
   КонецЕсли;

   // Подготовка к заполнению выходных форм данными запроса
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   // Заполнение полей "Заголовок"
   Таб.ВывестиСекцию("Заголовок");
   Состояние("Заполнение выходной таблицы...");
   Таб.Опции(0, 0, Таб.ВысотаТаблицы(), 0);
   Пока Запрос.Группировка(1) = 1 Цикл
       // Заполнение полей ТМЦ
       Таб.ВывестиСекцию("ТМЦ");
       Пока Запрос.Группировка(2) = 1 Цикл
           // Заполнение полей Организация
           Таб.ВывестиСекцию("Организация");
       КонецЦикла;
   КонецЦикла;
   // Заполнение полей "Итого"
   Таб.ВывестиСекцию("Итого");
   // Вывод заполненной формы
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Сформировать", "");
КонецПроцедуры
31 Wobland
 
31.05.13
07:48
32 goleaff2006
 
31.05.13
07:51
(31) я же показал как выводит если делать  итоги по номенклатура.родитель

 
Номенклатура этоГруппа Фирма
Молочные продукты Истина Фирма1
Сыр Адыгейский Ложь Фирма1
Сыр Адыгейский Ложь Фирма2
Сыр Адыгейский Ложь Фирма3
Молочные продукты Истина Фирма2
Молочные продукты Истина Фирма3
33 goleaff2006
 
31.05.13
07:53
там иерархия не соблюдается.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан