Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выбор периода
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
bizisoft
Здравствуйте.
Столкнулся с непонятной работой элемента "Выбор периода", а именно не все документы попадают в отбор.
На форме расположил "Выбор периода", система создала обработчик для кнопки.
Процедура ВыбПериодНажатие(Элемент)
    НастройкаПериода = Новый НастройкаПериода;
    НастройкаПериода.РедактироватьКакИнтервал = Истина;
    НастройкаПериода.РедактироватьКакПериод = Истина;
    НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
    НастройкаПериода.УстановитьПериод(НачПериода, ?(КонПериода='0001-01-01', КонПериода, КонецДня(КонПериода)));
    Если НастройкаПериода.Редактировать() Тогда
        НачПериода = НастройкаПериода.ПолучитьДатуНачала();
        КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
    КонецЕсли;
КонецПроцедуры


Отбор документов производится в другой процедуре следующим образом
ДокументыЗаказы = Документы.ЗаказПокупателя.Выбрать(НачПериода, КонПериода);


Имеются документы датируемые 15, 16, 17, 18 числа.
Допустим нужно отобрать документы за 18 число - задаю даты НачПериода = 18.10.2015 и КонПериода = 18.10.2015 или через Настройка периода День = 18.10.2015
Жму выполнить процедуру, но документы не отбираются.
Если изменить КонПериода на 19.10.2015 , то в таком случае документы отбираются.

Подскажите пожалуйста, что это за аномалия и как это можно вылечить ?

p.s. 1С:Предприятие 8.2 (8.2.19.130)
p.s. p.s. Типовое отраслевое решение "Альфа-Авто: АА, укр. 4.1" "1С-Рарус" (4.1.13.01)

Спасибо.


64000000.gif





Неделю ломал голову над этой проблемой, а вот решил попробовать что получится, если написать так:
ДокументыЗаказы = Документы.ЗаказПокупателя.Выбрать(НачалоДня(НачПериода), КонецДня(КонПериода));


...и о чудо заработало, как положено.

Верно-ли данное решение или это по детски?
Но тогда не понятно, почему не работает процедура при нажатии кнопки выбора периода, когда там в условном выборе стоит КонецДня()?
TipsyKID
Есть предположение, что у Вас КонПериода и НачПериода переменные типа Дата а следует указать ДатаВремя.
Тогда не надо будет дополнительно указывать НачалоДня и КонецДня.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.