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

         

НазначитьТип


Назначить тип для реквизита неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяРеквизита>, <ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяРеквизита>

Строковое выражение — название реквизита регистра неопределенного типа, как он назван в конфигурато­ре.

<ИмяТипа>

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

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



<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для реквизита, которому в конфигураторе назначен тип «Неопределенный».

Пример:

Регистр.УчетТМЦ.НазначитьТип("ТМЦ", "Справочник.Товары");



НазначитьТип


Назначить тип для реквизита неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяРеквизита>, <ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяРеквизита>

Строковое выражение — название реквизита счета неопределенного типа, как он назван в конфигурато­ре.

<ИмяТипа>

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

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для реквизита, которому в конфигураторе назначен тип «Неопределенный».

Пример:

ВыбСчет.НазначитьТип("ТМЦ", "Справочник.Товары");



НазначитьТип


Назначить тип для реквизита неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяРеквизита>, <ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяРеквизита>

Строковое выражение — название реквизита опера­ции или проводки неопределенного типа, как он на­зван в конфигураторе.

<ИмяТипа>

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

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для реквизита, которому в конфигураторе назначен тип «Неопределенный».

Пример:

Операция.НазначитьТип("ТМЦ", "Справочник.Товары");



НазначитьТип


Назначить тип для реквизита неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяРеквизита>, <ИмяТипа>, <Длина>, <Точность>}

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

SetType

Параметры:

<ИмяРеквизита>

Строковое выражение — название реквизита журнала расчетов неопределенного типа, как он назван в кон­фигураторе.

<ИмяТипа>

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для реквизита, которому в конфигураторе назначен тип «Неопределенный».

Пример:

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

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

ЖЗ.НазначитьТип("ТМЦ", "Справочник.Товары");

ЖЗ.УстановитьРеквизит("ТМЦ", ВыбТовар);

ЖЗ.ВвестиРасчет(Сотр, ВР, Нач, Оконч, Сумма * Процент);



НазначитьТип


Назначить тип для периодического объекта неопределенного типа.

Синтаксис:

НазначитьТип(<ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяТипа>

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип периодического реквизита справочника или периодической константе неопределенного типа.

Пример:

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

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

Тов.НайтиПоКоду(51);

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

   ВыбТМЦ = Тов.ТекущийЭлемент();

Иначе

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

   Возврат;

КонецЕсли;

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

ПерТМЦ.ИспользоватьОбъект("ТМЦ", ВыбТМЦ);

ПерТМЦ.НазначитьТип("Справочник.Товары");



НазначитьТип


Назначить тип для элемента диалога неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяТипа>, <Длина>, <Точность>)

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

AssignType

Параметры:

<ИмяТипа>

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для элемента диалога, ко­торому в конфигураторе назначен тип «Неопределенный».

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

Пример:

Форма.ВыбКолич.НазначитьТип("Число", 15, 2);

Форма.ВыбДата.НазначитьТип("Дата");

Форма.ВыбТовар.НазначитьТип("Справочник.Товары");

Форма.ВыбДокум.НазначитьТип("Документ");

См. также: УстановитьТип, ТипЗначения, ТипЗначенияСтр



НазначитьТип


Назначить тип для значения ячейки неопределенного вида.

Синтаксис:

НазначитьТип(<ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяТипа>

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для значения ячейки, кото­рому в конфигураторе назначен тип «Неопределенный».

Пример:

ВыбОбласть.НазначитьТип("Число", 15, 2);

См. также: УстановитьТип, ТипЗначения, ТипЗначенияСтр



НазначитьТип


Назначить тип для константы неопределенного типа.

Синтаксис:

НазначитьТип(<ИмяКонстанты>, <ИмяТипа>, <Длина>, <Точность>)

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

SetType

Параметры:

<ИмяКонстанты>

Строковое выражение — название константы неопре­деленного типа, как она названа в конфигураторе.

<ИмяТипа>

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

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

<Длина>

Необязательный параметр. Числовое выражение — длина поля представления данных. Имеет смысл только при задании числового или строкового типа.

<Точность>

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

Описание:

Метод НазначитьТип позволяет назначить тип для константы, которой в конфигураторе назначен тип «Неопределенный».

Пример:

Константа.НазначитьТип("ТМЦ", "Справочник.Товары");



НазначитьВид


Для значений типа «Документ неопределенного вида», «Справочник неопределенного вида», «Счет неопределенного вида» назначает кон­кретный вид.

Синтаксис:

НазначитьВид(<3начение>, <Вид>)

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

SetKind

Параметры:

<3начение>

Значение типа документ/справочник/счет неопределенного вида — обычно реквизит документа, справочника или диалога фор­мы.

<Вид>

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

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

Описание:

Процедура НазначитьВид используется для установки значениям типа «Документ неопределенного вида», «Справочник неопределенного вида», «Счет неопределенного вида» конкретный вид. При этом, если существующее значе­ние не соответсвует вновь установленному виду — то оно очищается.

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

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

Пример:

* Например, реквизиту документа «Контрагент» типа справочник неопреде­ленного вида, в зависимости от значений других реквизитов можно уста­новить вид «Организации» или «Сотрудники».

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

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

      НазначитьВид(Контрагент, «Организации»);

   Иначе

      НазначитВид(Контрагент, «Сотрудники»);

   КонецЕсли;

   Форма.Контрагент.НеИзменятьВид(1);

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



НазваниеИнтерфейса


Получить название интерфейса пользователя.

Синтаксис:

НазваниеИнтерфейса()

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

UserInterfaceName

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

Строковое значение, содержащее название интерфейса пользователя.

Описание:

Функция НазваниеИнтерфейса возвращает название интерфейса, задан­ное пользователю в конфигураторе.

Пример:

МойИнтерфейс = НазваниеИнтерфейса();



НазваниеНабораПрав


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

Синтаксис:

НазваниеНабораПрав(<ВыдИспНабПрав>)

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

RightName

Параметры:

<ВыдИспНабПрав>

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

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

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

Описание:

Функция НазваниеНабораПрав возвращает название набора прав, задан­ное пользователю в конфигураторе.

Пример:

МоиПрава = НазваниеНабораПрав();



НеИзменятьВид


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

Синтаксис:

НеИзменятьВид(<Признак>)

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

FixKind

Параметры:

<Признак>

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

0 — разрешить изменение вида при выборе зна­чения;

1 — запретить изменение вида при выборе зна­чения.

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

Число — текущее значение признака.

Описание:

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

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

Пример:

* Например, в некотором документе, для его реквизита «Контрагент» типа справочник неопределенного вида, назначается вид «Организации» или «Сотрудники» и запрещается интерактивное изменение вида пользовате­лем.

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

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

      НазначитьВид(Контрагент, «Организации»);

   Иначе

      НазначитьВид(Контрагент, «Сотрудники»);

   КонецЕсли;

   Форма.Контрагент.НеИзменятьВид(1);

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



НеПроводитьДокумент


Отменить процесс проведения документа.

Синтаксис:

НеПроводитьДокумент()

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

DoNotTransactDoc

Описание:

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

Данный метод доступен только в контексте Модуля документа в предопре­деленной процедуре ОбработкаПроведения (см. Гл. «Системные предопре­деленные процедуры»).

По своему действию данный метод полностью аналогичен вызову системной функции СтатусВозврата с параметром 0, т. е. отменить действие.

Пример:

Процедура ОбработкаПроведения();

   Если Число(Клиент.Выбран()) > 0 Тогда

      ДвиженияРегистраРеализации();

   Иначе

      Сообщить("Не выбран клиент по реализации!!! Документ не проводится!!!");

      НеПроводитьДокумент();

      Возврат;

   КонецЕсли;

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

См. также:

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



НомерДняГода


Определить день года указанной даты.

Синтаксис:

НомерДняГода(<Дата>)

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

GetDayOfYear

Параметры:

<Дата>

Выражение со значением типа «дата».

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

Число со значением определенного дня года.

Описание:

Функция НомерДняГода определяет порядковый день в году для указан­ной даты.

Пример:

ЗначениеДняГода = НомерДняГода(РабочаяДата());



НомерДняНедели


Определить день недели указанной даты.

Синтаксис:

НомерДняНедели(<Дата>)

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

GetDayOfWeek

Параметры:

<Дата>

Выражение со значением типа «дата».

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

Число со значением определенного порядкового дня недели.

Описание:

Функция НомерДняНедели определяет день недели указанной даты. Воз­вращаемое значение — число со значением определенного порядкового дня не­дели (1 — понедельник, 2 — вторник, ..., 7 — воскресенье).

Пример:

ЗначениеДняНедели = НомерДняНедели(РабочаяДата());



НомерДок


Номер документа

Синтаксис:

НомерДок

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

DocNum

Описание:

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

Пример:

Основание = Вид() + " № " + СокрП(НомерДок) + " от " + ДатаДок;



НомерКорреспонденции


Определяет номер текущей корреспонденции в операции.

Синтаксис:

НомерКорреспонденции()

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

CorrespondenceNumber

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

Число — номер текущей корреспонденции в проводке.

Описание:

Для текущей проводки (корреспонденции) возвращает ее номер корреспон­денции, если проводка не сложная — 1.

Пример:

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

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

Для Инд = 1 До Опер.КоличествоПроводок() Цикл

   Опер.ПолучитьПроводкуПоНомеру(Инд);

   Сообщить("Проводка " + Опер.НомерПроводки() +

            "Корр. " + Опер.НомерКорреспонденции());

КонецЦикла;



НомерНеделиГода


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

Синтаксис:

НомерНеделиГода(<Дата>)

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

GetWeekOfYear

Параметры:

<Дата>

Выражение со значением типа «дата».

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

Число со значением определенного номера недели в году.

Описание:

Функция НомерНеделиГода определяет номер недели в году для указан­ной даты.

Пример:

ЗначениеНедели = НомерНеделиГода(РабочаяДата());



НомерПоля


Определить номер поля по названию.

Синтаксис:

НомерПоля(<НазваниеПоля>)

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

FieldNo

Параметры:

<HaзвaниeПoля>

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

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

Числовое значение номера поля.

Описание:

Метод НомерПоля предназначен для определения номера поля по его на-^анию.

Пример:

НомП = ДБФ.НомерПоля("CODE");



НомерПроводки


Определяет номер текущей проводки.

Синтаксис:

НомерПроводки()

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

EntryNumber

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

Число — номер проводки.

Описание:

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

Пример:

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

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

Для Инд = 1 До Опер.КоличествоПроводок() Цикл

   Опер.ПолучитьПроводкуПоНомеру(Инд);

   Сообщить("Проводка " + Опер.НомерПроводки() +

            "Корр. " + Опер.НомерКорреспонденции());

КонецЦикла;



НомерСтроки


Синтаксис:

НомерСтроки

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

LineNum

Описание:

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

Пример:

Процедура ОбработкаПроведения()

   Регистр.ТовЗап.Склад = Склад;

   ВыбратьСтроки();

   Пока ПолучитьСтроку() > 0 Цикл

      Регистр.ПривязыватьСтроку(НомерСтроки);

      Регистр.ТовЗап.Товар = Товар;

      Регистр.ТовЗап.Количество = Количество;

      Регистр.ТовЗап.Стоимость = Стоимость;

      Регистр.ТовЗап.ДвижениеРасходВыполнить();

   КонецЦикла;

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



НомерСтроки


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

Синтаксис:

НомерСтроки()

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

LineNum

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

Число — номер строки документа, выполнившего движение регистра.

Описание:

Метод НомерСтроки возвращает значение номера строки документа, кото­рая задала движение регистра (в случае, когда в Модуле документа перед дви­жением регистра использовали метод ПривязыватьСтроку). Метод использу­ется после получения очередного движения регистра (см. функции ПолучитьДвижение и ПолучитьИтог).

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

Пример:

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

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

Рег.УстановитьФильтр(Клиент);

РассчитатьРегистрыНа(ДатаНачала);

Рег.ВыбратьДвиженияСОстатками(ДатаКонца);

Пока Рег.ПолучитьДвижение() = 1 Цикл

   Прих = 0;

   Расх = 0;

   Если Рег.Приход = 1 Тогда

      Прих = Рег.Долг;

   Иначе

      Расх = Рег.Долг;

   КонецЕсли;

   ТекущееСальдо = Рег.Остаток(Клиент, "Задолженность");

   Док = Рег.ТекущийДокумент();

   НомСтр = Рег.НомерСтроки();

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

КонецЦикла;

См. также: ПолучитьДвижение, ТекущийДокумент, ПривязыватьСтроку



НомерСтроки


Возвращает номер строки текущего документа, изменившего перио­дическое значение реквизита справочника.

Синтаксис:

НомерСтроки()

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

LineNurn

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

Числовое значение — номер строки документа, изменившего периодическое значение реквизита справочника.

Описание:

Метод НомерСтроки возвращает значение номера строки документа, изме­нившего периодическое значение реквизита справочника (в случае, когда в Мо­дуле документа использовали метод ПривязыватьСтроку). Метод использует­ся после получения очередного значения из выборки, особенно полезен при выборке по документу или по всем реквизитам (см. методы ВыбратьЗначения, ВыбратьПоДокументу, ПолучитьЗначение).

Пример:

Процедура ПечатьИстории(Элем)

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

      Возврат;

   КонецЕсли;

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

   Таб.ИсходнаяТаблица("ПечатьИстории");

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

   Ист = СоздатьОбъект("Периодический");

   // Просмотрим все периодические реквизиты справочника

   Ист.ИспользоватьОбъект("", Элем);

   Ист.ВыбратьЗначения();

   Пока Ист.ПолучитьЗначение() = 1 Цикл

      ДокИст = Ист.ТекущийДокумент();

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

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

         НомСтрДок = Ист.НомерСтроки();

         Таб.ВывестиСекцию("ПоДокументу");

      Иначе

         // если значение задано интерактивно

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

      КонецЕсли;

   КонецЦикла;

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

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

   Таб.Показать("Отчет");

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

См. также: УстановитьРеквизитСправочника, ВыбратьПоДокументу, ПолучитьЗначение



НомерСтроки


Номер текущей строки таблицы.

Синтаксис:

НомерСтроки

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

LineNo

Описание;

Атрибут (только для чтения) НомерСтроки содержит номер текущей стро­ки таблицы значений.



НомерСтрокиДокумента


Выдает номер строки документа, по которой сформирована текущая проводка.

Синтаксис:

НомерСтрокиДокумента()

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

DocLineNum

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

Число — номер строки документа, сформировавшей данную проводку.

Описание:

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

Метод НомерСтрокиДокумента выдает для текущей проводки номер стро­ки документа, который был привязан в момент добавления проводки.

Пример:

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

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

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

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

   Сообщить("Номер строки " + Опер.НомерСтрокиДокумента());

КонецЦикла;



НомерЗаписи


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

Синтаксис:

НомерЗаписи()

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

RecNo

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

Числовое значение — номер текущей записи.

Описание:

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

Пример:

Процедура ПоказатьНомераУдалЗап()

   РежПокУд = ДБФ.ПоказыватьУдаленные(1);

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

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

      Если ДБФ.ЗаписьУдалена() = 1 Тогда

         Стр1 = "Номер удаленной записи — ";

         Стр2 = Строка(ДБФ.НомерЗаписи());

         Предупреждение(Стр1 + Стр2, 3);

      КонецЕсли;

      Если ДБФ.Следующая() = 0 Тогда

         Прервать;

      КонецЕсли;

   КонецЦикла;

   ДБФ.ПоказыватьУдаленные(РежПокУд);

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

См. также: Перейти



Новая


Создать новую операцию.

Синтаксис:

Новая()

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

New

Описание:

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

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

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

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

Пример:

* Создание и запись новой операции созданной в модуле отчета или обработки

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

Опер.Новая();

Опер.Дата = РабочаяДата();

Опер.Содержание = "Выдача денег из кассы";

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



Новая


Добавить новую корректную проводку.

Синтаксис:

Новая()

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

New

Описание:

Метод Новая добавляет новую корректную проводку.

Пример:

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

КП.Новая();

КП.Комментарий = "НДС с комисс. вознаграждения";

КП.СчетДт = "46.28";

КП.СчетКт = "68.2";

Кп.Записать();



Новая


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

Синтаксис:

Новая()

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

New

Описание:

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

Пример:

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

ЖР.Новая();

ЖР.Записать();



НоваяГруппа


Добавить новую группу справочника.

Синтаксис:

НоваяГруппа()

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

NewGroup

Описание:

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

Пример:

Процедура ВводГруппыСотрудников()

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

   // добавляем новую группу справочника

   Спр.НоваяГруппа();

   // Определяем реквизиты новой группы справочника

   Спр.Наименование = "Расчетчик3";

   Спр.Код = 3;

   // Записываем на диск

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

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



НоваяКолонка


Добавить в конец таблицы значений новую колонку.

Синтаксис:

НоваяКолонка(<Идентификатор>, <Тип>, <Длина>, <Точность>, <3аголовок>, <Ширина>,

              <Формат>, <Положение>)

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

NewColumn

Параметры:

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

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

<Тип>

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

<Длина>

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

<Точность>

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

<3аголовок>

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

<Ширина>

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

<Формат>

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

<Положение>

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

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

Описание:

Метод НоваяКолонка добавляет в конец таблицы значений новую колонку,

Пример:

Табл.НоваяКолонка("Код", "Число", 6, 0, "Код", 6);



НоваяКолонка


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

Синтаксис:

НоваяКолонка(<Ном>)

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

NewColumn

Параметры:

<Ном>

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

Описание:

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

Пример:

Таб.НоваяКолонка();



НоваяКорреспонденция


Создает новую корреспонденцию проводки.

Синтаксис:

НоваяКорреспонденция()

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

NewCorrespondence

Описание:

Метод НоваяКорреспонденция создает новую корреспонденцию для про­водки. Метод должен использоваться после того, как новая проводка создана с использованием метода НоваяПроводка.

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

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

Пример:

Процедура ОбработкаПроведения()

   Операция.Содержание = "Выдача денег из кассы";

   Операция.НоваяПроводка();

   Операция.Кредит.Счет = СчетПоКоду("50");

   Операция.Сумма = Итог("СуммаВыдачи");

   ВыбратьСтроки();

   Пока ПолучитьСтроку() = 1 Цикл

      Операция.НоваяКорреспонденция();

      Операция.Дебет.Счет = СчетПоКоду("71");

      Операция.Дебет.Сотрудники = Сотрудник;

      Операция.Сумма = СуммаВыдачи;

   КонецЦикла;

   Операция.Записать();

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



НоваяПроводка


Создать новую проводку.

Синтаксис:

НоваяПроводка()

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

NewEntry

Описание:

Метод создает новую проводку для текущей операции. Новая проводка ста­новится текущей.

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

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

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

Пример:

* Создание и запись новой операции созданной в модуле отчета или обработки

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

Опер.Новая();

Опер.Дата = РабочаяДата();

Опер.Содержание = "Деньги по чеку";

Опер.НоваяПроводка();

Опер.Дебет.Счет = СчетПоКоду("5 0");

Опер.Кредит.Счет = СчетПоКоду("51");

Опер.Сумма = 1000000;

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

* Запись операции в модуле документа в процессе проведения

Процедура ОбработкаПроведения()

   Операция.Содержание = "Выдача денег из кассы";

   Операция.НоваяПроводка();

   Операция.Дебет.Счет = СчетПоКоду("71");

   Операция.Дебет.Сотрудники = Сотрудник;

   Операция.Кредит.Счет = СчетПоКоду("50");

   Операция.Сумма = СуммаВыдачи;

   Операция.Записать();

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



НоваяСтраница


Вставить в результирующую таблицу разделитель страниц.

Синтаксис:

НоваяСтраница(<Ном>)

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

NewPage

Параметры:

<Ном>

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

Описание:

Процедура НоваяСтраница вставляет в результирующую таблицу раздели­тель страниц.

Пример:

Таб.НоваяСтраница();



НоваяСтрока


Добавить новую строку в документ.

Синтаксис:

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

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

NewLine

Описание:

Метод НоваяСтрока добавляет новую строку с очередным порядковым номером в многострочную часть документа.

Пример:

Процедура ОбработкаПодбора(Выб, КонФормы)

   Кол=0;

   Если ВвестиЧисло(Кол, "Введите количество", 10, 0) = 1 Тогда

      // добавим новую строку в спецификацию

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

      Работа = Выб;

      Количество = Кол;

      АктивизироватьСтроку();

   КонецЕсли;

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



НоваяСтрока


Добавляет новую строку в таблицу значений.

Синтаксис:

НоваяСтрока(<НомерСтроки>)

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

NewLine

Параметры:

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

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

Описание:

Метод НоваяСтрока вставляет новую строку в таблицу значений в указан­ную позицию.

Пример:

Табл.НоваяСтрока(1);



Новый


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

Синтаксис:

Новый()

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

New

Описание:

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

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

Пример:

Процедура ВводСотрудника()

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

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

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

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

   Спр.Наименование = ФИО;

   Спр.Код = ТН;

   Спр.Оклад = Оклад;

   Спр.Аванс = Аванс;

   // ...

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

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

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



Новый


Начать ввод нового документа.

Синтаксис:

Новый()

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

New

Описание:

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

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

Пример:

// данная процедура создает документ с № 1, в котором записывает

// все имеющиеся в справочнике должности

Процедура Оприходовать()

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

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

   // найдем документ с № 1

   Док.НайтиПоНомеру("1", 0);

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

      // если документа с № 1 не существует, то создадим его

      Док.Новый();

      Док.НомерДок = "1";

      Док.ДатаДок='01.01.80';

      // запишем все должности в документ

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

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

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

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

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

         КонецЕсли;

      КонецЦикла;

      // запишем новый документ на диск

      Док.Записать();

   КонецЕсли;

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



Новый


Создает новый счет.

Синтаксис:

Новый(<ЕстьСубсчета>)

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

New

Параметры:

<ЕстьСубсчета>

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

0 — счет не будет иметь субсчета;

1 — счет будет иметь субсчета.

По умолчанию 0;

Описание:

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

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

Однако, если для счета, для которого было указано отсутствие субсчетов, все-таки введен субсчет, то система 1С:Предприятие выполнит следующее:

Будет создан новый счет (группа) с тем же кодом;

Код данного счета будет дополнен субсчетом 0;

В дальнейшем код субсчета 0 можно будет изменить на другой.

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

Пример:

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

Сч.Новый();

Сч.Код = "76.02";

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



Новый


Ввести новый «праздничный» день.

Синтаксис:

Новый(<Дата>, <Значение>)

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

New

Параметры:

<Дата>

Дата нового праздника.

<Значение>

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

Описание:

Метод Новый вводит и записывает новую запись (новый «праздничный» день).

Пример:

// Праздничные дни

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

Празд.Новый('01.05.99', 0)



Нрег


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

Синтаксис:

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

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

Lower

Параметры:

<Строка>

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

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

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

Описание:

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

Пример:

Загл = НРег("БОЛЬШИЕ");



ОБ


Расчет оборотов между счетами.

Синтаксис:

ОБ(<СчетДеб>, <СчетКред>, <ТипСуммы>, <Валюта>)

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

TO

Параметры:

<СчетДеб>, <СчетКред>

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

<ТипСуммы>

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

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

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

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

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

<Валюта>

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

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

Число —оборот с дебета счета <СчетДеб> в кредит счета <СчетКред>.

Описание:

Функция ОБ предназначена для выдачи перекрестных оборотов между сче­тами. Коды счетов, оборот между которыми требуется рассчитать, передаются функции в качестве парметров.

Если указана валюта, то данные выдаются по конкретной валюте. Валютная сумма может выдаваться только по конкретной валюте.

Пример:

КассаБанк = БухИтоги.ОБ("50", "51");



Объединить


Объединить ячейки области.

Синтаксис:

Объединить()

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

Merge

Описание:

Метод Объединить объединяет ячейки области.

Пример:

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

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

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

ВыбОбласть.Объединить();



Объект


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

Синтаксис:

Объект

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

Object

Описание:

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

Атрибут Объект предназначен только для чтения.

Пример:

// Расчет профвзносов

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

   // объект расчета — сотрудник

   Если Объект.Профсоюз.Получить(ДатаОкончания) = Да Тогда

      // Зануляем результат перед расчетом для того,

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

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

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

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

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

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

      Облагаем = 0;

      УжеВзяли = 0;

      Группа = ГруппаРасчетов.ОблагаетсяПроф;

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

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

            Облагаем = Облагаем + ЖР.Результат;

         ИначеЕсли ЖР.ВидРасч = ВидРасчета.ПрофВзносы Тогда

            УжеВзяли = УжеВзяли + ЖР.Результат;

         КонецЕсли;

      КонецЦикла;

      Результат = Окр(Константа.ПроцентПроф.Получить(ДатаНачала) / 100 *

              Облагаем - УжеВзяли);

   Иначе

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

   КонецЕсли;

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

См. также: ВыбратьПериодПоОбъекту, ВыбратьЗаписиПоОбъекту



Объект «Диаграмма» — основные принципы и понятия, используемые при визуальной настройке и управлении


Диаграмма представляет собой определенную фигуру, которая строится на основе матрицы данных размером [M,N], где N — количество серий значений (далее серий), М — количество точек, замерами в которых получены значения серий.

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

С точки зрения настройки, диаграмма состоит из четырех областей:

область диаграммы — совокупность всех областей образующих диаграмму;

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

заголовок диаграммы;

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

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



Объявление внутренней переменной


Синтаксис:

<ИмяПеременной> = <ОписаниеПеременной> [, <ОписаниеПеременной>]+;

Параметры:

<ИмяПеременной>

Имя объявляемой внутренней перемен­ной описания запроса.

<ОписаниеПеременной>

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

Описание:

Внутренние переменные используются в тексте запроса для образования ссылок на объекты конфигурации, чтобы использовать их при построении та­ких операторов запроса, как Группировка, Функция, Условие.

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

* Например, можно определить внутреннюю переменную:

Товар = Документ.Перемещение.Товар, Документ.Расходная.Товар;

и использовать ее для создания Группировки. Такой состав внутренней переменной как бы дает Группировке задание — просмотреть все доку­менты видов "Перемещение" и "Расходная" и выбрать все товары, встречающиеся либо в документах вида "Перемещение", либо в доку­ментах "Расходная".

* Еще пример. Допустим, у нас есть регистр "Взаиморасчеты" и регистр "Кредиты", и в том и в другом есть измерение "Клиент". Определяем внутреннюю переменную:

Должник = Регистр.Взаиморасчеты.Клиент, Регистр.Кредиты.Клиент;

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




Если описания внутренней переменной указывают на разные типы данных, например, на «Справочник» и на «Документ», то это просто вызовет сообщение об ошибке. Например, следующее определение внутренней переменной будет ошибочным:

ААА = Справочник.Товары.ТекущийЭлемент, Документ.Счет.ТекущийДокумент;

// ЭТО ОШИБКА !!!

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

* Например, правомерно задать такую внутреннюю переменную:

Парам = Документ.Счет.Клиент, Документ.Счет.Фирма;

(Здесь предполагается, что в контексте конфигурации, реквизиты "Клиент" и "Фирма" — это элементы справочников). Если использовать такую внутреннюю переменную для построения Группировки, то она будет означать следующее: пройти по документам "Счет" и выбрать значе­ния клиентов и фирм, встречающихся в них (и, например, упорядочить эти элементы по наименованию). Как интерпретировать результаты полу­ченной выборки при таком запросе — будет зависеть от контекста постав­ленной задачи.

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

Операция.(

   <Реквизиты0перации>

   |  <ПредРеквОпераций>

   |  <РеквизитыПроводок>

   |  <ПредРеквПроводок>

   |  Дебет.(

         Счет

         | <Субконто>

      )

   |  Кредит.(

         Счет

         | <Су6конто>

      )

   |  Субконто.

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

   |  КорСубконто.

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

)

<РеквизитыОперации>

Реквизиты операции объявленные в ме­таданных.

<ПредРеквОпераций>

Предопределенные реквизиты Операций.

<РеквизитыПроводок>

Реквизиты проводок, объявленные в ме­таданных.

<ПредРеквПроводок>

Предопределенные реквизиты Проводок.

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

Идентификатор вида субконто.




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

Применение слов "Субконто" и "КорСубконто" в описании переменных позволяют оперировать как субконто, так и корреспондирующим субконто.

*

Сум = Операция.Сумма;

Сч = Операция.Дебет.Счет, Операция.Кредит.Счет;

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

Несколько слов о дополнительных именах доступа к стандартной информа­ции, которые определены в языке запросов. Речь идет о конструкции ТекущийЭлемент для справочников и ТекущийДокумент для документов и регистров (не надо путать эти конструкции языка запросов с одноименными методами встроенного языка, хотя их смысл во многом совпадает).

Для справочников использование конструкции ТекущийЭлемент в описа­нии внутренней переменной означает выборку элемента справочника как тако­вого (целиком всей записи справочника).

Аналогично при работе с документами, использование конструкции ТекущийДокумент в описании внутренней переменной, означает выборку до­кумента как такового (целиком всего документа как объекта конфигурации). Сравните два примера:

Пример 1.

* Здесь нас интересуют товары, встречающиеся в документах.

ТОВАР = Документ.РасходнаяБН.Товар,

   Документ.РасходнаяКредит.Товар,

   Документ.РасходнаяНал.Товар,

   Документ.РасходнаяРеализ.Товар,

   Документ.Счет.Товар;

Пример 2.

* Здесь нас интересуют сами документы указанных видов как таковые.

ДОКУМ = Документ.РасходнаяБН.ТекущийДокумент,

   Документ.РасходнаяКредит.ТекущийДокумент,

   Документ.РасходнаяНал.ТекущийДокумент,



   Документ.РасходнаяРеализ.ТекущийДокумент,

   Документ.Счет.ТекущийДокумект;

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

СТРОКА = Документ.РасходнаяБН.НомерСтроки;

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

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

Пример:

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

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

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

|Период с НачДата по КонДата;

|ВидТоплива = Регистр.ПокупателиКолво.ВидыТоплива;

|Покуп = Регистр.ПокупателиКопво.Покупатели;

|Док = Регистр.ПокупателиКолво.ТекущийДокумент;

|Ном = Регистр.ПокупателиКолво.НомерСтроки;

|Вес = Регистр.ПокупателиКолво.Кг;

|Группировка ВидТоплива; // по измерению Регистра

|Группировка Док; //по документам, двигавшим Регистр

|Группировка Ном; // по номерам строк документов

|Функция ВсегоКолво = КонОст(Вес);

|Функция ПриходКолво = Приход(Вес);

|Условие(Покуп = Покупат);

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

;

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

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

   Возврат;

КонецЕсли;

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


Область


Возращает Область выходной таблицы.

Синтаксис 1:

Область(<Адрес>)

Синтаксис 2:

Область(<R1>, <С1>, <R2>, <С2>)

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

Area

Параметры:

<Адрес>

Необязательный параметр. Строковое выражение, задающее имя области или адрес в формате «R1C1:R2C2».

<R1>

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

<С1>

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

<R2>

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

<С2>

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

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

Значение типа «ОбластьТаблицы».

Описание:

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

Пример:

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

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

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



Область


Возращает Область секции.

Синтаксис 1:

Область(<Адрес>)

Синтаксис 2:

Область(<R1>, <С1>, <R2>, <С2 >)

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

Area

Параметры:

<Адрес>

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

<Rl>

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

<С1>

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

<R2>

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

<С2>

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

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

Значение типа «ОбластьТаблицы».

Описание:

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

Пример:

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

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

Секция = Таб.ПолучитьСекцию("ЗаголовокОтчета");

ВыбОбласть = Секция.Область("Заглавие");

ВыбОбласть.Текст = "Товарный отчет";

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



Область использования переменной


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

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

В разделе определения переменных модуля. Это переменные модуля.

В процедуре или функции. Это локальные переменные.

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

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

Локальные переменные доступны в пределах той процедуры или функции, в которой они объявлены.

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

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