СКД: создание отчета, добавить новую колонку с вычислением #431385


#0 by Arond
создание отчета, добавить новую колонку с вычислением Доброго времени суток, вопрос, конечно, может для многих показаться элементарным, но прошу уделить немного времени. Цель у меня такая: в отчет добавить колонку, в которую будет выводиться  разность дат, в числовом формате (к примеру, 10.10.09 – 03.10.09 = 7). Данные берутся из запроса в СКД. В конструкторе запроса задал &КоличествоДней, но при попытки описать формулу расчета данной переменно, получил ошибку. Может быть, я не в том месте пытаюсь выполнить  эту задачу? Заранее благодарен за ответ. p.s. сильно не ругайте, я только учусь..
#1 by Vitello
Вычисляй лучше сразу в запросе. См. РазностьДат. Про параметр КоличествоДней не понял...
#2 by Arond
to Vitello: по количеству дней, создал данную переменную для того, чтобы, добавить новую  пустую колонку в отчет, как я понял это делается так, с условием того, что  все  делается в схеме компоновки данных. Даты берутся из табличной части с параметрами отчета. собственно эта самая колонка и должна быть заполнена.
#3 by Vitello
>Даты берутся из табличной части с параметрами отчета это как? Показывай как делал.
#4 by hhhh
ну так и заполняй ее в запросе, чего ты откладываешь на потом. Даты у тебя в запросе есть, функция РАЗНОСТЬДАТ тоже.
#5 by Arond
Выглядит это так,в  схеме компановки данных: &КонецПериода и &НачалоПериода    берется из табличного поля в форме отчета. где тип данных КомпоновщикНастроек.Настройки.ПараметрыДанных. Так вот, я не знаю как мне в запросе (компоновщика), рассчитать данные для &КоличествоДней, ещё и условие нужно будет ставить, чтобы в разных ситуациях по разному рассчитывалось, меня терзают сомнения, что в   компоновщике это возможно выполнить. да и учитывая мой опыт. Надо ещё понять как именно это делать.
#6 by IronDemon
РазностьДат(&НачалоПериода,&КонецПериода,"День")+1
#7 by Arond
to  IronDemon: поместил ОсновнаяСхемаКопоновкиДанных - Параметры - Выражение. Помогло, спасибо огромное. Но задача, так и не решена. Нужно создать некое условие, как я смог понять, КоличествоДней высчитывается по- разному в зависимости от того в каких границах находится документ. Скажем так, если ДоговорЗайма.ДатаНачала находится в рамках периода, а ДоговорЗайма.ДатаОкончания нет, то расчет будет РазностьДат(ДоговорЗайма.ДатаНачала,&КонецПериода,"День")+1, если ДоговорЗайма.ДатаОкончания в рамках периода, то РазностьДат(ДоговорЗайма.ДатаНачала,ДоговорЗайма.ДатаОкончания,"День")+1, и т.д. получается 4 варианта расчета. И я не знаю, как мне  провести эти условия, в Компоновщике. Буду ждать Вашего ответа. Заранее спасибо!
#8 by IronDemon
Параметры тут не причем. Нужно в запросе проверять эти условия.
#9 by Arond
Тогда другой немного вопрос, может я просто запутался, как мне в запросе указать, что &НачалоПериода и КонецПериода берутся из табличного поля?
#10 by Arond
Попробовал провести в запросе, на что мне было сказано: «Не найдена процедура или функция: РазностьДат»,  теперь запутался окончательно..
#11 by Vitello
Здрасте... Версия платформы?
#12 by Arond
to Vitello: 1c8.1
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С