arefaste/1C_Forums huggingface dataset:
Привет всем.

ДАНО:
1С:УПП 1.3, работа через RDP

Ситуация:
Подключается сканер ШК. В настройках РДП передаём COM-порт. Настраиваем торговое обрудование, а оно привязывается к имени компьютера (самого сервера терминалов). Получается, что кто бы ни заходил с любого компьютера, то у него считается установленным сканер, т.к. 1С берет имя сервера, а не компьютера, с которого подключились.
Попробовал привязать к пользователю. Получилось. Но если пользователь заходит под своим именем с чужого компьютера, то естественно система думает, что установлен сканер. А его на самом деле нет и это не устраивает.
Значит надо привязываться не к пользователю, а к имени компьютера, с которого идёт подключеиние по РДП.

Собственно вопрос:
как в 1С определить имя компьютера, с которого подключились по РДП?
---
WshShell = Новый COMОбъект("WScript.Shell");
WshSysEnv = WshShell.Environment("Process");
Сообщить("Имя компьютера "+WshSysEnv.Item("CLIENTNAME"));

Работает только в терминальной сессии
---
Повышаем ставки. ))
Очень надо.
---
WshShell = Новый COMОбъект("WScript.Shell");
WshSysEnv = WshShell.Environment("Process");
Сообщить("Имя компьютера "+WshSysEnv.Item("CLIENTNAME"));

Работает только в терминальной сессии
---
Но только в терминальной сессии. В обычной сессии данной переменной нет
---
А как определить, что это терминальная сессия или нет?
---
Ура! Оно самое. Работает. Спасибо!
---
Подробно тут расписано - https://infostart.ru/public/197612/ - аналогичная задача была.
В основной форме документа Реализация товаров и услуг есть табличная часть, как получить в модуле формы -- значение Элементы.Товары.Номенклатура.КоэффициентЕдиницыДляОтчетов. Когда пишу код:
```1c
    ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
    А = Текущаястрока.Номенклатура.КоэффициентЕдиницыДляОтчетов
```
 выдает ошибку Поле объекта не обнаружено. Как правильно написать код?
---
как-то так:

```1c
    А = ВернутьКоэффициентНаСервере(Текущаястрока.Номенклатура)
```

```1c
    Функция ВернутьКоэффициентНаСервере(ТекущаяНоменклатура)
    Возврат ТекущаяНоменклатура.КоэффициентЕдиницыДляОтчетов;
    КонецФункции
```
---
как-то так:

```1c
    А = ВернутьКоэффициентНаСервере(Текущаястрока.Номенклатура)
```

```1c
    Функция ВернутьКоэффициентНаСервере(ТекущаяНоменклатура)
    Возврат ТекущаяНоменклатура.КоэффициентЕдиницыДляОтчетов;
    КонецФункции
```
---
(3)Это реквизит справочника Номенклатуры
---
а что возвращает моя функция, чему будет А равно ?
---
выдал ошибку деление на 0.

&НаСервереБезКонтекста
Функция ВернутьКоэффициентНаСервере(Номенклатура)
 Возврат Номенклатура.КоэффициентЕдиницыДляОтчетов;
КонецФункции

А = ВернутьКоэффициентНаСервере(ТекущаяСтрока.Номенклатура);
В = ТекущаяСтрока.КоличествоУпаковок / А
---
ну это уже не от меня ) значит это А делится уже дальше где-то или наоборот... само значение А = 0 ? Значит и коэффициент у той номенклатуры 0 ?
Под отладчиком бы смотреть всё это...
---
Отладчик не показывает значение КоэффициентЕдиницыДляОтчетов
---
Клиент-серверное взаимодействие в картинках:
https://infostart.ru/public/682305/

Почитайте, станет понятно, где что должно быть видно и почему.
---
Спасибо, очень интересная статья, обязательно прочту
---
посмотрите внутри той функции что я написал - и номенклатуру и коэф.
---
да, посмотрел, там есть значение 0,167, по моему берет только целую часть, а дробную сбрасывает
---
а как то можно получить значению полностью не сбрасывая дробную часть
---
Ну получаете же. Где-то дальше в коде обрезает или округляет, ищите.
---
Дело в том что ни где в коде ОКР() или ЦЕЛ() не участвует, а можно как то с помощью "ЧЦ и ЧДЦ" получить значение ВернутьКоэффициентНаСервере(ТекущаяСтрока.Номенклатура) = 0,167
---
Вы получаете значение в отладчике. Значит и в переменную оно приходит корректно. Возможно, переменная, в которую получаете результат имеет обрезанный формат с 0 знаков после запятой.

 "ЧЦ и ЧДЦ" - это форматная строка, она возвращает строку, она не предназначена преобразования числа в число.
---
Так тоже не получилось, может я где то не правильно делаю? Выдает ошибку "деление на 0". там значение равно 0,167, т.е. КоэффициентЕдиницыДляОтчетов = 0,167
---
Может дело в Элементы.Товары.Номенклатура.ЕдиницаДляОтчетов.Коэффициент ?
---
Нет, вот иерархия выглядит таким образом, там значение, надо вызвать эту значение в коде модуля.
---
Всем ОГРОМНОЕ СПАСИБО! Все получилось!!!
Коллеги, доброго времени суток
1С Документооборот 8 КОРП 2 1 7 9
В уведомлении, которое приходит на почту сотрудника есть ссылка на задачу в базе, прошу указать на место в коде, где эту строчку нужно закомментировать, чтобы в письме ее не было Скрин для наглядности
---
ОбщийМодуль.РаботаСУведомлениями.СформироватьПредставлениеЗадачи

ОбщийМодуль.РаботаСУведомлениямиПереопределяемый.СформироватьПредставлениеЗадачи

//ДобавитьРеквизитКСтроке(
 // ПредставлениеЗадачи,
 // НСтр("ru = 'Ссылка'", КодЯзыка),
 // ПолучитьНавигационнуюСсылкуУведомления(Задача));
---
ОбщийМодуль.РаботаСУведомлениями.СформироватьПредставлениеЗадачи

ОбщийМодуль.РаботаСУведомлениямиПереопределяемый.СформироватьПредставлениеЗадачи

//ДобавитьРеквизитКСтроке(
 // ПредставлениеЗадачи,
 // НСтр("ru = 'Ссылка'", КодЯзыка),
 // ПолучитьНавигационнуюСсылкуУведомления(Задача));
Пользователь вводит данные в отдельном поле формы, откуда они после обработки попадают в таблицу, расположенную на форме. Таблица в общем случае не влезает в форму, и появляются полосы прокрутки. То есть некоторые столбцы в данный момент не видны. Можно ли сделать, чтобы после программного изменения ячейки в таблице, таблица прокрутилась (горизонтально) так, чтобы колонка с данной ячейкой стала видна пользователю?
---
ЭлементыФормы.ТЧ.ТекущаяКолонка= ЭлементыФормы.ТЧ.Колонки.НужнаяКолонка;
ЭлементыФормы.ТЧ.ИзменитьСтроку();

ещё можно использовать имитацию нажатия горячих клавиш:

```1c
    Wsh = Новый СОМОбъект("Wscript.shell");
    Wsh.SendKeys("F2");
```
---
ЭлементыФормы.ТЧ.ТекущаяКолонка= ЭлементыФормы.ТЧ.Колонки.НужнаяКолонка;
ЭлементыФормы.ТЧ.ИзменитьСтроку();

ещё можно использовать имитацию нажатия горячих клавиш:

```1c
    Wsh = Новый СОМОбъект("Wscript.shell");
    Wsh.SendKeys("F2");
```
```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ХозрасчетныйОстатки.Субконто3 КАК ДокументРеализации,
    | ХозрасчетныйОстатки.СуммаОстатокКт КАК Остаток
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный.Остатки(&Дата, Счет = &ВыбСчет, &ВидыСубконто, ) КАК ХозрасчетныйОстатки
    |ГДЕ
    | ХозрасчетныйОстатки.Организация = &Организация
    | И ХозрасчетныйОстатки.Субконто1 = &Субконто1
    | И ХозрасчетныйОстатки.Субконто2 = &Субконто2
    |
    |УПОРЯДОЧИТЬ ПО
    | ХозрасчетныйОстатки.Субконто3.Дата ВОЗР";

    Запрос.УстановитьПараметр("ВыбСчет", ПланыСчетов.Хозрасчетный.НайтиПоКоду("98.8"));
    Запрос.УстановитьПараметр("Дата",Новый Граница(КонецМесяца(Объект.Месяц),ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Организация", Объект.Организация);
    Запрос.УстановитьПараметр("Субконто1", Объект.Контрагент);
    Запрос.УстановитьПараметр("Субконто2", Объект.ДоговорКонтрагента);

    ВидыСубконто = Новый Массив;
    ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Контрагенты);
    ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Договоры);
    ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.ДокументыРеализации);

    Запрос.УстановитьПараметр("ВидыСубконто", ВидыСубконто);

    РезультатЗапроса = Запрос.Выполнить();
    Записи = РезультатЗапроса.Выбрать();
```

Объект.Месяц - тип "Дата", при работе не видит документы 23:59:59, что тут не так?
---
а КонецДня()?
---
а КонецДня()?
---
да спасибо) помогло
---
а если обратно вернуть без КонецДня(), не работает? Именно обратно вернуть как было.
Если не работает, то это повод зарегистрировать баг платформы. Еще бы неплохо ее (версию) указать.
---
без КонецДня не работает хотя в обоих случаях дата в переменной заканчивается на 23:59:59, не удивлен тк это 1с
---
а если без границы?

```1c
    Запрос.УстановитьПараметр("Дата", КонецМесяца(Объект.Месяц)+1);
```
Доброе время суток.
Подскажите такой момент.
Получаю с БД строку вида: "\u0421\u0431\u0435\u0440\u0431\u0430\u043d\u043a"
Как я понимаю это текст в кодировке UTF8 .
Как мне его привести в читабельный вид без использования методики перекодирования с использованием файлов ?
---
```1c
    ЧтениеJSON = Новый ЧтениеJSON;
    ЧтениеJSON.УстановитьСтроку("{"Текст":"\u0421\u0431\u0435\u0440\u0431\u0430\u043d\u043a"}");
    Соответствие = ПрочитатьJSON(ЧтениеJSON, Истина);
    Результат = Соответствие.Получить("Текст");
```
---
Гуглобан - страшный диагноз для программиста (или считающего себя таковым)!

https://infostart.ru/public/171438/
http://www.forum.mista.ru/topic.php?id=362752
https://helpf.pro/faq/view/495.html

И еще туева хуча ссылок.
---
Угу ... как я люблю такие ответы .....

я перерыл уже не один десяток ссылок...

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

а остальные ссылки содержат в себе вариации второй и третей ссылки.

использованно уже несколько предложенных на просторах инета функций но результата нет ...
почемуто на выходе я получаю такуюже строку как и на входе.
---
использованно уже несколько предложенных на просторах инета функций но результата нет ... А мысль, что это не кодировка UTF-8 - не посещала? А зря...

Потому что поиск "строки вида: "\u0421\u0431\u0435\u0440\u0431\u0430\u043d\u043a" мгновенно дает ответ - это JSON-кодировка, соответствие ее шестисимвольных последовательностей символам кириллицы можно подмостреть хотя бы тут: https://otvet.mail.ru/question/53790481

Ну, а дальше - обычная работа со строками, тут уж сами справитесь, я надеюсь?
---
```1c
    ЧтениеJSON = Новый ЧтениеJSON;
    ЧтениеJSON.УстановитьСтроку("{"Текст":"\u0421\u0431\u0435\u0440\u0431\u0430\u043d\u043a"}");
    Соответствие = ПрочитатьJSON(ЧтениеJSON, Истина);
    Результат = Соответствие.Получить("Текст");
```
---
Спасибо !

(4) u0421 Спасибо ! С кодировками у меня проблема. Да и онлайн декодеры говорили что это UTF-8/
Добрый день, товарищи. Подскажите пожалуйста в чем ошибка
УТ 10.3 есть внутренняя обработка, необходимо запускать регламентным заданием

- Создал Регламентное задание
- в Общем модуле МодульРегламентныхЗаданий дописал запуск этой обработки
выдает ошибку.( ругается на то что не находит процедуру, которая находится в обработке

в общем модуле процедура Экспортная

мОбработка = Обработки.МояОбработка.Создать();
мОбработка.ПроцедураОбработки(); - вот на эту

хотя эта процедура экспортная и она находится в модуле объекта
по форумам лазил с такой ошибкой, понял что она работает в модуле объекта и в модуле менеджера, хотелось бы выяснить в чем ошибка именно с модулем объекта, почему ругается?
---
а все парни, нашел в чем ошибка, препроцессорная фигня, стояла #Если Клиент, не заметил
---
а все парни, нашел в чем ошибка, препроцессорная фигня, стояла #Если Клиент, не заметил
?
---
Внезапно ТабличныйДокумент.ОриентацияСтраницы
---
А в чем проблема?
Какой отчет?
---
Внезапно ТабличныйДокумент.ОриентацияСтраницы
---
```1c
    &НаКлиенте
    Процедура Сформировать(Команда)
    ТабДок = Новый ТабличныйДокумент;
    ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    ТабДок.Показать();
    КонецПроцедуры
```

Вместо отчета экселевская таблица
В форме документа есть табличная часть, создал новый реквизит и привязал к поле. Хочу выполнить арифметические операции, т.е. делить значение одного поле на другого и вывести на новой поле. как правильно написать формулу?
---
Нет, смотри на ответ №5. Если у тебя таблица ты должен сделать єто для всех
Для каждого строка Из Объект.таблица цикл
Строка.полуформула=Строка.Поле1/Строка.Поле2
Конеццикла

или при изменении строки изменять так как я чуть выше уже описал :)
---
Элементы.ПолеФормула = Элементы.Поле1 / Элементы.Поле2 не принимает, выдает ошибку...
---
в каком случае должна выполняться операция?
а) при открытии документа
- в процедуре "при создании на сервере" или "при открытии" сделай Объект.ПолеФормула=Объект.Поле1/Объект.Поле2;
б) при изменении реквизита ххх
- создай/найди процедуру "при изменении" на форме, зайди в нее, и пропиши формулу
Объект.ПолеФормула=Объект.Поле1/Объект.Поле2;
ц) при проведении
- в модуле объекта найди процедуру "перед записью" и туда впиши ПолеФормула=Поле1/Поле2;
---
или в табличную часть добавил? Тогда тебе еще понадобится в случае "а" и "ц" - цикл, а в случае б - получить А= Элементы.ТвояТаблличнаяЧасть.текущиеДанные,
А.ПолеФормула = А.Поле1/А.Поле2;
---
почему то не получается, написал формулу приизменении... у меня поля берутся вот таким образом: Объект.Таблица.ПолеФормула
а написал вот такую формулу:
Объект.Таблица.ПолеФормула = Объект.Таблица.Поле1 / Объект.Таблица.Поле2
заполнил поля 1 и 2 а итога нет.
---
Пишет: поле объекта не обнаружен
---
Нет, смотри на ответ №5. Если у тебя таблица ты должен сделать єто для всех
Для каждого строка Из Объект.таблица цикл
Строка.полуформула=Строка.Поле1/Строка.Поле2
Конеццикла

или при изменении строки изменять так как я чуть выше уже описал :)
---
Спасибо огромное!!! Все получилось!!!
---
Здравствуйте Алекс. Еще раз спасибо за помощь, Ваш ответ мне очень помог решать задачу. Есть еще один вопрос, если не трудно, каким образом можно получить значение Объект.Товары.Номенклатура.КоэффициентЕдиницыДляОтчетов в модуле формы документа РеализацияТоваровУслуг. Хочу использовать эту значению в формуле табличной части.
---
аналогичнім образом. Если для всех строк то

Для каждого строка Из Объект.таблица цикл
  Строка.полуформула=Строка.Поле1/Строка.Поле2 *Строка.Номенклатура.коєфициентЕдиниціДляОтчета
Конеццикла

А если для текущей строки (то есть ты стал на строку, поменял значение поля 1 и хочешь чтобы поле формулы тоже поменялось) тогда используешь процедуру ПриОкончанииРедактирования у ТЧ или при изменении у каждого зависимого реквизита в ТЧ и пишешь в ней

 А= Элементы.ТвояТаблличнаяЧасть.текущиеДанные; // выбираешь ЭТУ строку
А.ПолеФормула = А.Поле1/А.Поле2*А.Номенклатура.коєфициентЕдиниціДляОтчета; //меняешь данные в ней
---
УФ же? Делайте операции не с Элементы.ТабЧасть, а с Объект.ТабЧасть, данные лежат там.
---
спасибо за ответы, сейчас попробую :)
```1c
    Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    Если РольДоступна("Администрирование") Тогда
    Сообщить("Роль доступна");
    Иначе
    Сообщить("Роль не доступна");
    Возврат;
    КонецЕсли;

    //код

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

Процедура ПриКомпоновкеРезультата прерывается, но дальше начинает исполняться Функция СформироватьОтчет из общего модуля. Можно ли без правки общего модуля (а только из модуля объекта внешнего отчета) прервать формирование отчета?
---
СтандартнаяОбработка = Ложь
---
СтандартнаяОбработка = Ложь
---
ВызватьИсключение() ?
---
Можно прямо в СформироватьОтчет() этот же код вставить.
По хорошему бы объекты не давать на чтение, а не отчет такой заплаткой закрывать.
Здравствуйте. Подскажите, пожалуйста, как мне взять значения из Отбора из справочника "Источники данных для расчетов бюджетирования"? Не могу понять как хранятся данные.
Мне нужно получить список статей ДДС, которые участвуют в отборе всего справочника "Источники..."

Конфигурация - УПП, 1С 8.2
---
В реквизите НастройкиПостроителя, это хранилище значения, сделайте Получить() и там вроде будет объект Отбор, если я всё правильно помню.
---
В реквизите НастройкиПостроителя, это хранилище значения, сделайте Получить() и там вроде будет объект Отбор, если я всё правильно помню.
---
Спасибо. А через Запрос это можно как-то сделать?
---
Насколько я знаю, в запросе работать с хранилищем значения нельзя
---
Смотрите, как там в источниках перед открытием получаются НастройкиПостроителя. Создаете свой построитель, фигачите в него настройки тем же макаром. Делаете источник данных ТЗ, получаете в ТЗ свой список со всеми отборами.
Приветствую, коллеги. Первый раз делаю отчет для ЗУП 2.5, хотел его добавить в документ, но Параметры_Авторегистрации при создании внешней обработки или отчета (пробовал и так и так) вроде как показывают, что принадлежность установлена, но если сохранить и повторно открыть, то они слетают(очищаются). Не могу понять, что делаю не так, ранее пользовался в УПП и УТ10 таким методом, а тут не взлетает... Помогите разобраться. Еще напрягает, что вручную принадлежность указать не могу, хотя права все проставил...
---
Всем спасибо, разобрался. Надо было добавлять в дополнительные печатные формы, я пытался в доп. обработки засунуть...
---
Всем спасибо, разобрался. Надо было добавлять в дополнительные печатные формы, я пытался в доп. обработки засунуть...
Добрый день.
Пилю еще одну подсистему Дополнительные отчеты и обработки.
Как вывести в интерфейс новую подсистему и подчиненные подсистемы если в них нет еще ни одного объекта?
---
Никак. Ну по крайней мере без танцев с бубном никак.
Нужно чтобы в подсистеме был хоть один объект и у пользователя были права на его просмотр.
---
Никак. Ну по крайней мере без танцев с бубном никак.
Нужно чтобы в подсистеме был хоть один объект и у пользователя были права на его просмотр.
---
Печально, спасибо за ответ.
Есть обработка с таким кодом, для 8.2 должно вроде работать

```1c
    мБазаИсточникСоединение = Новый COMОбъект("V82.COMConnector");
    мБазаИсточник = мБазаИсточникСоединение.Connect("Srvr="" + ПараметрыПодключения.Кластер1С + ?(ЗначениеЗаполнено(ПараметрыПодключения.Порт),":" + ПараметрыПодключения.Порт, ") + "";Ref="" + ПараметрыПодключения.База + "";Usr="" + ПараметрыПодключения.Пользователь + "";Pwd="" + ПараметрыПодключения.Пароль + "");
    ВнешнОбработка = мБазаИсточник.ВнешниеОбработки.Создать(ТекФайл.ПолноеИмя, ложь);
    ФормаОбработки = ВнешнОбработка.ПолучитьФорму();
```

Вываливается:

```1c
    {ВнешняяОбработка.ОбработкаВыполненияДействийВоВсехБазах.МодульОбъекта(51)}: Ошибка при вызове метода контекста (ПолучитьФорму)
    ФормаОбработки = ВнешнОбработка.ПолучитьФорму();
    по причине:
    Произошла исключительная ситуация (1C:Enterprise 8.2.19.68): Интерактивные операции недоступны
```

Что оно не в толстом клиенте открывается?
Как победить?
---
Никак. Платформа совершенно правильно написала, что интерактивные операции недоступны. Можно только обратиться к экспортным процедурам внешней обработки. Как вариант, вынести весь функционал в экспортные процедуры.
---
Вроде никогда и не было доступно такое...
---
В ЖКК я так понимаю, вот так написано:

```1c
    Класс - ВнешняяОбработка (ExternalDataProcessor)
    Метод - ПолучитьФорму (GetForm)
```

относительно применимости:

```1c
    Описание: Получает форму внешней обработки.
    Доступность: Толстый клиент.
```
---
Что такое ЖКК?
---
речь идёт о справке, которую вы не научились читать!
Ком это внешнее соединение!
---
ну как скажете.
---
Никак. Платформа совершенно правильно написала, что интерактивные операции недоступны. Можно только обратиться к экспортным процедурам внешней обработки. Как вариант, вынести весь функционал в экспортные процедуры.
---
Ок, спасибо. переделаю.
---
Линейкой бить по рукам за такие желания.
Как правильно записать условие? Нужен статус "В работе" в справочнике омСтатусы это предопределенный элемент - ВРаботе
омСтатусыЗаданий.Статус = СправочникСсылка.омСтатусы.ВРаботе
ошибка поле не найдено.
---
= Значение(Справочник.омСтатусы.ВРаботе)
---
= Значение(Справочник.омСтатусы.ВРаботе)
Есть ли какой-то способ на уровне ролей пользователей, сделать так, чтобы пользователи не могли видеть закупочные цены?
---
В настройках Группы доступа-Ограничивать на уровне записей
Скопировать любой профиль: например Менеджер по продажам и назвать Менеджер по продажам (запрет цен закуп.)
На закладке Ограничения доступа выбрать: Все запрещены исключения назначаются в группах доступа (или в профиле).
Либо в группе, либо в профиле назначить разрешённые виды цен: закупочные цены не включать.
Назначаете Пользователю новый профиль, закупочные цены будут ему не доступны.
---
Как вариант, для регистра ЦеныНоменклатуры в нужных ролях прописать в ограничения доступа к данным: ЦеныНоменклатуры ГДЕ ЦеныНоменклатуры.ВидЦены.Наименование <> "Цена закупа"
---
В настройках Группы доступа-Ограничивать на уровне записей
Скопировать любой профиль: например Менеджер по продажам и назвать Менеджер по продажам (запрет цен закуп.)
На закладке Ограничения доступа выбрать: Все запрещены исключения назначаются в группах доступа (или в профиле).
Либо в группе, либо в профиле назначить разрешённые виды цен: закупочные цены не включать.
Назначаете Пользователю новый профиль, закупочные цены будут ему не доступны.
Написал
Для Каждого РеалТов Из ДокументРеал.Товары Цикл
   Сообщить("Ном = "+РеалТов.Номенклатура);
КонецЦикла;

Здесь ДокументРеал получен по Оле
Выводит: Ном = COMОбъект
---
Например:

Соединение.XMLСтрока(РеалТов.СтавкаНДС)

Но, что-то мне кажется, что вы задаете не те вопросы.
---
РеалТов.Номенклатура
Добрый день. РеалТов.Номенклатура - это объект - OLE - Вы и выводите OLE объект через сообщить. Через OLE доступ есть только к примитивным свойствам объекта - типа строка, Дата, Число, булево. Их и можно получать через точку - типа так РеалТов.Номенклатура.Код.
---
Сообщить("Ном = "+РеалТов.Номенклатура.наименование);
---
или лучше description попробуй
---
Как получить доступ к перечислению по Оле
Сообщить("СтавкаНДС = "+РеалТов.СтавкаНДС);
Выводит
СтавкаНДС = COMОбъект
---
Например:

Соединение.XMLСтрока(РеалТов.СтавкаНДС)

Но, что-то мне кажется, что вы задаете не те вопросы.
---
Большое спасибо.
---
Добрый день.
Может поможет:
Когда приходилось анализировать перечисления из COM объектов, я использовал метод Перечисления Индекс()

ИндексСтавкаНДС = СоединениеСОМ.Перечисления.СтавкиНДС.Индекс( РеалТов.СтавкаНДС );

А потом сравнивал с нужным мне перечислением

ИндексНДС18COM = СоединениеСОМ.Перечисления.СтавкиНДС.Индекс( СоединениеСОМ.Перечисления.СтавкиНДС.НДС18 );

Если ИндексСтавкаНДС = ИндексНДС18COM Тогда
....
Доброго времени......

План счетов хозрасчетный. Добавил новый реквизит тип Перечисление. Вывел на форму, и заполнил в режиме предприятия у нужных счетов.
Счета предопределенные.
Если програмно обращаюсь к счету, например Счет = ПланыСчетов.Хозрасчетный.<Наименование> Тогда в ссылке Счет, мой реквизит не заполнен.
Если Счет = ПланыСчетов.Хозрасчетный.НайтиПоКоду("<Код>") все прекрасно, видно что в ссылке мой реквизит заполнен.
В чем причина?
---
Окажется что это два разных счета, и в первом случае реквизит не заполнен )
---
я почти уверена в этом варианте.
---
А скрин будет?
---
Да нужен скрин, а то не понятно что там и зачем добавили
---
Окажется что это два разных счета, и в первом случае реквизит не заполнен )
---
я почти уверена в этом варианте.
---
Вот так между двумя компами прыгать.... точно другой счет... 99.01.1 и 90.01.1
Коллеги, поделитесь внешней печатной формой для УТ 11.4.2, в которой можно только поменять метаданные, макет и чтобы заработала)))

Желательно для заказа поставщику, но не обязательно.
---
Желательно для заказа поставщику, но не обязательно. Да пожалуйста!
https://infostart.ru/public/704997/ - как раз "Заказ поставщику", 3 $m
https://infostart.ru/public/717444/ - тут действительно "ОЧЕНЬ до хрена печатных форм", но 8 $m

P.S. Если, конечно, истинной целью ветки не является стремление сэкономить 6 или хотя бы 1 стартмани. :)
---
Смешной запрос. Тут на ИС ОЧЕНЬ до хрена печатных форм любых видов и размеров под любые конфигурации.
---
там разве что-то поменялось? Возьми БСП и скопируй от туда шаблоны.
---
Желательно для заказа поставщику, но не обязательно. Да пожалуйста!
https://infostart.ru/public/704997/ - как раз "Заказ поставщику", 3 $m
https://infostart.ru/public/717444/ - тут действительно "ОЧЕНЬ до хрена печатных форм", но 8 $m

P.S. Если, конечно, истинной целью ветки не является стремление сэкономить 6 или хотя бы 1 стартмани. :)
---
Спасибо, истинной целью ветки была банальная лень. Скачал комплект за 8 маней