Описание встроенного языка системы 1С Предприятие

         

ВидыОтбора


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

Синтаксис:

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

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

KindsOfSelection

Параметры:

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

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

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

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

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

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

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

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



Описание:

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

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

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

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

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

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




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

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

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

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

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

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

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

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

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

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

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

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

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

Пример:

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


ВидыОтбора


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

Синтаксис:

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

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

KindsOfSelection

Параметры:

<СписокИменОтборов>

Необязательный параметр. Строковое выраже­ние, содержащее список имен отборов для жур­нала. Виды указываются через запятую. Если вместо списка —символ "*", то значит для жур­нала используются все назначенные в конфигу­раторе виды отборов.

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

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

Описание:

Метод ВидыОтбора устанавливает доступные виды отборов журнала для вызова их в интерактивном режиме.

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

Пример:

ВидыОтбора("Сотрудник, Расчетчик");



ВидыСубконто


Атрибут глобального контекста для получения существующих значе­ний типа ВидСубконто.

Синтаксис:

ВидыСубконто

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

SubcontoKinds

Описание:

Атрибут ВидыСубконто не имеет самостоятельного смысла, а служит для получения конкретных значений типа «Вид субконто». Атрибут всегда исполь­зуется с доступными ему атрибутами и методами.

Атрибуты и методы:

Для получения конкретного значения типа «Вид субконто» следует через точку указать атрибут-идентификатор вида субконто.

Для получения количества существующих в конфигурации видов субконто следует через точку вызвать метод КоличествоЗначений.

Для получения значения типа «Вид субконто» по его номеру в метаданных следует через точку вызвать метод ЗначениеПоНомеру(<Число>), где <Число> — номер вида субконто в метаданных.

Пример:

Сч = СоздатьОбъект("Счет");

Если Сч.ВидСубконто(1) = ВидыСубконто.Материалы Тогда

   // ...

КонецЕсли;

Для Инд = 1 По ВидыСубконто.КоличествоЗначений() Цикл

   ВидСк = ВидыСубконто.ЗначениеПоНомеру(Инд);

   // ...

КонецЦикла;



ВключатьПодчиненные


Установить флаг выборки всех подчиненных элементов.

Синтаксис:

ВключатьПодчиненные(<Режим>]

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

IncludeChildren

Параметры:

<Режим>

Необязательный параметр. Числовое выражение: если 1 — надо включать в выборку все подчиненные элементы, если 0 — не надо включать подчиненные элементы.

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

Текущее числовое значение режима выборки подчиненных элементов спра­вочника (на момент до исполнения метода).

Описание:

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

Данный метод используется до вызова метода ВыбратьЭлементы, который фактически открывает выборку. Дальнейшая выборка при помощи метода ПолучитьЭлемент будет происходить среди элементов текущего справочника в соответствии с установленным режимом выборки <Режим>. По умолчанию в выборку всегда включаются подчиненные элементы, поэтому реально имеет смысл применять данный метод только в том случае, если надо отменить вклю­чение подчиненных.

Данный метод может использоваться только для объектов, созданных функцией СоздатьОбъект.

Пример:

// Это процедура формирования отчета - "Список Товаров"

// ВыбТовар - реквизит диалога типа «справочник.Товар», которым

// задается группа товаров для отображения.

//В процедуру передается параметр Режим, которым задается,

// отображать или нет вложенные подгруппы товаров выбранной группы

Процедура ВыводСпискаТоваров(Режим)

   Таб = СоздатьОбъект("Таблица");

   Тов = СоздатьОбъект("Справочник.Товары");

   Тов.ИспользоватьДату(ДатаОтчета);

   Если ВыбТовар.Выбран() = 0 Тогда

      //если товар в диалоге не выбран, то формируем отчет без условий

      Заг = "По всем товарам.";

   ИначеЕсли ВыбТовар.ЭтоГруппа() = 1 Тогда

      // если в диалоге выбрана группа товаров, то

      // Задаем выборку элементов Справочника из одной группы

      Тов.ИспользоватьРодителя(ВыбТовар);




      Заг = "По товарам группы " + ВыбТовар.Наименование;

      // Задаем выборку всех подчиненных элементов Справочника

      Тов.ВключатьПодчиненные(Режим);

   Иначе

      // если в диалоге выбран товар, то

      // формируем отчет только по этому товару

      Тов.НайтиЭлемент(ВыбТовар);

      Заг = "По товару " + ВыбТовар.Наименование;

      Таб.ВывестиСекцию("Отчет");

      Таб.ВывестиСекцию("Товар");

      Перейти ~MET;

   КонецЕсли;

   ЧислоСтрок = О;

   Таб.ВывестиСекцию("Отчет");

   // Открываем выборку

   Тов.ВыбратьЭлементы();

   Пока Тов.ПолучитьЭлемент() > 0 Цикл

      ЧислоСтрок = ЧислоСтрок + 1;

      Если Тов.ЭтоГруппа() = 1 Тогда

         Таб.ВывестиСекцию("Группа");

      Иначе

         Таб.ВывестиСекцию("Товар");

      КонецЕсли;

      Состояние("В отчет выведено " + ЧислоСтрок + " строк.");

   КонецЦикла;

   //Вызов выходного отчета в окно просмотра и редактирования.

~MET:

   Таб.ТолькоПросмотр(1);

   Таб.Опции(0, 0, 4, 0);

   Таб.Показать("Список товаров по каталогу", "");

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

См. также: ВыбратьЭлементы, ПолучитьЭлемент, СоздатьОбъект


ВключатьСубсчета


Устанавливает режим отбора итогов методом ВыполнитьЗапрос по субсчетам.

Синтаксис:

ВключатьСубсчета(<ФлагСчета>, <ФлагКоррСчета>}

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

IncludeSubAccounts

Параметры:

<ФлагСчета>

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

0 — не разворачить по субсчетам;

1 — разворачивать по субсчетам;

-1 (минус единица) — не выдавать итоги по сче­там-группам.

Значение по умолчанию — 0.

<ФлагКоррСчета>

Необязательный параметр. Признак развертыва­ния сальдо по субсчетам корреспондирующего счета. Число:

0 — не разворачить по субсчетам;

1 — разворачивать по субсчетам;

-1 (минус единица) — не выдавать итоги по кор­респондирующим счетам-группам.

Значение по умолчанию — 0.

Описание:

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

Если метод не вызвался, разворот итогов по субсчетам не производится.

Пример:

БухИтоги.ВключатьСубсчета(1, 1);



ВключитьПроводки


Включает/выключает проводки операции.

Синтаксис:

ВключитьПроводки(<Флаг>)

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

EntriesOn

Пареметры:

<Флаг>

Необязательный параметр. 1 — включить провод­ки операции. 0 — выключить проводки операции. Если параметр не передан — состояние не изменя­ется.

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

Состояние на момент вызова метода. 1 — проводки операции включены; 0 — проводки операции выключениы.

Описание:

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

Данный метод может использоваться только для объектов, созданных функцией СоздатьОбъект. Изменяется состояние всех выбранной проводок операции одноврменно.

Пример:

Опер = СоздатьОбъект("Операция");

Опер.ВыбратьОперации(ДатаНач, ДатаКон);

Пока Опер.ПолучитьОперацию() = 1 Цикл

   Опер.ВключитьПроводки(0);

КонецЦикла;



ВКонце


Прочитать значение флага конца файла базы банных.

Синтаксис:

ВКонце()

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

EOF

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

Число: 1 — указатель в файле находится за последней записью; 0 — конец файла не достигнут.

Описание:

Метод ВКонце возвращает значение флага конца файла.

Пример:

Функция МаксимальнаяПокупка()

   ДБФ.Первая();

   Уплачено = 0;

   Пока ДБФ.Вконце() = 0 Цикл

      Если ДБФ.AMOUNT > Уплачено Тогда

         Уплачено = ДБФ.AMOUNT;

      КонецЕсли;

      ДБФ.Следующая();

   КонецЦикла;

   Возврат Уплачено;

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



Владелец


Значение элемента сопряженного справочника, которому подчинен выбранный элемент текущего справочника.

Синтаксис:

Владелец

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

Owner

Описание:

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

Данный атрибут может быть изменен только для объектов, созданных функцией СоздатьОбъект.

Пример:

Функция ДатьВладельца(Элем)

   // Справочник "Единицы" подчинен Справочнику "Товары"

   // Получая в параметре функции значение Единицы измерения товара,

   // надо выдать имя товара, для которого задана эта единица изм.

   СпрТ = СоздатьОбъект("Справочник.Товары");

   СпрЕ = СоздатьОбъект("Справочник.Единицы");

   СпрЕ.НайтиЭлемент(Элем);

   СпрТ.НайтиЭлемент(СпрЕ.Владелец);

   Возврат "Это единица измерения товара " + СпрТ.Наименование;

КонецФункции



ВНачале


Прочитать значение флага начала файла.

Синтаксис:

ВНачале()

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

BOF

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

Число: 1 — указатель в файле находится перед первой записью; 0 — начало файла не достигнуто.

Описание:

Метод ВНачале возвращает значение флага начала файла.

Пример:

Функция СреднСтоимПокупки()

   ДБФ.Последняя();

   Уплачено = 0;

   Записей = 0;

   Пока ДБФ.ВКонце() = 0 Цикл

      Уплачено = Уплачено + ДБФ.AMOUNT;

      Записей = Записей + 1;

      ДБФ.Следующая();

   КонецЦикла;

   Если Записей > 0 Тогда

      Уплачено = Уплачено / Записей;

   КонецЕсли;

   Возврат Уплачено;

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



ВНачалоВыборки


Осуществляет прямое позиционирование на начало выборки.

Синтаксис:

ВНачалоВыборки()

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

ToSelectionBegin

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

Число: 1 — если операция выполнена успешно, 0 — если нет.

Описание:

Метод ВНачалоВыборки осуществляет прямое позиционирование на нача­ло выборки.

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

Пример:

// Текст запроса

Текст3апроса = "

| ...

|Группировка Должность;

|Группировка Категория;

| ...

|";

// Текст процедуры обработки запроса

Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда

   Возврат;

КонецЕсли;

Если Запрос.Получить(ВыбДолжн, ВыбКатег) = 0 Тогда

   Если Запрос.Получить(ВыбДолжн, ) = 0 Тогда

      // ...

   КонецЕсли;

КонецЕсли;

Запрос.ВНачалоВыборки();

Пока Запрос.Группировка(1, -1) цикл

   // ...

Конеццикла;



Внешние переменные


Внешние переменные — это переменные из области видимости процедуры или функции программного модуля, в теле которого используется данный за­прос. Внешние переменные в тексте описания запроса могут использоваться в операторах Период С и Условие.

Пример:

Перем ДатаНач, ДатаКон;

Процедура Сформировать()

   Если (Число(ДатаНач) = 0) ИЛИ (Число(ДатаКон) = 0) Тогда

      Предупреждение("Не задан период!");

      Возврат;

   КонецЕсли;

   // Создание объекта типа "Запрос"

   Запрос = СоздатьОбъект("Запрос");

   ТекстЗапроса =

   "//{{ЗАПРОС(Сформировать)

   |  // используем внешние переменные ДатаНач и ДатаКон

   |с ДатаНач по ДатаКон;

   |Рез = ЖурналРасчетов.Зарплата.Результат;

   |Сотр = ЖурналРасчетов.Зарплата.Объект;

   |Группировка Сотр без групп;

   |Группировка ПериодЖурнала;

   |Функция Сум = Сумма(Рез);

   |"//}}ЗАПРОС

   ;

   // используем внешнюю переменную ВыбСотр

   Если ВыбСотр.Выбран() = 1 Тогда

      // используем в запросе внешнюю переменную ВыбСотр

      ТекстЗапроса = ТекстЗапроса + "Условие(Сотр = ВыбСотр);";

   КонецЕсли;

   // Если ошибка в запросе, то выход из процедуры

   Если Запрос.Выполнить(ТекстЗапр) = 0 Тогда

      Возврат;

   КонецЕсли;

   ...

КонецПроцедуры // ВыбСотр — это реквизит диалога



Внутренние переменные


Внутренняя переменная — это переменная, объявленная в тексте описания запроса. Именем переменной может быть любая последовательность букв, цифр и знаков подчеркивания "_", начинающаяся с буквы или знака подчеркивания "_". Имена внутренних переменных не должны совпадать с зарезервированны­ми словами языка запросов. Распознавание имен переменных, названий опера­торов, процедур и функций ведется без учета регистра букв.

Пример:

*

// имена внутренних переменных в описании запроса

_43842        // ОК

НачалоПериода // ОК

712piece      // Ошибка: начинается с цифры

Week          // Ошибка: ключевое слово зарезервировано

*

// применение имен внутренних переменных описания запроса

// в программном модуле после позиционирования строки

// выборки функцией Группировка

Сотр = НовЗапрос.Сотр;

Кат = НовЗапрос.Кат;

ИТОГ = НовЗапрос.Итого;



Необязательный параметр. Числовое выражение интервала


Вывести окно вопроса.
Синтаксис:
Вопрос(<Текст_вопроса>, <Режим>, <Таймаут>)
Англоязычный синоним:
DoQueryBox
Параметры:

<Текст_вопроса>
Строковое выражение текста вопроса.
<Режим>
Числовое или строковое выражение, определяю­щее режим вывода окна вопроса.
<Таймаут>
Необязательный параметр. Числовое выражение интервала времени ожидания ответа в секундах, в течение которого система будет ожидать ответа пользователя. Если данный параметр опущен или равен 0, то время ожидания бесконечно. Значение по умолчанию — 0.

Возвращаемое значение:
Если параметр <Режим> задан числовым значением, то функция возвраща­ет числовое значение:

-1
Закончилось время ожидания ответа.
1
Выбрана кнопка «ОК».
2
Выбрана кнопка «Отмена».
3
Выбрана кнопка «Стоп».
4
Выбрана кнопка «Повтор».
5
Выбрана кнопка «Пропустить».
6
Выбрана кнопка «Да».
7
Выбрана кнопка «Нет».

Если параметр <Режим> задан строковым значением, то функция возвраща­ет строковое значение. Язык для возврата такой же, какой использован в пара-метре <Режим>.

Русск. яз.
Англ.яз.
Описание
Таймаут
Timeout
Закончилось время ожидания ответа.
ОК
ОК
Выбрана кнопка «ОК».
Отмена
Cancel
Выбрана кнопка «Отмена».
Стоп
Abort
Выбрана кнопка «Стоп».
Повтор
Retry
Выбрана кнопка «Повтор».
Пропустить
Ignore
Выбрана кнопка «Пропустить».
Да
Yes
Выбрана кнопка «Да».
Нет
No
Выбрана кнопка «Нет».

Описание:
Функция Вопрос выводит на экран окно вопроса. Текст определяется па­раметром <Текст_вопроса>. Параметр <Режим> определяет варианты воз­можных ответов.
Если параметр <Режим> задан числовым значением, то возможные вариан­ты передаваемого параметра:

0
Кнопка «ОК».
1
Кнопки «ОК» и «Отмена».
2
Кнопки «Стоп», «Повтор», «Пропустить».
3
Кнопки «Да», «Нет», «Отмена».
4
Кнопки «Да», «Нет».
5
Кнопки «Повтор», «Отмена».



Любое другое числовое значение параметра <Режим> эквивалентно значению 0 (кнопка «ОК»), равно как и отсутствие указанного параметра.
Если параметр <Режим> задан строковым значением, то возможные вариан­ты передаваемого параметра:

Русскоязычное написание
Англоязычное написание
ОК
ОК
ОК+Отмена
OK+Cancel
Стоп+Повтор+Пропустить
Abort+Retry+Ignore
Да+Нет+Отмена
Yes+No+Cancel
Да+Нет
Yes+No
Повтор+Отмена
Retry+Cancel

Пример:
Рез = Вопрос("Вы получили данное сообщение?", 4);
Если Вопрос("Все нормально?", "Да+Нет") = "Да" Тогда
   //  . . .
КонецЕсли;

Восстановить


Восстановить текущую запись.

Синтаксис:

Восстановить()

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

Recall

Описание:

Метод Восстановить восстанавливает текущую запись.

Пример:

См. пример метода Удалить



ВосстановитьЗначение


Восстановить сохраненное для пользователя значение.

Синтаксис:

ВосстановитьЗначение(<Идентификатор>)

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

RestoreValue

Параметры:

<Идентификатор>

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

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

Значение, сохраненное для пользователя.

Описание:

Применять функцию ВосстановитьЗначение следует, например, если требуется восстановить ранее запомненное (в предыдущем сеансе работы) не­которые значение системы.

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

Замечание. При использовании метода ВосстановитьЗначение() для зна­чения типа «СписокЗначений», являющимся реквизитом формы, его идентификатор следует передавать в качестве второго параметра. В этом случае метод следует использовать как процедуру, т. е. не использовать возвращаемое значение. ВосстановитьЗначение("СистСтрокаМойСпис", ИдентМойСпис);

Пример:

ДефСклад = ВосстановитьЗначение("МойСклад");

См. также: СохранитьЗначение



Возврат


Завершение процедуры или функции.

Синтаксис:

Возврат [<Выражение>]

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

Return

Параметры:

<Выражение>

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

Описание:

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

Пример:

Функция ДеньНедели(Номер)

   Если Номер =1 Тогда

      Return "понедельник";

   ИначеЕсли Номер =2 Тогда

      Возврат "вторник";

   ИначеЕсли Номер =3 Тогда

      Возврат "среда";

   ИначеЕсли Номер =4 Тогда

      Возврат "четверг";

   ИначеЕсли Номер =5 Тогда

      Возврат "пятница";

   ИначеЕсли Номер =6 Тогда

      Возврат "суббота";

   ИначеЕсли Номер =7 Тогда

      Возврат "воскресенье";

   Иначе

      Возврат "ошибка";

   КонецЕсли;

КонецФункции



Врег


Преобразовать символы строки в верхний регистр.

Синтаксис:

ВРег(<Строка>)

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

UpРег

Параметры:

<Строка>

Строковое выражение.

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

Строковое значение.

Описание:

Функция ВРег преобразует все символы строки в верхний регистр. Резуль­тирующую строку возвращает в качестве собственного значения. Исходная строка не изменяется.

Пример:

Загл = ВРег("маленькие");



ВременныйРасчет


Установить флаг участия регистра во временном расчете.

Синтаксис:

ВременныйРасчет(<Флаг>)

Англоязычный термин:

TempCalc

Параметры:

<Флаг>

Необязательный параметр. Числовое выражение. 1 — установить флаг участия регистра во временном расчете; 0 — сбросить флаг участия регистра во временном расчете. Значение по умолчанию — 1.

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

Текущее числовое значение флага участия регистра во временном расчете.

Описание:

Метод ВременныйРасчет устанавливает флаг участия регистра во времен­ном расчете. После такой установки можно выполнять процедуры рассчитатьРегистрыНа и РассчитатьРегистрыПо, тогда у данного регист­ра методы обращения к остаткам будут выдавать рассчитанные значения остат­ков на заданный момент времени.

Замечание. В один момент времени только по одному объекту регистров каж­дого вида могут участвовать во временном расчете.

Пример:

// если итоги не актуальны, то стоимости берем из временного расчета

// регистра УчетРеализации

Рег = СоздатьОбъект("Регистр.УчетРеализации");

Рег.ВременныйРасчет();

РассчитатьРегистрыНа(ТекущийДокумент());

Рег.Товар = Товар;

Рег.Клиент = Клиент;

Рег.ОстаткиПолучить();

ТекОстаток = Рег.ОстатокТовара;

ТекСтоимость = Рег.Стоимость;

ТекПродСтоимость = Рег.ПродСтоимость;

См. также: РассчитатьРегистрыНа, РассчитатьРегистрыПо



Вспомогательный объект Регистры


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

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

Пример:

СпецРег = СоздатьОбъект("Регистры");

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



ВставитьКолонку


Вставить новую колонку в таблицу значений в указанную позицию.

Синтаксис:

ВставитьКолонку(<Идентификатор>, <НомерКолонки>, <Тип>, <Длина>, <Точность>,

                <3аголовок>, <Ширина>, <Формат>, <Положение>)

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

InsertColumn

Параметры:

<Идентификатор>

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

<НомерКолонки>

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

<Тип>

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

<Длина>

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

<Точность>

Необязательный параметр. Точность (длина дроб­ной части) для числовой колонки.

<Заголовок>

Необязательный параметр. Строковое выражение, содержащее заголовок колонки в элементе диалога типа «ТаблицаЗначений».

<Ширина>

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

<Формат>

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

<Положение>

Необязательный параметр. Определяет вариант выравнивания при визуальном отображении значе­ний данной колонки. Число: 1 — слева; 2 — справа.

Возвращаемое значение: номер новой колонки.

Описание:

Метод ВставитьКолонку вставляет новую колонку в таблицу значений в указанную позицию.

Пример:

Табл.ВставитьКолонку("Код", 1, "Число", 6, 0, "Код", 6);



ВставитьСтроку


Вставить строку с указанным номером.

Синтаксис:

ВставитьСтроку(<НомерСтроки>, <Строка>)

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

InsertLine

Параметры:

<НомерСтроки>

Числовое выражение — номер вставляемой строки.

<Строка>

Строковое выражение.

Описание:

Метод ВставитьСтроку вставляет в текст строку <Строка> с номером <НомерСтроки>.

Пример:

ТекстДок = СоздатьОбъект("Текст");

ТекстДок.Открыть("catalog.txt");

ТекстДок.ЗаменитьСтроку(52, "Установка оборудоввания 3456......" + Стоимость);

ТекстДок.ВставитьСтроку(53, "Замена оборудования 5691... ");

ТекстДок.ТолькоПросмотр(1);



ВставитьЗначение


Вставить значение в указанную позицию списка.

Синтаксис:

ВставитьЗначение(<Позиция>, <Знач>, <Строка>, <Колич>)

АНГЛОЯЗЫЧНЫЙ СИНОНИМ:

InsertValue

Параметры:

<Позиция>

Числовое выражение — номер позиции в списке, начиная с которого будут вставлены новые значе­ния. Номер позиции может быть от 1 до РазмерСписка() + 1.

<Знач>

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

<Строка>

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

<Колич>

Необязательный параметр. Числовое выражение — количество повторов. По умолчанию — 1.

Описание:

Метод ВставитьЗначение добавляет значение и его символьное представ­ление в указанную позицию списка <Позиция> заданное число раз <Колич>. Представление используется в дальнейшем для удобства сортировки и выбора значений из списка (отображается в диалоговом окне выбора).

Пример:

// Объявляем переменные

Перем Список;

Перем ВР;

// процедура выбора значения

Процедура ВыбратьВР()

   Если Список.ВыбратьЗначение(ВР, "Выбор доплаты") = 1 Тогда

      Расчет = ВР;

      НазваниеВР = Расчет.Код;

   КонецЕсли;

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

// инициализация переменных

Список = СоздатьОбъект("СписокЗначений");

Список.ВставитьЗначение(1, Вид Расчета.ДоплатаПроцентом, "Процентом");

Список.ВставитьЗначение(1, Вид Расчета.ДоплатаСуммой, "Суммой");

// первоначальное значение

НазваниеВР = Расчет.Код;



ВСтрокуСРазделителями


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

Синтаксис:

ВСтрокуСРазделителями()

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

ToSeparatedString

Описание:

Метод ВСтрокуСРазделителями преобразует список значений в строку, содержащую строки в двойных кавычках и числа, разделенные запятыми.

Пример:

СтрПроводка = Спис.ВСтрокуСРазделителями();



Данная книга является описанием встроенного


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

ВвестиЧисло


Вызов диалога для ввода числа.

Синтаксис:

ВвестиЧисло(<Число>, <Подсказка>, <Длина>, <Точность> , <Таймаут>)

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

InputNumeric

Параметры:

<Число>

Имя переменной, ранее объявленной в программном модуле. В эту переменную будет помещено введенное значение числа.

<Подсказка>

Текст заголовка окна диалога ввода. Может использо­ваться в качестве подсказки конечному пользователю.

<Длина>

Длина вводимого числа.

<Точность>

Количество знаков после десятичной точки.

<Таймаут>

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

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

Числовое значение: 1 — если в диалоге нажата кнопка «ОК»; 0 — если на­жата кнопка «Отмена»; -1 (минус единица) — если закончилось время ожида­ния ответа.

Описание:

Функция ВвестиЧисло выполняет вызов диалога для ввода числа.

Пример:

Если ВвестиЧисло(Ном, "Введите номер приказа", 5, 0, 10) = 1 Тогда

   ВыбДок = СоздатьОбъект("Документ.Приказ");

   ВыбДок.НайтиПоНомеру(Строка(Ном), Дата(0));

   Если ВыбДок.Выбран() = 1 Тогда

      // . . .

   ИначеЕсли;

      // . . .

   КонецЕсли;

КонецЕсли;



ВвестиДату


Вызов диалога для ввода даты.

Синтаксис:

ВвестиДату(<Дата>, <Подсказка>, <Таймаут>)

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

InputDate

Параметры:

<Дата>

Имя переменной, ранее объявленной в про­граммном модуле. В эту переменную будет по­мещено введенное значение даты.

<Подсказка>

Текст заголовка окна диалога ввода. Может ис­пользоваться в качестве подсказки конечному пользователю.

<Таимаут>

Необязательный параметр. Числовое выражение ин­тервала времени ожидания ответа в секундах, в тече­ние которого система будет ожидать ответа пользова­теля. Если данный параметр опущен или равен 0, то время ожидания бесконечно. Значение по умолчанию — 0.

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

Числовое значение: 1 — если в диалоге нажата кнопка «ОК»; 0 — если на­жата кнопка «Отмена»; -1 (минус единица) — если закончилось время ожида­ния ответа.

Описание:

Функция ВвестиДату выполняет вызов диалога для ввода даты.

Пример:

Процедура ВводДатыСсуды()

   Если ВидРасчета = ВидРасчета.БеспроцентнаяСсуда Тогда

      ДатаСсуды = Дата(0);

      Возврат;

   КонецЕсли;

   Если ДатаСсуды = Дата(0) Тогда

      ДатаСсуды = ДатаДок + 30;

   КонецЕсли;

   Д = ДатаСсуды;

   Если ВвестиДату(Д, "Введите дату ссуды") = 1 Тогда

      ДатаСсуды = Д;

   Иначе

      ВидРасчета = ВидРасчета.БеспроцентнаяСсуда;

   КонецЕсли;

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



ВвестиПеречисление


Вызов диалога для ввода перечисления.

Синтаксис:

ВвестиПеречисление(<3начение>, <Подсказка>, <Таймаут>)

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

InputEnum

Параметры:

<3начение>

Имя переменной, ранее объявленной в программном модуле. Переменная должна содержать значение типа «Перечисление» или строковое значение. Если тип передаваемого в качестве параметра значения — пере­числение, то вызывается диалог со списком заданного вида перечисления. Если тип передаваемого в качестве параметра значения — строка, то в ней должен быть идентификатор требуемого вида перечисления, как он задан в конфигураторе. В эту же переменную будет помещено выбранное в диалоге значение перечисле­ния.

<Подсказка>

Текст заголовка окна диалога ввода. Может ис­пользоваться в качестве подсказки конечному пользователю.

<Таймаут>

Необязательный параметр. Числовое выражение ин­тервала времени ожидания ответа в секундах, в тече­ние которого система будет ожидать ответа пользова­теля. Если данный параметр опущен или равен 0, то время ожидания бесконечно. Значение по умолчанию — 0.

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

Числовое значение: 1 — если в диалоге нажата кнопка «ОК», 0 — если на­жата кнопка «Отмена»; -1 (минус единица) — если закончилось время ожида­ния ответа.

Описание:

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

Пример:

*

Процедура УстПризнак1()

   ВыбПризн = Перечисление.ТипСотрудника.Штатный;

   Если ВвестиПеречисление(ВыбПризн, "Выберите тип") > 0 Тогда

      Тип = ВыбПризн;

   Иначе

      Тип = Перечисление.ТипСотрудника.Штатный;

   КонецЕсли;

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

*

Процедура УстПризнак2()

   ВыбПризн = "ТипСотрудника";

   Если ВвестиПеречисление(ВыбПризн, "Выберите тип") > 0 Тогда

      Тип = ВыбПризн;

   Иначе

      Тип = Перечисление.ТипСотрудника.Штатный;

   КонецЕсли;

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



ВвестиПерерасчет


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

Синтаксис:

ВвестиПерерасчет()

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

InsertRecalc

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

Число: 1 — если операция успешно выполнена, и 0 — в противном случае.

Описание:

Метод предназначен для ввода строк-перерасчетов в журнал расчетов. Как правило, используется в модуле документа, но может использоваться и в мо­дуле вида расчета. Метод вводит полную копию текущей записи в журнал рас­четов, не заполняя лишь атрибут Результат. Впоследствии система распознает «обычные» записи и записи-перерасчеты.

Записи-перерасчеты могут вводиться только для записей одного из про­шлых расчетных периодов. Невозможно ввести перерасчет записи, которая в свою очередь является перерасчетом. При этом система позволяет вводить не­сколько записей-перерасчетов в разных расчетных периодах для одной и той же записи журнала.

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

Для записей, введенных в журнал одним из методов ВвестиПерерасчет или ВвестиПерерасчетНаОсновании, атрибут Перерасчет принимает зна­чение 1.

При расчете записи-перерасчета результат вычисляется с учетом результата первичной (перерассчитываемой) записи. Это значит, что если в журнале рас­четов введен перерасчет записи прошлого периода, то результат перерасчета будет рассчитан за вычетом значения Результат первичной записи.

Пример:

Процедура Перерасчет(Группа, Сотрудник, Основание, Начало, Окончание)

   //Группа расчетов "оплата по среднему"

   ОС = ГруппаРасчетов.ОплатаПоСреднему;

   // перерасчет по журналу "зарплата"

   ЖрнЗарплата = СоздатьОбъект("ЖурналРасчетов.Зарплата");

   // дата, начиная с которой нужно перерассчитывать и начисления

   ДатаНачислений = ЖрнЗарплата.КонецПериодаПоДате(Начало) + 1;

   // выделим все записи ЖР по сотруднику

   ЖрнЗарплата.ВыбратьЗаписиПоОбъекту(Сотрудник,

                    ЖрнЗарплата.НачалоПериодаПоДате(Начало),

                    Минимум(Окончание, ЖрнЗарплата.НачалоТекущегоПериода() - 1));

   Сч = 1;

   Пока ЖрнЗарплата.ПолучитьЗапись() > 0 Цикл

      Если ЖрнЗарплата.ВидРасч.ВходитВГруппу(Группа) = 1 Тогда

         Пересчитать = 1;

         Если ((ЖрнЗарплата.ВидРасч.ВходитВГруппу(ОС) = 1)И

               (ЖрнЗарплата.ДатаНачала<ДатаНачислений)) Тогда

            // надо перерассчитывать начисления, оплачиваемые

            //по среднему заработку только следующего

            // (за началом действия данного документа-основания)

            // периода расчета

            Пересчитать = 0;

         КонецЕсли;

         Если Пересчитать = 1 Тогда

            ЖрнЗарплата.ВвестиПерерасчет(};

         КонецЕсли;

      КонецЕсли;

   КонецЦикла;

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

См. также: Перерасчет, ВвестиПерерасчетНаОсновании



ВвестиПерерасчетНаОсновании


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

Синтаксис:

ВвестиПерерасчетНаОсновании(<Документ>)

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

InsertRecalcByReason

Параметры:

<Документ>

Документ, на основании которого вводится запись (или записи) в журнал расчетов.

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

Число: 1 — если операция успешно выполнена; 0 — в противном случае.

Описание:

Метод предназначен для ввода строк-перерасчетов в журнал расчетов на ос­новании произвольного документа. Как правило, используется в модуле доку­мента, но может использоваться и в модуле вида расчета. Метод вводит полную копию текущей записи в журнал расчетов, не заполняя лишь атрибут Результат и вводя в качестве документа-основания параметр <Документ>.

В отличие от метода ВвестиПерерасчет (который вводит записи журнала на основании того документа, в модуле которого используется метод), данный метод вводит записи-перерасчеты, задавая для них произвольный документ-основание.

Записи-перерасчеты могут вводиться только для записей одного из про­шлых расчетных периодов. Невозможно ввести перерасчет записи, которая в свою очередь является перерасчетом. При этом система позволяет вводить не­сколько записей-перерасчетов в разных расчетных периодах для одной и той же записи журнала.

Пример:

Процедура ПровестиПерерасчет(Док)

   //Группа расчетов "оплата по среднему"

   ОС = ГруппаРасчетов.ОплатаПоСреднему;

   // перерасчет по журналу "зарплата"

   ЖрнЗарплата = СоздатьОбъект("ЖурналРасчетов.Зарплата");

   // дата, начиная с которой нужно перерасчитывать и начисления

   ДатаНачислений = ЖрнЗарплата.КонецПериодаПоДате(Начало) + 1;

   // выделим все записи ЖР по сотруднику

   ЖрнЗарплата.ВыбратьЗаписиПоОбъекту(Док.Сотрудник,

                ЖрнЗарплата.НачалоПериодаПоДате(Док.Начало),

                Минимум(Док.Окончание, ЖрнЗарплата.НачалоТекущегоПериода() - 1));

   Сч = 1;

   Пока ЖрнЗарплата.ПолучитьЗапись() > 0 Цикл

      Если ((ЖрнЗарплата.ВидРасч.ВходитВГруппу(ОС) = 1) И

            (ЖрнЗарплата.ДатаНачала < ДатаНачислений)) Тогда

         ЖрнЗарплата.ВвестиПерерасчетНаОсновании(Док);

      КонецЕсли;

   КонецЦикла;

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

См. также: Перерасчет, ВвестиПерерасчет



ВвестиПериод


Ввод периода в виде диалога.

Синтаксис:

ВвестиПериод(<НачалоПериода>, <КонецПериода>, <Подсказка>)

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

InputРег1od

Параметры:

<НачалоПериода>

Идентификатор переменной, в которую функция возвращает дату начала периода.

<КонецПериода>

Идентификатор переменной, в которую функция возвращает дату конца периода.

<Подсказка>

Необязательный параметр. Строковое выра­жение, содержащее строку, которая будет выводиться в заголовке окна диалога. Если не указано — стандартная подсказка.

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

Числовое значение: 1 — выбор осуществлен , 0 — выбор не осуществлен (пользователем нажата кнопка «Отмена», клавиша <Esc> или закрыто окно диалога).

Описание:

Функция ВвестиПериод выдает на экран диалог специального вида, при помощи которого пользователь может выбрать период. Выбранный пользовате­лем период записывается в переменные, передаваемые как параметры при вы­зове метода.

Пример:

Дата1 = '01.01.97';

Дата2 = '31.03.97';

Если ВвестиПериод(Дата1, Дата2, "Введите период отчета") <> 1 Тогда

   Возврат 0;

КонецЕсли;



ВвестиПланСчетов


Выбрать план счетов из существующих планов счетов в диалоге.

Синтаксис:

ВвестиПланСчетов(<ПланСчетов>, <Подсказка>, <Таймаут>)

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

InputChartOfAccounts

Параметры:

<ПланСчетов>

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

<Подсказка>

Строковое выражение, содержащее строку, которая будет выводиться в заголовке окна диалога.

<Таймаут>

Числовое выражение — интервал времени ожидания ответа пользователя в секундах. Если параметр опущен или равен 0 — ожида­ние бесконечно. Необязательный параметр.

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

Числовое значение: 1 — выбор осуществлен , 0 — выбор не осуществлен (пользователем нажата кнопка «Отмена», клавиша <Esc> или закрыто окно диалога).

Описание:

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

Пример:

Перем ВыбПлан;

Если ВвестиПланСчетов(ВыбПлан, "Введите план счетов") = 1 Тогда

   ...

КонецЕсли;



ВвестиРасчет


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

Синтаксис:

ВвестиРасчет(<06ъект>, <ВидРасчета>, <ДатаНачала> , <ДатаОкончания>, <Результат>}

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

InsertCalculation

Параметры:

<Объект>

Объект расчета — элемент справочника, заданного при конфигурировании журнала расчетов.

<ВидРасчета>

Вид вводимого расчета — ссылка на агрегатный объект «ВидРасчета».

<ДатаНачала>

Необязательный параметр. Дата начала действия вводимого расчета. По умолчанию — дата начала текущего периода журнала расчетов.

<ДатаОкончания>

Необязательный параметр. Дата окончания дейст­вия вводимого расчета. По умолчанию — дата окончания текущего периода журнала расчетов.

<Результат>

Необязательный параметр. Результат расчета. По умолчанию — 0.

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

Число: 1 — если операция успешно выполнена; 0 — в противном случае.

Описание:

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

При вводе вытесняющего расчета проводится анализ уже существующих за­писей журнала расчетш; для интервала времени, заданного параметрами ДатаНачала и ДатаОкончания. Если в этом периоде уже существуют записи, приоритет вытеснения которых меньше либо равен приоритету вытеснения вводимого расчета, будет проводиться редактирование периода их действия или полное их удаление. Это приведет, например, к тому, что вводимая запись бу­дет вытеснять записи с тем же видом расчета.

В том случае, если вытесняемые данные принадлежат не текущему периоду расчета, проводится не корректировка или полное удаление записей, а их стор­нирование

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




Для случая ввода невытесняющих расчетов анализ существующих записей журнала расчетов и их протяженности во времени не проводится, и расчет вво­дится в любом случае.

Во всех вышеописанных случаях ввод записей в журнал расчетов проводит­ся в пределах границ расчетных периодов журнала расчетов. Например, если при месячной периодичности журнала задать дату начала и дату окончания, отстоящие друг от друга более, чем на месяц, будет введено более одной записи журнала расчетов — для всех периодов, затрагиваемых временным интервалом от <ДатаНачала> до <ДатаОкончания>.

Важно! Следует помнить, что ввод записи с временем действия расчета, не принадлежащим текущему расчетному периоду, не означает ввода записей прошлого или будущего периода. Вводимые записи всегда принадлежат текущему периоду (т. е. введены в текущем периоде), хотя и производят расчеты прошлого или будущего периодов.

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

Таким образом, конкретный документ является «родителем» не только тех записей журнала расчетов, которые введены непосредственно им, но и тех запи­сей, которые порождены при расчете записей, введенных документом. Можно считать, что для таких записей документ является не «родителем», а «прароди­телем».

Параметр <Результат> можно использовать в том случае, когда сразу при вводе записей журнала расчетов можно записать их результат.

Важно! Метод ВвестиРасчет можно применять только для тех объектов, ко­торые созданы функцией СоздатьОбъект. Это значит, например, что его нельзя использовать непосредственно (без точки) в форме журнала расче­тов или в модуле видов расчета.

Пример:

// Ввод выбранного расчета.

// Атрибут "Расчет" — реквизит формы документа

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

   // Процедура выполняется при проведении документа расчета

   ЖР = СоздатьОбъект("ЖурналРасчетов.Зарплата");

   ЖР.ВвестиРасчет(Сотрудник, Расчет, ДатаН, ДатаК, 0);

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

См. также: ВвестиРасчетНаОсновании, ЗаписатьРасчет


ВвестиРасчетНаОсновании


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

Синтаксис:

ВвестиРасчетНаОсновании(<Основание>, <Объект>, <ВидРасчета>, <ДатаНачала>,

                <ДатаОконч>, <Результат>)

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

InsertCalculationByReason

Параметры:

<Основание>

Документ, на основании которого вводится запись (или записи) в журнал расчетов.

<Объект>

Объект расчета — элемент справочника, заданного при конфигурировании журнала расчетов.

<ВидРасчета>

Вид вводимого расчета — ссылка на агрегатный объ­ект типа «ВидРасчета».

<ДатаНачала>

Необязательный параметр. Дата начала действия вводимого расчета. По умолчанию — дата начала текущего расчетного периода журнала расчетов.

<ДатаОконч>

Необязательный параметр. Дата окончания действия вводимого расчета. По умолчанию — дата окончания текущего расчетного периода журнала расчетов.

<Результат>

Необязательный параметр. Результат расчета. По умолчанию — ноль.

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

Число: 1 — если операция успешно выполнена; 0 — в противном случае.

Описание:

Метод предназначен для ввода строк в журнал расчетов. Работает так же, как и метод ВвестиРасчет, но при этом реквизит Документ вводимых строк журнала расчетов заполняется значением параметра <Основание>. Использо­вание метода ВвестиРасчетНаОсновании — один из способов непосредствен­но установить родительские отношения между любым документом и вводимы­ми записями журнала расчетов.

Важно! Метод ВвестиРасчетНаОсновании можно применять только для тех объектов, которые созданы функцией СоздатьОбъект. Это значит, на­пример, что его нельзя использовать непосредственно (без точки) в форме журнала расчетов или в модуле видов расчета.

Пример:

// Модуль выполняется при проведении документа расчета "Начало месяца"

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

   // Если можно проводить...

   Если (МожноПроводить = 1) Тогда




      // Журнал расчетов — Зарплата

      ЖР = СоздатьОбъект("ЖурналРасчетов.Зарплата");

      ЖРКомп = СоздатьОбъект("ЖурналРасчетов.Компенсации");

      // конец и начало текущего периода

      КТП = ЖР.КонецТекущегоПериода();

      НТП = ЖР.НачалоТекущегоПериода();

      Сотр = СоздатьОбъект("Справочник.Сотрудники");

      Спр = СоздатьОбъект("Справочник.ПриказыДлительногоДействия");

      Сотр.ВыбратьЭлементы();

      Пока Сотр.ПолучитьЭлемент() > 0 Цикл

         // расчет "приказов длительного действия"

         // типа доплат исп. листов, штрафов и пр...

         Спр.ИспользоватьВладельца(Сотрудник);

         Спр.ВыбратьЭлементы();

         // предполагается, что в каждом приказе есть

         // реквизиты Начало, Окончание и Сотрудник

         Пока Спр.ПолучитьЭлемент() > 0 Цикл

            //. . .

            Если Спр.Приказ.Вид() <> "" Тогда

               Если ((Спр.Приказ.Окончание >= НТП) И

                     (Спр.Приказ.Начало <= КТП)) Тогда

                  // предполагается, что в каждом приказе

                  // есть реквизиты Начало и Окончание

                  ЖР.ВвестиРасчетНаОсновании(Спр.Приказ, Спр.Приказ.Сотрудник,

                        Спр.Приказ.Расчет, Макс(Спр.Прика з.Начало, НТП),

                        Мин(Спр.Приказ.Окончание, КТП), 0);

               КонецЕсли;

            КонецЕсли;

         КонецЦикла;

      КонецЦикла;

   ИначеЕсли МожноПроводить = 0 Тогда

      Сообщить("Документ не проведен!!!");

   КонецЕсли;

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

См. также: ВвестиРасчет, ЗаписатьРасчетНаОсновании


ВвестиСтроку


Вызов диалога для ввода строки.

Синтаксис:

ВвестиСтроку(<Строка>, <Подсказка>, <ДлинаСтроки>, <Признак>, <Таймаут>)

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

InputString

Параметры:

<Строка>

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

<Подсказка>

Текст заголовка окна диалога ввода. Может исполь­зоваться в качестве подсказки конечному пользовате­лю.

<ДлинаСтроки>

Числовое выражение — длина строки.

<Признак>

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

<Таймаут>

Необязательный параметр. Числовое выражение ин­тервала времени ожидания ответа в секундах, в тече­ние которого система будет ожидать ответа пользова­теля. Если данный параметр опущен или равен 0, то время ожидания бесконечно. Значение по умолчанию — 0.

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

Числовое значение: 1 — если в диалоге нажата кнопка «ОК», 0 — если на­жата кнопка «Отмена»; -1 (минус единица) — если закончилось время ожида­ния ответа.

Описание:

Функция ВвестиСтроку выполняет вызов диалога для ввода строки.

Пример:

Процедура ВводКодовПродукции()

   Если Продукция.Вид = Перечисление.ВидПродукции.Наша Тогда

      НК = Код;

      Если ВвестиСтроку(НК, "Введите код продукции", 40, 1, 9) = 1 Тогда

         Koд = HK;

      КонецЕсли;

   Иначе

      Код = "";

      Возврат;

   КонецЕсли;

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



ВвестиВидСубконто


Выбрать вид субконто из существующих видов субконто в диалоге.

Синтаксис:

ВвестиВидСубконто(<ВидСубконто>, <Подсказка>, [<Счет>], [<Таймаут>])

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

InputSubcontoKind

Параметры:

<ВидСубконто>

Значение типа «ВидСубконто», переданное по ссылке (идентификатор переменной). В дан­ное значение будет осуществлен возврат вы­бранного значение вида субконто.

<Подсказка>

Строковое выражение, содержащее строку, которая будет выводиться в заголовке окна диалога выбора вида субконо.

<Счет>

Значение типа «Счет». Если данное значение указано выбор будет ограничен видами суб­конто, заданными для указанного счета. Не­обязательный параметр.

<Таймаут>

Числовое выражение — интервал времени ожидания ответа пользователя в секундах. Если параметр опущен или равен 0 — ожида­ние бесконечно. Необязательный параметр.

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

Числовое значение: 1 — выбор осуществлен , 0 — выбор не осуществлен (пользователем нажата кнопка «Отмена», клавиша <Esc> или закрыто окно диалога).

Описание:

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

Пример:

Перем ВыбВидСубк;

Если ВвестиВидСубконто(ВыбВидСубк, "Введите вид убконто", ВыбСчет) = 1 Тогда

   ...

КонецЕсли;



ВвестиЗначение


Вызов диалога для ввода значения заданного типа.

Синтаксис:

ВвестиЗначение(<3начение>, <Подсказка>, <Тип>, <Длина>, <Точность>)

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

InputValue

Параметры:

<3начение>

Имя переменной, ранее объявленной в программном модуле. В эту переменную будет помещено введенное значение.

<Подсказка>

Текст заголовка окна диалога ввода. Может использо­ваться в качестве подсказки конечному пользователю.

<Тип>

Строковое выражение — название типа данных, кото­рое требуется ввести. Например: "Строка", "Число", "Справочник.Товары", "Документ . РасходнаяНакладная" и т. п.

<Длина>

Необязательный параметр. Длина вводимого значения (для типов данных «Строка», «Число»).

<Точность>

Необязательный параметр. Количество знаков после десятичной точки (для типа данных «Число»).

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

Числовое значение: 1 — если в диалоге нажата кнопка «ОК»; 0 — если на­жата кнопка «Отмена»;

Описание:

Функция ВвестиЗначение выполняет вызов диалога для ввода значения заданного типа.

Пример:

Если ВвестиЗначение(Ном, "Введите номер приказа", "Число", 5, 0) = 1 Тогда

   ВыбДок = СоздатьОбъект("Документ.Приказ");

   ВыбДок.НайтиПоНомеру(Строка(Ном), Дата(0));

   Если ВыбДок.Выбран() = 1 Тогда

      // . . .

   ИначеЕсли;

      // . . .

   КонецЕсли;

КонецЕсли;



ВводНаОсновании


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

Синтаксис:

ВводНаОсновании(<ДокументОснование>)

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

InputCausedBy

Параметры:

<ДокументОснование>

Значение документа, на основании которо­го вводится новый документ.

Описание:

Вызов процедуры ВводНаОсновании производится в системе 1С:Предприятие неявно после выбора пункта меню «Действия» - «Ввести на основании». В этот момент система подставляет фактическое значение пара­метра <ДокументОснование>, содержащее документ, на котором находился курсор в момент выполнения данной команды.

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

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

Пример:

Процедура ВводНаОсновании(ДокОснование)

   Если (ДокОснование.Вид() = "ПриходнаяРеализ")

         ИЛИ ДокОснование.Вид() = "РасходнаяРеализ") Тогда

      ПризнакРеализатора = Перечисление.ПризнакиРеализаторов.Реализатор_Клиент;

      ДатаДок = РабочаяДата();

      Валюта = Константа.БазоваяВалюта;

      Валюта.ИспользоватьДату(ДатаДок);

      Дата_Курса = ДокОснование.Дата_Курса;

      Курс = ДокОснование.Курс;

      НДС = ДокОснование.НДС;

      СН = ДокОснование.СН;

      Фирма = ДокОснование.Фирма;

      Основание = "" + ДокОснование + " от " + ДокОснование.ДатаДок;

      ДокОснование.ВыбратьСтроки();

      Пока ДокОснование.ПолучитьСтроку() = 1 Цикл

         НоваяСтрока();

         Товар = ДокОснование.Товар;

         Цена = ДокОснование.Цена;

         Единица = ДокОснование.Единица;

         Коэффициент = ДокОснование.Коэффициент;

         Количество = ДокОснование.Количество;

         Сумма = ДокОснование.Сумма;

      КонецЦикла;

   Иначе

      Предупреждение("Этот Документ можно вводить только на основании

                       |накладных по реализации!");

      ВводНового();

   КонецЕсли;

   Валюта_Прежн = Валюта;

   Курс_Прежн = Курс;

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

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



ВводНаОсновании


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

Синтаксис:

ВводНаОсновании(<ДокОснование>)

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

InputCausedBy

Параметры:

<ДокОснование>

Значение документа, на основании которого вво­дится новая операция.

Описание:

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

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

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

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

Пример:

Процедура ВводНаОсновании(ДокОсн)

   Если ДокОсн.Вид() = "ПлатПор" Тогда

      ИспользоватьСубконто(ВидыСубконто.Организации, ДокОсн.Получатель);

   КонецЕсли;

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

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



ВводНового


Предопределенная процедура при вводе нового элемента справочника.

Синтаксис:

ВводНового(<ПризнКопирования>, <ОбъектКопирования>)

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

InputNew

Параметры:

<ПризнКопирования>

Признак того, что объект введен копировани­ем. Число: 1 — объект введен копированием, 0 — просто новый объект. Данный признак мо­жет быть использован для анализа необходи­мости инициализации реквизитов нового объ­екта.

<ОбъектКопирования>

Объект, который был скопирован.

Описание:

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

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

Пример:

Процедура ВводНового();

   Оклад = 1000000;

   Пдр = СоздатьОбъект("Справочник.Подразделения");

   Пдр.НайтиПоКоду(1);

   Подразделение = Пдр.ТекукщийЭлемент();

   Город = Константа.НашГород;

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

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



ВводНового


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

Синтаксис:

ВводНового(<ПризнКопирования>, <ОбъектКопирования>)

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

InputNew

Параметры:

<ПризнКопирования>

Признак того, что объект введен копировани­ем. Число: 1 — объект введен копированием, 0 — просто новый объект. Данный признак мо­жет быть использован для анализа необходи­мости инициализации реквизитов нового объ­екта.

<ОбъектКопирования>

Объект, который был скопирован.

Описание:

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

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

Пример:

Процедура ВводНового();

   Валюта = Константа.ДефВалютаПродажи;

   Валюта.ИспользоватьДату(ДатаДок);

   Дата_Курса = ДатаДок;

   Если Число(Валюта.Код) = Число(Константа.БазоваяВалюта.Код) Тогда

      //У базовой валюты курс = 1, поэтому отображаем курс Основной валюты

      Константа.ОсновнаяВалюта.ИспользоватьДату(ДатаДок);

      Курс = Константа.ОсновнаяВалюта.Текущ_курс;

   Иначе

      Курс = Валюта.Текущ_курс;

   КонецЕсли;

   Фирма = Константа.ДефФирма;

   Клиент = Константа.ДефПокупатель;

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

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



ВводНового


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

Синтаксис:

ВводНового(<ПризнКопирования>, <ОбъектКопирования>)

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

InputNew

Параметры:

<ПризнКопирования>

Признак того, что объект введен копированием. Число: 1 — объект введен копированием, 0 — просто новый объект. Данный признак может быть использован для анализа необходимости инициализации реквизитов нового объекта.

<ОбъектКопирования>

Объект, который был скопирован.

Описание:

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

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

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

Пример:

Процедура ВводНового()

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

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

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

   КонецЕсли;

   СтатусСчета = ОснСтатусСчетов;

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

См. также:

СтатусВозврата



ВводНового


Предопределенная процедура при вводе новой операции.

Синтаксис:

ВводНового(<ПризнКопирования>, <ОбъектКопирования>)

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

InputNew

Параметры:

<ПризнКопирования>

Признак того, что объект введен копированием. Число: 1 — объект введен копированием, 0 — просто новый объект. Данный признак может быть использован для анализа необходимости инициализации реквизитов нового объекта.

<ОбъектКопирования>

Объект, который был скопирован.

Описание:

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

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

Пример:

Процедура ВводНового()

   ИспользоватьВалюту(Константа.ОснВалюта);

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

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



ВводНового


Предопределенная процедура при открытии формы отчета (обработ­ки) или при восстановлении сохраненной настройки отчета (обра­ботки).

Синтаксис:

ВводНового()

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

InputNew

Описание:

При работе с формой отчета у пользователя существует возможность сохра­нять и восстанавливать настройки отчета — содержимое реквизитов диалога формы. Предопределенная процедура ВводНового вызывается и в вомент от­крытия формы и в момент восстановления значений настройки. Это позволяет контролировать содержимое реквизитов диалога во всех случаях их изменения системой.

Пример:

Процедура ВводНового()

   ДатаНач = РабочаяДата();

   ДатаКон = РабочаяДата();

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

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



ВыборГруппы


Установить режим выборки групп.

Синтаксис:

ВыборГруппы(<Режим>)

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

SelectGroup

Параметры:

<Режим>

Необязательный параметр. Числовое выражение:

1 — выбирать группы; 0—не выбирать группы.

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

Текущее числовое значение режима выборки групп (на момент до исполне­ния метода).

Описание:

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

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

Пример:

* Если в форме документа необходимо, чтобы какой-либо реквизит "Статус" типа «справочник» мог принимать значения как элемента, так и группы, то этому реквизиту следует установить:

Статус.ВыборГруппы(1);

*

Спр = СоздатьОбъект("Справочник.Сотрудники");

// Задаем выборку без групп

Спр.ВыборГруппы(0);

// Открываем выборку

Спр.ВыбратьЭлементы();

// Цикл получения элементов справочника

Пока (Спр.ПолучитьЭлемент() > 0) Цикл

   Состояние(Спр.Наименование);

КонецЦикла;



ВыборГруппы


Установить режим выборки групп.

Синтаксис:

ВыборГруппы(<Режим>)

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

SelectGroup

Параметры:

<Режим>

Необязательный параметр. Числовое выражение: 1 — выбирать группы; 0 — не выбирать группы.

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

Текущее числовое значение режима выборки групп (на момент до исполне­ния метода).

Описание:

Метод ВыборГруппы устанавливает режим выборки групп для формы спи­ска справочника, которая открыта в режиме выбора или подбора элемента.

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

Пример:

// Задаем выборку без групп

ВыборГруппы(0);



ВыборГруппы


Устанавливает или сбрасывает признак выбора группы.

Синтаксис:

ВыборГруппы([<ПризнакВыбораГруппы>])

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

SelectGroup

Параметры:

<ПризнакВыбораГруппы>

Необязательный параметр. Числовое вы­ражение: 1 — выбирать группы; 0 — не вы­бирать группы.

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

Текущее числовое значение режима выборки групп (на момент до исполне­ния метода).

Описание:

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

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

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

Режим, устанавливаемый данным методом для элементов диалога, влияет на интерактивный выбор пользователем значения типа «Счет» из списка счетов (плана счетов). Такой выбор производится вызовом метода Выбрать или нажа­тием кнопки выбора, если объект является элементом диалога. Установка ре­жима позволяет разрешить или запретить пользователю выбирать счета-группы (счета, которые могут иметь субсчета). Это имеет смысл для установки режима сразу на все значения реквизита табличной части документа.

Пример:

Сч = СоздатьОбъект("Счет.Основной");

Сч.ВыборГруппы(0);

Сч.Выбрать("Выберите конкретный счет");



ВыборГруппы


Устанавливает или сбрасывает признак выбора группы.

Синтаксис:

ВыборГруппы([<ФлагВыбораГруппы>])

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

SelectGroup

Параметры:

<ФлагВыбораГруппы>

Необязательный параметр. Числовое выражение: 1 — выбирать группы; 0 — не выбирать группы.

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

Текущее числовое значение режима выборки групп (на момент до исполне­ния метода).

Описание:

Метод ВыборГруппы устанавливает режим выборки групп для формы спи­ска счетов, которая открыта в режиме выбора или подбора счета. Открытие такой формы списка счетов обычно производится вызовом метода Выбрать или нажатием кнопки выбора, если выбираемый счет является элементом диа­лога.

По умолчанию выбор группы разрешен. Режим, устанавливаемый данным методом для списка счетов, влияет на интерактивный выбор пользователем значения типа «Счет» из списка счетов (плана счетов). Установка режима по­зволяет разрешить или запретить пользователю выбирать счета-группы (счета, которые могут иметь субсчета).

Пример:

ВыборГруппы(0);



ВыборГруппы


Установить режим выборки групп для элемента диалога типа «спра­вочник».

Синтаксис:

ВыборГруппы(<Режим>)

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

SelectGroup

Параметры:

<Режим>

Необязательный параметр. Числовое выражение: 1 — выбирать группы; 0 — не выбирать группы. Значение по умолчанию — 1.

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

Текущее числовое значение режима выборки групп для элемента диалога (на момент до исполнения метода).

Описание:

Метод ВыборГруппы устанавливает режим выборки групп для выбранного элемента диалога типа «справочник».

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

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

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

Пример:

* Если в табличной части документа существует какой-либо реквизит, на­пример, «Статус» и необходимо, чтобы он мог принимать значения как элемента, так и группы, то в форме документа этому реквизиту следует ус­тановить:

Форма.Статус.ВыборГруппы(1);



Выбран


Проверить факт выбора элемента справочника.

Синтаксис:

Выбран()

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

Selected

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

Числовое значение: 1 — если элемент справочника выбран (спозициониро­ван); 0 — если не выбран.

Описание:

Метод Выбран возвращает число со значением 1 — если элемент справоч­ника выбран (спозиционирован), 0 — если элемент справочника не выбран.

Пример:

// В диалоге формирования некоторого отчета

// ВыбСклад - реквизит диалога типа «справочник.Склад»

Если ВыбСклад.Выбран() = 0 Тогда

   // Если Склад в диалоге не выбран, то формируем без условий

   Заг1 = "По всем складам.";

Иначе

   // если в диалоге выбран Склад

   // то формируем отчет только по выбранному складу

   Заг1 = "Отчет по складу " + ВыбСклад.Наименование;

КонецЕсли;



Выбран


Возвратить флаг выбора элемента перечисления.

Синтаксис:

Выбран()

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

Selected

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

Числовое значение: 1 — если элемент перечисления выбран (спозициониро­ван); 0 — если не выбран.

Описание:

Метод Выбран возвращает число со значением 1 — если элемент перечис­ления выбран (спозиционирован), 0 — если элемент перечисления не выбран.

Пример:

// В диалоге формирования некоторого отчета

// ВыбЕдИзмер — реквизит диалога типа «Перечисление.Единицы»

Если ВыбЕдИзмер.Выбран() = 0 Тогда

   // Если единица измерений в диалоге не выбрана, то формируем отчет без условий

   Заг1 = "По всем единицам измерения.";

Иначе

   // если в диалоге выбрана единица измерений

   // то формируем отчет только по выбранным единицам

   Заг1 = "Отчет по товарам с единицей измерения " + ВыбЕдИзмер;

КонецЕсли;