НазначитьТип
Назначить тип для реквизита неопределенного вида.
Синтаксис:
НазначитьТип(<ИмяРеквизита>, <ИмяТипа>, <Длина>, <Точность>)
Англоязычный синоним:
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");
Секция = Таб.ПолучитьСекцию("ЗаголовокОтчета");
ВыбОбласть = Секция.Область("Заглавие");
ВыбОбласть.Текст = "Товарный отчет";
Таб.ВывестиСекцию(Секция);
Область использования переменной
Область использования переменных зависит от места их определения в конфигурации задачи. Существует три области, в которых можно объявить переменные:
В разделе определения переменных глобального программного модуля. Если переменные определены с ключевым словом Экспорт (см. оператор Перем), то это будут глобальные переменные.
В разделе определения переменных модуля. Это переменные модуля.
В процедуре или функции. Это локальные переменные.
Глобальные переменные доступны для использования в исполняемых операторах, выражениях, в любой процедуре и функции любого программного модуля конфигурации задачи.
Переменные модуля доступны для использования в исполняемых операторах, выражениях, в любой процедуре и функции того программного модуля, в пределах которого они объявлены.
Локальные переменные доступны в пределах той процедуры или функции, в которой они объявлены.
Если переменная определена как глобальная переменная, то она видна из всех процедур и функций любого программного модуля конфигурации задачи. Если же переменная определена внутри процедуры, то её областью видимости является данная процедура или функция. Таким образом, если две переменные с одинаковыми именами используются в двух различных процедурах модуля, и имя этой переменной не упоминается как глобальная переменная, то это две различные переменные, локальные для процедур. Если же переменная определена как глобальная переменная, то любое использование имени этой переменной будет приводить к обращению к одной и той же переменной.
Единственный способ создать для процедуры локальную переменную с именем, совпадающим с именем переменной, определенной как глобальная переменная — это объявить ее явно при помощи оператора Перем.