Преобразует полученный параметр в значение типа Строка. При преобразовании к строке числа формируется его полное представление в стандартном виде, соответствующем национальным установкам. Преобразование значений типа Булево зависит от национальных установок и содержит строковое представление этих значений. При преобразовании к строке даты формируется ее полное представление в стандартном удобочитаемом виде, соответствующем национальным установкам. Преобразование к строке значений остальных типов производится по мере возможности и обычно содержит удобочитаемое представление значения.
Синтаксис
Строка(<Значение>)Примеры платформы
Сообщить(Строка(Количество) + " единиц товара на складе не обнаружено");Полное описание, параметры и ограничения
Глобальный контекст.Строка (Global context.String)
Глобальный контекст (Global context)
Строка (String)
Доступен, начиная с версии 8.0.
Синтаксис:
Строка(<Значение>)
Параметры:
<Значение> (обязательный)
Тип: Произвольный.
Исходное значение.
Возвращаемое значение:
Тип: Строка.
Полученное значение.
Описание:
Преобразует полученный параметр в значение типа Строка.
При преобразовании к строке числа формируется его полное представление в стандартном виде, соответствующем национальным установкам.
Преобразование значений типа Булево зависит от национальных установок и содержит строковое представление этих значений.
При преобразовании к строке даты формируется ее полное представление в стандартном удобочитаемом виде, соответствующем национальным установкам.
Преобразование к строке значений остальных типов производится по мере возможности и обычно содержит удобочитаемое представление значения.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Внимание: Данный метод не поддерживается при работе через COM-соединение
Пример:
Сообщить(Строка(Количество) + " единиц товара на складе не обнаружено");
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Подготовить учебный активный счёт кассы, не создавая остаток
Счёт описывает место отражения учёта. Его создание в памяти не создаёт проводку, наличные деньги или строку плана счетов в базе.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Создайте НОВУЮ пустую файловую базу, корневое имя УчебныйУчет85. В рабочей БП/КА2/УТ/УНФ эти задачи не запускайте. Это технический пример API, не готовый бухгалтерский учёт.
Планы видов характеристик → Добавить: УчебныеАналитики85. Тип значения только Строка 30. Элементы, дополнительные реквизиты, табличные части и предопределённые значения не создавайте.
Планы счетов → Добавить: УчебныеСчета85. ДлинаКода 10, МаскаКода @@@.@@@.@@, ДлинаНаименования 100, ДлинаПорядка 20. АвтоПорядокПоКоду выключен, КонтрольУникальности включён. ВидыСубконто=УчебныеАналитики85, МаксКоличествоСубконто=2.
У плана счетов не создавайте пользовательские реквизиты, табличные части, признаки учёта/субконто, предопределённые счета, формы, команды, макеты и дополнительные индексы. Модули оставьте пустыми. Историю данных и два флага обработки её версий выключите. Расширений нет.
Обновите конфигурацию БД. Создайте серверный обработчик ВыполнитьПример() Экспорт в собственной обработке. Фрагмент вставляйте в тело; запускайте уроки по отдельности.
Объекты создаются только в памяти: Записать/Удалить/Заблокировать не вызываются. Регистров бухгалтерии, проводок и фактических остатков в этом примере нет.
Описание = Метаданные.ПланыСчетов.Найти("УчебныеСчета85");
Если Описание = Неопределено Тогда
ВызватьИсключение "Сначала создайте собственный план УчебныеСчета85";
КонецЕсли;
Если Описание.ДлинаКода <> 10 Или Описание.ДлинаНаименования <> 100
Или Описание.ДлинаПорядка <> 20 Или Описание.МаскаКода <> "@@@.@@@.@@"
Или Описание.АвтоПорядокПоКоду Или Описание.МаксКоличествоСубконто <> 2 Тогда
ВызватьИсключение "Настройки учебного плана не соответствуют подготовке";
КонецЕсли;
Если Описание.ВидыСубконто = Неопределено Тогда
ВызватьИсключение "Назначьте собственный план аналитик";
КонецЕсли;
Если Описание.ВидыСубконто.Имя <> "УчебныеАналитики85" Тогда
ВызватьИсключение "Нужны только собственные учебные аналитики";
КонецЕсли;
Менеджер = ПланыСчетов.УчебныеСчета85;
Касса = Менеджер.СоздатьСчет();
Касса.Код = "50";
Касса.Наименование = "Учебная касса";
Касса.Вид = ВидСчета.Активный;
Касса.Забалансовый = Ложь;
Касса.Порядок = "50";
Касса.ДополнительныеСвойства.Вставить("МеткаЗадачи", "Только память");
Сообщить(Касса.ЭтоНовый());
Сообщить(Касса.Ссылка.Пустая());
Сообщить(Касса.Родитель.Пустая());
Сообщить(Касса.Уровень() = 0);
Сообщить(Не Касса.ПометкаУдаления);
Сообщить(Не Касса.Предопределенный);
Сообщить(Касса.ИмяПредопределенныхДанных = "");
Сообщить(Касса.ВидыСубконто.Количество() = 0);
Сообщить(Касса.ДополнительныеСвойства.МеткаЗадачи = "Только память");
Сообщить(Касса.ЭтотОбъект = Касса);
Сообщить(Касса.Модифицированность());
Сообщить(Касса.Метаданные().Имя = "УчебныеСчета85");
Сообщить(Касса.ПроверитьЗаполнение());
Сообщить("Версия незаписанного объекта: " + Касса.ВерсияДанных);
Сообщить("Тип параметров истории: " + Строка(ТипЗнч(Касса.ЗаписьИсторииДанных)));
Сообщить("Режим загрузки обмена: " + Строка(Касса.ОбменДанными.Загрузка));Разбор по шагам
СоздатьСчет возвращает объект. Заполняем Код, Наименование, вид Активный, признак баланса и собственный порядок.
Ссылка пока пустая, объект новый. Отсутствие родителя означает верхний уровень 0.
ВидыСубконто у объекта — строки настроек конкретного счёта; у метаданных — назначенный план видов характеристик. У нового счёта строк нет, хотя максимум равен 2.
Служебная МеткаЗадачи помещена в ДополнительныеСвойства, не в пользовательский реквизит и не в базу.
ПроверитьЗаполнение вызывает соответствующее событие; по подготовке модули пустые. Успех проверки не означает успешную будущую запись.
ВерсияДанных, параметры истории и обмена показываются отдельно. История/обмен этим кодом не выполняются.
Как проверить результат
Тринадцать логических сообщений дают Истина при исходной подготовке.
После выполнения в списке УчебныеСчета85 счёт 50 не появился: объект не записывался. Никакого остатка кассы не рассчитано.
Ожидаемый результат
Подготовлено определение активного счёта в памяти, с явным разграничением счёта, субконто и проводок.
На что обратить внимание
Активный и Забалансовый — разные характеристики счёта, а не сумма и валюта.
Модифицированность описывает объект в памяти, не наличие изменений в сохранённых данных.
Проверка заполнения не проверяет весь будущий учёт, права записи и баланс проводок.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Проверить происхождение двух признаков без изменения расширений
Перед сравнением с XML выясняем принадлежность и изменения расширениями текущего сеанса. Это диагностическое чтение, не включение/отключение расширения.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.
Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.
Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.
В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.
Каждый урок запускайте отдельно. Код не вызывает бизнес-функции модулей и обработчики команд, не переключает привилегированный режим и не меняет параметры сеанса.
План = Метаданные.ПланыСчетов.Найти("Хозрасчетный");
Если План = Неопределено Тогда
ВызватьИсключение "В учебной конфигурации отсутствует ПланыСчетов.Хозрасчетный";
КонецЕсли;
ПризнакСчета = План.ПризнакиУчета.Найти("Валютный");
ПризнакСубконто = План.ПризнакиУчетаСубконто.Найти("Валютный");
Если ПризнакСчета = Неопределено Или ПризнакСубконто = Неопределено Тогда
ВызватьИсключение "В учебной копии нет обоих признаков Валютный; проверьте XML Хозрасчетный";
КонецЕсли;
Сообщить("Счёт: " + Строка(ПризнакСчета.ПринадлежностьОбъекта));
Сообщить("Субконто: " + Строка(ПризнакСубконто.ПринадлежностьОбъекта));
Сообщить(ПризнакСчета.ОбъектРасширяемойКонфигурации);
Сообщить(ПризнакСубконто.ОбъектРасширяемойКонфигурации);
Сообщить(ПризнакСчета.ЕстьИзмененияРасширениямиКонфигурации());
Сообщить(ПризнакСубконто.ЕстьИзмененияРасширениямиКонфигурации());
РасширениеСчета = ПризнакСчета.РасширениеКонфигурации();
РасширениеСубконто = ПризнакСубконто.РасширениеКонфигурации();
Если РасширениеСчета <> Неопределено Тогда
Сообщить(РасширениеСчета.Имя);
КонецЕсли;
Если РасширениеСубконто <> Неопределено Тогда
Сообщить(РасширениеСубконто.Имя);
КонецЕсли;Разбор по шагам
ПринадлежностьОбъекта показывает отношение к текущей/расширяемой конфигурации.
ОбъектРасширяемойКонфигурации — служебный UUID заимствования, не ссылка на счёт и не номер субконто.
ЕстьИзмененияРасширениямиКонфигурации учитывает активные изменения текущего сеанса.
РасширениеКонфигурации проверяем на отсутствие до чтения имени. Все значения диагностические, не фиксированное ожидание для любой базы.
Как проверить результат
Выведены сведения обоих объектов; при отсутствии добавившего расширения обращение к его Имя не выполняется.
Сверьте наличие активных расширений в своей учебной копии, если значения отличаются от исходного XML.
Ожидаемый результат
Проверена применимость исходной схемы к текущему сеансу без изменения настроек базы.
На что обратить внимание
Отсутствие добавившего расширения не исключает изменения объекта другим расширением.
Свойство происхождения не доказывает бизнес-права пользователя на проводки.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.