Как сделать период в 1с
Перейти к содержимому

Как сделать период в 1с

  • автор:

 

Стандартный период в 1С

Стандартный период в 1С – это общий объект, который можно использовать и при работе с управляемой формой, и при работе с компоновкой данных. В этой статье разберем, как работать со стандартным периодом на управляемой форме и в СКД.

Стандартный период в 1С на управляемой форме

На управляемой форме можно создать реквизит с типом Стандартный период, и поместить этот реквизит на саму форму в виде поля ввода.

Стандартный период 1С

Теперь, если пользователь нажмет на кнопку «…» поля ввода стандартного периода, то откроется окно «Выберете период».

Стандартный период 1С

В этом окне можно выбрать любой период, и поместить его в поле ввода.

Стандартный период 1С

Как нам, после того как будет выбран период, получить дату начала и дату конца периода? Для этого следует воспользоваться свойствами ДатаНачала и ДатаОкончания объекта СтандартныйПериод.

Например, на форме создадим команду, которая будет читать дату начала и дату окончания выбранного стандартного периода, а потом выводить их в сообщении.

Напомню, что Период – это реквизит формы (см. первый скрин).

Стандартный период 1С

Стандартный период можно создать в коде при помощи конструктора Новый.

Если мы сделаем так, то создадим пустой стандартный период (с пустыми датами). Также можно создать стандартный период с уже заранее определенными датами.

Ещё, можно создать стандартный период по варианту. Например, создадим стандартный период вчерашней даты.

ВариантСтандартногоПериода – системное перечисление, которое содержит разные варианты стандартного периода. Посмотреть на все значения этого перечисления можно в синтакс-помощнике (Системные перечисления – Разные – Варианта стандартного периода).

Созданную при помощи конструктора Новый переменную типа СтандартныйПериод, можно, как вариант, присвоить реквизиту формы такого же типа.

 Стандартный период 1С

Стандартный период 1С в СКД

Стандартный период можно использовать в СКД. Например, нам нужно получить список документов, начиная с одной даты и заканчивая другой датой.

У нас получится такой вот несложный запрос в наборе данных.

Стандартный период 1С в СКД

Со следующим набором параметров.

Стандартный период 1С в СКД

Если мы всё так и оставим, эти параметры у нас перейдут и в настройку.

Стандартный период 1С в СКД

И в форму отчета.

Стандартный период 1С в СКД

Возможно, вас такой вариант и устроит, а можно заменить эти даты стандартным периодом.

Для этого в схеме компоновки данных нужно создать параметр с типом СтандартныйПериод.

Стандартный период 1С в СКД

А в поле Выражение для параметров ДатаНачала и ДатаОкончания получать дату начала и дату окончания параметра с типом СтандартныйПериод:

А также, у параметров с датами необходимо установить флаги у поля Ограничение доступности, чтобы их не было видно на форме отчёта.

Стандартный период 1С в СКД

Чтобы поле Период отобразилось на форме отчёта, следует установить свойство Включать в пользовательские настройки соответствующему параметру на закладке Настройки.

Стандартный период 1С в СКД

Ну и также, не забудем выбрать поля у детальных записей.

Стандартный период 1С в СКД

После всех этих настроек, на форме отчета должно появиться поле Период, в котором можно выбрать разные варианты периодов.

Стандартный период 1С в СКД

Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»

Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»

Программировать в 1С за 11 шагов

Книга написана понятным и простым языком — для новичка.

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника

О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»

Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.

Основы разработки в 1С такси

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Промо-код на скидку в 15% — 48PVXHeYu

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму
.

Как сделать период в 1с

 

Открытие периода в 1С операция будничная, обычно ее выполняют в начале месяца. Применяется такое действие в продуктах, где есть компонета «Торговля», например в 1С:Предприятие 7.7 Торговля и склад.

Обчно происходит следующее. Утром, при открытии бухгалтером программы, выскакивает табличка с предупреждением о необходимости открытия периода.

Как нужно действовать? После закрытия программы по требованию предупреждающего сообщения, необходимо открыть 1С повторно, но в монопольном режиме. Для этого в стартовом окошке выбора баз («Запуск 1С:Предприятия») нажмите галочку «монопольно»

Теперь, после входа в программу, появится предупреждающее сообщение, но несколько иного характера. В нем, если нажать кнопку «Да», то программа выполнит открытие периода самостоятельно.

Если же мы откажемся от открытия периода в этот раз, то вновьсозданные документы проводиться не будут, а при последующих стартах программы нас будет встречать все то же сообщение о необходимости открыть период.

Бывают случаи, когда операцию по открытию нового периода нужно выполнить не в начале месяца, а например, когда не окончен действующий период. Т.е. заранее.

Для этого нужно повторить вход в программу 1С:Предприятие 7.7 Торговля и Склад в монопольном режиме. Затем перейти в главном меню в раздел «Операции» и выбрать кнопку «Управление оперативными итогами»

В открывшемся окне возле секции, отображающей новый период, имеется кнопка «Открыть». Нажмем ее. Появится предупреждение о необходимости изменить точку актуальности итогов.

«Точка актуальности итогов» или ТА, что это такое? Под точкой актуальности итогов понимается точка во времени, в которой во всех необоротных регистрах программы находятся актуальные, текущие данные. Фактически, это время, на которое хранятся оперативные итоги.

Нажимаем кнопку «Да». Появляется форма переустановки актуальности итогов. В нашем случае, естественно, нужно выбрать все проведенные документы и нажать «Выполнить». После непродолжительного времени, если с порядком документов нет нарушений, программа выполнит перенесение точки актуальности на новую дату.

Смело выбирайте «Выход». На этом открытие периода в программе 1С:Предприятие 7.7 Торговля и Склад завершено.

В случае, если у Вас появятся какие-либо сложности, свяжитесь с нами, мы обязательно поможем.

Если у Вас появились вопросы по статье или остались нерешенные проблемы обсудить их Вы можете на Форуме 1С Вопросы и ответы

1С 8. Настройка параметра — период в системе компоновки данных. Удобство пользователю.

Аватар пользователя mykib.org

Расскажу о том, как я реализую выбор периода в отчетах на системе компоновке данных (СКД) — периоды требуется указывать не с точностью до секунды, а с точностью до дня.

Допустим, у нас есть макет СКД, со следующим запросом набора данных:

РегистрСведений.Валюты КАК КурсыВалют

КурсыВалют.Период МЕЖДУ &ДатаНачала И &ДатаОкончания

Конечно можно было бы указать в описании параметра данных тип параметра «Дата» — состава даты «Дата», а в запросе использовать

КурсыВалют.Период МЕЖДУ НачалоПериода(&ДатаНачала, ДЕНЬ) И КонецПериода(&ДатаОкончания, ДЕНЬ)

Но я пользуюсь следующей схемой:

Добавляю новый параметр «Период» тип «Стандартный период». Для параметров «ДатаНачала» и «ДатаОкончания» указываю значения &Период.ДатаНачала &Период.ДатаОкончания, и ограничиваю их вывод .

1С 8. Настройка периода СКД

Теперь можно вывести выбор периода на форму.

Добавим Табличное поле, укажим данные КомпоновщикНастроек.Настройки.ПараметрыДанных

1С 8. Настройка периода СКД неуправляемая форма

В итоге пользователь увидит:

1С 8. Период отчета СКД неуправляемая форма

УправляемаяФорма (не забудем указать форму основной на закладке «Дополнительные»)

Перенесем из поля реквизитов в лево реквизит отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных

Выбор стандартного периода

Подскажите как сделать интерактивный выбор стандартного периода:

Что-то типа такого:

ВыбПериод = Новый СтандартныйПериод;
Если ВвестиЗначение(ВыбПериод) Тогда
.

&НаКлиенте
Процедура ВыбратьПериодНажатие(Элемент)

Диалог = Новый ДиалогРедактированияСтандартногоПериода();

СтандартныйПериод = Новый СтандартныйПериод();

ДатаНачала = Объект.НачалоПериода;
ДатаОкончания = Объект.КонецПериода;

СтандартныйПериод.ДатаНачала = ДатаНачала;
СтандартныйПериод.ДатаОкончания = ДатаОкончания;
Диалог.Период = СтандартныйПериод;

ОписаниеОповещения = Новый ОписаниеОповещения("ОбработкаВыбораПериода",ЭтаФорма);

&НаКлиенте
Процедура ОбработкаВыбораПериода(Период,Параметры) Экспорт

Если Период <> Неопределено Тогда

Объект.НачалоПериода = Период.ДатаНачала;
Объект.КонецПериода = Период.ДатаОкончания;

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *