|
Как в запросе СКД период разбить на месяца | ☑ | ||
---|---|---|---|---|
0
Coldboy
24.12.13
✎
15:58
|
Здравствуйте. Как в скд мне данные отобрать по месяцам, если я задам период допустим 01.07.2013 по 30.09.2013, а данные я хочу вывести в разрезе месяца, допустим июль, август, сентябрь. Как сгруппировать проблем нет, как выборку такую получить, чтобы группировать.
|
|||
1
Avganec
24.12.13
✎
16:03
|
(0) в параметрах виртуальных таблиц есть поле нужное тебе
|
|||
2
Nenaviwu1c20
24.12.13
✎
16:05
|
Что за выборка?Откуда данные берешь?
|
|||
3
Nenaviwu1c20
24.12.13
✎
16:05
|
А так если что НАЧАЛОПЕРИОДА(Период,Месяц)
|
|||
4
Coldboy
24.12.13
✎
16:07
|
вот мой код
Пока Период <=КонецМесяца(КонПериода) Цикл Сотрудники = СписокРаботниковЗаПериод(Период); //Сотрудники.ВыбратьСтроку(); ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("Результат",Сотрудники); СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,Настройки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДАнныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); Период = ДобавитьМесяц(Период,1); КОнецЦикла; где функция Функция СписокРаботниковЗаПериод(Период) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СотрудникиОрганизаций.Физлицо КАК Сотрудник, | СтраховыеВзносыИсчисленныеОбороты.ФССНесчастныеСлучаиОборот КАК ФССНС, | СтраховыеВзносыИсчисленныеОбороты.ФФОМСОборот КАК ФОМС, | СтраховыеВзносыИсчисленныеОбороты.ФССОборот КАК ФСС, | СтраховыеВзносыИсчисленныеОбороты.ПФРСтраховаяОборот + СтраховыеВзносыИсчисленныеОбороты.ПФРНакопительнаяОборот КАК ПФР, | &Период, | СотрудникиОрганизаций.Организация |ИЗ | Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.СтраховыеВзносыИсчисленные.Обороты(&НачПериода, &КонПериода, , ) КАК СтраховыеВзносыИсчисленныеОбороты | ПО СотрудникиОрганизаций.Физлицо = СтраховыеВзносыИсчисленныеОбороты.ФизЛицо |ГДЕ | СотрудникиОрганизаций.ПометкаУдаления = ЛОЖЬ | И КОНЕЦПЕРИОДА(СотрудникиОрганизаций.ДатаПриемаНаРаботу, МЕСЯЦ) <= КОНЕЦПЕРИОДА(&Период, МЕСЯЦ) | И КОНЕЦПЕРИОДА(СотрудникиОрганизаций.ДатаУвольнения, МЕСЯЦ) > КОНЕЦПЕРИОДА(&Период, МЕСЯЦ)" ; Запрос.УстановитьПараметр("Период",Период); Запрос.УстановитьПараметр("НачПериода",НачалоМесяца(Период)); Запрос.УстановитьПараметр("КонПериода",КонецМесяцА(Период)); //Запрос.УстановитьПараметр("Организация",Организация); ТЗ = Запрос.Выполнить().Выгрузить(); Возврат ТЗ; КонецФункции хочется все в 1 СКД, чтобы потом отборами рулить ... |
|||
5
Shur1cIT
24.12.13
✎
16:14
|
(0) В СКД сделай колонку месяц
|
|||
6
bootini
24.12.13
✎
16:36
|
| СтраховыеВзносыИсчисленныеОбороты.ПФРСтраховаяОборот + СтраховыеВзносыИсчисленныеОбороты.ПФРНакопительнаяОборот КАК ПФР,
| КОНЕЦПЕРИОДА(СтраховыеВзносыИсчисленныеОбороты.Период, МЕСЯЦ) КАК Месяц //&Период, | СотрудникиОрганизаций.Организация как то так |
|||
7
samozvanec
24.12.13
✎
16:38
|
(4) жестко. а сразу нельзя за период выбрать и сгруппировать по-человечьи?
|
|||
8
samozvanec
24.12.13
✎
16:39
|
+(7) зачем справочник Сотрудники выбирать, если все равно внутреннее?
|
|||
9
Вжескрыылг
24.12.13
✎
16:41
|
(1)
|
|||
10
Вжескрыылг
24.12.13
✎
16:43
|
(0) в запросе периодМесяц обязательно, потом его в группировку
|
|||
11
Coldboy
24.12.13
✎
17:28
|
(8) чтобы выбирались именно те сотрудники, где был принят в этом месяца и не уволен, просто по регитсру и там и там фомс или тд будет начислено...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |