Имя: Пароль:
1C
1С v8
Параметры периода В СКД
,
0 prilforreal
 
20.03.18
12:33
Доброго времени суток! Пишу отчет на СКД на основании регистра накопления ПотолкиОстаткиИОбороты, в параметрах виртуальной таблицы выставляю периодичность-месяц, для помесячного вывода итогов в отчете. Как параметр начала периода использую Период/ДатыНачала/НачалоДня, конца периода Период/КонецПериода/КонецДня. Для задания периода использую условие- Период/ДатыНачала/НачалоДня>=ДатаНачала,
Период/КонецПериода/КонецДня<=ДатаОкончания.
В итоге в отчете появляются несуществующие записи из декабря этого года, когда происходит такая фантастика обычно чищу кэш, но в этот раз не помогло, скорее всего намудрил что то с периодом, декабрьских движений в регистре не найдено, еще бы сейчас ведь только март. Помогите разобраться, куда копать?
http://vfl.ru/fotos/4629e3eb21035133.html
1 Cyberhawk
 
20.03.18
12:34
"Для задания периода использую условие- Период/ДатыНачала/НачалоДня>=ДатаНачала" // Покажи
2 prilforreal
 
20.03.18
12:36
3 Cyberhawk
 
20.03.18
12:37
А что такое "Период" в этом отборе?
4 prilforreal
 
20.03.18
12:40
5 Cyberhawk
 
20.03.18
12:43
Почему не вписываешь условия (правильнее будет назвать "параметры виртуальной таблицы") в поля НачалоПериода и КонецПериода в этом окошке?
6 prilforreal
 
20.03.18
12:48
(5) Ни разу не сталкивался, обычно период задавал устанавливая дату документа между параметрами даты начала и даты окончания, а по этому регистру много документов проходит, так что такой вариант не подходит. Как обычно заполняются эти поля(параметры виртуальной таблицы) И как еще можно в отчетах скд обозначить период?
7 prilforreal
 
20.03.18
12:50
(5) Периодичность я получил уже в выводе отчета, мне же нужно задавать промежуток времени по которому я хочу получить информацию, например за 2017 год, а в отчете в колонках итоги по месяцам
8 Cyberhawk
 
20.03.18
12:53
"нужно задавать промежуток времени по которому я хочу получить информацию" // Именно для этого (5) и существует
9 prilforreal
 
20.03.18
13:00
(8) И что обычно пишут в этих полях? у меня созданы параметры, ими и хотелось бы задавать период.
http://vfl.ru/fotos/bc91308421035691.html
10 Franchiser
 
гуру
20.03.18
13:02
Сделай стандартный период и привяжи к нему дату начала и окончания
11 Franchiser
 
гуру
20.03.18
13:04
(9) Обычно пишут: &Период.ДатаНачала, &Период.ДатаОкончания
12 Franchiser
 
гуру
20.03.18
13:04
+ ставят галочку "Ограничение доступности в 2-х строках"
13 prilforreal
 
20.03.18
14:29
(10) Хотелось бы сохраняя прежний вид прийти к этим настройкам, период у меня настраивается на форме стандартным элементом формы ВыборПериода, к которому приписан код:

Процедура ВыбПериодНажатие(Элемент)
    НастройкаПериода = Новый НастройкаПериода;
    НастройкаПериода.РедактироватьКакИнтервал = Истина;
    НастройкаПериода.РедактироватьКакПериод = Истина;
    НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
    НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода)));
    Если НастройкаПериода.Редактировать() Тогда
    НачПериода = НастройкаПериода.ПолучитьДатуНачала();
    КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
    НД = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода");
    КД = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода");
    НД.Значение = ЭлементыФормы.НачПериода.Значение;
    КД.Значение = КонецДня(ЭлементыФормы.КонПериода.Значение);
    КонецЕсли;
КонецПроцедуры

Процедура НачПериодаПриИзменении(Элемент)
    НД = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("НачалоПериода");
    //КД = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода");
    НД.Значение = ЭлементыФормы.НачПериода.Значение;
    //Кд.Значение = ЭлементыФормы.КонПериода.Значение;
КонецПроцедуры

Процедура КонПериодаПриИзменении(Элемент)
    КД = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("КонецПериода");
    КД.Значение = КонецДня(ЭлементыФормы.КонПериода.Значение);
КонецПроцедуры
14 Franchiser
 
гуру
20.03.18
15:03
(13) толстый клиент?
15 Franchiser
 
гуру
20.03.18
15:05
наверно нужно менять пользовательские настройки
16 Franchiser
 
гуру
20.03.18
15:38
(13) ты в скд не поставил значок &, ты считаешь это не ошибка?
17 prilforreal
 
20.03.18
16:21
(14) Да, толстый, уже исправил, все в общем устраивает с отчетом, кроме того что если я период ставлю длиннее чем реально прошло времени появляется дополнительная колонка с последним месяцем этого периода, месяца которого еще не было, и в ней есть значения, подтянутые непонятно каким образом
18 Franchiser
 
гуру
20.03.18
16:27
(17) потому что дата окончания в стандартном периоде автоматически устанавливается на конец дня, даже если время укажешь
19 prilforreal
 
20.03.18
16:29
(18) но в этот день же никаких движений нет, я нашел эту цифру, движение было в феврале этого года, почему же он кидает ее на дату которой еще не случилось?
20 Franchiser
 
гуру
20.03.18
16:32
зачем тебе таблица остатков и оборотов, тебе нужны остатки?
не очень понятно, что у тебя происходит: какой ты период указал и какой лишний месяц показывается?
21 Franchiser
 
гуру
20.03.18
16:33
вначале отладь запрос: посмори не получаются ли в нем лишние даты, потом смотри в СКД.
22 Franchiser
 
гуру
20.03.18
16:35
В СКД есть особенности: например для корректно расчета остатков (м.б. оборотов) нужно всегда выбирать парные ресурсы, иначе расчет м.б. не верным
23 Franchiser
 
гуру
20.03.18
16:37
ознакомься с этой статьей
https://its.1c.ru/db/metod8dev/content/3093/hdoc
24 prilforreal
 
20.03.18
16:38
(18) последняя запись в регистре записывается в последний месяц установленного периода.
http://vfl.ru/fotos/542cf7ac21038771.html
В ячейках сумма расходов по регистру в этом месяце по конкретному контрагенту, расходов нет, ячейка пустая
25 Franchiser
 
гуру
20.03.18
16:39
Так я и не понял зачем тебе таблица остатков и оборотов
Почитай про ошибки:
1. Использование в запросе измерений виртуальных таблиц, отсутствующих в списке выборки
2. Не использование периодичности Авто
26 Franchiser
 
гуру
20.03.18
16:41
(24) Что такое площадь? это остаток и оборот?
27 prilforreal
 
20.03.18
16:42
(25) Использую периодически месяц для разбивки отчета по колонкам месяцам, у таблицы отсаткиОбороты есть виртуальная таблица, у таблицы Потолки например ее нет.
28 prilforreal
 
20.03.18
16:42
(26)площадь это Измерение
29 prilforreal
 
20.03.18
16:44
30 Franchiser
 
гуру
20.03.18
16:44
(28) Если ты указал период по конец декабря, у тебя же есть остаток на 01.12? вот отчет и показывает этот остаток.
Почему ты думаешь если оборотов нет, то и не должен показывать месяц?
31 prilforreal
 
20.03.18
16:45
(30) Это все объясняет, тогда а моем случае лучше использовать таблицу ПотолкиОбороты?
32 Franchiser
 
гуру
20.03.18
16:46
(31) Ну еще можно попробовать вывести все ресурсы в запрос, но в скд, сделать их все недоступными. СКД скорее всего не может корректно обработать такой запрос: см. про ошибку "Использование в запросе измерений виртуальных таблиц, отсутствующих в списке выборки"
33 prilforreal
 
20.03.18
16:49
(32) Спасибо большое, Плюсище вам к карме!)