Имя: Пароль:
1C
1С v8
Как в запросе добавить поле.
0 Полька
 
14.11.19
11:23
То ли туплю, то ли не знаю :))))))
Есть справочник "Штатное расписание".
Выводим его в иерархии.
    Запрос=Новый Запрос;
    Запрос.Текст= "ВЫБРАТЬ РАЗРЕШЕННЫЕ
                  |    ШтатноеРасписаниеСрезПоследних.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
                  |    ШтатноеРасписаниеСрезПоследних.Должность КАК Должность
                  |ИЗ
                  |    РегистрСведений.ШтатноеРасписание.СрезПоследних(&Период, ) КАК ШтатноеРасписаниеСрезПоследних
                  |ГДЕ
                  |    ШтатноеРасписаниеСрезПоследних.КоличествоСтавок > 0
                  |
                  |УПОРЯДОЧИТЬ ПО
                  |    ПодразделениеОрганизации ИЕРАРХИЯ";
    
Ген.дир
-Цех1
  -профессия1
  -профессия2
-Цех2
  -профессия1
  -профессия2


.....................

Нужно сделать вывод в таком виде. Поля со словом "общее" пусть пока просто 0.
Ген.дир
-Цех1
  -профессия1
  -профессия2
  -ОбщееДляЦех1
-Цех2
  -профессия1
  -профессия2
  -ОбщееДляЦех2
-ОбщееДляГен.дир
1 PR
 
14.11.19
11:25
Ну так просто в начале запоминай, а в конце после вывода всех значений группировки выводи итог по группировке
2 Полька
 
14.11.19
11:28
(1) это не итоги. потом еще от каждой профессии будет ветка.
А вот это поле "Общее" тоже будет иметь ветку. Ну оно типа как "профессия" получается.
3 PR
 
14.11.19
11:29
Ниче не понял, выражовывайся точнее
4 Полька
 
14.11.19
11:32
как будто для каждого конечного подразделения надо добавить еще одну "профессию".
и для каждого подразделения, которое делиться на цеха, еще один цех
5 Полька
 
14.11.19
11:35
Ген.дир
-Цех1
  -профессия1
    -номенклатура1
    -номенклатура2
  -профессия2
    -номенклатура1
    -номенклатура2
  -Общее
    -номенклатура1
    -номенклатура2
-Цех2
  -профессия1
    -номенклатура1
    -номенклатура2
  -профессия2
    -номенклатура1
    -номенклатура2
  -Общее
    -номенклатура1
    -номенклатура2
-Общее
    -номенклатура1
    -номенклатура2
6 Радим1987
 
14.11.19
11:54
(0) Сгруппируй в отдельном подзапросе (временная тч) и соедини с текущим и все
7 Радим1987
 
14.11.19
12:00
ВЫБРАТЬ РАЗРЕШЕННЫЕ
     ШтатноеРасписаниеСрезПоследних.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
     ШтатноеРасписаниеСрезПоследних.Должность КАК Должность
     Поместить ВТ
ИЗ
     РегистрСведений.ШтатноеРасписание.СрезПоследних(&Период, ) КАК ШтатноеРасписаниеСрезПоследних
ГДЕ
     ШтатноеРасписаниеСрезПоследних.КоличествоСтавок > 0
  
      
;

ВЫБРАТЬ РАЗРЕШЕННЫЕ
     ВТ.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
     Количество(Различные ВТ.Должность) КАК Общее
     Поместить ВТ2
ИЗ
     ВТ КАК ВТ
Сгруппировать ПО
    ВТ.ПодразделениеОрганизации

;

ВЫБРАТЬ РАЗРЕШЕННЫЕ
     ВТ.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
     ВТ.Должность КАК Должность,
     ВТ2.Общее КАК Общее
ИЗ
     ВТ КАК ВТ
     Левое соединение ВТ2 Как ВТ2
     По ВТ.ПодразделениеОрганизации = ВТ2.ПодразделениеОрганизации

УПОРЯДОЧИТЬ ПО
     ПодразделениеОрганизации ИЕРАРХИЯ
AdBlock убивает бесплатный контент. 1Сергей