|
v8: Как вставить свою функцию в запрос? | ☑ | ||
---|---|---|---|---|
0
Cerera
02.05.12
✎
14:28
|
Вот есть запрос, а есть функция на языке 1с, которая принимает некоторые параметры. Как по синтаксису правильно вставить функцию в запрос или это невозможно? вообще как решить данную проблему?
|
|||
1
Stim
02.05.12
✎
14:29
|
зачем? задачу можно решить другими методами
|
|||
2
МихаилМ
02.05.12
✎
14:29
|
в общем - невозможно (как в 77)
|
|||
3
Alex S D
02.05.12
✎
14:29
|
условный текст запроса сделай
|
|||
4
Дикообразко
02.05.12
✎
14:30
|
(2) архитектурно реализация в СКД очень похожа
|
|||
5
Ненавижу 1С
гуру
02.05.12
✎
14:31
|
показывай функцию
|
|||
6
Cerera
02.05.12
✎
14:31
|
(4)а у мен как раз есть СКД. и отчет в ней написан. но нужно вставить кое-что а это сложно без функции
|
|||
7
Cerera
02.05.12
✎
14:31
|
(1)а как её решить7
|
|||
8
Кокос
02.05.12
✎
14:33
|
тут функции не вставить. но не знаю что нельзя решить без функций.
|
|||
9
Stim
02.05.12
✎
14:33
|
(7) гугли вычислямые поля в СКД
|
|||
10
Alex S D
02.05.12
✎
14:34
|
чтобы решить нужно условие задачи.. че за функция?
|
|||
11
Cerera
02.05.12
✎
14:35
|
Функция которая вычисляет количество рабочих дней между датами
// Функция возвращает число рабочих дней между заданными датами по регламентированному производственному календарю // //Параметры: // ДатаНач - начальная дата // ДатаКон - конечная дата // Функция ЧислоРабочихДней(ДатаНач, ДатаКон) Экспорт Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДатаНач", ДатаНач); Запрос.УстановитьПараметр("ДатаКон", ДатаКон); Запрос.УстановитьПараметр("РабочийДень", Перечисления.ВидыДнейПроизводственногоКалендаря.Рабочий); Запрос.УстановитьПараметр("ПредпраздничныйДень", Перечисления.ВидыДнейПроизводственногоКалендаря.Предпраздничный); Запрос.Текст = " |ВЫБРАТЬ | ЕстьNull(СУММА(ВЫБОР | КОГДА РегламентированныйПроизводственныйКалендарь.ВидДня = &РабочийДень | ИЛИ РегламентированныйПроизводственныйКалендарь.ВидДня = &ПредпраздничныйДень | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ),0) КАК ЧислоРабочихДней |ИЗ | РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь |ГДЕ | РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &ДатаНач И &ДатаКон | //РегламентированныйПроизводственныйКалендарь.Год = &Год"; Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Возврат Выборка.ЧислоРабочихДней; КонецЕсли; Возврат 0; КонецФункции а мне надо в отчет вставить её |
|||
12
marvak
02.05.12
✎
14:36
|
||||
13
mozzga
02.05.12
✎
14:37
|
(9) прав, вычисляемые поля тебе помогут
|
|||
14
Ненавижу 1С
гуру
02.05.12
✎
14:42
|
(11) вставь подзапросом
|
|||
15
КМ155
02.05.12
✎
14:45
|
(11) слабак, ни каких функций не надо:
ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РегламентированныйПроизводственныйКалендарь.ДатаКалендаря) КАК ДатаКалендаря, 1 КАК Id ПОМЕСТИТЬ СтРабДней ИЗ РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь ГДЕ (РегламентированныйПроизводственныйКалендарь.ВидДня = ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Рабочий) ИЛИ РегламентированныйПроизводственныйКалендарь.ВидДня = ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Предпраздничный)) И РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &ДатаНач И &ДатаФин ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ 1 КАК Id, РасчетыПоРеализацииВУсловныхЕдиницахОрганизацииОбороты.Документ ПОМЕСТИТЬ Обороты ИЗ РегистрНакопления.РасчетыПоРеализацииВУсловныхЕдиницахОрганизации.Обороты(&ДатаНач, &ДатаФин, Регистратор, ) КАК РасчетыПоРеализацииВУсловныхЕдиницахОрганизацииОбороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Обороты.Документ, СтРабДней.ДатаКалендаря ИЗ Обороты КАК Обороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ СтРабДней КАК СтРабДней ПО Обороты.Id = СтРабДней.Id |
|||
16
Cerera
02.05.12
✎
15:05
|
(15)спасибо. только вот проверить надо работает ли. тогда я признаю что я слабак если не получится
|
|||
17
Defender aka LINN
02.05.12
✎
15:07
|
(11) Юзай производственный календарь и будет тебе щастье
|
|||
18
Cerera
02.05.12
✎
15:08
|
(17)дак в (11)и так производственный календарь используется
|
|||
19
Defender aka LINN
02.05.12
✎
15:40
|
(18) Тогда не понимаю, в чем проблема. Сделай соединение, да и все.
|
|||
20
Cerera
02.05.12
✎
16:10
|
(19)так там компоновка данных используется
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |