1С Предприятие 7.7. Документация

         

Контекст работы с календарями


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

"Календарь".

Англоязычный синоним ключевого слова "Календарь" — "Calendar".

Пример:

// Рассчитать продолжительность месяца в часах по календарю "Служащие"

Календ = СоздатьОбъект("Календарь.Служащие");

Час = Календ.Часов('01.01.96', '31.01.96');

// Рассчитать продолжительность текущего расчетного

// периода журнала расчетов Зарплата по календарю Служащие

Календ = СоздатьОбъект("Календарь.Служащие");

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

Час = Календ.Часов(ЖР.НачалоТекущегоПериода(), ЖР.КонецТекущегоПериода());

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

Пример:

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

   // ВнСовместитель — реквизит журнала расчетов

   // Категории — периодический реквизит справочника ВнутренниеСовместители

   // Календарь — реквизит справочника Категории

   Календ = ВнСовместитель.Категория.Получить(ДатаОкончания).Календарь;

   // размер оклада

   Оклад = ВнСовместитель.Оклад.Получить(ДатаОкончания) *



                       ВнСовместитель.Ставка.Получить(ДатаОкончания);

   Дней = Календ.Дней(ДатаНачала, ДатаОкончания);

   ВсегоДней = Календ.Дней(НачалоПериодаПоДате(ДатаНачала),

                           КонецПериодаПоДате(ДатаНачала));

   Если ВсегоДней > 0 Тогда

      Если Документ.Вид() = "НачалоМесяца" Тогда

         Результат = Окр(Оклад * Дней / ВсегоДней);

      Иначе

         Результат = -Окр(Оклад*Дней/ВсегоДней);

      КонецЕсли;

   Иначе

      Результат = 0;

      Сообщить("Неправильно указан календарь (" + Объект.Наименование + ")");

      Сообщить("Возможно, не задана категория работника");

   КонецЕсли;

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



Контекст работы с картинками


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

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

Англоязычный синоним ключевого слова Картинка — Picture.

Пример:

Фото=СоздатьОбъект("Картинка");



Контекст работы с метаданными


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

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

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

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

Англоязычный синоним ключевого слова Метаданные — Metadata.

Пример:

ВыбМетодУдаления = Метаданные.НепосредедственноеУдалениеОбъектов;



Контекст работы с объектом «КорректныеПроводки»


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

Для создания объекта типа «КорректныеПроводки» в качестве параметра функции СоздатьОбъект передается ключевое слово «КорректныеПроводки».

Англоязычный синоним ключевого слова КорректныеПроводки — CorrectEntries.

Пример:

КП = СоздатьОбъект("КорректныеПроводки");



Контекст работы с объектом Периодический


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

При создании объекта данного типа функции СоздатьОбъект в качестве параметра передается ключевое слово "Периодический".

Англоязычный синоним ключевого слова Периодический — Periodic.

Пример:

ВремРеквизиты = СоздатьОбъект("Периодический");



Контекст работы с операциями и проводками


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

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

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

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

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

Метод записи операции доступен также при проведении документа.

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

Одной из возможностей организации данных бухгалтерского учета системы 1С:Предприятие является поддержка сложных проводок. Под сложной проводкой понимается проводка, состоящая из нескольких корреспонденции (одного дебета — нескольких кредитов или наоборот). С точки зрения синтаксиса объекта «Операция» текущей проводкой может являться простая проводка или одна из корреспонденции сложной проводки. Нумерация проводок осуществляется номером проводки и номером корреспонденции.

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

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

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


Контекст работы с перечислениями


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

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

Перечисление.<Имя_Переч>.<Значение_Переч>,

где <Имя_Переч> — имя вида перечисления, <Значение_Переч> — конкретное значение данного вида перечисления.

Англоязычный синоним ключевого слова Перечисление — Enum.

Пример:

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

   Льготы = 1;

Иначе

   Льготы = 0;

КонецЕсли;

Объект Перечисление является частью глобального контекста программы 1С:Предприятие. Этот объект в качестве своих атрибутов имеет значения объектов конкретных видов перечислений, заданных в конфигурации. Кроме того, этот объект имеет метод ПолучитьАтрибут, который позволяет получить доступ к объекту перечисления конкретного вида по его имени.

Перечисление конкретного вида в качестве своих атрибутов имеет конкрет-йьте значения перечислений. Кроме того, этот объект имеет методы КоличествоЗначений, ЗначениеПоНомеру и ЗначениеПоИдентификатору которые позволяют получить доступ к конкретному значению перечисления.

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



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


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



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


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

Последовательность.<ХХХХХ>

где <ХХХХХ> — идентификатор последовательности, объявленный в конфигураторе.

Англоязычный синоним ключевого слова Последовательность — Sequence.

Пример:

Последовательность.УправленческийУчет.Установить(ТекущийДокумент())



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


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

Полное имя правила перерасчета записывается следующим образом:

ПравилоПерерасчета.<ХХХХХ>,

где <ХХХХХ> — идентификатор Правила Перерасчета, объявленный в кон­фигураторе.

Англоязычный синоним ключевого слова ПравилоПерерасчета — RecalculationRule.

Пример:

КолПериодов = ПравилоПерерасчета.Главное.КоличествоПериодов;

ВР = ВидРасчета.ПоОкладу;

ЗависитОтОклада = ПравилоПерерасчета.ПересчДоплат.ИмеетВедущий(ВР);



Контекст работы с праздниками


Доступ к атрибутам и методам праздников осуществляется через объект, создаваемый системной функцией СоздатьОбъект с ключевым словом "Праздники".

Англоязычный синоним ключевого слова "Праздники" — "Holidays".



Контекст работы с регистрами


В синтаксисе языка применение атрибутов и вызов методов регистров может выполняться двумя способами:

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

Пример:

Флаг = Регистр.ОстаткиТовара.Приход;

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

Регистр.<ХХХХХ>

где <ХХХХХ> — вид регистра, объявленный в конфигураторе. Англоязычный синоним ключевого слова Регистр — Register.

Пример:

Рег = СоздатьОбъект("Регистр.ТовЗап");



Контекст работы с таблицами


Объект типа «Таблица» создается функцией СоздатьОбъект, ссылка на который присваивается переменной. Чтобы вызвать метод объекта, имя метода (с указанием необходимых параметров) пишется через точку после идентификатора переменной.

Для создания объекта типа «Таблица» в качестве параметра функции СоздатьОбъект передается ключевое слово "Таблица".

Англоязычный синоним ключевого слова Таблица — Table.

Пример:

// Подготовка к заполнению выходных форм

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

Пока Запрос.Группировка("Сотр") = 1 Цикл

   // Заполнение полей Сотр

   Таб, ВывестиСекцию("РЛ<");

   Пока Запрос.Группировка("Расч") = 1 Цикл

      // Заполнение полей Расч

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

   КонецЦикла;

   Таб.ВывестиСекцию("РЛ>");

КонецЦикла;

// Вывод заполненной формы

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

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

Таб.Показать("Результат");

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



Контекст работы с Таблицей Значений


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

Чтобы вызвать метод объекта, имя метода (с указанием необходимых параметров) пишется через точку после имени объекта.

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

Англоязычный синоним ключевого слова ТаблицаЗначений — ValueTable.

Пример:

МояТаблицаЗначений = СоздатьОбъект("ТаблицаЗначений");



Контекст работы с текстом


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

При создании переменной типа «Текст» функции СоздатьОбъект в качестве параметра передается ключевое слово "Текст".

Англоязычный синоним ключевого слова Текст — Text.

Пример:

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

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

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



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


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

Англоязычный синоним ключевого слова ВидРасчета — CalculationKind.

Англоязычный синоним ключевого слова ГруппаРасчетов — CalculationGroup.

Пример:

*

// Узнаем, входит ли вид расчета ОплатаПоОкладу

//в группу ОблагаютсяНалогом

Проверка =

    ВидРасчета.ОплатаПоОкладу.ВходитВГруппу(ГруппаРасчетов.ОблагаютсяНалогом);

*

// Выведем наименование вида расчета

Сообщить(ВидРасчета.Доплата.Наименование);

Кроме того, объекты типа «вид расчета» могут сохраняться в базе данных, т. е. реквизиты справочников, документов, журналов расчета могут иметь тип «ВидРасчета» и хранить ссылки на объекты этого типа.

В глобальном контексте программы 1С:Предприятие есть атрибут «ВидРас­чета». Этот объект имеет метод ПолучитьАтрибут, который позволяет полу­чить доступ к объекту вида расчета конкретного вида по его имени. Т.е. допус­тимы следующие синтаксические конструкции:

Проверка =

   ВидРасчета.ОплатаПоОкладу.ВходитВГруппу(ГруппаРасчетов.ОблагаетсяНалогом);

Проверка =

   ВидРасчета.ПолучитьАтрибут("ОплатаПоОкладу").

                  ВходитВГруппу(ГруппаРасчетов.ОблагаютсяНалогом);



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


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

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

При создании переменной со ссылкой на внешнее приложение, в качестве имени объекта в операторе СоздатьОбъект должен выступать зарегистрированный OLE идентификатор внешнего приложения.

Зарегистрированный OLE идентификатор внешнего приложения — это уникальный идентификатор программного продукта, который записывается в регистрационную базу Windows при инсталляции программы.

Примеры OLE идентификаторов:

Excel

"Excel.Application"

LotusApproach

"Approach.Application"

MSGraph

"MSGraph.Application"

PowerPoint

"PowerPoint.Application"

Пример:

// Создаем объект Excel (запускаем программу Excel)

Ехсеl = СоздатьОбъект("Excel.Application");

// делаем окно программы Excel видимым и активным

Excel.Visible = l;



Контекст работы с XBase


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

Русскоязычное написание ключевого слова XBase отсутствует.

Пример:

ДБФ = СоздатьОбъект("XBase");

ИмяФайла = "";

ИмяПути = "";

ФС.ВыбратьФайл(0, ИмяФайла, ИмяПути, , "*.*", , );

ПутьДБ = ИмяПути + ИмяФайла;

ДБФ.ОткрытьФайл(ПутьДБ);

Если ДБФ.Открыта() = 1 Тогда

   Предупреждение("База открыта", 2);

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

   ФИО = ДБФ.FIO;      // Подразумевается, что поле FIO имеется в открытой БД

   Предупреждение("Первым в " + ПутьДБ + " упомянут т." + ФИО, 5);

Иначе

   Предупреждение("НЕ смогли открыть Базу!", 2);

КонецЕсли;



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


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

Кроме того, объект этого типа передается как параметр предопределенной процедуре формы журнала расчетов ПриРасчете в том случае, если выполня­ется расчет одной записи журнала расчетов. С точки зрения встроенного языка, ссылки на записи журнала расчетов — агрегатные объекты, имеющие свои ат­рибуты.

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

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

Пример:

Процедура ПриРасчете(Объект)

   // определим, что считаем?

   Если ТипЗначения(Объект) = 12 Тогда

      // имеем дело с документом

      Если Объект.Автор <> Расчетчик Тогда

         // если автор данного документа не есть текущий расчетчик

         // запретим расчет чужого документа!

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

      КонецЕсли;

   ИначеЕсли ТипЗначения(Объект) = 11 Тогда

      // а это — элемент справочника

      Если Объект.Владелец <> Расчетчик Тогда

         // если рассчитываемый объект лежит в папке текущего

         // расчетчика — считать можно, иначе — нет

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

      КонецЕсли;

   Иначе

      // иначе — считаем одну запись

      Если (Объект.Документ.Автор <> Расчетчик) ИЛИ

           (Объект.Объект.Владелец <> Расчетчик) Тогда

         // не дадим считать запись чужого документа или объекта

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

      КонецЕсли;

   КонецЕсли;

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



Контекст работы с запросами


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

При создании объекта типа «Запрос» в качестве параметра функции СоздатьОбъект используется ключевое слово Запрос .

Англоязычный синоним ключевого слова Запрос — Query.

Пример:

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



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


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

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



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


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

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



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


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

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



Контекст работы с журналом расчета


Так же, как и при работе с другими данными системы 1С:Предприятие, дос­туп к атрибутам журнала расчетов и вызов его методов зависит от контекста выполнения модуля программы. В контексте выполнения расчета (см. «Виды программных модулей»), доступны атрибуты, методы журнала расчетов, т. е. они пишутся непосредственно, с указанием необходимых параметров.

Пример:

// Запись рассчитанного значения в атрибут Результат журнала расчетов

Результат = Объект.Оклад * Дни / ВсегоДней;

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

Англоязычный синоним ключевого слова ЖурналРасчетов — CalcJournal.

Пример:

// Рассчитаем все записи журнала расчетов Зарплата

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

ЖР.ВыбратьПериод(НачалоТекущегоПериода());

Пока ПолучитьЗапись() = 1 Цикл

   ЖР.Рассчитать();

КонецЦикла;



Контекст работы со Списком Значений


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

Чтобы вызвать метод объекта, имя метода (с указанием необходимых параметров) пишется через точку после имени объекта.

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

Англоязычный синоним ключевого слова СписокЗначений — ValueList.

Пример:

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



Контекст работы со справочниками


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

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

Пример:

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

Наименование = "Сидоров С.С.";

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

Пример:

* Если в документе значение реквизита "Сотрудники" имеет тип «Справочник», имя сотрудника можно узнать следующим образом:

ИмяСотр = Док.Сотрудники.Наименование;

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

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

Справочник.Имя_Справочника

где <Имя_Справочника> — название справочника, определенное в конфигураторе.

Англоязычный синоним ключевого слова Справочник — Reference. Допускается создавать объект неопределенного вида справочника. В этом случае название конкретного вида справочника в параметре вызова функции СоздатьОбъект опускается. Далее для работы с таким объектом ему надо установить вид справочника при помощи метода Вид.

Пример:

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

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

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

СпрЗ.Вид("Валюты");

Замечание. Следует обратить особое внимание, что переменной может быть присвоена ссылка на позиционируемый объект или само значение элемента справочника (например, переменной может быть присвоено значение реквизита документа, который имеет тип «Справочник»). Использование ссылки, созданной при помощи функции СоздатьОбъект существенно отличается от работы непосредственно со значением элемента справочника. Только при работе со ссылкой на позиционируемый объект типа «Справочник» есть возможность изменять позиционирование (найти-выбрать...) текущего элемента справочника (т. е. осуществлять навигацию по справочнику), создавать новые элементы и удалять существующие. С другой стороны, ссылка не содержит собственно значения элемента справочника, которое можно присвоить чему-либо. Однако, его всегда можно получить используя метод ТекущийЭлемент.

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

Пример:

*

//В модуле Формы списков Справочника

// меняем наименование выбранного в списке элемента справочника

Наименование = "Администрация";

*

// В модуле Формы элемента справочника или

// В модуле Формы группы справочника

// при редактирования одного элемента справочника

// меняем наименование обрабатываемого элемента справочника

Наименование = "Бухгалтерия";

*

// В других программных модулях

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

Спр.Новый();

//задаем реквизиты элемента Справочника, используя атрибуты

Спр.Наименование = "Авто-Элемент";

Спр.Код = 1032;

Спр.Размер = 10045;

Спр.Записать();


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


Каждый программный модуль связан с остальной частью конфигурации задачи. Эта связь называется контекстом выполнения модуля. Следует различать два вида контекста:

глобальный контекст задачи;

локальный контекст выполнения конкретного модуля.

Глобальный контекст образуется:

значениями системных атрибутов, системными процедурами и функциями;

значениями заданных в конфигураторе констант, перечислений, регистров, видов расчета, групп видов расчета;

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

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

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



Контроль


Получить/установить признак контроля текста области.

Синтаксис:

Контроль(<Контроль>)

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

Control

Параметры:

<Контроль>

Необязательный параметр. Число: 1 — Авто; 2 — Обрезать; 3 — Забивать; 4 — Переносить; 5 — Красный; 6 — Забивать+Красный. Если параметр опущен, то признак контроля текста области не изменяется.

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

Признак контроля текста до исполнения метода.

Описание:

Метод Контроль устанавливает признак контроля текста области.

Пример:

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

Таб.Открыть("tabl_l.mxl");

ВыбОбласть = Таб.Область("R8C4");

ВыбОбласть.Шрифт("Arial");

ВыбОбласть.РазмерШрифта(10);

ВыбОбласть.Подчеркнутый(1);

ВыбОбласть.ГоризонтальноеПоложение(3);

ВыбОбласть.Контроль(4);



КопироватьФайл


Копирует файл.

Синтаксис:

КопироватьФайл(<ИмяФайлаИсточника>, <ИмяФайлаПриемника>, <ФлагОтказаПерезаписи>)

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

FileCopy

Параметры:

<ИмяФайлаИсточника>

Строковое выражение с именем файла источника.

<ИмяФайлаПриемника>

Строковое выражение с именем файла приемника.

<ФлагОтказаПерезаписи>

Числовое выражение: 0 — при существовании файла приемника заменяет его на копируемый; 1 — при существовании файла приемника копирования не производится.

Описание:

Метод КопироватьФайл копирует файл-источник в файл-приемник.

Пример:

* В данном примере приведена процедура копирования файла.

Процедура КопирФ()

   ФС.КопироватьФайл(ИмяВыбрФайла, ФПриемник, 1);

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



КорДО, КорКО


КорДО — дебетовый оборот между корреспонденциями;

КорКО — кредитовый оборот между корреспонденциями.

Синтаксис:

КорДО(<ТипСуммы>)

КорКО(<ТипСуммы>)

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

CorTD

СоrТС

Параметры:

<ТипСуммы>

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

1 ("С", "S") — сумма;

2 ("В", "С") — валютная сумма;

3 ("К", "А") — количество.

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

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

Число — вычисленный оборот.

Описание:

Функции доступны только при работе с итогам, полученными методом

ВыполнитьЗапрос.

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

ВыбратьКорСчета, ПолучитьКорСчет или ВыбратьСубконто, ПолучитьСубконто, ВыбратьКорСубконто, ПолучитьКорСубконто.

Пример:

* В данном примере в переменной в переменных ОбДТ и ОбКТ образуются обороты с дебета основного счета в кредит корреспондирующего и наобо­рот соответственно.

БухИтоги.Запрос(Дата1, Дата2);

БухИтоги.ВыбратьСчета();

Пока БухИтоги.ПолучитьСчет() = 1 цикл

   БухИтоги.ВыбратьКорСчета();

   Пока БухИтоги.ПолучитьКорСчет() = 1 цикл

      ОбДТ = БухИтоги.КорДО();

      ОбКТ = БухИтоги.КорКО();

   КонецЦикла;

КонецЦикла;



КорСчет


Корреспондирующий счет, для которого извлекаются результаты за­проса.

Синтаксис:

КорСчет

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

CorAccount

Описание:

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

Пример:

БухИтоги.Запрос(Дата1, Дата2);

БухИтоги.ВыбратьСчета();

Пока БухИтоги.ПолучитьСчет() = 1 цикл

   БухИтоги.ВыбратьКорСчета();

   Пока БухИтоги.ПолучитьКорСчет() = 1 цикл

      Сообщить(БухИтоги.КорСчет.Код + " ДО = " + БухИтоги.КорДО());

   КонецЦикла;

КонецЦикла;



КорСубконто


Корреспондирующее субконто, соответствующее текущему итогу.

Синтаксис:

КорСубконто(<Номер>|<ВидСубконто>)

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

CorSubconto

Параметры:

<Номер>

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

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

Необязательный параметр. Значение типа «ВидСубконто».

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

Значение корреспондирующего субконто, соответствующее текущему итогу.

Описание:

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

Пример:

БухИтоги.ИспользоватьСубконто(ВидыСубконто.Товары, , 1);

БухИтоги.ИспользоватьКорСубконто(ВидыСубконто.Клиенты, , 1);

БухИтоги.ВыполнитьЗапрос(ДатаНач, ДатаКон);

БухИтоги.ВыбратьСубконто();

Пока БухИтоги.ПолучитьСубконто() = 1 цикл

   БухМтоги.ВыбратьКорСубконто();

   Пока БухИтоги.ПолучитьКорСубконто() = 1 цикл

      Сообщить(БухИтоги.Субконто() + "-" + БухИтоги.КорСубконто());

   КонецЦикла;

КонецЦикла;



Кредит


Обращение к кредиту проводки (корреспонденции).

Синтаксис:

Кредит

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

Credit

Описание:

Атрибут Кредит служит для обращения к кредитовой части текущей проводки (корреспонденции) операции. Данный атрибут возвращает агрегатный объект специального типа «Кредит», который используется только для доступа к данным кредитовой части конкретной проводки (корреспонденции) операции и не используется отдельно.

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

Пример:

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

Опер.НайтиОперацию(ВыбрДокумент);

Опер.ВыбратьПроводки();

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

   Сообщить("Проводка " + Опер.Дебет.Счет + " - " + Опер.Кредит.Счет);

КонецЦикла;



Курсив


Получить/установить признак шрифта курсив области.

Синтаксис:

Курсив(<Курсив>)

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

Italic

Параметры:

<Курсив>

Необязательный параметр. Число: 1 — шрифт курсив; 0 — шрифт не курсив. Если параметр опущен, то признак курсив шрифта области не изменяется.

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

Признак шрифта курсив до исполнения метода.

Описание:

Метод Курсив устанавливает признак шрифта курсив области.

Пример:

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

Таб.Открыть("tabl__l.mxl");

ВыбОбласть = Таб.Область("R8C4");

ВыбОбласть.Шрифт("Arial");

ВыбОбласть.РазмерШрифта(10);

ВыбОбласть.Курсив(1);



Лев


Выбрать в строке символы слева.

Синтаксис:

Лев (<Строка>, <Число>)

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

Left

Параметры:

<Строка>

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

<Число>

Числовое выражение.

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

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

Описание:

Функция Лев получает в качестве параметра строку, выбирает первые слева символы строки, числом равные <Число>, и возвращает в качестве значения результирующую строку.

Пример:

Фамилия = Лев(ФИО, 15);



Лог


Вычислить натуральный логарифм числа.

Синтаксис:

Лог(<Число>)

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

Ln

Параметры:

<Число>

Числовое выражение.

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

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

Описание:

Функция Лог вычисляет и возвращает натуральный логарифм числа. При отрицательном или нулевом значении параметра возвращаемое значение — 0.

Пример:

Шкала = Лог(Частота);



Числовое значение результата вычисления десятичного


Вычислить десятичный логарифм числа.

Синтаксис:

Лог10(<Число>)

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

Log10

Параметры:

<Число>

Числовое выражение.

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

Числовое значение результата вычисления десятичного логарифма.

Описание:

Функция Лог10 вычисляет и возвращает десятичный логарифм числа. При отрицательном или нулевом значении параметра возвращаемое значение — 0.

Пример:

Шкала = Лог10(Частота);


Логические операции


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

Операции сравнения:

В языке определены следующие виды операций сравнения:

больше

(Оп1 > Оп2)

больше или равно

(Оп1 >= Оп2)

равно

(Оп1 = Оп2)

не равно

(Оп1 <> Оп2)

меньше

(Оп1 < Оп2)

меньше или равно

(Оп1 <= Оп2)

Операции сравнения определены для следующих типов операндов:

Больше          

Число > Число

Строка > Строка

 

Дата > Дата

Больше или равно:   

Число >= Число

 

Строка >= Строка

 

Дата >= Дата

Меньше:        

Число < Число

 

Строка < Строка

 

Дата < Дата

Меньше или равно: 

Число <= Число

 

Строка <= Строка

 

Дата <= Дата

Равно:

Число = Число

 

Строка = Строка

 

Дата = Дата

 

АгрегатныйТип = АгрегатныйТип

Не равно:      

Число <> Число

 

Строка <> Строка

 

Дата <> Дата

 

АгрегатныйТип <> АгрегатныйТип

Булевы операции:

В языке определены следующие виды булевых операций:

И или AND

конъюнкция (булево И)

ИЛИ или OR

дизъюнкция (булево ИЛИ)

НЕ или NOT

логическое отрицание (булево отрицание НЕ)



Логические выражения


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

Уровни старшинства логических операций:

Уровень 1

операнды, заключенные в скобки

Уровень 2

NOT

Уровень 3

AND

Уровень 4

OR

Пример:

Стр = "Угадал!";

а = ВвестиСтроку(Стр, "Назови пароль!", 15);

Если (а=1) И ((Стр = "пароль") ИЛИ (Стр = "Пароль")) Тогда

   Сообщить(Стр);

КонецЕсли;



Макс


Определить максимальное значение.

Синтаксис:

Макс(<Элемент1>, ..., <ЭлементN>)

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

Мах

Параметры:

<Элемент1>, ..., <ЭлементN>   Список выражений базовых типов данных.

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

Значение максимального элемента из списка <Элемент1>, ..., <ЭлементN>

Описание:

Функция Макс определяет максимальное значение из списка <Элемент1>, ..., <ЭлементN>.

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

Пример:

МаксимЦена = Макс(Цена1, Цена2, ЦенаЗ);



МаксимальноеКоличествоСубконто


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

Синтаксис:

МаксимальноеКоличествоСубконто()

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

MaxSubcontoCount

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

Число — максимальное количество видов субконто.

Описание:

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

Пример:

Если МаксимальноеКоличествоСубконто() < 2 Тогда

   Форма.ВидСубк2.Видимость(0);

КонецЕсли;



Маска


Установить/определить маску интерактивного ввода для элементов диалога типа «поле ввода».

Синтаксис:

Маска(<СтрокаМаски>)

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

Mask

Параметры:

<СтрокаМаски>

Необязательный параметр. Строковое выражение — посимвольная маска интерактивного ввода для строковых реквизитов диалога (аналогично установке в свойствах реквизита диалога в конфигураторе).

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

Строковое значение — текущая маска интерактивного ввода для строковых реквизитов (на момент до исполнения метода).

Описание:

Метод Маска позволяет установить посимвольную маску интерактивного ввода для элементов диалога типа «поле ввода» (аналогично установке в свойствах реквизита диалога в конфигураторе).

В параметре <СтрокаМаски> допустимы следующие символы:

! — введенный символ преобразуется в верхний регистр;

9 — произвольный символ цифры;

# — произвольный символ цифры или - (знак минус) или + (знак плюс) или пробел;

N — любые алфавитно-цифровые символы (буквы или цифры);

Х (латинского алфавита) — произвольный символ;

@ — любые алфавитно-цифровые символы (буквы или цифры) в верхнем регистре.

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

Пример:

форма.Телефон.Маска("999-99-99");



Методы агрегатных типов данных


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

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

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

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

См. также: «Передача параметров»

Пример:

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

А = Спр.Выбрать("Выберите товар", 0);

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

Доку.Новый();                // Вызываем метод

Доку.Склад = 22;

Доку.НомерДок = "777";       // Устанавливаем номер документа

Доку.ДатаДок = '14.04.96';   // Устанавливаем дату документа

Доку.АвтоВремяОтключить();   // Вызываем метод

Доку.УстановитьВремя(17, 30, 00);

Доку.НоваяСтрока();          // Вызываем метод

Доку.Товар = Спр.ТекущийЭлемент();

Доку.Количество = 100;


This site is hosted for FREE on VirtualAve -- yours can be, too! Click here for more information.



Методы глобального атрибута «ПланыСчетов»


Значения типа «ПланСчетов» могут выступать как реквизиты диалога формы, как реквизиты документов, справочников и т. д.

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



Методы глобального атрибута «ВидыСубконто»


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



Методы элементов диалога


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

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



Методы контекста Модуля документа


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



Методы контекста Модуля документа


Следующие методы доступны только в контексте Модуля документа в системной предопределенной процедуре ОбработкаПроведения.

Замечание. Перечисленные в этом разделе методы можно применять только к регистрам, непосредственно доступным в контексте Модуля документа, т. е. нельзя создать объект типа «регистр» с помощью функции СоздатьОбъект и к нему применять метод из данного раздела.



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


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



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


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