arefaste/1C_Forums huggingface dataset:
Из конфигурации на справочнике, выбираю в справочнике ФормаЭлемента - правой кнопкой добавить в Расширение.
Выделил на скриншоте - элемент, который не выделяется цветом.
Проблема в том, что не могу изменить форуму. Элементы не перетаскиваются на форму.
Подскажите в чём проблема?
---
потыкайте пиктограммы сверху от обводки или почитайте подсказку на них
---
открыть объект плюсом, на любом его реквизите по правой кнопке - Добавить в расширение, все реквизиты почернеют и их можно добавлять на форму
---
Это было сделано. Правильный ответ ниже.
---
потыкайте пиктограммы сверху от обводки или почитайте подсказку на них
---
Спасибо! Сверху нажал на Добавить и стало активным.
---
Во первых версию платформы озвучте...
А во вторых попробуйте правой кнопкой на Объект (тот что обвели красным) и его добавить в расширение
Всем привет. Обычные формы, клиент-серверная база.
Есть справочник, содержащий отчеты поставщикам.
Есть общее регламентное задание, которое запускается раз в сутки и отправляет все отчеты с включенной галкой "Автоотправка".
Появился новый отчет, который необходимо отправлять не каждый день, а раз в месяц (01 числа). Далее будут отчеты с другим расписанием.
Для реализации этой задачи решил воспользоваться функционалом расписания, который используется в самих регламентных заданиях.
Т.е. Общее регламентное задание так и должно остаться одним, а уже при его выполнении будут браться все автоматически отправляемые отчеты, сверяться расписание и далее уже либо отправка, либо отказ.
Добавил на форму отчетов возможность редактирования расписания. Оно сохраняется, все хорошо, вот только как его расшифровать, этого не пойму.
В общем суть вопроса в том, как определить соответствует ли текущая дата полученному расписанию из очередного отчёта?

Может у кого-то был опыт? Натолкните на мысль пожалуйста.
---
У расписания регламентного задания есть метод для проверки даты:

```1c
    ТребуетсяВыполнение(<ДатаДляПроверки>, <ДатаНачалаПоследнегоЗапуска>, <ДатаЗавершенияПоследнегоЗапуска>)
```
В Вашем случае для использования данного метод придется где-то хранить даты выполнения предыдущего регламентного задания в разрезе каждого из отчетов.

В качестве альтернативы рассмотрите возможность создания собственного регламентного задания для каждого из отчетов со своим собственным расписанием. Разделить задания можно с помощью Ключа.
---
У расписания регламентного задания есть метод для проверки даты:

```1c
    ТребуетсяВыполнение(<ДатаДляПроверки>, <ДатаНачалаПоследнегоЗапуска>, <ДатаЗавершенияПоследнегоЗапуска>)
```
В Вашем случае для использования данного метод придется где-то хранить даты выполнения предыдущего регламентного задания в разрезе каждого из отчетов.

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

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

```1c
    Дата = Дата(СокрЛП( ExcelЛист.Cells(Row,1).Value));
```
---
```1c
    ДокДата = СокрЛП( ExcelЛист.Cells(Row,1).Value);
    Дата = Дата(Прав(ДокДата,4)+Сред(ДокДата,3,2)+Лев(ДокДата,2));
```
---
```1c
    ДокДата = СокрЛП( ExcelЛист.Cells(Row,1).Value);
    Дата = Дата(Прав(ДокДата,4)+Сред(ДокДата,3,2)+Лев(ДокДата,2));
```
---
, (3) Это все, конечно, замечательно, только лично для меня неясно: на показанной картинке дата в формате ДДММГГГГ или ММДДГГГГ?

Учитывая несомненный "талант" данного автора в постановке задач, не исключаю ни одного из вариантов.
---
https://infostart.ru/public/64222/
Использование регулярных выражений (RegExp) в 1С8.х
Публикация № 64222

```1c
    RegExp = Новый COMОбъект("VBScript.RegExp");// создаем объект для работы с регулярными выражениями
    RegExp.MultiLine = Истина; // истина — текст многострочный, ложь — одна строка
    RegExp.Global = Истина; // истина — поиск по всей строке, ложь — до первого совпадения
    RegExp.IgnoreCase = Истина; // истина — игнорировать регистр строки при поиске
    Шаблон = ".+@.+\..+"; //шаблон проверки e-mail
```

Для проверки правильности введенной даты.
Представление даты - "2012/01/01"
Регулярное выражение "([0-9]{4}[ /](0[1-9]|[12][0-9]|3[01])[ /](0[1-9]|1[012]))"
так можно настроить кучи патернов и автоматически преобразовывать данные в дату
---
Здравствуйте.
Может вот так:

ДатаС = СокрЛП( ExcelЛист.Cells(Row,1).Value;

ДатаДень = Лев(ДатаС, 2);
ДатаМесяц = Сред(ДатаС,3,2);
ДатаГод = Прав(ДатаС,2);

ДатаИтог = Дата(ДатаДень+"."+ДатаМесяц+"."+ДатаГод);
---
Гугл в помощь
Всем доброго времени суток. Создал http-сервис, который тянет информацию из базы и запихивает ее в ответ в виде json. Для пользователя, у которого в ролях выбрана роль "Полные права", отрабатывает замечательно, для любых других, которым я присваиваю новую специально созданную роль с разрешениями, как на скринах, выдает ошибку:

"500 - внутренняя ошибка сервера.
Проблема с запрашиваемым ресурсом; ресурс не может быть отображен.".

Роли и пользователей я создаю в конфигураторе, по советам к подобным вопросам пробовал дать разрешение новым ролям на использование сервиса - все бестолку. Прошу у вас совета, уважаемые специалисты, о том, какие права или роли надо присвоить пользователю для предоставления ему доступа только к http-сервису.
---
В настройках роли пробовал ставить все галочки вообще, непомогло
---
100% RLS не дает
---
а сервис к объектам базы не обращается, вы убедились, что на все объекты, к которым идет обращение в сервисе у пользователя сервиса есть права
---
100% RLS не дает
---
внешнее соединение не пробовал ставить?
---
В настройках роли пробовал ставить все галочки вообще, непомогло
Добрый день, возникла проблема с чеками, вообщем. При закрытии рмк с заполненным, но не пробитым чеком, он должен появиться в документе чеки ККМ с "статусом" -> "Отложен с резервированием", но каким то образом их больше нет, приходится открывать все функции и там уже документ чек ккм.
В настройках лазел;
Сам документ Чек ККМ проверил( ни чего не отключено) ;
Но неделю назад обновил конфигурацию на 11.4.10.75, но в конфигурации лазел и проблем ни каких не находил ;
---
Ошибка 00-00258810
Описание:
В журнале "Чеки ККМ" перестали отображаться чеки, у которых нет записи в РС ФискальныеОперации, в том числе отложенные чеки.
Будут исправлять в следующих версиях.
---
Ошибка 00-00258810
Описание:
В журнале "Чеки ККМ" перестали отображаться чеки, у которых нет записи в РС ФискальныеОперации, в том числе отложенные чеки.
Будут исправлять в следующих версиях.
---
Спасибо большое, я всю голову сломал, пытался версии конфигурации скрестить )))))
Доброе!

Почемуто в Расширении классический способ передачи значений при открытии формы не работает:

```1c
    &НаКлиенте
    Процедура Расш1_НастройкиБиллингаПосле(Команда)
    Параметры = Новый Структура("ИНН", "100");
    Форма=ПолучитьФорму("Обработка.ДействияLanBilling.Форма.Форма",Параметры);
    Форма.Открыть()
    КонецПроцедуры
```

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

```1c
    &НаКлиенте
    Процедура Расш1_ЗаполнитьПоФиз(Команда)

    ОписаниеОповещения = Новый ОписаниеОповещения("ВводТекстаЗавершение", ЭтаФорма);
    ВыбранноеФизЛицо = ОткрытьФорму("Документ.ПередачаМатериаловВЭксплуатацию.Форма.ФормаВыбораФизЛица",,,,,,ОписаниеОповещения);

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

    &НаКлиенте
    Процедура ВводТекстаЗавершение(Результат, Параметры) Экспорт
    если не Результат = Неопределено тогда
    ВведенныйТекст = Результат;
    КонецЕсли;

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

не могу понять как получить данные, что написать во второй форме в которой пользователь выбирает данные? какие процедуры вызывать?
Во второй форме у меня реквизитов несколько:
Заполнить по физ лицу - Данные из справочника Физ лиц, и несколько реквизитов с типом булево.
Как вытащить?
---
При таком подходе во второй форме нужно написать:

```1c
    Закрыть(ВозвращаемоеЗначение);
```
---
При таком подходе во второй форме нужно написать:

```1c
    Закрыть(ВозвращаемоеЗначение);
```
---
все отлично получилось, спасибо!
Регистр сведений скопировать программно запись.
В регистре два измерения.
И куча ресурсов.

Надо програмно скопировать, с заменой данных в одном измерении. Остальное без изменений.
Есть какие-то простые способы?
---
Такой подход считается простым?

```1c
    ИсходнаяЗапись = РегистрыСведений.<ИмяРегистра>.СоздатьМенеджерЗаписи();
    ИсходнаяЗапись.<Измерение1> = ЗначениеИзмерения1;
    ИсходнаяЗапись.<Измерение2> = ЗначениеИзмерения2;
    ИсходнаяЗапись.Прочитать();

    Если ИсходнаяЗапись.Выбран() Тогда

    НоваяЗапись = РегистрыСведений.<ИмяРегистра>.СоздатьМенеджерЗаписи();
    НоваяЗапись.<Измерение2> = НовоеЗначениеИзмерения2;

    ЗаполнитьЗначенияСвойств(НоваяЗапись, ИсходнаяЗапись, , "<Измерение2>");

    НоваяЗапись.Записать();

    КонецЕсли;
```
---
Такого монстра я нарисовал тоже.
Мне вот другой вариант предложили.
ЗаполнитьЗначенияСвойств(НоваяЗапись,СтараяЗапись);
НоваяЗапись.ЧегоИзменить=ЧемИзмениеть;
---
никаких новых способов кроме как регистратором или через менеджер записи или через набор записи не изобрели
---
Такой подход считается простым?

```1c
    ИсходнаяЗапись = РегистрыСведений.<ИмяРегистра>.СоздатьМенеджерЗаписи();
    ИсходнаяЗапись.<Измерение1> = ЗначениеИзмерения1;
    ИсходнаяЗапись.<Измерение2> = ЗначениеИзмерения2;
    ИсходнаяЗапись.Прочитать();

    Если ИсходнаяЗапись.Выбран() Тогда

    НоваяЗапись = РегистрыСведений.<ИмяРегистра>.СоздатьМенеджерЗаписи();
    НоваяЗапись.<Измерение2> = НовоеЗначениеИзмерения2;

    ЗаполнитьЗначенияСвойств(НоваяЗапись, ИсходнаяЗапись, , "<Измерение2>");

    НоваяЗапись.Записать();

    КонецЕсли;
```
---
А зачем новую запись создавать? Почему не в той же?
---
потому, что запись уже выбрана. Тем же менеджером вы перезапишите существующую запись с новым значением измерений/ресурсов/реквизитов вместо добавления новой.
---
Затупил, извиняюсь))
---
Потому что мне надо копировать, разможить запись, а не переписать.
---
Такого монстра я нарисовал тоже.
Мне вот другой вариант предложили.
ЗаполнитьЗначенияСвойств(НоваяЗапись,СтараяЗапись);
НоваяЗапись.ЧегоИзменить=ЧемИзмениеть;
---
У меня есть эти строчки.
---
Сорри не заметил. Они за экран ушли.
---
во насмешил)) Справку бы почитал сначала!
---
Расскажи, посмеёмся вместе.
---
Запросом выбрать.
И почитать справку, тем более в инете очень много примеров.
Хугля в помощь, кстати куда лучше помогает, чем здесь и быстрее.
На то они и поисковики.
---
Вопрос был ни как выбирать. Вопрос был как обойтись без множественного присваивания.
Может кто подскажит, где располагается это форма в конфигураторе. Она формируется в ЗУП 3.1 при заполнении документа доход в натуральной форме и нажатии на поле НДФЛ?
---
ОбщаяФорма.ПодробнееОРасчетеНДФЛ
---
ОбщаяФорма.ПодробнееОРасчетеНДФЛ
Помогите разобраться. Нужно получить разность между столбцами таблицы в отчете. Делаю на скд, форма управляемая 8.3.
Отчет построен на основе двух наборов данных через объединение.
Потом в Вычисляемых полях и Ресурсах прописываю выражение ЕСТЬNULL(ФормаПриемаКоличество,0) - ЕСТЬNULL(ФормаПриемаКоличествоСр,0)
Но не все строки считаются правильно
---
Сумма(ЕСТЬNULL(ФормаПриемаКоличество,0)) - Сумма(ЕСТЬNULL(ФормаПриемаКоличествоСр,0))

в ресурсах вот так?
---
спасибо начало считать!
вот еще один вариант, по которому рассчитывает правильно
ВычислитьВыражение("Сумма(РазницаКоличество)", "ФормаПриема",). Это все прописывала в ресурсах
---
Для вычисляемого поля выражение кажется правильным. А какое таки выражение используется в ресурсах?
---
в ресурсах это же выражение
---
Но почему? Почему не простое "Сумма(Разница)", если вычисляемое поле имеет путь к данным "Разница"?
---
пробовала сразу так, ничего не считает. Нашла что можно в ресурсах прописывать, начало считать, но немного криво
---
Попробуйте еще раз. Не меняя выражение вычисляемого поля.
---
а толку) если не считает
---
Не представляю, как может рассчитываться выражение из (8), но не рассчитываться простая сумма. :)
---
не знаю, первый раз так рассчитываю.... но это факт.
---
Не, ну Вы все таки попробуйте. Подозреваю, что раньше Вы в выражении вычисляемого поля не использовали ЕстьNull.
---
решение найдено. Закрыли тему
---
Делайте через ВычислитьВыражение().
https://infostart.ru/public/1101676/
---
спасибо, почитаю.
---
Сумма(ЕСТЬNULL(ФормаПриемаКоличество,0)) - Сумма(ЕСТЬNULL(ФормаПриемаКоличествоСр,0))

в ресурсах вот так?
---
нет, я одно и тоже выражение прописала и в ресурсах и в Вычисляемых полях.
Сейчас ваш вариант попробую.
---
спасибо начало считать!
вот еще один вариант, по которому рассчитывает правильно
ВычислитьВыражение("Сумма(РазницаКоличество)", "ФормаПриема",). Это все прописывала в ресурсах
---
может подскажите как правильно написать выражение для деления при условии. Если Сумма неопределено тогда 0 иначе. Если > 0 тогда Сумма/СуммаСр, если СуммаСр неопределено , тогда 100
Вот что пишу
ВЫБОР
  КОГДА Сумма >0 И СуммаСр>0
   ТОГДА (ЕСТЬNULL(Сумма, 0)/ ЕСТЬNULL(СуммаСр, 1))*100
  ИНАЧЕ ВЫБОР КОГДА НЕ СуммаСр <>0
ТОГДА 100
ИНАЧЕ ВЫБОР КОГДА НЕ Сумма <>0 ТОГДА 0
КОНЕЦ
КОНЕЦ
КОНЕЦ

 не работает, если просто деление считает, но мне надо учесть эти условия
---
все числовые реквизиты заключить в ЕСТЬNULL
---
получилось немного другим способом.
В выбранных полях прописала СуммаПроценты:
ВЫБОР
   КОГДА Сумма(СуммаСр) <> 0 ТОГДА
      Сумма(ЕСТЬNULL(Сумма,0))/Сумма(СуммаСр)*100
   ИНАЧЕ ВЫБОР КОГДА Сумма(Сумма) <> 0 ТОГДА
      100
КОНЕЦ КОНЕЦ
 в реквизитах указала просто СуммаПроценты
Считает по строкам правильно, но сумму итоговую не выводит. Хотела в вычисляемых полях сделать Итог и в выражении прописать Сумма(СуммаПроценты) но пишет поле СуммаПроценты не найдено. Может подскажете и тут....
---
направление могу подсказать. полное решение - нет.

Сумма(ВычислитьВыражениеСГруппировкойМассив(ТутВыражениеРесурса, ТутГруппировкаБазовая))

и все это задается для расчета общего итога
---
спасибо попробую
---
Получилось! спасибо
Здравствуйте, уважаемые участники форума!
Подскажите пожалуйста, можно ли как-то в запросе передавать параметр для части даты?
Запрос для выборки договоров по дате, в которой год передаётся параметром в процедуру, код ниже.
Как я поняла, с ДАТАВРЕМЯ() такой фокус не получится. Возможно, есть какие-то альтернативы?
Заранее спасибо!

```1c
    Процедура Тест(Год)
    ГодБезПробела = Строка(Год);
    ГодБезПробела = СтрЗаменить(ГодБезПробела, Символы.НПП, ");

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Год", Год);
    Запрос.Текст =
    "ВЫБРАТЬ
    | Договоры.Ссылка как Договор
    |ИЗ
    | Справочник.Договоры КАК Договоры
    |ГДЕ
    | Договоры.ДатаДоговора МЕЖДУ ДАТАВРЕМЯ(&Год, 1,1) И ДАТАВРЕМЯ(&Год, 12, 31)
    | И Договоры.НаправлениеДеятельности.Наименование = "Сельхоз" ";

    РезультатЗапроса = Запрос.Выполнить();
```
---
да я разрешил пусть делает так только заменит Запрос.Текст = СтрЗаменить(Запрос.Текст, "&Год", 2019)
перед выполнением запроса
---
разрешаю
---
Не нужно приводить значение к строке в данном случае и используйте конструкцию

 |ГДЕ
 | Год(Договоры.ДатаДоговора) = &Год

&ГОД в данном случае должен быть числом.
---
да я разрешил пусть делает так только заменит Запрос.Текст = СтрЗаменить(Запрос.Текст, "&Год", 2019)
перед выполнением запроса
---
В параметр должно передаваться числовое значение, а не строковое и заменять в тексте запроса ничего не нужно.
Сделав Запрос.Текст = СтрЗаменить(Запрос.Текст, "&Год", 2019), в тексте запроса вы получите "2 019"
---
внимательнее, не боимся, строковая переменная Текст у запроса числовые данные внутри себя не разбивает на подгруппы, в строке 2019 запроса она не превратится в 2 019 к остальному вопросов нет.. если же передавать Число(2019) то конечно надо преобразовать Форматом
---
Спасибо, разобралась
---
Вам нужно начало года и конец года?
---
К чему все эти сложности? По запросу видно что дата договора между началом и концом года.
Передавать сразу год, а в тексте писать

```1c
    ГДЕ
    Договоры.ДатаДоговора МЕЖДУ &началопериода И &конецПериода
```

ИЛИ

```1c
    ГДЕ
    Договоры.ДатаДоговора МЕЖДУ НАЧАЛОПЕРИОДА(&Год, ГОД) И КОНЕЦПЕРИОДА(&Год, ГОД)
```

Только дату передавать как дату,а не строку
---
Поддержу (6) лучше до запроса сформировать параметры с датой на основе года для начала и окончания периода.
Чем меньше дополнительных вычислений в запросе, тем он быстрее выполнится.
---
Большое спасибо. всем кто откликнулся :3
Здравствуйте! Подскажите,пожалуйста, есть макет у документа, можно ли ускорить вывод в макете, если там больше 3000 позиций и грузится из-за этого минут 15?
---
... можно ли ускорить вывод в макете, если там ...Не так давно статейка была на тему ускорения. Основная проблема - это проверка на новую страницу после вывода очередной строки. Основной путь решения - вывод на отдельную страницу, и уже для нее производить проверку вывода. После того, как проверка покажет увеличение количества страниц, эту "буферную" страницу выводить в результирующий документ.

ЗЫ: Все такие умные - огонь просто! )))
---
Путей оптимизации множество. Для начала определите самое узкое место. Например, замером времени.

К сожалению, конкретных советов Вы вряд ли получите, т.к. для более точных рекомендаций нужно больше информации. Как собираются данные, как заполняется документ, как он отображается пользователю?
---
что долго выполняется выборка или печать? Какое оборудование? Может у вас компьютер "древний" и 15 минут это еще очень даже быстро.
---
База Файловая или Клиент серверная?
Показали бы запрос, сам вывод в макет.

А для начала необходимо найти "узкое место" как уже писали выше.
---
... можно ли ускорить вывод в макете, если там ...Не так давно статейка была на тему ускорения. Основная проблема - это проверка на новую страницу после вывода очередной строки. Основной путь решения - вывод на отдельную страницу, и уже для нее производить проверку вывода. После того, как проверка покажет увеличение количества страниц, эту "буферную" страницу выводить в результирующий документ.

ЗЫ: Все такие умные - огонь просто! )))
---
Специализация: Консультант-аналитик 1С
Постановка задачи, конечно, жесть...
Ответ: можно! Обратитесь к программисту :)
---
я бы просто ответил: Можно :)
---
И получи другой вопрос " Как? " )))
---
и вот тогда ... Обратитесь к программисту! :)
Выгружаю данные в файл Excel и первая колонка выгружается в две колонки Excel. Первая колонка 1с выгружается в колонки В и С, вторая колонка в колонку D, а колонка 3 выгружается в колонку Е.
Можно сделать так, чтобы каждая колонка из 1с выгружалась только в одну колонку Excel? В данном случае 1 колонка должна =В,2 колонка=С, 3 колонка=D
---
имхо, если только в макете колонки раздъединять
---
можно, изменив макет
---
1с-ка сохраняет табличный документ в эксель так как он есть.

Вариант только менять макет, соглашусь с (3)
---
имхо, если только в макете колонки раздъединять
---
можно, изменив макет
---
1с-ка сохраняет табличный документ в эксель так как он есть.

Вариант только менять макет, соглашусь с (3)
---
я не использую макет. Нужно создать макет для табличного документа?

```1c
    ТабличныйДок=Новый ТабличныйДокумент;
    мПостроитель = новый ПостроительОтчета;

    //здесь запрос
    мПостроитель.Выполнить();
    мПостроитель.Вывести(ТабличныйДок);
    ИмяФайла = КаталогВременныхФайлов() + "111" + Формат(", "ДФ=dd.MM.yyyy") + ".xlsx";

    ТабличныйДок.Записать("11111.xlsx", ТипФайлаТабличногоДокумента.XLSX);
    ТабличныйДок.Показать();
```
---
можно и нарисовать если не сильно навороченный.
---
на сервере можно работать с макетом табличного документа?