Основная страница


Глава 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);

   КюнецЕсли;

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

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






Перейти  к оглавлению: Описание встроенного языка