arefaste/1C_Forums huggingface dataset:
Добрый день, никак не могу разобраться где найти обработчик кнопки в виде "+" Создать, на скрине выделена, необходимо это для того чтобы если документ/справочник создается из другого документа туда подтягивались некоторые данные из этого документа, а в конечном итоге после нажатия Записать И Закрыть возвращалась ссылка в тот документ из которого создавали второй
---
не надо путать системные/платформенные кнопки с разработанными
одни вы можете настраивать и задавать код для обработки
на другие только нажимать, с заранее предписанным результатом

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

или еще как вариант использовать БСП, можно создать ВнешнююОбработку (заполнение) назначить ей нужный тип документа,
и команда этой обработки будет доступна/появится в виде кнопки на форме/списке документа, и уже в самой обработке хоть десяток связанных документов можно насоздавать
---
не надо путать системные/платформенные кнопки с разработанными
одни вы можете настраивать и задавать код для обработки
на другие только нажимать, с заранее предписанным результатом

старайтесь используйте стандартные приемы/методологию работы с базой
интерфейс и работа с ним должны быть единообразными и интуитивно понятными.
---
Жаль, почему то думал что это из БСП откуда нибудь, все таки действительно пусть лучше такие моменты остаются как были задуманы, сделаю свою отдельную обработку с отдельной кнопкой
---
интуитивно понятными

Прямо таки повеяло стилистикой ответов 1С...

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

или еще как вариант использовать БСП, можно создать ВнешнююОбработку (заполнение) назначить ей нужный тип документа,
и команда этой обработки будет доступна/появится в виде кнопки на форме/списке документа, и уже в самой обработке хоть десяток связанных документов можно насоздавать
Здравствуйте. Подскажите, как присвоить выбранное значение из формы, открытой программно:

Процедура НазначениеНачалоВыбора(Элемент, СтандартнаяОбработка);

Форма = Справочники.НазначениеНоменклатуры.ПолучитьФормуВыбора();
форма.РежимВыбора = Истина;
Форма.Открыть();

КонецПроцедуры
---
```1c
    ВыбранныйДокумент = Форма.ОткрытьМодально();
    Если ВыбранныйДокумент = Неопределено Тогда //Документ не выбрали
    Возврат;
    КонецЕсли;
```
---
```1c
    ВыбранныйДокумент = Форма.ОткрытьМодально();
    Если ВыбранныйДокумент = Неопределено Тогда //Документ не выбрали
    Возврат;
    КонецЕсли;
```
---
Спасибо!
---
1. Стандартную обработку установить в ЛОЖЬ
2. Это обычные или управляемые формы?
3. Для возврата выбора необходимо прописать владельца, куда форма вернет результат выбора.
---
Стандартная обработка в ЛОЖЬ выставлена, тут просто забыл написать и не заметил. Спасибо. Обычные формы.
---
Как вариант, использовать в форме выбора ОповеститьОВыборе(РезультатВыбора); (прогуглите процедуру)

Другой вариант - экспортная процедура в форме владельца, к которой можно обратиться через ЭтаФорма.ВладелецФормы
---
Спасибо!
Как реализовать в типовой синхронизации между УНФ16-БП3 в одностороннем обмене.
чтоб при переносе документов:

Документ ПлатежноеПоручение и введенные на основание него документы ПоступлениеНаСчет и РасходСоСчета при переносе в БП3 изменённые в базе приёмнике(БП3) не должны перезаписываться заново, даже если они были изменены в базе-источник(УНФ16).
Как это исправить расширением.
---
Решение:
---
Добрый день! Полагаю, что нужно хранить где-то, что объекты уже выгружались. хотя бы в допсвойствах. Добавить реквизит типа "Булево". При первой выгрузке "опрокидывать", а в правилах проверять - был выгружен или нет и кидать "Отказ" = "Истина"; в правилах "Перед выгрузкой" объекта. И проходить мимо! =))
---
К сожалению я в обмене EnterpriseData не силен в КД2 там можно было сделать как описано на форуме одном

```1c
    //Для того чтобы запретить изменение существующих документов или элементов справочников при загрузке при обмене через универсальный формат, нужно в базе-приёмнике в начале обработчика ПКО_<ИмяПКО>_Получение_ПередЗаписьюПолученныхДанных соответствующего вида документов или справочника добавить следующий код:

    Если Не ДанныеИБ = Неопределено Тогда
    ПолученныеДанные = Неопределено;
    Возврат;
    КонецЕсли;
```

А как тут ((
---
Так тут еще проще. Статья в помощь любая на инфостарте. Например. За час можно сделать. там нет ничего сложного.Если с КД2 справились, тут тем более сможете.
https://infostart.ru/1c/articles/847531/
---
Решение:
Необходимо при проведения документа реализации товара провести другой документ. Как лучше всего это реализовать? На форумах люди пишут что в обработке проведения это делать не есть правильно, но не объясняют почему. Можете объяснить почему так делать нельзя и какова альтернатива?
---
В обработке проведения активна транзакция, и проводя другой документ, мы начинаем вложенную транзакцию, соот-но
- мы растягиваем транзакцию, и это плохо, так как блокировки
- если транзакция второго документа откатится, то и откатится проведение первого документа, а такого быть не должно, первый документ провели, это одни данные, факт это должен быть зафиксирован, а второй документ это другие данные

идеальной реализации нет, если б было событие объекта ПослеЗаписи (то бишь после завершения транзакции), то через него, но оно есть только на форме, и при интерактивной работе надо через него, а вот при неинтерактивной надо строить костыли с фоновыми заданиями и тп
---
В обработке проведения активна транзакция, и проводя другой документ, мы начинаем вложенную транзакцию, соот-но
- мы растягиваем транзакцию, и это плохо, так как блокировки
- если транзакция второго документа откатится, то и откатится проведение первого документа, а такого быть не должно, первый документ провели, это одни данные, факт это должен быть зафиксирован, а второй документ это другие данные

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

(6) Не вижу проблем. Сделать в событии ОбработкаУдаленияПроведения - распроведение подчиненного документа.

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

```1c
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС()
    |Склад = Регистр.ПартииТоваров.Склад;
    |Товар = Регистр.ПартииТоваров.Товар;
    |Партия = Регистр.ПартииТоваров.Партия;
    |Остаток = Регистр.ПартииТоваров.Остаток;
    |ПрихДок = Регистр.ПартииТоваров.Партия.ПрихДок;
    |Стоимость = Регистр.ПартииТоваров.Стоимость;
    |Функция ОстатокКонОст = КонОст(Остаток);
    |Функция СтоимостьКонОст = КонОст(Стоимость);
    |Группировка Партия упорядочить по Партия.ПрихДок, Партия.СерийныйНомер, Партия.ПартияОсн без групп;
    |Группировка Склад упорядочить по Склад.Наименование без групп;
    |Группировка Товар упорядочить по Товар.Наименование без групп;
    |Условие(ПрихДок = Источник);
    |Условие(Остаток > 0);
    |"//}}ЗАПРОС
    ;
    ОсновнойЗапрос = Запрос.Выполнить(ТекстЗапроса);
    ВходящиеДанные = СоздатьОбъект("ТаблицаЗначений");
    Запрос.Выгрузить(ВходящиеДанные,0,0);

    ВходящиеДанные.ВыбратьСтроки();
    Пока ВходящиеДанные.ПолучитьСтроку() = 1 Цикл
    Сообщить(Шаблон("[ВходящиеДанные.Товар] х [ВходящиеДанные.ОстатокКонОст] ед., [ВходящиеДанные.СтоимостьКонОст]р."));
    КонецЦикла;

    Если (ВходящиеДанные.КоличествоСтрок()=0) Тогда
    Отказ = 1;
    КонецЕсли;
```

В условии Источник - это документ поступления товаров, поскольку в поле ПрихДок находиться именно поступление.
Помогите, кто подскажет что.
---
если не работает по 1 документу, значит на остатках нет партий с этим документом
---
вы уверены, что проблема локализована именно в запросе, а не в связях (всяческих галках/свойствах) в схеме конвертации
---
как-то все это выглядит не так :)
---
а уже потом - правило конвертации
---
Прикол в том, что оно работало минут 30 назад, начал чуть изменять правила, и перестало выгружать.
И понять не могу, почему не выгружает.
---
елы-палы! у вас семёра!
сорян, натюрлих
---
в семерке надо модуль обработки выгрузки/загрузки подменять каждый раз, когда меняете исполняемый код в правилах, надеюсь вы не забыли это сделать? :)
---
Да, это я знаю) Не забываю)
Просто если взять по складу отбор сделать, то работает отбор, а вот именно по 1 документу, не работает.
---
параметры не те задаются
можно поставить вывод всего и посмотреть. Или просто с отладчиком прогнать, это же обычная внешняя обработка.
---
если не работает по 1 документу, значит на остатках нет партий с этим документом
---
Да, это я лоханулся, был расход по документу, и его теперь нет в партии.
Здравствуйте!
Подскажите пожалуйста в чем проблема?
Формирую и отправляю письмо.
В браузере текст входящего (отправленного из 1С) выглядит великолепно,
а в Outlook первая строка это текст письма, а последующие строки вложениями txt (каждая строка отдельным файлом).
Что нужно Outlook-у для нормального отображения?

Строки = СтрРазделить(Структура.ТекстПриОтправкеСчетаНаОплату,Символы.ПС);
  Для каждого Стр Из Строки Цикл
  Сообщение.Тексты.Добавить(Стр, ТипТекстаПочтовогоСообщения.ПроизвольныйТекст);
  КонецЦикла;
  Сообщение.Вложения.Добавить(КаталогВременныхФайлов()+ИмяФайлаДляОтправки);
 Почта = Новый ИнтернетПочта();
  Почта.Подключиться(Профиль);
         Почта.Послать(Сообщение);
  Почта.Отключиться();
---
Не понятно, для чего вы делаете так:

Строки = СтрРазделить(Структура.ТекстПриОтправкеСчетаНаОплату,Символы.ПС);
Для каждого Стр Из Строки Цикл
Сообщение.Тексты.Добавить(Стр, ТипТекстаПочтовогоСообщения.ПроизвольныйТекст);
КонецЦикла;

Лично я сделал бы так:

```1c
    Сообщение.Тексты.Добавить(Структура.ТекстПриОтправкеСчетаНаОплату);
```
---
Не понятно, для чего вы делаете так:

Строки = СтрРазделить(Структура.ТекстПриОтправкеСчетаНаОплату,Символы.ПС);
Для каждого Стр Из Строки Цикл
Сообщение.Тексты.Добавить(Стр, ТипТекстаПочтовогоСообщения.ПроизвольныйТекст);
КонецЦикла;

Лично я сделал бы так:

```1c
    Сообщение.Тексты.Добавить(Структура.ТекстПриОтправкеСчетаНаОплату);
```
---
Сначала написал так, но текст письма был одной длинной строкой.
Вот и пытался поделить на строки.
Сейчас опять попробовал и все работает. Спасибо.
Здравствуйте.
Не могу понять как правильно работать с макетом СКД.

Нарисовал шапку с заголовком.
Установил заголовок у группировки
В строках указал параметры.

При выводе шапка и группировки не стыкуются. В чем тут дело подскажите пожалуйста.
---
Шапка должна быть в Группировке в "ЗаголовокГод", а она у Вас в "Доп. информации"
---
Шапка должна быть в Группировке в "ЗаголовокГод", а она у Вас в "Доп. информации"
---
Спасибо!
---
В (2) вам подсказали. Или можно вложить группировки в группировку с именем "Заголовок"
Доброго дня программисты, вызвала затруднение следующая задача.

Есть отчет СКД без оформления.
Есть поле КоличествоЛистов с наименованием: отчет на __ листах

Как посчитать количество листов всего на печать и вывести в поле КоличествоЛистов, программно или с помощью интерфейса, значения не имеет, заранее спасибо откликнувшимся за помощь.

```1c
    ПриКомпановкеРезультата - ДокументРезультат.КоличествоСтраниц() = 0 - всегда.
```

(колонтитулы задействовать не нужно)
---
ПриКомпановкеРезультата - ДокументРезультат.КоличествоСтраниц() = 0
Верно. ПриКомпоновкеРезультата - событие Перед компоновкой по сути, т.е. табличный документ еще не сформирован.

Я бы сделал так:
1. В ПриКомпоновкеРезультата СтандарнаяОбработка = Ложь
2. Компонуем результат программно https://infostart.ru/public/80164/
3. Выводим отдельно в табличный документ количество страниц

Можно пойти по-другому, если таб.док небольшой - можно программно скомпоновать результат, посмотреть сколько страниц, за тем, в параметры компоновщика поставить значение и компоновать стандартно
---
ПриКомпановкеРезультата - ДокументРезультат.КоличествоСтраниц() = 0
Верно. ПриКомпоновкеРезультата - событие Перед компоновкой по сути, т.е. табличный документ еще не сформирован.

Я бы сделал так:
1. В ПриКомпоновкеРезультата СтандарнаяОбработка = Ложь
2. Компонуем результат программно https://infostart.ru/public/80164/
3. Выводим отдельно в табличный документ количество страниц

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

Сделать макет компановки, процессор вывода, вывести и тогда таб док заимеет это свойство
---
Делал, КоличествоСтраниц() выдает не верно 220, по факту 1 )
---
количество страниц зависит от настроек принтера формата страницы и параметров печати. Необходимо предварительно заполнить эти параметры табличного документа
---
Всем спасибо, получилось. Ошибка была в том что предварительно не указал параметры печати.
в главной базе изменили расширение и отправили обновление по узлам, в одном выдает ошибку и не обновляет, остальные нормально
Ошибка разбора XML: - [1,1]
Фатальная ошибка:
Document is empty
SystemId: file://C:/Users/user/AppData/Local/Temp/Exchange82 {863B9F4D-EF50-41A8-95DA-38341DA1CD09}/Message_ЦБ_ПЛ.xml
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(3418)}: ФайлОбмена.Прочитать(); // Message.
{Обработка.КонвертацияОбъектовРаспределенныхИнформационныхБаз.МодульОбъекта(38)}: РезультатАнализаДанныхКЗагрузке = ОбменДаннымиСервер.РезультатАнализаДанныхКЗагрузке(ИмяФайлаСообщенияОбмена(), Ложь, Истина);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(7459)}: ОбработкаОбменаДанными.ВыполнитьЗагрузкуДанных(Отказ, ТолькоПараметры, СообщениеОбОшибке);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(7104)}: ПрочитатьСообщениеСИзменениямиДляУзла(СтруктураНастроекОбмена, СообщениеОбмена, , ТолькоПараметры);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(5322)}: ВыполнитьОбменДаннымиЧерезФайловыйРесурс(СтруктураНастроекОбмена);
{ОбщийМодуль.ОбменДаннымиВызовСервера.Модуль(91)}: ОбменДаннымиСервер.ВыполнитьОбменДаннымиПоСценариюОбменаДанными(Отказ, НастройкаВыполненияОбмена, НомерСтроки);
{Справочник.СценарииОбменовДанными.Форма.НастройкаРасписанияОбменовДанными.Форма(161)}: ОбменДаннымиВызовСервера.ВыполнитьОбменДаннымиПоСценариюОбменаДанными(Отказ, ТекущиеДанные.Ссылка);

по причине:
Ошибка разбора XML: - [1,1]
Фатальная ошибка:
Document is empty
SystemId: file://C:/Users/user/AppData/Local/Temp/Exchange82 {863B9F4D-EF50-41A8-95DA-38341DA1CD09}/Message_ЦБ_ПЛ.xml
---
что было так и не понял, но обмен пошел после того как снял галку "сжимать файл"
Видать при разархивировании бился файл
---
еще плюсом надо надо в сценарии синхронизации отключить ее а потом включить
---
Document is empty
перевод нужен ?
---
обожаю "умные" ответы, то что там написано и так понятно,что сделать можно чтобы обмен пошел
---
что было так и не понял, но обмен пошел после того как снял галку "сжимать файл"
Видать при разархивировании бился файл
---
еще плюсом надо надо в сценарии синхронизации отключить ее а потом включить
В таблице значений выгружены название внешних отчетов. Как при нажатии на название отчета открыть форму внешнего отчета?
Если точно знали название внешней обработки или знали как называется отчет без пробел, можно было открыть, например, так:

```1c
    ФормаОбработки = ПолучитьФорму("Обработка.РасчетДанных.Форма.Форма2");
```

Как открыть форму внешней обработки?

Обычные формы
---
1.получить двоичные данные обработки/отчета из реквизита справочника, где они хранятся
2. сохранить на диск двоичные данные из п.1
3. подключить внешнюю обработку через файл из п.2.
4. получить форму обработки из п.3
5. открыть форму из п.4
---
```1c
    ИмяФайлаОтчета = КаталогВременныхФайлов() + "Report.tmp";
    Отчет = Справочники.ВнешниеОбработки.НайтиПоКоду("000008888");

    ДвоичныеДанные = Отчет.ХранилищеВнешнейОбработки.Получить();
    ДвоичныеДанные.Записать(ИмяФайлаОтчета);

    НужныйОтчет = ВнешниеОтчеты.Создать(ИмяФайлаОтчета, ложь);
    Форма = НужныйОтчет.ПолучитьФорму();
    Форма.Открыть();
```
---
1.получить двоичные данные обработки/отчета из реквизита справочника, где они хранятся
2. сохранить на диск двоичные данные из п.1
3. подключить внешнюю обработку через файл из п.2.
4. получить форму обработки из п.3
5. открыть форму из п.4
---
спасибо
---
Примерно так:

```1c
    СправочникОбработка = Справочники.ВнешниеОбработки.НайтиПоКоду("00");
    ХранилищеОбработки = СправочникОбработка.ХранилищеВнешнейОбработки;
    ВременныйФайл = ПолучитьИмяВременногоФайла("epf");
    ХранилищеОбработки.Получить().Записать(ВременныйФайл);
    Обработка = ВнешниеОбработки.Создать(ВременныйФайл, Ложь);
    ФормаОбработки = ПолучитьФорму("Обработка.РасчетДанных.Форма.Форма2");
```
---
в вашем примере можно было написать только это:

```1c
    ФормаОбработки = ПолучитьФорму("Обработка.РасчетДанных.Форма.Форма2");
```

без всего этого:

```1c
    СправочникОбработка = Справочники.ВнешниеОбработки.НайтиПоКоду("00");
    ХранилищеОбработки = СправочникОбработка.ХранилищеВнешнейОбработки;
    ВременныйФайл = ПолучитьИмяВременногоФайла("epf");
    ХранилищеОбработки.Получить().Записать(ВременныйФайл);
    Обработка = ВнешниеОбработки.Создать(ВременныйФайл, Ложь);
```
---
```1c
    ИмяФайлаОтчета = КаталогВременныхФайлов() + "Report.tmp";
    Отчет = Справочники.ВнешниеОбработки.НайтиПоКоду("000008888");

    ДвоичныеДанные = Отчет.ХранилищеВнешнейОбработки.Получить();
    ДвоичныеДанные.Записать(ИмяФайлаОтчета);

    НужныйОтчет = ВнешниеОтчеты.Создать(ИмяФайлаОтчета, ложь);
    Форма = НужныйОтчет.ПолучитьФорму();
    Форма.Открыть();
```
---
так вроде ж работает всё без временного файла...

сначала на сервере:
```1c
    ИмяОбработки = ВнешниеОбработки.Подключить(АдресВременногоХранилища)
```

потом на клиенте
```1c
    ОткрытьФорму("ВнешняяОбработка."+ИмяОбработки +".Форма")
```
в расширении в справочник партнеры добавлена новая табличная часть ТопКлиентов. Нужно программно вывести ее на форму, чтобы она отображалась как типовая с номером строки и тп.
Пробовала так, но ничего не выводится. подскажите как правильно сделать.

```1c
    ЭлементТаблица = Элементы.Добавить("ТопКлиентов", Тип("ТаблицаФормы"),Элементы.ГруппаДополнительныеРеквизиты);
    ЭлементТаблица.Заголовок = "Таб. часть";
    ЭлементТаблица.ПутьКДанным = "Объект.ТопКлиентов";

    НовыйЭлемент = Элементы.Добавить("ТопКлиент", Тип("ПолеФормы"), Элементы.рзд_ТопКлиентов);
    НовыйЭлемент.Заголовок = "Клиент";
    НовыйЭлемент.ПутьКДанным = "Объект.ТопКлиентов.Клиент";
    НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
```
---
в общем случае вот так должно работать:

```1c
    ЭлементТаблица = Элементы.Добавить("ТопКлиентов", Тип("ТаблицаФормы"),Элементы.ГруппаДополнительныеРеквизиты);
    ЭлементТаблица.Заголовок = "Таб. часть";
    ЭлементТаблица.ПутьКДанным = "Объект.ТопКлиентов";

    НовыйЭлемент = Элементы.Добавить("ТопКлиентовНомерСтроки", Тип("ПолеФормы"), ЭлементТаблица);
    НовыйЭлемент.Заголовок = "N";
    НовыйЭлемент.ПутьКДанным = "Объект.ТопКлиентов.НомерСтроки";

    НовыйЭлемент = Элементы.Добавить("ТопКлиентовКлиент", Тип("ПолеФормы"), ЭлементТаблица);
    НовыйЭлемент.Заголовок = "Клиент";
    НовыйЭлемент.ПутьКДанным = "Объект.ТопКлиентов.Клиент";
    НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
```

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

```1c
    ЭлементТаблица = Элементы.Добавить("ТопКлиентов", Тип("ТаблицаФормы"),Элементы.ГруппаДополнительныеРеквизиты);
    ЭлементТаблица.Заголовок = "Таб. часть";
    ЭлементТаблица.ПутьКДанным = "Объект.ТопКлиентов";

    НовыйЭлемент = Элементы.Добавить("ТопКлиентовНомерСтроки", Тип("ПолеФормы"), ЭлементТаблица);
    НовыйЭлемент.Заголовок = "N";
    НовыйЭлемент.ПутьКДанным = "Объект.ТопКлиентов.НомерСтроки";

    НовыйЭлемент = Элементы.Добавить("ТопКлиентовКлиент", Тип("ПолеФормы"), ЭлементТаблица);
    НовыйЭлемент.Заголовок = "Клиент";
    НовыйЭлемент.ПутьКДанным = "Объект.ТопКлиентов.Клиент";
    НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
```

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

Столкнулся с такой ситуацией:

Есть конфигурация (БСП) 1С:Предприятие 8.3 (8.3.18.1208).

1. Есть клиенты, которые работают под Windows у них с цветами 1С всё нормально.

2. Есть пользователи, которые работают под Linux и у них цвета отображаются некорректно (работать долгое время с такими цветами трудно для глаз).

Решение этой проблемы есть: можно внешний вид переключить на "Формы в закладках", в котором цвета отображаются корректно.

Но есть проблема: под административными правами можно легко переключить внешний вид, а вот под пользователем этого сделать нельзя (где-то прописано ограничение).

Если вы знаете, как это можно сделать, подскажите, пожалуйста!

(изображение некорректного вывода цвета прилагаю)

Огромная благодарность!
---
Дать пользователю полные права, переключить интерфейс на формы в закладках, отобрать права, скопировать настройки этого пользователя для других пользователей.
---
По поводу бледного шрифта в линуксе.
Ищите настройки font/type hinting в настройках оконного менеджера и попробуйте выкрутить его на максимум.
После этого перезапустите 1С.
---
Дать пользователю полные права, переключить интерфейс на формы в закладках, отобрать права, скопировать настройки этого пользователя для других пользователей.
---
А когда кеш почистят или пользовательские настройки - слетит?
---
Премного благодарен!

Чёткое и верное решение...
---
Попробовать убрать этот режим "Такси" вообще у всех
В свойствах корневого элемента конфигурации

https://forum.infostart.ru/forum64/topic171830/