|
Как получить количество рабочих дней по графику? | ☑ | ||
---|---|---|---|---|
0
iceborn
12.02.13
✎
16:40
|
Есть график, как проще всего по нему получить количество рабочих дней?
|
|||
1
ale-sarin
12.02.13
✎
16:42
|
из регистра сведений соответствующего. это если ЗУП, УПП, КА.
|
|||
2
smitru
12.02.13
✎
16:46
|
(0) конечно же запросом :-)
|
|||
3
iceborn
12.02.13
✎
17:00
|
Есть регистр РегламентированныйПроизводственныйКалендарь с него я легко могу получить кол-во рабочих дней, а мне надо получить количество дней именно по определенному графику так как по некоторые графика рабочий день суббота.
|
|||
4
ale-sarin
12.02.13
✎
17:01
|
(3) А кто сказал по РеглКалендарь? Я про другое. Ищите лучше.
|
|||
5
smitru
12.02.13
✎
17:02
|
(3) запросом и это вытаскивается. Там есть "разблюдавка" и для пятидневки и для шестидневки, а можно привязать сменный график и это тоже посчитать - я как-то пару лет назад этой фигнёй занимался :-)
|
|||
6
iceborn
12.02.13
✎
17:12
|
Есть регистр ещё Графики работы по видам времени. Там можно циклом пройти на тек. месяц и просчитать кол-во. А правильно ли так?)
|
|||
7
smitru
12.02.13
✎
17:13
|
Цикл зло.. Юзай запросы... Через регистр всё достаётся
|
|||
8
ale-sarin
12.02.13
✎
17:13
|
(6) Вот об этом регистре и речь. Только не циклом, а запросом.
|
|||
9
iceborn
12.02.13
✎
17:31
|
Функция ЧислоРабочихДней(ДатаНач, ДатаКон, ГрафикРаботы) Экспорт
Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДатаНач", ДатаНач); Запрос.УстановитьПараметр("ДатаКон", ДатаКон); Запрос.УстановитьПараметр("ГрафикРаботы", ГрафикРаботы); Запрос.УстановитьПараметр("Месяц", ДатаНач); Запрос.Текст = "ВЫБРАТЬ | ГрафикиРаботыПоВидамВремени.ГрафикРаботы, | ГрафикиРаботыПоВидамВремени.ВидУчетаВремени, | НАЧАЛОПЕРИОДА(ГрафикиРаботыПоВидамВремени.Дата, МЕСЯЦ) КАК Месяц, | СУММА(ГрафикиРаботыПоВидамВремени.ОсновноеЗначение) КАК Дни |ИЗ | РегистрСведений.ГрафикиРаботыПоВидамВремени КАК ГрафикиРаботыПоВидамВремени |ГДЕ | НАЧАЛОПЕРИОДА(ГрафикиРаботыПоВидамВремени.Дата, МЕСЯЦ) = &Месяц | И ГрафикиРаботыПоВидамВремени.ВидУчетаВремени = ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоДням) | И ГрафикиРаботыПоВидамВремени.ГрафикРаботы = &ГрафикРаботы | |СГРУППИРОВАТЬ ПО | ГрафикиРаботыПоВидамВремени.ГрафикРаботы, | ГрафикиРаботыПоВидамВремени.ВидУчетаВремени, | НАЧАЛОПЕРИОДА(ГрафикиРаботыПоВидамВремени.Дата, МЕСЯЦ)"; Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Возврат Выборка.Дни; КонецЕсли; Возврат 0; КонецФункции |
|||
10
iceborn
12.02.13
✎
17:31
|
Во!
|
|||
11
ale-sarin
12.02.13
✎
17:44
|
(10) Сам написал? А где в запросе датанач и датакон? Или всегда за один и целый месяц понадобится?
|
|||
12
iceborn
12.02.13
✎
19:10
|
(11) Неа, нашел в типовой функцию обращение к этому регистру, я добавил отбор по месяцу и графику.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |