Имя: Пароль:
1C
1С v8
Добавить строки в запрос
0 SeraFim
 
22.01.12
06:47
Делаю некоторый отчетик для ЗиКБУ. Нужно следующее:
АСУ - 5,5 ставок
Вывести:
Иванов - 1 ст. Прочие Поля
Петров - 1 ст. Прочие Поля
Сидоров - 0,5 ст. Прочие Поля
Алексеев - 0,5 ст. Прочие Поля
Вакантная - 1 ст. Прочие Поля
Вакантная - 1 ст. Прочие Поля
Вакантная - 0,5 ст. Прочие Поля
Потом всё это - в СКД и там кучка различных группировок.
Не знаю, как можно в запросе прикрутить вот эти вакантные ставки?
1 alexiv79
 
22.01.12
07:06
(0) Не совсем понял, но если ставка это длополнительное поле типа число, то добавляем в СКд вычисляемое поле и пишем типа такого
ВЫБОР КОГДА Сотрудник.Наименование = "Иванов" ТОГДА 1
ИНАЧЕ Выбор КОГДА Сотрудник.Наименование = "Петров" ТОГДА 1
ИНАЧЕ ВЫБОР ...  КОНЕЦ
КОНЕЦ КОНЕЦ КАК СТАВКА
Примерно так.
И что за ЗиК БУ?
2 Мимохожий Однако
 
22.01.12
07:11
ЗиК БУ Зарплата и кадры Бюджетного учреждения (1С 8)
3 SeraFim
 
22.01.12
07:15
(1) не-не-не, ты меня не понял.
Иванов - 1 ст. Прочие Поля
Петров - 1 ст. Прочие Поля
Сидоров - 0,5 ст. Прочие Поля
Алексеев - 0,5 ст. Прочие Поля
Это хранится в различных табличках и выбирается из них.
А вот вакантные ставки:
Вакантная - 1 ст. Прочие Поля
Вакантная - 1 ст. Прочие Поля
Вакантная - 0,5 ст. Прочие Поля
нигде не хранятся.

Пока что в голову приходит только одно извращение: перед формированием отчета записывать вакантные ставки в какой-нибудь регистр или справочник и оттуда уже формировать
4 vicof
 
22.01.12
07:55
ОБЪЕДИНИТЬ не?
5 kosts
 
22.01.12
08:27
Можно так как-то попробовать

Выбрать
Программист как Должность,
АСУ как Подразделение,
5.5 как КоличествоСтавок,
3 как ЗанятоСтавок,
2.5 как ВакантноСтавок
поместить ВТСтавки
из // По штатному расписанию и занятым ставкам
;
// Любой запрос который возвращает нумерацию 1,2,3,4,5 и тд
Выбрать 1 как НомерСтавки Поместить ВТВакансии объединить все
Выбрать 2 объединить все
Выбрать 3 объединить все
Выбрать 4 объединить все
Выбрать 5
;
Выбрать ВТСтавки.*, ВТВакансии.НомерСтавки Поместить ВакантныеСтавки
Из ВТСтавки левое соединение ВТВакансии как ВТВакансии по ВТСтавки.ВакантноСтавок+... >= ВТВакансии.НомерСтавки //<-тут нужно более точно продумать для дробной ставки
;
Выбрать * из // Твоя таблица только добавить должность, подразделение, количество ставок
Объединить все
Выбрать * из ВакантныеСтавки
6 SeraFim
 
22.01.12
09:02
(4) ну понятно, что нужно объединять, проблема только - с чем?))
(5) про соединение не думал. что-то в этом есть.. спасибо за идею.

а есть ли возможность передать в СКД временную таблицу? курю СП, и что-то не вижу, как можно добраться до запроса.
Еще как вариант - заполнить программно ТЗ перед формированием, и передать её в запрос
7 kosts
 
22.01.12
09:46
(6) Так как то

Выбрать Поле1
Поместить ВТТаблица
Из &Таблица как Таблица

;
Ошибка? Это не ошибка, это системная функция.