![]() |
![]() |
![]() |
|
Передать границу периода в СКД | ☑ | ||
---|---|---|---|---|
0
Alex_MA
09.02.12
✎
11:01
|
Всем доброго дня!
СКД использует один запрос |
|||
1
Alex_MA
09.02.12
✎
11:03
|
(0)нечаянно жамкнул кнопку.
ВЫБРАТЬ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.vscКлассификаторДоговораПоРасчетам КАК КлассификаторДоговораПоРасчетам, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.vscБюджет КАК Бюджет, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.vscОтрасль КАК Отрасль, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Организация КАК Организация, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента КАК ДоговорКонтрагента, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент КАК Контрагент, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетовКонечныйОстаток, 0 КАК СуммаВзаиморасчетовПриход, 0 КАК СуммаВзаиморасчетовРасход, 0 КАК СуммаВзаиморасчетовНачальныйОстаток ИЗ РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Остатки({&ОстатокКонец}, ) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки Как программно установить границу в СКД. Через общий модуль и использование ф-ии в выражении знаю что можно. Функция СоздатьГраницуПоДате(Дата) Экспорт Возврат Новый Граница(Дата, ВидГраницы.Включая); КонецФункции |
|||
2
pessok
09.02.12
✎
11:05
|
Параметры.Найти("Период").ДатаОкончания не катит?
|
|||
3
pessok
09.02.12
✎
11:06
|
в твоем случае
Параметры.Найти("ДатаОкончания").ДатаОкончания не катит? вот только зачем новый параметр вводить? |
|||
4
pessok
09.02.12
✎
11:07
|
мля...
Параметры.Найти("ДатаОкончания") если тип Дата, и Параметры.Найти("ДатаОкончания").ДатаОкончания - если Период |
|||
5
Alex_MA
09.02.12
✎
11:10
|
в своей форме:
СКД = Отчет.ПолучитьМакет("СКД"); СКД.Параметры - эти ? |
|||
6
Alex_MA
09.02.12
✎
11:25
|
необходимо установить параметры СКД через пользовательские настройки ?
http://gyazo.com/e181838eb38f978ea0fd3baba7ff201e http://gyazo.com/f5391c26a7912ca6406347bdc79613af - пустые параметры СКД |
|||
7
pessok
09.02.12
✎
11:26
|
Нет. параметры компоновщика. Или тебе надо в самой скд, без изменения модуля?
|
|||
8
Alex_MA
09.02.12
✎
11:29
|
(7)у меня в параметрах компоновщика, в пользовательских настройках все установлено
http://gyazo.com/05f6d0cb6df1a1fabd39a72a1c70d979 |
|||
9
Alex_MA
09.02.12
✎
11:30
|
давай тогда чуть позже, у меня подключилась
|
|||
10
Alex_MA
09.02.12
✎
11:31
|
(7)т.е.
РеквизитФормыВЗначение("Отчет").КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0] = Новый Граница(КонецДня(КомпоновщикНастроек.ПользовательскиеНастройки.Элементы[0].Значение), ВидГраницы.Включая) ??? |
|||
11
Alex_MA
09.02.12
✎
11:48
|
Для Каждого Элемент Из Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл
Если Строка(Элемент.Параметр) = "ОстатокКонец" Тогда Элемент.Значение = Новый Граница(КонецДня(Элемент.Значение), ВидГраницы.Включая); ИначеЕсли Строка(Элемент.Параметр) = "ОстатокНачало" Тогда Элемент.Значение = Новый Граница(НачалоДня(Элемент.Значение), ВидГраницы.Включая); КонецЕсли; КонецЦикла; Вот так ? |
|||
12
Alex_MA
09.02.12
✎
12:02
|
Короче пишу:
&НаКлиенте Процедура ВыполнитьОтчет(Команда) СформироватьСервер(); КонецПроцедуры &НаСервере Процедура СформироватьСервер() Для Каждого Элемент Из Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл Если ТипЗнч(Элемент) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда Если Строка(Элемент.Параметр) = "ОстатокКонец" Тогда Элемент.Значение = Новый Граница(КонецДня(Элемент.Значение), ВидГраницы.Включая); ИначеЕсли Строка(Элемент.Параметр) = "ОстатокНачало" Тогда Элемент.Значение = Новый Граница(НачалоДня(Элемент.Значение), ВидГраницы.Включая); КонецЕсли; КонецЕсли; КонецЦикла; СхемаКомпоновкиДанных = РеквизитФормыВЗначение("Отчет").ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Настройки = Отчет.КомпоновщикНастроек.Настройки; КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); КонецПроцедуры отчет формируется в таком виде: http://gyazo.com/83e075ac3b56b174e2048130d392f939 |
|||
13
IronDemon
09.02.12
✎
12:12
|
||||
14
Alex_MA
09.02.12
✎
12:15
|
(13)меня интересует как через код, а конкретно
http://s49.radikal.ru/i124/1005/30/35dd297a57d6.jpg |
|||
15
Alex_MA
09.02.12
✎
12:20
|
а в моем случае через параметр как делается (без добавить 1с.) ?
и еще вопрос, КомпоновщикНастроек при нажатии на типовую кнопку сформировать отчет что делает ? При создании своей кнопки нужно ручками прописывать Отчет.КомпоновщикНастроек.ПользовательскиеНастройки в СхемаКомпоновкиДанных.Параметры и в Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных ??? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |