d9e5a92d

Глава 18 Работа с Журналами операций

Контекст работы с журналами операций Журнал операций — средство для работы со списком операций. В терминах языка журнал операций не является специальным типом данных (он не имеет значения, его нельзя создать при помощи функции СоздатьОбъект).

С журналом в системе связана форма отображения списка операций и про­граммный модуль формы журнала операций (см. «Виды программных моду­лей»). В локальном контексте этого программного модуля непосредственно доступны реквизиты формы. Кроме того, здесь непосредственно доступен объ­ект «Операция», содержащий значение выбранной в журнале операции. Други­ми словами, в модуле формы журнала операций обращение к атрибутам и ме­тодам текущей операции выполняется напрямую.

Методы контекста Модуля формы журнала операций

Описанные в данном разделе методы доступны только в контексте модуля формы журнала операций (см. «Виды программных модулей»).

ВидыОтбора

Установить доступные виды отборов для журнала операций.

Синтаксис:

ВидыОтбора(СписокОтборов)

Англоязычный синоним:

KindsOfSelection

Параметры:

СписокОтборов Необязательный параметр. Строковое выражение. Может принимать значения:

список имен отборов (через запятую) — в журна­ле операций будут доступны только указанные виды отборов;

символ «*» — для журнала используются все на­значенные в Конфигураторе виды отборов;

пустая строка () — запрещаются все виды отбо­ров.

Если параметр не указан, метод возвращает теку­щий список разрешенных отборов.
Возвращаемое значение:

Строковое значение, содержащее текущий (на момент до вызова метода) список отборов для журнала операций. Имена отбора в возвращаемой строке разделяются запятыми.

Описание:

Метод ВидыОтбора устанавливает доступные виды отборов журнала опера­ций. Использование данного метода влияет на полноту списка видов отбора, который выдается пользователю в диалоге «Отбор» при работе с системой 1С:Предприятие.

Метод ВидыОтбора позволяет ограничить число видов отбора, доступных конкретному пользователю при работе с журналом операций, или совсем запре­тить выполнение отбора в журнале. Данный метод доступен только в контексте модуля формы журнала операций (см. «Виды программных модулей»).

Можно выделить 4 варианта использования данного метода.

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

2. Чтобы ограничить использование отборов какими-либо конкретными ви­дами отбора, список этих видов отбора следует передать методу в качестве па­раметра. Указывать в списке можно как имена отборов, автоматически задавае­мые системой 1С:Предприятие, так и отборы, созданные в процессе конфигу­рирования: по реквизитам операции и по общим реквизитам документов.

«Системные» отборы задаются включением соответствующих опций в окне редактирования свойств операции в конфигураторе. Каждому виду отбора со­ответствует «системное» имя отбора — то, которое выдается пользователю в диалоге «Отбор», и которое можно использовать во встроенном языке (в том числе и при вызове метода ВидыОтбора).

Для журнала операций допустимы следующие «системные» имена отборов:

СуммаОперации — отбор по сумме операции;

Содержание — отбор по содержанию операции.

Кроме этого, в конфигураторе можно включить возможность выполнять от­боры по дополнительным реквизитам операции. Для этого используется опция «Отбор» в закладке «Дополнительные» палитры свойств дополнительного рек­визита операции. В этих случаях в качестве имен отбора следует использовать идентификаторы дополнительных реквизитов операции.

Кроме того в качестве имен отборов могут выступать идентификаторы граф отбора, в которых участвуют бухгалтерские документы или виды субконто, или данные операции или проводки.

Также в жунале операций возможен отбор по видам документов, для кото­рых установлен признак «Бухгалтерский учет». Имена этих отборов определя­ются идентификаторами видов документов.

3. Если параметр СписокОтборов равен «*», разрешаются все виды от­боров, установленные для журнала операций в конфигураторе. Вызов метода ВидыОтбора с таким параметром позволяет отключить ранее установленное ограничение на использование видов отборов.

4. Если в качестве параметра методу ВидыОтбора передана пустая строка, метод запрещает пользователю выполнение любых отборов в журнале опера­ций.

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

Пример:

ВидыОтбора(Клиент, Автор);

ЗакладкиОтбора

Установить в форме журнала операций закладки для интерактивного выбора значения отбора.

Синтаксис:

ЗакладкиОтбора(ИмяОтбора, ВИнтервалеЖурнала, УстановитьНаЗначение,

                            ЗначениеОтбора)

Англоязычный синоним:

TabCtrlSelection

Параметры:

ИмяОтбора Строковое выражение: имя отбора.
ВИнтервалеЖурнала исловое выражение: признак отбора только в интервале журнала. Может принимать зна­чения:

1 — текущие значения отбора для закладок выбираются только по проводкам в установ­ленном интервале журнала;

0 — текущие значения отбора для закладок выбираются по всем проводкам журнала.

По умолчанию — 0.
УстановитьНаЗначение Числовое выражение: признак выбора зна­чения отбора для показа. Параметр может принимать значения:

1 — для показа выбирается отбор по значе­нию, указанному в параметре ЗначениеОтбора;

0 — текущее значение отображаемой заклад­ки отбора устанавливается на первое суще­ствующее значение.

По умолчанию — 0.
ЗначениеОтбора Значение отбора.
Описание:

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

Для включения отбора необходимо в качестве параметра ИмяОтбора пе­редать методу имя отбора. Можно использовать как имена отборов, автомати­чески задаваемые системой 1С:Предприятие, так и отборы, созданные в процес­се конфигурирования: по реквизитам операции и по общим реквизитам доку­ментов.

«Системные» отборы задаются включением соответствующих опций в окне редактирования свойств операции в конфигураторе. Каждому виду отбора со­ответствует «системное» имя отбора — то, которое выдается пользователю в диалоге «Отбор», и которое можно использовать во встроенном языке.

Для журнала операций допустимы следующие «системные» имена отборов:

СуммаОперации — отбор по сумме операции;

Содержание — отбор по содержанию операции.

Кроме этого, в конфигураторе можно включить возможность выполнять от­боры по дополнительным реквизитам операции. Для этого используется опция «Отбор» в закладке «Дополнительные» палитры свойств дополнительного рек­визита операции. В этих случаях в качестве имен отбора следует использовать идентификаторы дополнительных реквизитов операции.

Кроме того в качестве имен отборов могут выступать идентификаторы граф отбора, в которых участвуют бухгалтерские документы или виды субконто, или данные операции или проводки.

Также в жунале операций возможен отбор по видам документов, для кото­рых установлен признак «Бухгалтерский учет». Имена этих отборов определя­ются идентификаторами видов документов.

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

ЗакладкиОтбора(Автор, 1, , );

УстановитьОтбор

Установить отбор журнала операций.

Синтаксис:

УстановитьОтбор(ИмяОтбора, ЗначениеОтбора)

Англоязычный синоним:

SetSelection

Параметры:

ИмяОтбора Строковое выражение — имя отбора. Если это значение пустое, то отбор отключается.
ЗначениеОтбора Значение отбора.
Описание:

Метод УстановитьОтбор принудительно устанавливает отбор для журнала операций. Для установки отбора методу должны быть переданы 2 параметра: имя отбора и значение отбора.

Возможные виды отбора для журнала операций задаются в конфигураторе. В окне редактирования свойств операции можно включить опции, соответст­вующие различным видам отбора. Для таких отборов система 1С:Предприятие использует зарезервированные имена:

СуммаОперации — отбор по сумме операции;

Содержание — отбор по содержанию операции.

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

Кроме того в качестве имен отборов могут выступать идентификаторы граф отбора, в которых участвуют бухгалтерские документы или виды субконто, или данные операции или проводки.

Также в жунале операций возможен отбор по видам документов, для кото­рых установлен признак «Бухгалтерский учет». Имена этих отборов определя­ются идентификаторами видов документов. Эти оборы не имеют значения от­бора.

Отбор устанавливается по значению, указанному в параметре ЗначениеОтбора.

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

Изм = УстановитьОтбор(Склады, Склад!);

ПолучитьОтбор

Возвратить текущее значение отбора журнала операций.

Синтаксис:

ПолучитьОтбор(ИмяОтбора, ЗначениеОтбора)

Англоязычный синоним:

GetSelection

Параметры:

ИмяОтбора Необязательный параметр. Имя переменной, куда будет записано строковое значение имени отбора.
ЗначениеОтбора Необязательный параметр. Имя переменной, куда будет записано значение отбора.
Возвращаемое значение:

Число: 1 — отбор включен; 0 — отбор не включен.

Описание:

Метод ПолучитьОтбор позволяет получить информацию о текущем со­стоянии отбора журнала операций. Если отбор в журнале операций включен, метод возвращает 1 и записывает имя отбора и текущее значение отбора в пе­ременные, передаваемые методу ПолучитьОтбор в качестве параметров.

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

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

Изм = ПолучитьОтбор();

УстановитьИнтервал

Установить интервал журнала операций.

Синтаксис:

УстановитьИнтервал(ДатаНач, ДатаКон, ФлагИзменения)

Англоязычный синоним:

SetRange

Параметры:

ДатаНач Выражение типа «дата» — начальная дата интер­вала журнала операций.
ДатаКон Выражение типа «дата» — конечная дата интерва­ла журнала операций.
ФлагИзменения Необязательный параметр. Этим флагом регули­руется возможность интерактивного изменения интервала журнала. 1 — пользователь может изме­нить интервал журнала интерактивно, 0 — пользо­ватель не может интерактивно изменить интервал журнала.
Описание:

Метод УстановитьИнтервал позволяет установить интервал видимости записей в журнале операций. При работе с журналом будут доступны операции, даты которых лежат внутри указанного интервала.

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

УстановитьИнтервал(НИ, КИ);

НачалоИнтервала

Возвратить дату начала интервала журнала операций.

Синтаксис:

НачалоИнтервала()

Англоязычный синоним:

BegOfRange

Возвращаемое значение:

Значение типа «Дата» — начальная дата интервала журнала операций.

Описание:

Метод НачалоИнтервала позволяет получить текущую начальную дату интервала журнала операций.

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

НИ = НачалоИнтервала();

КонецИнтервала

Возвратить дату конца интервала журнала операций.

Синтаксис:

КонецИнтервала()

Англоязычный синоним:

EndOfRange

Возвращаемое значение:

Значение типа «Дата» — конечная дата интервала журнала операций.

Описание:

Метод КонецИнтервала позволяет получить конечную дату интервала журнала операций.

Данный метод доступен только в контексте модуля формы журнала опера­ций (см. «Виды программных модулей»).

Пример:

КИ = КонецИнтервала();

Предопределенные процедуры модуля формы журнала операций

Описанные в данном разделе системные предопределенные процедуры должны располагаться только в модулях форм журнала операций (см. «Виды программных модулей»).

В основном данные процедуры предназначены для расширения возможно­сти программного управления правами доступа к системе.

Предопределенные процедуры не является встроенными процедурами язы­ка. Для них зарезервированы только название и синтаксис. Тело процедур должно быть написано самим разработчиком в соответствующих программных модулях. Вызов предопределенных процедур на исполнение производится в системе 1С:Предприятие неявно при возникновении соответствующего собы­тия. Описание предопределенных процедур также см. гл. «Системные предо­пределенные процедуры».

ПриУстановкеОтбора

Предопределенная процедура при установке отбора в журнале операций.

Синтаксис:

ПриУстановкеОтбора(ИмяОт6ора, Значение)

Англоязычный синоним:

OnSetSelectInJournal

Параметры:

ИмяОтбора Строковое выражение — имя отбора.
ЗначениеОтбора Значение отбора.
Описание:

Вызов предопределенной процедуры ПриУстановкеОтбора производится системой 1С:Предприятие неявно при интерактивной попытке установить от­бор в журнале операций.

Если в данной предопределенной процедуре установлен статус возврата 0 (например, если данному пользователю нельзя устанавливать данное значение отбора операций), установка отбора не будет выполнена.

Данная предопределенная процедура может располагаться в модуле формы журнала операций и в глобальном программном модуле. Если данная процеду­ра присутствует в модуле формы журнала операций, то будет вызвана она, если нет, то будет вызвана процедура из глобального модуля.

Пример:

Процедура ПриУстановкеОтбора(ИмяОтбора, ЗначОтбора)

   Если НазваниеНабораПрав() = Оператор Тогда

      Если (ИмяОтбора = Автор) И (ЗначОтбораоТекПольз) Тогда

         Предупреждение(У вас нет права просматривать чужие Операции!, 2);

         СтатусВозврата(0);

      КонецЕсли;

   КонецЕсли;

КонецПроцедуры

См. также: СтатусВозврата

ПриУстановкеИнтервала

Предопределенная процедура при установке интервала журнала.

Синтаксис:

ПриУстановкеИнтервала(ДатаНач, ДатаКон)

Англоязычный синоним:

OnSetRange

Параметры:

ДатаНач Дата начала интервала журнала.
ДатаКон Дата конца интервала журнала.
Описание:

Вызов предопределенной процедуры ПриУстановкеИнтервала произво­дится системой 1С:Предприятие неявно при интерактивной попытке устано­вить интервал в журнале документов. Если в данной предопределенной проце­дуре установить статус возврата — 0 (например, если данному пользователю нельзя изменять интервал журнала), установка не будет выполнена.

Пример:

Процедура ПриУстановкеИнтервала(ДатаНач, ДатаКон)

   Если НазваниеНабораПрав() = Продавец Тогда

      Предупреждение(У вас нет права изменять интервал журнала!, 2);

      СтатусВозврата(0);

   КюнецЕсли;

КонецПроцедуры

См. также: СтатусВозврата

Содержание раздела