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

Глава 19
Работа с Журналами проводок


Контекст работы с журналами проводок

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

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

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

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

ВидыОтбора

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

Синтаксис:

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

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

KindsOfSelection

Параметры:

<СписокОтборов>

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

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

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

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

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

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

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

Описание:

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

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

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

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

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

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

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

Сумма — отбор по сумме проводки;

ВалСумма — отбор по валютной сумме проводки;

Валюта — отбор по валюте проводки;

Количество — отбор по количеству проводки;

Счет — отбор по счетам проводки;

СчетДт — отбор по счетам дебета проводки;

СчетКт — отбор по счетам кредита проводки;

ПланСчетов — отбор по плану счетов.

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

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

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

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

Пример:

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

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

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

Синтаксис:

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

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

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

TabCtrlSelection

Параметры:

<ИмяОтбора>

Строковое выражение: имя отбора.

<ВИнтервалеЖурнала>

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

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

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

По умолчанию — 0.

<УстановитьНаЗначение>

Числовое выражение: признак выбора зна­чения отбора для показа. Параметр может принимать значения:

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

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

По умолчанию — 0.

<ЗначениеОтбора>

Значение отбора.

Описание:

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

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

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

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

Сумма — отбор по сумме проводки;

ВалСумма — отбор по валютной сумме проводки;

Валюта — отбор по валюте проводки;

Количество — отбор по количеству проводки;

Счет — отбор по счетам проводки;

СчетДт — отбор по счетам дебета проводки;

СчетКт — отбор по счетам кредита проводки;

ПланСчетов — отбор по плану счетов.

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

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

Пример:

ЗакладкиОтбора("Склады", 1, 1, Константа.ОснСклад);

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

Установить отбор журнала проводок.

Синтаксис:

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

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

SetSelection

Параметры:

<ИмяОтбора>

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

<ЗначениеОтбора>

Значение отбора.

Описание:

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

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

Сумма — отбор по сумме проводки;

ВалСумма — отбор по валютной сумме проводки;

Валюта — отбор по валюте проводки;

Количество — отбор по количеству проводки;

Счет — отбор по счетам проводки;

СчетДт — отбор по счетам дебета проводки;

СчетКт — отбор по счетам кредита проводки;

ПланСчетов — отбор по плану счетов.

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

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

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

Пример:

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

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

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

Синтаксис:

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

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

GetSelection

Параметры:

<ИмяОтбора>

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

<ЗначениеОтбора>

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

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

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

Описание:

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

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

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

Пример:

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

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

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

Синтаксис:

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

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

SetRange

Параметры:

<ДатаНач>

Выражение типа «дата» — начальная дата интер­вала журнала проводок.

<ДатаКон>

Выражение типа «дата» — конечная дата интерва­ла журнала проводок.

<ФлагИзменения>

Необязательный параметр. Этим флагом регули­руется возможность интерактивного изменения интервала журнала. 1 — пользователь может изме­нить интервал журнала интерактивно, 0 — пользо­ватель не может интерактивно изменить интервал журнала.

Описание:

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

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

Пример:

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

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

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

Синтаксис:

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

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

BegOfRange

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

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

Описание:

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

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

Пример:

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

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

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

Синтаксис:

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

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

EndOfRange

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

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

Описание:

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

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

Пример:

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

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

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

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

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

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

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

Синтаксис:

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

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

OnSetSelectInJournal

Параметры:

<ИмяОтбора>

Строковое выражение — имя отбора.

<ЗначениеОтбора>

Значение отбора.

Описание:

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

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

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

Пример:

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

   Если (ИмяОтбора = "Счет") И (ЗначОтбора.Валютный = 1) Тогда

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

   КонецЕсли;

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

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

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

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

Синтаксис:

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

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

OnSetSelectInJournal

Параметры:

<ДатаНач>

Дата начала интервала журнала.

<ДатаКон>

Дата конца интервала журнала.

Описание:

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

Пример:

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

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

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

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

   КонецЕсли;

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

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

ПриПоказеПроводокПоДокументу

Предопределенная процедура при показе проводок по документу (операции).

Синтаксис:

ПриПоказеПроводокПоДокументу(<Документ>)

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

OnShowEntrysByDoc

Параметры:

<Документ>

Документ по которому выводятся проводки.

Описание:

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

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

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

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

Пример:

Процедура ПриПоказеПроводокПоДокументу(ТекДок)

   Если ТекДок.Операция.Фирма <> ТекФирма Тогда

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

   КонецЕсли;

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

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







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