ЗакладкиОтбора
Установить в форме журнала расчетов закладки для интерактивного осуществления отбора.
Синтаксис:
ЗакладкиОтбора(<ИмяОтбора>, <ЗначениеОтбора>)
Англоязычный синоним:
TabCtrlSelection
Параметры:
<ИмяОтбора> |
Строковое выражение, содержащее имя графы отбора, по которой будут созданы закладки. |
<ЗначениеОтбора> |
Значение отбора, соответствующее закладке устанавливаемой первоначально. |
Возвращаемое значение:
Число: 1 — если операция успешно выполнена; 0 — в противном случае.
Описание:
Метод ЗакладкиОтбора устанавливает в форме журнала расчетов закладки (tab control), позволяющие быстро переключаться между разными значениями по одному и тому же отбору.
Данный метод доступен только в контексте Модуля формы журнала расчетов (см. «Виды программных модулей»).
Пример:
// в форме журнала расчетов "зарплата" установим закладки
// по умолчанию будет использована закладка, соответств.
// текущему расчетчику
ЗакладкиОтбора("Родитель", Расчетчик);
См. также: УстановитьОтбор, ПолучитьОтбор
Закрыть
Закрыть форму.
Синтаксис:
Закрыть(<ЗапрСохр>)
Англоязычный синоним:
Close
Параметры:
<ЗапрСохр> |
Необязательный параметр. Число: 0 — закрыть форму без вопросов; 1 — если документ, счет, элемент справочника изменен, то будет запрос о сохранении изменений. Значение по умолчанию — 1. |
Описание:
Метод Закрыть закрывает форму. Доступ к данному методу возможен только в контексте Модуля формы.
Замечание. Действие данного метода не прерывает выполнения текущей процедуры программы, т. е. процедура доработает до конца. Данный метод лишь устанавливает признак, который отрабатывает после окончания выполнения процедуры.
Пример:
Форма.Закрыть();
ЗакрытьФайл
Закрыть базу.
Синтаксис:
ЗакрытьФайл()
Англоязычный синоним:
CloseFile
Описание:
Метод ЗакрытьФайл закрывает ранее открытую или созданную базу данных формата DBF.
Пример:
Процедура ЗакрДБ()
Если ДБФ.Открыта() = 1 Тогда
ДБФ.ЗакрытьФайл();
КонецЕсли;
КонецПроцедуры
ЗаменитьСтроку
Заменить строку с указанным номером.
Синтаксис:
ЗаменитьСтроку(<НомерСтроки>, <Строка>)
Англоязычный синоним:
ReplaceLine
Параметры:
<НомерСтроки> |
Числовое выражение — номер замещаемой строки. |
<Строка> |
Строковое выражение. |
Описание:
Метод ЗаменитьСтроку замещает строку текста с номером <НомерСтроки> на строку <Строка>.
Пример:
ТекстДок = СоздатьОбъект("Текст");
ТекстДок.Открыть("catalog.txt");
ТекстДок.ЗаменитьСтроку(52, "Работы ..., 3056 ..75 000 руб.");
ТекстДок.ТолькоПросмотр(1).
Запись изменений в базу данных
Каждый объект представляет собой структуру данных, расположенных в памяти компьютера и изменение содержимого его атрибутов не вызывает немедленного изменения в файлах базы данных. При включенном режиме автосохранения запись содержимого объекта в файлы БД происходит при изменении позиционирования (переход с следующей записи, поиск по ключу и т. д.), при выключенном режиме автосохранения запись изменений происходит только при вызове соответствующего метода объекта.
Записать
Записать (обновить) элемент справочника.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Описание:
Метод Записать выполняет запись (обновление) элемента справочника.
Замечание. Если этот метод применяется в Модуле формы элемента справочника непосредственно к элементу справочника локального контекста, то данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой "#Записать".
Пример:
Процедура ВводСотрудника()
Спр = СоздатьОбъект("Справочник.Сотрудники");
// добавляем новый элемент справочника
Спр.Новый();
// Определяем реквизиты нового элемента справочника
Спр.Наименование = ФИО;
Спр.Код = ТН;
Спр.Оклад = Оклад;
Спр.Аванс = Аванс;
// ...
// Записываем новый элемент справочника
Спр.Записать();
КонецПроцедуры
Записать
Записать документ.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Описание:
Метод Записать выполняет запись в базу данных текущего нового или измененного документа.
Замечание. Если этот метод применяется в Модуле формы документа непосредственно к документу локального контекста, то данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой "#Записать".
Пример:
Док.СоздатьОбъект("Документ.Заказ");
Док.АвтоВремяТекущее();
Док.Новый();
Док.УстановитьНовыйНомер("Прг-");
Док.Клиент = Константа.ОсновнойКлиент;
Док.Количество = 5;
Док.Записать();
Док.Провести(1, "Программно");
Записать
Записывает изменения счета.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Описание:
Метод Записать выполняет запись (обновление) счета. Все изменения сделанные в существующем счете, или созданном счете будут занесены в информационную базу только после вызова метода Записать.
Замечание. Если этот метод применяется в Модуле формы счета непосредственно к счету локального контекста, то данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой "#Записать".
Пример:
Сч = СоздатьОбъект("Счет.Основной");
Сч.НайтиПоКоду("76.02");
Сч.Наименование = "Прочие взаиморасчеты";
Сч.Записать();
Записать
Записать измененную или новую операцию.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Описание:
Метод Записать выполняет запись новой или измененной операции.
Он может быть использован в следующих ситуациях:
метод Записать может быть вызван для записи новой или измененной ручной операции (принадлежащей документу специального вида «Операция»). Такие операции могут создаваться и редактироваться пользователем вручную или из встроенного языка объектом «Операция», созданным функцией СоздатьОбъект.
метод Записать может быть вызван для записи операции созданной при проведении документа в предопределенной процедуре ОбработкаПроведения. Данный метод должен быть вызван после заполнения операции содержанием реквизитов и проводками.
этот метод может применяться в Модуле формы операции непосредственно к операции локального контекста, в этом случае данный метод отрабатывает те же действия, как интерактивное нажатие пользователем кнопки с формулой "#3аписать".
Замечание. При записи сложной проводки, если у главной корреспонденции сложной проводки не указана сумма (равна 0), то она автоматически вычисляется на основании подчиненных корреспонденции.
Пример:
* Создание и запись новой операции созданной в модуле отчета или обработки.
Опер = СоздатьОбъект("Операция");
Опер.Новая();
Опер.Дата = РабочаяДата();
Опер.Содержание = "Деньги по чеку";
Опер.НоваяПроводка();
Опер.Дебет.Счет = СчетПоКоду("50");
Опер.Кредит.Счет = СчетПоКоду("51");
Опер.Сумма = 1000000;
Опер.Записать();
* Запись операции в модуле документа в процессе проведения
Процедура ОбработкаПроведения()
Операция.Содержание = "Выдача денег из кассы";
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("71");
Операция.Дебет.Сотрудники = Сотрудник;
Операция.Кредит.Счет = СчетПоКоду("50");
Операция.Сумма = СуммаВыдачи;
Операция.Записать();
КонецПроцедуры
Записать
Записать измененную или новую корректную проводку.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Возвращаемое значение:
Число: 1 — корректная проводка успешно записана; 0 — не записана.
Описание:
Метод Записать записывает измененную или новую корректную проводку.
Пример:
КП = СоздатьОбъект("КорректныеПроводки");
КП.Новая();
КП.Комментарий ="НДС с комисс. вознаграждения";
КП.СчетДт = "46.28";
КП.СчетКт = "68.2";
Кп.Записать();
Записать
Вносит изменения записи в журнал расчетов.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Описание:
Метод Записать вносит изменения записи или новую запись в журнал расчетов. Данный метод применяется после метода Новая и заполнения реквизитов журнала расчетов при помощи метода УстановитьРеквизит.
Данный метод проверяет корректность заполненных реквизитов журнала расчетов. При вводе новых записей журнала расчетов методами Новая и Записать обязательно должны быть заполнены следующие реквизиты записи журнала: Объект, Документ, ВидРасч. Кроме того, проверяется корректность реквизитов ДатаНачала и ДатаОкончания. Если реквизиты ДатаНачала и ДатаОкончания не установленвы явным образом, при записи они устанавливаются как начало и окончание текущего расчетного прериода, соответственно. Реквизит ПериодРегистрации заполняется текущим значением расчетного периода, установленным для журнала расчетов (см. метод УстановитьПериодРасчета). Если реквизит РодительскийДокумент не установлен явным образом, для него устанавливается то же значение, что и для реквизита Документ. Если реквизиты Рассчитана, Сторно, Перерасчет, Фиксирована не установлены, то запись вводится как простая нерассчитанная, нефиксированная запись.
Внимание! При вводе новых записей в журнал расчетов методами Новая и Записать записи вводятся «как есть». Система не выполняет правила перерасчетов, а также правила взаимного вытеснения видов расчета. Ввод произвольных записей журнала расчетов очень ответственная операция. При использовании этих методов следует внимательно следить за логической целостностью журнала расчетов.
Пример:
Перем Док;
Перем Сотр;
Перем Рез;
// документы
Док = СоздатьОбъект("Документ");
// ...позиционируется нужный документ
// сотрудники
Сотр = СоздатьОбъект("Справочник.Сотрудники");
// ...позиционируется нужный элемент справочника сотрудники
// считаем результат...
Рез =
ЖР = СоздатьОбъект("ЖурналРасчетов.Зарплата");
ЖР.Новая();
ЖР.УстановитьПериод(ЖР.ПолучитьпериордПоДате(ТекДата));
ЖР.УстановитьРеквизит("Документ", Док.ТекущийДокумент());
ЖР.УстановитьРеквизит("Объект", Сотр.ТекущийЭлемент());
ЖР.УстановитьРеквизит("ВидРасч", Вид Расчета.ПоОкладу);
ЖР.УстановитьРеквизит("Рассчитана", 1);
ЖР.УстановитьРеквизит("Результат", Рез);
ЖР.Записать();
Записать
Записать (обновить) периодическое значение.
Синтаксис:
Записать()
Англоязычный синоним:
Write
Возвращаемое значение:
Число: 1 — если вызов метода закончился успешно, 0 — если нет.
Описание:
Метод Записать выполняет запись периодического значения на заданную дату. Если на заданную дату уже существует запись, то она модифицируется. До вызова данного метода следует само значение записать в атрибут Значение. Дату этого значения следует записать в атрибут ДатаЗнач.
Пример:
Процедура ЗаписьКурсаДоллара(Курс)
Вал = СоздатьОбъект("Справочник.Валюты");
// Позиционируем созданный объект Вал по известному коду
Вал.НайтиПоКоду(1);
Если Вал.Выбран() = 1 Тогда
Доллар = Вал.ТекущийЭлемент();
Иначе
Предупреждение("Не найдена валюта!");
Возврат;
КонецЕсли;
ПерВал = СоздатьОбъект("Периодический");
ПерВал.ИспользоватьОбъект("Текущ_курс".Доллар);
ПерВал.Значение = Курс;
ПерВал.ДатаЗнач = РабочаяДата();
ПерВал.Записать();
КонецПроцедуры
Записать
Записать таблицу в файл.
Синтаксис:
Записать(<ИмяФайла>, <ТипФайла>)
Англоязычный синоним:
Write
Параметры:
<ИмяФaйлa> |
Строковое выражение с именем файла. |
<ТипФайла> |
Необязательный параметр. Числовое или строковое выражение, определяющее тип файла. отсутствует, 0 или "MXL" — формат 1С; 1 или "XLS" — формат MS Excel 2 или "НТМ" или "HTML" — формат HTML; 3 или "ТХТ" — формат ТХТ. |
Описание:
Метод Записать записывает таблицу в файл с именем <ИмяФайла>.
Пример:
Таб = СоздатьОбъект("Таблица");
Таб.Открыть("tabl_l.mxl");
Таб.Записать("tabl_2.mxl");
Таб.Записать("tabl_2", "XLS");
Записать
Записать текст в файл с указанным именем.
Синтаксис:
Записать(<ИмяФайла>)
Англоязычный синоним:
Write
Параметры:
<ИмяФайла> |
Строковое выражение — имя файла. |
Описание:
Метод Записать записывает текст в файл с именем <ИмяФайла>.
Пример:
ТекстДок = СоздатьОбъект("Текст");
ТекстДок.Открыть("catalog.txt");
ТекстДок.Записать("price.txt");
Записать
Записать изменения в базу.
Синтаксис:
Записать()
Англоязычный синоним:
Save
Описание:
Метод Записать выполняет запись изменений в базу данных. До его вызова все изменения объекта производились только в памяти и будут потеряны при осуществлении перехода к другой записи или закрытии базы данных, если отключен режим автосохранения (см. Автосохранение).
Пример:
См. пример метода Автосохранение
ЗаписатьПроводки
Записать в информационную базу уже добавленные и заполненные проводки операции.
Синтаксис:
ЗаписатьПроводки()
Англоязычный синоним:
WriteEntries
Описание:
Метод ЗаписатьПроводки выполняет запись в информационную базу уже добавленных и заполненных проводок операции. Метод может использоваться только для атрибута «Операция» документа в момент проведения (в процедуре ОбработкаПроведения). При этом происходит обновление бухгалтерских итогов. Это позволяет при проведении документа обращаться к бухгалтерским итогам уже измененным проводками, записанными этим документом. После выполнения метода ЗаписатьПроводки и до окончания процедуры ОбработкаПроведение уже невозможно изменять или удалять проводки, добавленные до вызова этого метода.
Данный метод имеет смысл использовать, только в том случае, если существует необходимость обращения к итогам, измененным проводками записываемой операции.
Замечание. При записи сложной проводки, если у главной корреспонденции сложной проводки не указана сумма (равна 0), то она автоматически вычисляется на основании подчиненных корреспонденции.
Пример:
Процедура СписаниеСчетаНаСч20(Счт)
// создаем и формируем проводки
КонецПроцедуры
Процедура СписаниеСчета20На40()
// создаем и формируем проводки
КонецПроцедуры
Процедура ОбработкаПроведения()
Сч20 = СчетПоКоду("20");
Cч40 = CчeтПoKoдy("40");
СписаниеСчетаНаСч20(СчетПоКоду("25"));
СписаниеСчетаНаСч20(СчетПоКоду("26"));
Операция.ЗаписатьПроводки();
СписаниеСчета20На40();
Операция.Содержание = "Закрытие фин. результатов за " +
Формат(ДатаДок, "Д ММММГГГГ");
Операция.Записать();
КонецПроцедуры
ЗаписатьРасчет
Записать расчет в журнал расчетов.
Синтаксис:
ЗаписатьРасчет (<Объект>, <ВидРасчета>, <ДатаНачала>, <ДатаОкончания>,
<Результат>)
Англоязычный синоним:
EnterCalculation
Параметры:
<Объект> |
Объект расчета — элемент справочника, заданного при конфигурировании журнала расчетов. |
<ВидРасчета> |
Вид вводимого расчета — ссылка на агрегатный объект «Вид Расчета». |
<ДатаНачала> |
Необязательный параметр. Дата начала действия вводимого расчета. По умолчанию — дата начала текущего периода журнала расчетов. |
<датаОкончания> |
Необязательный параметр. Дата окончания действия вводимого расчета. По умолчанию — дата окончания текущего периода журнала расчетов. |
<Результат> |
Необязательный параметр. Результат расчета. По умолчанию — ноль. |
Возвращаемое значение:
Число: 1 — если операция успешно выполнена; 0 — в противном случае.
Описание:
Метод предназначен для ввода строк в журнал расчетов так же, как и метод ВвестиРасчет. Отличие заключается в том, что ввод вытесняющих расчетов приводит к вытеснению только тех расчетов, которые имеют меньший приоритет, а не меньший либо равный, как в случае с методом ВвестиРасчет. Это приводит, в частности, к тому, что за счет применения этого метода расчет не вытесняет «сам себя».
При записи невытесняющего расчета ввод новых записей также происходит «осмотрительно» — новые записи вводятся только в том случае, если в журнале расчетов нет точно такой же записи. Под точно такой же записью здесь подразумевается запись с таким же видом расчета, для того же объекта и с тем же периодом действия.
Важно! Метод ЗаписатьРасчет можно применять только для тех объектов, которые созданы функцией СоздатьОбъект. Это значит, например, что его нельзя использовать непосредственно (без точки) в форме журнала расчетов или в модуле видов расчета.
Пример:
См. предыдущий пример.
См. также: ВвестиРасчет, ЗаписатьРасчетНаОсновании
ЗаписатьРасчетНаОсновании
Ввести запись в журнал расчетов на основании произвольного документа.
Синтаксис:
ЗаписатьРасчетНаОсновании(<Основание>, <Объект>, <ВидРасчета>, <ДатаНачала>,
<ДатаОконч>, <Результат>)
Англоязычный синоним:
EnterCalculationByReason
Параметры:
<Основание> |
Документ, на основании которого вводится запись (или записи) в журнал расчетов. |
<Объект> |
Объект расчета — элемент справочника, заданного при конфигурировании журнала расчетов. |
<ВидРасчета> |
Вид вводимого расчета — ссылка на агрегатный объект «Вид Расчета». |
<ДатаНачала> |
Необязательный параметр. Дата начала действия вводимого расчета. По умолчанию — дата начала текущего периода журнала расчетов. |
<ДатаОконч> |
Необязательный параметр. Дата окончания действия вводимого расчета. По умолчанию — дата окончания текущего периода журнала расчетов. |
<Результат> |
Необязательный параметр. Результат расчета. По умолчанию — ноль. |
Возвращаемое значение:
Число: 1 — если операция успешно выполнена; 0 — в противном случае.
Описание:
Метод предназначен для ввода строк в журнал расчетов. Работает так же, как и метод ЗаписатьРасчет, но при этом реквизит Документ вводимых строк журнала расчетов заполняется значением параметра <Основание>. Использование метода ЗаписатьРасчетНаОсновании — один из способов непосредственно установить родительские отношения между любым документом и вводимыми записями журнала расчетов.
Данный метод отличается от метода ВвестиРасчетНаОсновании тем, что ввод вытесняющих расчетов приводит к вытеснению только тех расчетов, которые имеют меньший приоритет, а не меньший либо равный, как в случае с методом ВвестиРасчетНаОсновании. Это приводит, в частности, к тому, что за счет применения этого метода расчет не вытесняет «сам себя».
При записи невытесняющего расчета ввод новых записей также происходит «осмотрительно» — новые записи вводятся только в том случае, если в журнале расчетов нет точно такой же записи. Под точно такой же записью здесь подразумевается запись с таким же видом расчета, для того же объекта и с тем же периодом действия.
Важно! Метод ЗаписатьРасчетНаОсновании можно применять только для тех объектов, которые созданы функцией СоздатьОбъект. Это значит, например, что его нельзя использовать непосредственно (без точки) в форме журнала расчетов или в модуле видов расчета.
Пример:
Процедура Перерасчет(Группа, Сотрудник, Основание, Начало, Окончание) Экспорт
// перерасчет по журналу зарплата
ЖР = СоздатьОбъект{"ЖурналРасчетов.Зарплата");
ЖР.ВыбратьЗаписиПоОбъекту(Сотрудник, ЖР.НачалоПериодаПоДате(Начало),
Мин(Окончание, ЖР.НачалоТекущегоПериода() - 1));
Сч = 1;
Пока (Сч < 50...) Цикл
Если (Расчеты[Сч].ВходитВГруппу(ВсеУд)=1) Тогда
ЖР.ЗаписатьРасчетНаОсновании(Основание, Сотрудник, Расчеты[Сч],
Начала[Сч], Окончания[Сч], 0);
Иначе
ЖР.ВвестиРасчетНаОсновании(Основания[Сч], Сотрудник, Расчеты[Сч],
Начала[Сч], Окончания[Сч], 0);
КонецЕсли;
Сч = Сч + 1;
КонецЦикла;
КонецПроцедуры
См. также: ВвестиРасчетНаОсновании
ЗаписьУдалена
Возвращает значение флага удаления текущей записи.
Синтаксис:
ЗаписьУдалена()
Англоязычный синоним:
RecDeleted
Возвращаемое значение:
Число: 1 — запись удалена; 0 — запись не удалена.
Описание:
Метод ЗаписьУдалена возвращает значение флага удаления текущей записи.
Пример:
Процедура Восст3ап()
ТекРежим = ДБФ.ПоказыватьУдаленные(1);
ДБФ.Первая(};
Пока 1 = 1 Цикл
Если ДБФ.ЗаписьУдалена() = 1 Тогда
ДБФ.Восстановить();
ДБФ.Записать();
КонецЕсли;
Если ДБФ.Следующая() = 0 Тогда
ДБФ.ПоказыватьУдаленные(ТекРежим);
Возврат;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
ЗаписьЖурналаРегистрации
Выводит строку текста в системный журнал регистрации.
Синтаксис:
ЗаписьЖурналаРегистрации(<Коммент>, <ТипСобытия>, <Событие>, <Объект>,
<Категория>)
Англоязычный синоним:
LogMessageWrite
Параметры:
<Коммент> |
Строковое выражение, комментарий к событию. Если этот параметр — единственный переданный при вызове метода, то тогда в журнал записывается стандартное дополнительное событие с указанным комментарием. |
<ТипСобытия> |
Необязательный параметр. Строковое выражение -тип события. По умолчанию или при пустой строке «Дополнительные события». |
<Событие> |
Необязательный параметр. Строковое выражение -событие. По умолчанию «Дополнительное событие». |
<Объект> |
Необязательный параметр. Объект события, по умолчанию отсутствует. Для переданных в функцию объектов типа Документ/ Справочник/ Счет представление объекта будет записано автоматически (это не зависит от типа события и самого события). |
<Категория> |
Необязательный параметр. Число — категория события: 1 — администрирование; 2 — изменение данных; 3 — информация; 4 — предупреждение; 5 — ошибка. Значение по умолчанию 3. |
Описание:
Процедура ЗаписьЖурналаРегистрации позволяет эмулировать запись в системный журнал регистрации информации о возникновении важных системных событий.
Системой зарезервированы следующие типы событий/события:
Документ / Открыт |
Справочник/СнятаПометакаНаУдаление |
Документ / Новый |
|
Документ / Удален |
Константа / ЗначениеЗаписано |
Документ / Записан |
Константа / ЗначениеУдалено |
Документ / НаЗаписан |
|
Документ / Проведен |
ЖурналРасчетов / ИзмененРасчетныйПериод |
Документ / ПроведенЗаднимЧислом |
ЖурналРасчетов / ОткатНазадРасчетногоПериода |
Документ / НеПроведен |
ЖурналРасчетов / НеудачнаяПопыткаИзмененияПериода |
Документ / СделанНеПроведенным |
ЖурналРасчетов / ОтменаРучногоРедактированияРезультата |
Документ / ЗаписанИПроведенЗаднимЧислом |
ЖурналРасчетов / ИзмененРезультат |
Документ / ЗаписанИПроведен |
|
Документ / ПомеченНаУдаление |
Счет / ЗаписанНовый |
Документ / СнятаПометакаНаУдаление |
Счет / Записан |
Документ / ИзмененаОперацияДокумента |
Счет / ЗначениеРеквизитаЗаписано |
Документ / ПроводкиВключены |
Счет / ЗмачениеРеквизитаУдалено |
Документ / ПроводкиВыключены |
Счет / Удален |
Документ / ИзмененоВремя |
Счет / ПомеченНаУдаление |
Справочник / ЗаписанНовый |
Счет / СнятаПометакаНаУдаление |
Справочник / Записан |
|
Справочник / Удален |
КорректнаяПроводка / ЗаписанаНовая |
Справочник / ЗначениеРеквизитаЗаписано |
КорректнаяПроводка / Записана |
Справочник / ЗначениеРеквизитаУдалено |
КорректнаяПроводка / Удалена |
Справочник / ПеренесенВДругуюГруппу |
|
Справочник / ПомеченНаУдаление |
ОбщиеСобытия / ИзменениеТА |
Незарезервированные имена позволяют пользователю фактически указывать свои собственные типы событий и события. Это значит, что если в параметре <ТипСобытия> записать "Отчет" а в параметре <Событие> "Сформирован", то при просмотре журнала регистрации можно будет фильтровать по событию «Сформирован» типа событий «Отчет».
Пример:
ЗаписьЖурналаРегистрации("Доброе утро!")
Заполнить
Заполнить значения конкретных колонок в строках таблицы значений переданным значением.
Синтаксис:
Заполнить(<Знач>, <НачСтрока>, <КонСтрока>, <Колонки>)
Англоязычный синоним:
Fill
Параметры:
<Знач> |
Одиночное значение или список значений или таблица значений. |
<НачСтрока> |
Необязательный параметр. Номер начальной строки, с которой надо начинать заполнение. Значение по умолчанию 1. |
<КонСтрока> |
Необязательный параметр. Номер последней строки, по которую надо заполнять, если не указана то до последней. |
<Колонки> |
Необязательный параметр. Номера или идентификаторы колонок, которые надо заполнять. Если параметр не задан, то заполняются все колонки. |
Описание:
Метод Заполнить позволяет заполнить значения конкретных колонок в строках таблицы значений переданным значением.
Пример:
Табл.Заполнить(ВыбЗнач, 2, 5, "5, 6, 7");
ЗапуститьПриложение
Выполняет запуск внешнего приложения.
Синтаксис:
ЗапуститьПриложение(<СтрокаКоманды>)
Англоязычный синоним:
RunApp
Параметры:
<СтрокаКоманды> |
Строковое выражение, содержащее строку команды запуска внешнего приложения или имя файла, чтобы открыть его с помощью ассоциированного для данного вида файлов приложения. |
Описание:
Процедура ЗапуститьПриложение вызывает запуск внешнего приложения. В отличие от функции КомандаСистемы запуск приложения выполняется непосредственно, минуя командный интерпретатор. При выполнении команды исполняемый файл загружается как «верхняя», активная программа.
Процедура, кроме того, может открыть файл с помощью ассоциированного для данного вида файлов приложения. (При условии, что таковое установлено на данном компьютере).
Если загружается Windows-приложение, то управление немедленно возвращается в систему 1С:Предприятие на следующий за оператором ЗапуститьПриложение оператор и система продолжает выполняться как фоновая прикладная программа. Пользователь может возвратиться в запускающую программу или закончив выполнение запущенной, или переключившись обратно посредством списка задач Windows.
Если в параметре <СтрокаКоманды> не содержится путь к загружаемой программе в файловой системе к программе, то поиск происходит в следующей последовательности:
- текущий системный каталог;
- каталог Windows;
- системный каталог Windows;
- все каталоги, указанные в переменной PATH;
Пример:
* В данном примере запускается редактор текста notepad.exe и в него загружается файл textl. txt.
ЗапуститьПриложение("notepad textl.txt");
Зарезервированные слова
Приведенные далее ключевые слова являются зарезервированными и не могут использоваться в качестве создаваемых имен переменных и объявляемых процедур и функций. В данном варианте языка каждое из ключевых слов имеет два представления — русское и английское. Английское представление является традиционным для языков программирования. Ключевые слова в русском и английском представлении могут свободно смешиваться в одном исходном тексте. Регистр букв ключевых слов не имеет значения. Ниже приведен список ключевых слов в обоих вариантах представления.
Если |
If |
He |
Not |
Дата |
Date |
Тогда |
Then |
Знач |
Val |
Формат |
Format |
ИначеЕсли |
Elsif |
СтрДлина |
StrLen |
Разм |
Dim |
Иначе |
Else |
СокрЛ |
TrimL |
Вопрос |
Do Query Box |
КонецЕсли |
Endlf |
СокрП |
TrimR |
Контекст |
Context |
Цикл |
Do |
Лев |
Left |
Перем |
Var |
Для |
For |
Прав |
Right |
Перейти |
Goto |
По |
To |
Сред |
Mid |
Возврат |
Return |
Пока |
While |
Цел |
Int |
Продолжить |
Continue |
Функция |
Function |
Окр |
Round |
Прервать |
Break |
КонецПроцедуры |
EndProcedure |
Число |
Number |
И |
And |
КонецФункции |
EndFunction |
Строка |
String |
Или |
Or |
Предупреждение |
DoMessageBox |
КонецЦикла |
EndDo |
Процедура |
Procedure |
Зарезервированные слова языка запросов
Ключевые слова — это слова, которые используются языком запросов для обозначения встроенных операторов.
Приведенные далее ключевые слова являются зарезервированными и не могут использоваться в качестве имен внутренних переменных описания запросов. Каждое ключевое слово имеет как минимум два представления — русское и английское. Английское представление является традиционным для языков программирования. Ключевые слова в русском и английском представлении могут свободно смешиваться в одном исходном тексте. Регистр букв ключевых слов не имеет значения. Ниже приведен полный список зарезервированных слов языка запросов в обоих представлениях.
Русский яз. |
Английский яз. |
Без |
Without |
Год |
Year |
Групп |
Groups |
Группировка |
Group |
День |
Day |
Документ |
Document |
И |
And |
Или |
Or |
Квартал |
Quarter |
Когда |
When |
Месяц |
Month |
Неделя |
Week |
НомерСтроки |
LineNum |
Обрабатывать |
Process |
ОбрабатыватьДокументы |
ProcessDocuments |
ОбрабатыватьОперации |
PrосessOperations |
Период |
Period |
ПериодЖурнала |
Journal Period |
По |
By |
По |
Till |
С |
From |
СтрокаДокумента |
Document Line |
Упорядочить |
Order |
Условие |
Condition |
Функция |
Function |
Все ключевые слова могут быть набраны в любом регистре (верхний и нижний), например: Функция, ФУНКЦИЯ, фУНКЦИЯ .
Защита
Защитить таблицу от изменений.
Синтаксис:
Защита(<Флаг>)
Англоязычный синоним:
Protection
Параметры:
<Флаг> |
Необязательный параметр. Числовое выражение — флаг защиты: 1 — установить защиту; 0 — снять защиту. Значение по умолчанию — 1. |
Возвращаемое значение:
Текущее значение флага защиты таблицы (на момент до исполнения метода).
Описание:
Метод Защита предназначен для установки режима полной защиты таблицы от редактирования и копирования (в том числе через буфер обмена). Если не использовать метод Защита, то таблица выводится в незащищенном режиме.
Пример:
Таб.3ащита(1);
ЗавершитьРаботуСистемы
Выполняет запуск внешнего приложения.
Синтаксис:
ЗавершитьРаботуСистемы(<ФлагСохранения>)
Англоязычный синоним:
ExitSystem
Параметры:
<ФлагСохранения> |
Необязательный параметр. Флаг запроса сохранения открытых объектов. Если 0, то не запрашивается сохранение не записанных документов, элементов справочников и т. п. Если 1, то сохранение запрашивается. Значение по умолчанию 1. |
Описание:
Процедура ЗавершитьРаботуСистемы вызывает завершение работы системы.
Пример:
ЗавершитьРаботуСистемы(0);
Значение
Значение текущей строки календаря/праздника
Синтаксис:
Значение
Англоязычный синоним:
Value
Описание:
Атрибут Значение (доступно чтание и запись) содержит значение текущей (на которой позиционирована выборка) строки календаря/праздника — число с двумя знаками после запятой.
Значение
Значение периодического реквизита справочника или константы.
Синтаксис:
Значение
Англоязычный синоним:
Value
Описание:
Атрибут Значение предоставляет доступ к значению выбранного периодического реквизита справочника или константы.
Пример:
Вал = СоздатьОбъект("Справочник.Валюты");
// Позиционируем созданный объект Вал по известному коду
Вал.НайтиПоКоду(1);
Если Вал.Выбран() = 1 Тогда
Доллар = Вал.ТекущийЭлемент();
Иначе
Предупреждение("Не найдена валюта!");
Возврат;
КонецЕсли;
ПерВал = СоздатьОбъект("Периодический");
ПерВал.ИспользоватьОбъект("Текущ_курс".Доллар);
ПерВал.ОбратныйПорядок(1);
ПерВал.ВыбратьЗначения();
Пока ПерВал.ПолучитьЗначение() = 1 Цикл
Курс = ПерВал.Значение;
ДатаКурса = ПерВал.ДатаЗнач;
КонецЦикла;
Значение
Арибут, предоставляет доступ к значению, записанному в области.
Синтаксис:
Значение
Англоязычный синоним:
Value
Описание:
Атрибут Значение позволяет прочитать\установить значение, записанное в области (аналогично тому, как в конфигураторе интерактивно задают значение в свойствах ячейки талины «Свойства»- закладка «Данные»).
Пример:
ВыбОбласть = Таблица.Область("R1C1");
ВыбОбласть.Значение = '01.09.98';
ЗначениеИзФайла
Восстанавливает значение из файла.
Синтаксис:
ЗначениеИзФайла(<ИмяФайла>, <3начение>, <Формат>)
Англоязычный синоним:
ValueFromFile
Параметры:
<ИмяФайла> |
Строковое выраженние, задающее имя файла. |
<3начение> |
Необязательный параметр. Идентификатор переменной, куда система вернет значение, которое получено из файла. |
<Формат> |
Необязательный параметр. Число: 1 — сохранение во внутреннем формате; иначе во внешнем. Значение по умолчанию: 1. |
Возвращаемое значение:
Значение, которое получено из файла.
Описание:
Функция ЗначениеИзФайла восстанавливает значение из файла, которое упаковано туда при помощи функции ЗначениеВФайл.
Пример:
Док = ЗначениеИзФайла(ВыбИмяФайла);
См. также: ЗначениеВФайл
ЗначениеИзСтроки
Преобразование из строкового системного представления во внутреннее значение объекта.
Синтаксис:
ЗначениеИзСтроки(<СистСтрока>)
Англоязычный синоним:
ValueFromString
Параметры:
<СистСтрока> |
Строковое выражение, содержащее представление объекта, полученное ранее при помощи метода ЗначениеВСтроку. |
Возвращаемое значение:
Значение, которое получено из строкового системного представления.
Описание:
Применять функцию ЗначениеИзСтроки имеет смысл только в особых случаях. Например, если требуется несколько объектов упаковать в одну строку. При помощи функции ЗначениеВСтроку объекты можно преобразовать в строковые значения, которые затем можно объединить в единую строку операцией конкатенации. В дальнейшем эту строку можно будет разобрать на составляющие и сделать обратное преобразование при помощи функции ЗначениеИзСтроки.
Замечание: Строковое представление агрегатного типа данных имеет специальный системный формат, т. е. предназначено не для отображения, а просто для возможности выполнения строковых операций с объектами, например при экспорте-импорте информации между разными конфигурациями (например, при помощи OLE). При преобразовании агрегатных типов данных, данный системный формат использует идентификаторы объектов, как они даны в конфигураторе, а также значения кода (для элементов справочников) и номера (для документов), поэтому при передаче такого строкового представления в другую (похожую) конфигурацию функция ЗначениеИзСтроки сделает попытку восстановить значение объекта по его строковому описанию.
Пример:
Док = ЗначениеИзСтроки(СтрДок);
См. также: ЗначениеВСтроку
ЗначениеИзСтрокиВнутр
Преобразование значения объекта агрегатного типа из строкового системного представления во внутреннее.
Синтаксис:
ЗначениеИзСтрокиВнутр(<СистСтрока>)
Англоязычный синоним:
ValueFromStringInternal
Параметры:
<СистСтрока> |
Строковое выражение, представление объекта агрегатного типа данных в системном строковом виде. |
Возвращаемое значение:
Объект агрегатного типа данных, который получен из строкового системного представления.
Описание:
Применять функцию ЗначениеИзСтрокиВнутр имеет смысл только в особых случаях. Например, если требуется несколько объектов упаковать в одну строку. При помощи функции ЗначениеВСтрокуВнутр объекты можно преобразовать в строковые значения, которые затем можно объединить в единую строку операцией конкатенации. В дальнейшем эту строку можно будет разобрать на составляющие и сделать обратное преобразование при помощи функции ЗначениеИзСтрокиВнутр.
Замечание: Строковое представление агрегатного типа данных имеет специальный системный формат, т. к. предназначено не для отображения, а просто для возможности выполнения строковых операций с объектами (в рамках одной конфигурации), например при упаковке нескольких объектов в одну строку. Данный системный формат использует внутренний системный идентификатор данных, поэтому этот формат предназначен для работы в рамках единой информационной базы. При распаковке такого строкового представления функция ЗначениеИзСтрокиВнутр восстанавливает значение объекта по его системному идентификатору.
Замечание. При использовании метода ЗначениеИзСтрокиВнутр() для значения типа «СписокЗначений», являющимся реквизитом формы, его идентификатор следует передавать в качестве второго параметра. В этом случае метод следует использовать как процедуру, т. е. не использовать возвращаемое значение. Пример:
ВосстановитьЗначение("СистСтрокаМойСпис", ИдентМойСпис);
Пример: См. предыдущий пример
См. также: ЗначениеВСтрокуВнутр, ЗначениеТекущейЯчейки
ЗначениеНаДату
Получить актуальное значение на заданную дату.
Синтаксис:
ЗначениеНаДату(<Дата>)
Англоязычный синоним:
ValueOnDate
Параметры:
<Дата> |
Выражение, задающее значение даты, на которую требуется получить периодический реквизит справочника или периодическую константу. |
Возвращаемое значение:
Полученное актуальное значение на заданную дату.
Описание:
С помощью метода ЗначениеНаДату можно получить значение, актуальное на заданную дату. Причем текущая позиция выборки (см. ВыбратьЗначение) не сдвигается и не сбрасывается.
Пример:
К = ПерВал.ЗначениеНаДату(ДатаП);
ЗначениеПоИдентификатору
Определить значение перечисления, соответствующее идентификатору в конфигураторе.
Синтаксис:
ЗначениеПоИдентификатору(<Идентификатор>)
Англоязычный синоним:
ValueByIdentifier
Параметры:
<Идeнтификaтop> |
Строковое выражение. Идентификатор перечисления, заданный в конфигураторе. |
Возвращаемое значение:
Значение перечисления, соответствующее идентификатору в конфигураторе. Если не найдено — то пустое значение.
Описание:
Метод ЗначениеПоИдентификатору применяется к конкретному виду перечисления и позволяет определить значение перечисления, соответствующее идентификатору в конфигураторе.
Пример:
См. предыдущий пример.
ЗначениеПоИдентификатору
Определить план счетов, по идентификатору.
Синтаксис:
ЗначениеПоИдентификатору(<Идентификатор>)
Англоязычный синоним:
ValueByIdentifier
Параметры:
<Идентификатор> |
Строковое выражение. Идентификатор плана счетов, заданный в конфигураторе. |
Возвращаемое значение:
Значение плана счетов, соответствующее идентификатору в метаданных. Если не найдено — то пустое значение.
Описание:
Метод ЗначениеПоИдентификатору применяется к атрибуту глобального контекста ПланыСчетов и позволяет определить план счетов, соответствующий идентификатору плана счетов конфигурации.
Пример:
ПлСч = ПланыСчетов.ЗначениеПоИдентификатору("Основной");
ЗначениеПоИдентификатору
Определить вид субконто, по идентификатору видов субконто конфигурации.
Синтаксис:
ЗначениеПоИдентификатору(<Идентификатор>)
Англоязычный синоним:
ValueByIdentifier
Параметры:
<Идентификатор> |
Строковое выражение. Идентификатор вида субконто, заданный в конфигураторе. |
Возвращаемое значение:
Значение типа «ВидСубконто», соответствующее идентификатору в метаданных. Если не найдено — то пустое значение.
Описание:
Метод ЗначениеПоИдентификатору применяется к атрибуту глобального контекста ВидыСубконто и позволяет определить вид субконто, соответствующий идентификатору видов субконто конфигурации.
Пример:
ВидСк = ВидыСубконто.ЗначениеПоИдентификатору("Контрагент");
ЗначениеПоНомеру
Определить значение перечисления, соответствующее номеру позиции в конфигураторе.
Синтаксис:
ЗначениеПоНомеру(<Номер>)
Англоязычный синоним:
ValueByIndex
Параметры:
<Номер> |
Числовое выражение. Номер позиции значения перечисления, заданный в конфигураторе. |
Возвращаемое значение:
Значение перечисления, соответствующее номеру заданной позиции.
Описание:
Метод ЗначениеПоНомеру применяется к конкретному виду перечисления и позволяет определить значение перечисления, соответствующее номеру позиции в конфигураторе.
Пример:
См. предыдущий пример.
ЗначениеПоНомеру
Определить план счетов, по номеру в списке планов счетов конфигурации.
Синтаксис:
ЗначениеПоНомеру(<Номер>)
Англоязычный синоним:
ValueByIndex
Параметры:
<Номер> |
Числовое выражение. Номер позиции плана счетов, заданный в Конфигураторе. |
Возвращаемое значение:
Значение типа «План Счетов», соответствующее номеру заданной позиции.
Описание:
Метод ЗначениеПоНомеру применяется к атрибуту глобального контекста ПланыСчетов и позволяет определить план счетов, соответствующий номеру в списке планов счетов конфигурации.
Пример:
Для Инд = 1 По ПланыСчетов.КоличествоЗначений() Цикл
ПлСч = ПланыСчетов.ЗначениеПоНомеру(Инд);
КонецЦикла
ЗначениеПоНомеру
Определить вид субконто, по номеру в списке видов субконто конфигурации.
Синтаксис:
ЗначениеПоНомеру(<Номер>)
Англоязычный синоним:
ValueByIndex
Параметры:
<Номер> |
Числовое выражение. Номер позиции вида субконто, заданный в конфигураторе. |
Возвращаемое значение:
Значение типа «ВидСубконто», соответствующее номеру заданной позиции.
Описание:
Метод ЗначениеПоНомеру применяется к атрибуту глобального контекста ВидыСубконто и позволяет определить вид субконто, соответствующий номеру в списке видов субконто конфигурации.
Пример:
Для Инд = 1 По ВидыСубконто.КоличествоЗначений() Цикл
ВидСк = ВидыСубконто.ЗначениеПоНомеру(Инд);
КонецЦикла;
ЗначениеТекущейЯчейки
Возвращает вычисленное значение, записанное в ячейку таблицы.
Синтаксис:
ЗначениеТекущейЯчейки(<Адрес>)
Англоязычный синоним:
ValueOfCurrentCell
Параметры:
<Адрес> |
Необязательный параметр. Идентификатор переменной, куда система возвратит адрес текущей ячейки в формате «RnCn». |
Возвращаемое значение:
Значение, записанное в ячейку таблицы.
Описание:
Метод ЗначениеТекущейЯчейки возвращает значение, записанное в ячейку таблицы путем вычисления выражения, заданного в конфигураторе («Свойства» ячейки — закладка «Текст» — поле «Значение»).
Замечание. Для того, чтобы иметь доступ к этому методу, необходимо, чтобы переменная, содержащая таблицу, была объявлена как переменная модуля, а не локальная переменная процедуры. В этом случае во всех процедурах программного модуля вы сможете использовать данный метод и, на основании значения текущей ячейки, формировать, например, более подробные отчеты.
Пример:
Док = Таб.ЗначениеТекущейЯчейки();
См. также: ЗначениеВСтрокуВнутр, ЗначениеИзСтрокиВнутр
ЗначениеУпорядочивания
Возвращает значение поля упорядочивания для заданной группировки.
Синтаксис:
ЗначениеУпорядочивания(<Группировка>, <Упорядочив>)
Англоязычный синоним:
OrderValue
Параметры:
<Группировка> |
Выражение, содержащее значение номера или имени группировки (номер работает быстрее). |
<Упорядочив> |
Необязательный параметр. Порядковый номер параметра упорядочивания указанной группировки. Значение по умолчанию: 1. |
Возвращаемое значение:
Значение поля упорядочивания.
Описание:
Метод ЗначениеУпорядочивания возвращает значение поля упорядочивания, выбирая его из временной выборки запроса, не обращаясь к базе данных.
Замечание: Если в тексте запроса для данной группировки не используется конструкция "Упорядочить по", то в этом случае действует упорядочивание по умолчанию:
для справочников — зависит от основного представления при описании справочника в конфигураторе (код или наименование).
для документов — дата и время создания документа.
Пример:
// Текст запроса
ТекстЗапроса = "
|ВидРаб = Документ.Наряд.ВидРаботы;
|Сотр = Документ.Наряд.Сотрудник;
|Группировка ВидРаб
|Упорядочить По ВидРаб.Код, ВидРаб.Стоимость;
|Группировка Сотр;
|";
//...
// Фрагмент заполнения таблицы
// Выбираем значение
ВидРаб.Стоимость
Запрос.ЗначениеУпорядочивания("ВидРаб", 2);
// Выбираем имя сотрудника
Запрос.ЗначениеУпорядочивания(2, 1);
ЗначениеВФайл
Сохраняет значение в файле.
Синтаксис:
ЗначениеВФайл(<ИмяФайла>, <3начение>, <Формат>)
Англоязычный синоним:
ValueToFile
Параметры:
<ИмяФаила> |
Строковое выражение, задающее имя файла. |
<3начение> |
Значение, которое следует сохранить в файле. В качестве параметра для данного метода допускается передавать значения любых типов данных, доступных в конфигурации, как базовых, так и агрегатных типов данных, за исключением тех типов данных, которые не имеют собственно значения — это касается таких объектов как «Периодический», «Таблица», «ФС», «Запрос», «XBase» и т. п. Однако, объекты типа «СписокЗначений» и «ТаблицаЗначе-ний» использовать можно. |
<Формат> |
Необязательный параметр. Число: 1 — сохранение во внутреннем формате; иначе во внешнем. Значение по умолчанию: 1. |
Возвращаемое значение:
Число: 1 — функция выполнена успешно; 0 — функция не выполнена.
Описание:
Функция ЗначениеВФайл позволяет сохранить любое значение в файле. В дальнейшем этот файл можно будет распаковать и сделать обратное преобразование при помощи функции ЗначениеИзФайла.
Пример:
Результат = ЗначениеВФайл(ВыбИмяФайла, ВыбДокумент);
См. также: ЗначениеИзФайла
ЗначениеВСтроку
Преобразование значения из внутреннего представления в строковое.
Синтаксис:
ЗначениеВСтроку(<Объект>)
Англоязычный синоним:
ValueToString
Параметры:
<Объект> |
Значение, которое следует перевести в строковое представление. В качестве параметра для данного метода допускается передавать значения любых типов данных, доступных в конфигурации, как базовых, так и агрегатных типов данных, за исключением тех типов данных, которые не имеют собственно значения — это касается таких объектов как «Периодический», «Таблица», «ФС», «Запрос», «XBase» и т. п. Однако, объекты типа «СписокЗначений» и «ТаблицаЗначений» использовать можно — он преобразуется в строковое представление. |
Возвращаемое значение:
Строковое представление переданного значения.
Описание:
Применять функцию ЗначениеВСтроку имеет смысл только в особых случаях. Например, если требуется несколько объектов упаковать в одну строку. При помощи функции ЗначениеВСтроку объекты можно преобразовать в строковые значения, которые затем можно объединить в единую строку операцией конкатенации. В дальнейшем эту строку можно будет разобрать на составляющие и сделать обратное преобразование при помощи функции ЗначениеИзСтроки.
Замечание: Строковое представление имеет специальный системный формат, т. е. предназначено не для отображения, а просто для возможности выполнения строковых операций с объектами, например при экспорте-импорте информации между разными конфигурациями (например, при помощи OLE). При преобразовании агрегатных типов данных, данный системный формат использует идентификаторы объектов, как они даны в конфигураторе, а также значения кода (для элементов справочников) и номера (для документов), поэтому при передаче такого строкового представления в другую (похожую) конфигурацию функция ЗначениеИзСтроки сделает попытку восстановить значение объекта по его строковому описанию.
Пример:
СтрДок = ЗначениеВСтроку(ВыбДокумент);
См. также: ЗначениеИзСтроки
ЗначениеВСтрокуВнутр
Преобразование значения объекта агрегатного типа из внутреннего представления в строковое.
Синтаксис:
ЗначениеВСтрокуВнутр(<Выражение>)
Англоязычный синоним:
ValueToStringInternal
Параметры:
<Выражение> |
Выражение, вычисленное значение которого следует перевести в строковое представление. В качестве параметра для данного метода допускается передавать значения любых типов данных, доступных в конфигурации, как базовых, так и агрегатных типов данных, за исключением тех типов данных, которые не имеют собственно значения — это касается таких объектов как «Периодический», «Таблица», «ФС», «Запрос», «XBase» и т. п. Однако, объекты типа «СписокЗначений» и «ТаблицаЗначений» использовать можно — они преобразуются в строковое представление. |
Возвращаемое значение:
Результирующее строковое значение.
Описание:
Применять функцию ЗначениеВСтрокуВнутр имеет смысл только в особых случаях. Например, если в рамках одной конфигурации требуется несколько объектов упаковать в одну строку. При помощи функции ЗначениеВСтрокуВнутр объекты можно преобразовать в строковые значения, которые затем можно объединить в единую строку операцией конкатенации. В дальнейшем эту строку можно будет разобрать на составляющие и сделать обратное преобразование при помощи функции ЗначениеИзСтрокиВнутр.
Замечание: Строковое представление агрегатного типа данных имеет специальный системный формат, т. к. предназначено не для отображения, а просто для возможности выполнения строковых операций с объектами (в рамках одной конфигурации), например при упаковке нескольких объектов в одну строку. Данный системный формат использует внутренний системный идентификатор данных, поэтому этот формат предназначен для работы в рамках единой информационной базы. При распаковке такого строкового представления функция ЗначениеИзСтрокиВнутр восстанавливает значение объекта по его системному идентификатору.
Пример:
* Допустим, в конфигурации формируется отчет с использованием объекта «Таблица». Для обеспечения возможности получать дополнительные сведения по отчету, в таблицах есть возможность в каждой ячейке хранить вычисляемое значение, которое можно затем использовать для обработки. Однако, в ячейке таблицы можно хранить только одно значение. В случае, если все же для обработки необходимо иметь несколько значений, то их можно с помощью метода ЗначениеВСтрокуВнутр упаковать в одну строку. Например, в ячейке таблицы запишем формулу значения ячейки в следующем виде:
ЗначениеВСтрокуВнутр(Запрос.Клиент) + РазделительСтрок +
ЗначениеВСтрокуВнутр(Запрос.Товар)
Процедура обработки значения ячейки должна в себе содержать алгоритм распаковки значений с использованием метода ЗначениеИзСтрокиВнутр.
Процедура ОбработкаЯчейкиТаблицы(Значение, ФлагСтандартнойОбработки)
Если ТипЗначенияСтр(Значение) = "Строка" Тогда
Орг = ЗначениеИзСтрокиВнутр(СтрПолучитьСтроку(Значение, 1));
Тов = ЗначениеИзСтрокиВнутр(СтрПолучитьСтроку(Значение, 2));
Если Тов.Выбран() = 0 Тогда
Возврат;
КонецЕсли;
Карт(Орг, Тов);
ФлагСтандартнойОбработки = 0;
Возврат;
КонецЕсли;
ФлагСтандартнойОбработки = 1;
КонецПроцедуры
См. также: ЗначениеИзСтрокиВнутр, ЗначениеТекущейЯчейки, ОбработкаЯчейкиТаблицы