arefaste/1C_Forums huggingface dataset:
Здравствуйте. Получаю в ут 11 номенклатуру и цены разными наборами, все работает корректно, но теперь добавил еще одно вычисляемое поле СуммаВНаличии (в выражении 0), в ресурсе

```1c
    ВЫБОР КОГДА &КоличественныеИтогиПоЕдИзм И Количество(Различные ЕдиницаОтчета) > 1 ТОГДА
    0
    ИНАЧЕ
    Сумма(ВНаличии) * Сумма(Цена)
    КОНЕЦ
```

Т.е. я умножаю количество на цену номенклатуры. Данные цен получаю в разрезе видов цен, номенклатуры и характеристик:

```1c
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.ВидЦены,
    ЦеныНоменклатурыСрезПоследних.Характеристика,
    СУММА(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних

    СГРУППИРОВАТЬ ПО
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.Характеристика,
    ЦеныНоменклатурыСрезПоследних.ВидЦены
```

В итоге сумма по строкам отображается корректно, но итог группировки по складу: если не заполнено "рассчитывать по" то не заполнены вообще, а если по видамцен, номенклатуре, характеристике, складу, то показывает общий результат по всем складам:
"По рассчитывать" пробовал и просто склад и без склада, но ничего не помогает, что делаю не так?
---
Сумма(Количество*Цена) <> Сумма(Количество)*Сумма(Цена)
---
Сумма(Количество*Цена) <> Сумма(Количество)*Сумма(Цена)
---
Здравствуйте. Блин точно, получилось. Спасибо.
Есть код на разбор в форме ФИО на составные имя/фамилию/отчество. Почему при создании кода на форме обработки он работает, а при создании на форме справочника ругается на синтаксис?
---
а при создании на форме справочника ругается на синтаксис?
Наверное, в обработке есть поле ввода ФИО, а в справочнике либо Объект.фио, либо другое имя
 Ну и саму задачу проще решать с помощью БСП . СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок - решит все проблемы
---
при создании на форме справочника ругается на синтаксис Может быть, реквизит формы "Фио" на момент вызова не заполнен? Или Вы берете данные из реквизита объекта? Тогда надо вызывать РазборФИО(Объект.Фио).
---
а при создании на форме справочника ругается на синтаксис?
Наверное, в обработке есть поле ввода ФИО, а в справочнике либо Объект.фио, либо другое имя
 Ну и саму задачу проще решать с помощью БСП . СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок - решит все проблемы
---
1. Не совсем понятен вообще код функции.
2. Если типовая, то есть ОМ ФизическиеЛицаКлиентСервер.
3. На форме справочника скорее всего (если типовая), то Объект.Наименование, если же нетиповая и на форме есть ФИО, то опять таки, скорее Объект.ФИО
Добрые люди, помогите!

Имеется самописная конфигурация на платформе 8.3. В режиме конфигурации не сохраненные изменения. При попытке их сохранить 1С просто закрывается без каких-либо жалоб. Как понять, что ей не нравится? Может где-то хранятся логи?
---
Открыть на другой платформе более старой или новой и попробовать сохранить. Попробовать режимы совместимости попереключать в корне конфигурации. Удалить отключить расширения, если они есть.
Отменить изменения и попробовать сохранить, чтобы понять что ей не нравится, сделанные изменения или просто глюк какой то.
---
Открыть на другой платформе более старой или новой и попробовать сохранить. Попробовать режимы совместимости попереключать в корне конфигурации. Удалить отключить расширения, если они есть.
Отменить изменения и попробовать сохранить, чтобы понять что ей не нравится, сделанные изменения или просто глюк какой то.
---
плюсом к этому можно переустановить уже имеющуюся платформу, запустить 1с с правами администратора, установить библиотеки Microsoft Visual C++
---
Кэш почистить
---
еще попробовать Выгрузить и Загрузить базу
еще Тестирование и исправление прогнать
---
Выгрузить CF и снова его загрузить
Всем доброго дня! Такая задача:
Есть http сервис, получает json запрос с данными, по этим данным требуется создать новый документ и заполнить Таблицу на форме документа. Создание документа происходит в общем модуле. Таблица это реквизит формы (ТаблицаЗначений). С созданием документа нет проблем, не могу понять как мне обратиться к реквизиту формы и передать туда данные.

Прошу помощи товарищи!
---
Не в ту сторону идете.
Реквизиты формы не хранят данные, а только отображают их пользователю пока форма открыта.
Смотрите откуда реквизиты формы заполняются при создании на сервере у существующих документов, и пишите данные в это место.
---
Не в ту сторону идете.
Реквизиты формы не хранят данные, а только отображают их пользователю пока форма открыта.
Смотрите откуда реквизиты формы заполняются при создании на сервере у существующих документов, и пишите данные в это место.
---
А как связана форма документа и общий модуль? Вы сразу открываете форму?
---
Для начала стоит посмотреть путь к данным данного реквизита, если Объект, работать с объектом
---
Это именно реквизит формы
---
если это реквизит формы, то он и заполняется в форме. Либо программно, либо вручную. В эту сторону и копать. Искать, где он заполняется данными, затем смотреть, откуда берутся данные :) Отладка.
---
В такой постановке задача не решается. Никак.
---
всем спасибо за ответы
Доброго времени суток, коллеги!

Сталкиваюсь с ошибкой при записи контрагента. Не могу установить причину. Буду благодарен за помощь.

```1c
    Ошибка при выполнении обработчика - 'ПриЗаписи'
    по причине:
    {ОбщийМодуль.РаботаСОбщимиПеременнымиПовтИсп.Модуль(84)}: Ошибка при вызове метода контекста (Получить)
```

В модуле исключение возникает в строке

```1c
    Возврат Константы[ИмяПараметраВР].Получить();
```

При этом

```1c
    ИмяПараметраВР = "ИСПОЛЬЗОВАТЬВЕРСИОНИРОВАНИЕОБЪЕКТОВ"
```

Имя константы задано верно. Более того, метод Получить() не срабатывает и для других констант. Если передать принудительно Ложь или Истина в строке модуля РаботаСОбщимиПеременнымиПовтИсп, то при записи контрагента возникает другая ошибка:

```1c
    {Справочник.Контрагенты.Форма.ФормаЭлемента.Форма(393)}: Ошибка при вызове метода контекста (Следующий)
    Если ВыборкаДоговоров.Следующий() Тогда
    по причине:
    В данной транзакции уже происходили ошибки!
```

Код модуля формы:

```1c
    ВыборкаДоговоров = Справочники.ДоговорыКонтрагентов.Выбрать(, Ссылка);
    Если ВыборкаДоговоров.Следующий() Тогда
```

В отладчике переменная ВыборкаДоговоров имеет тип СправочникВыборка.Контрагенты.

Помогите разобраться, не пойму куда копать...

Конфигурация: Комплексная автоматизация, редакция 1.1 (1.1.18.1) нетиповая
Платформа: 1С:Предприятие 8.3 (8.3.10.2252)
Режим: Серверный
---
Что-то ловил подобное. Дело там было не в константе, а где-то ранее Попытка Исключение в транзакции сработало. Посмотрите по стеку вызовов.
---
Эта ошибка возникает не под полными правами?
---
Права полные (забыл уточнить)
---
На константы скорее всего прав нет. А ошибка "В данной транзакции уже происходили ошибки!" возникает при повторной попытке зафиксировать транзакцию после неудачной.
---
Права полные на константы
---
А если в табло выполнить код Константы["ИСПОЛЬЗОВАТЬВЕРСИОНИРОВАНИЕОБЪЕКТОВ"].Получить() - выскочит ошибка?
---
Попробуйте получить значение константы после использования метода УстановитьПривилегированныйРежим(Истина) или в общем модуле с признаком "Привилегированный"
---
Что-то ловил подобное. Дело там было не в константе, а где-то ранее Попытка Исключение в транзакции сработало. Посмотрите по стеку вызовов.
---
Да, действительно ранее. Ошибка при установке нового кода аж в справочнике "Договоры контрагентов". Создается основной договор для нового контрагента и при установке кода возникает ошибка. Отловил. Спасибо.
---
Такой древний пост. А проблема возникла сейчас.
Полагаю ошибки такого рода возникают при обновлении. Сбиваются счётчики нумерации. Для этого после обновления запускаю обработку с текстом в модуле объекта :
  ОбновитьНумерациюОбъектов();

И как оказалось точно такая ситуация возникает и при восстановлении копии база из архива.
Так что просто примите за правило после обновления или восстановления обновлять нумерацию
одной головной боли станет меньше.
---
Спасибо! Помогло!
В УПП делал обработкой заполнение табличной части, и после этого возникли проблемы с Константы["ИСПОЛЬЗОВАТЬВЕРСИОНИРОВАНИЕОБЪЕКТОВ"].Получить()
Твой совет, lonlilokli , помог!
Вообще хочу при открытии документа в мобильном клиенте открывать специальную форму объекта. Адаптировать основную - не вариант. Там даже логика заполнения отличаться будет.
---
модуль менеджера документа, а там взять это:

 Синтаксис:
ОбработкаПолученияФормы(<ВидФормы>, <Параметры>, <ВыбраннаяФорма>, <ДополнительнаяИнформация>, <СтандартнаяОбработка>)

  Описание:
Обработчик события вызывается на сервере при получении стандартной управляемой формы.
Если требуется переопределить выбор открываемой формы, необходимо установить в параметре
<ВыбраннаяФорма> другое имя формы или объект метаданных формы, которую требуется открыть,
и в параметре <СтандартнаяОбработка> установить значение Ложь.

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

 Синтаксис:
ОбработкаПолученияФормы(<ВидФормы>, <Параметры>, <ВыбраннаяФорма>, <ДополнительнаяИнформация>, <СтандартнаяОбработка>)

  Описание:
Обработчик события вызывается на сервере при получении стандартной управляемой формы.
Если требуется переопределить выбор открываемой формы, необходимо установить в параметре
<ВыбраннаяФорма> другое имя формы или объект метаданных формы, которую требуется открыть,
и в параметре <СтандартнаяОбработка> установить значение Ложь.

  Замечание:
Безопасный режим на время исполнения данного обработчика будет отключен.
Данное замечание не относится к обработчикам событий, расположенным в расширении конфигурации.
---
ОбработкаПолученияФормы
Именно это я и искал. Спасибо.
---
Подменить - вопросов нет, а вот как изменить форму из подписки, например поле в ТЧ добавить программно?
---
из подпискиИзменить конкретно из подписки - никак. Однако, в подписке можно добавить параметр формы, а при создании формы прочитать его. Дальнейшее очевидно.
Последняя строчка кода выглядит так:

```1c
    СтрокаXML = ЗаписьXML.Закрыть();
```

как ее записать в файл?
как в обычный текстовый документ ?
---
можно.
---
предварительно нужно открыть файл
ЗаписьXML.ОткрытьФайл(...)

И уже команда:
ЗаписьXML.Закрыть();
сохранит в файл и закроет его
---
В начале выгрузки.

```1c
    ЗаписьXML = Новый ЗаписьXML;
    ЗаписьXML.ОткрытьФайл(ИмяФайла, "UTF-8");
```
---
Не могу так, может оказаться что файл разбивается на части
---
в чем проблема разбить файл на части?
все равно же придется поэлементно разбивать, нельзя ведь, чтобы в одной части была половина секции, а в другой вторая, xml получится кривая тогда
---
На дискету 1.44 записываете?
---
а можно просто как текстовый файл открыть на запись и в него записать xml-строку ?
---
можно, но тогда придется всю структуру xml перекладывать в текстовую строку, включая всякие объявления xml, спецсимволы начало\конец элементов и т.д.
---
Вообще-то, по сути, файл XML - это текстовый файл, а строка XML - это текст: в ней не должно быть символов, недопустимых для текста.

Выводы сделаете сами?
---
можно.
---
Всем спасибо!!!
Добрый день, хотел узнать, есть ли какие-нибудь типовые функции или процедуры для того, что бы таблицу значений дополнить данными из результата запроса?
---
Добавляешь ТЗ во временную таблицу, объединяешь, выгружаешь в ТЗ
---
типовые В типовом "1С:Бордель 8.3" нет.
Код подобного дополнения состоит ровно из четырех строк.
---
Добавляешь ТЗ во временную таблицу, объединяешь, выгружаешь в ТЗ
---
Зачем просто если можно сложно?))))
---
Я же не знаю, сколько у него строк, так-то проще циклом пройтись по выборке
---
```1c
    Функция ОбъединитьТаблицы(Таблица1,Таблица2)
    ОбъединениеТаблиц = Таблица2.Скопировать();
    Для н = 1 По Таблица1.Количество() Цикл ОбъединениеТаблиц.Вставить(0); КонецЦикла;
    Для Каждого к Из Таблица1.Колонки Цикл
    ОбъединениеТаблиц.ЗагрузитьКолонку(Таблица1.ВыгрузитьКолонку(к), к.Имя);
    КонецЦикла;
    Возврат ОбъединениеТаблиц;
    КонецФункции
```
---
```1c
    Для н = 1 По Таблица1.Количество() Цикл ОбъединениеТаблиц.Вставить(0); КонецЦикла;
```

Почему Вставить?
---
потому что в начало таблицы.
(9)
---
И что там с выделением памяти будет?
---
резервируются строки для вставки столбцов.
---
Большое спасибо, вопросов больше нет.
---
уже есть такая конфигурация, при чем типовая? ))
---
Ну уж если методы будем перечислять, есть статья

ОбщегоНазначения.ЗагрузитьВТаблицуЗначений.

```1c
    Процедура ЗагрузитьВТаблицуЗначений(ТаблицаИсточник, ТаблицаПриемник) Экспорт
    Для каждого СтрокаТаблицыИсточника Из ТаблицаИсточник Цикл
    СтрокаТаблицыПриемника = ТаблицаПриемник.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТаблицыПриемника,СтрокаТаблицыИсточника);
    КонецЦикла;
    КонецПроцедуры
```

ТаблицаИсточник — таблица значений, откуда берутся значения.
ТаблицаПриемник — таблица значений, куда добавляются строки.
---
Тогда лучше из выборки, чем выгружать результат запроса в ТЗ

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

Сумма(Продажи) * &ПроцентРостаПродаж
---
Ну или так:
Выбор когда &ПроцентРостаПродаж = 0 Тогда Сумма(Продажи) Иначе
Сумма(Продажи) * &ПроцентРостаПродаж Конец

И у параметра &ПроцентРостаПродаж установить свойство "Использовать = всегда"
---
В ресурсах:

Сумма(Продажи) * &ПроцентРостаПродаж
---
Ну или так:
Выбор когда &ПроцентРостаПродаж = 0 Тогда Сумма(Продажи) Иначе
Сумма(Продажи) * &ПроцентРостаПродаж Конец

И у параметра &ПроцентРостаПродаж установить свойство "Использовать = всегда"
---
Спасибо большое, работает
При создании отчет вылетела такая ошибка.
{ВнешнийОтчет.Форм.Форма.ФормаОтчета.Форма(65)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата)
  Если РасчетныйЗаказ > Остаток Тогда

Помогите, пожалуйста, исправить.

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

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Продано = 0;
    Остаток = 0;
    ДнейПродажи = 0;

    РасчетныйЗаказ = 0;
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    ОбластьДанные.Параметры.Товар = ВыборкаДетальныеЗаписи.Номенклатура;
    Продано = ВыборкаДетальныеЗаписи.Количество;
    Остаток = ВыборкаДетальныеЗаписи.КоличествоОстаток;
    ДнейПродажи = ВыборкаДетальныеЗаписи.ДнейПродажи + 1;
    ОбластьДанные.Параметры.Продано = Продано;
    ОбластьДанные.Параметры.ДнейПродажи = ДнейПродажи;
    ОбластьДанные.Параметры.Остаток = Остаток;
    РасчетныйЗаказ = Продано / ДнейПродажи * СрокЗапаса;
    Если РасчетныйЗаказ > Остаток Тогда
    ОбластьДанные.Параметры.РасчетЗаказ = РасчетныйЗаказ;
    КонецЕсли;
    ИтогоПродано = ИтогоПродано + ВыборкаДетальныеЗаписи.Количество;
    ТабДок.Вывести(ОбластьДанные);
```

До условия, для каждой строки Расчетный заказ выводился нормально.

Оно останавливается на значении когда Остаток = 0,ну точнее там пустое поле. Можно ли как-то сделать, чтобы пустое поле так и осталось визуально пустым, но считал он его как 0?
---
1. Эта ошибка возникает из-за того что КоличествоОстаток установлено в NULL. Используйте в запросе ЕстьNULL(КоличествоОстаток,0) КАК КоличествоОстаток

2. Число(РасчетныйЗаказ) > Число(Остаток) - не поможет, так как NULL нельзя преобразовать в число

3. Чтобы 0 визуально было пустым, используйте при выводе функцию Формат()
---
Если РасчетныйЗаказ > Остаток Тогда Если Число(РасчетныйЗаказ) > Число(Остаток) Тогда
---
{ВнешнийОтчет.Форм.Форма.ФормаОтчета.Форма(65)}: Преобразование значения к типу Число не может быть выполнено
  Если Число(РасчетныйЗаказ) > Число(Остаток) Тогда
---
```1c
    Если ЗначениеЗаполнено(Остаток) Тогда
    Если РасчетныйЗаказ > Остаток Тогда
    ОбластьДанные.Параметры.РасчетЗаказ = РасчетныйЗаказ;
    КонецЕсли;
    КонецЕсли;
```
---
1. Эта ошибка возникает из-за того что КоличествоОстаток установлено в NULL. Используйте в запросе ЕстьNULL(КоличествоОстаток,0) КАК КоличествоОстаток

2. Число(РасчетныйЗаказ) > Число(Остаток) - не поможет, так как NULL нельзя преобразовать в число

3. Чтобы 0 визуально было пустым, используйте при выводе функцию Формат()
---
1- Точно...Я тормоз. Спасибо большое!!!Все получилось. Даже Формат настраивать не пришлось.
---
В (3) верно написано
а если сравнить строчный тип в таком виде "800" < "600" как программа это понимает?
---
будет сравнивать по сортировке, и какая строка короче, та больше
---
так у меня по длине одинаково, а выводит результат верно
вот мне и стало не понятно
---
"800" < "600" по идее = ложь ... если отсортировать эти строки по возрастанию значения, то "600" < "800"
---
это было утрированно
Если Номер < "800" Тогда
а номер это "010", "100"... "800", "800/1"...
---
всё по сортировке значений строк
---
а дошло
спасибо)
---
не туда
В отладчике нарвался на ошибку изображенную на скриншоте.
Вопрос: откуда XML знает о типе реквизита?
---
конфигуратор - общие - xdto пакеты
---
если в конфигурации описана схем xml, то знает
а если нет, то можно привести значение к строке и ошибки не будет
---
может там пусто
---
Вопрос: откуда XML знает о типе реквизита?
Из СП:
Синтаксис:
ЗаписатьАтрибут(<ПолноеИмя>, <Значение>)
Параметры:
<ПолноеИмя> (обязательный)
Тип: Строка.
Полное имя атрибута. Может включать префикс.
<Значение> (обязательный)
Тип: Строка.
Значение атрибута.
Значением должна быть строка или возможность неявно привести к строке.
Смотрите тип, который пытаетесь использовать.
Схема xml в данном случае не используется, так как не происходит сериализации.
---
а где эту схему xml искать?
---
конфигуратор - общие - xdto пакеты
---
я в отладчике глянул, там текст
---
Хорошо, спасибо, гляну завтра, сейчас уже пора на боковую

ВСЕМ СПАСИБО за участие
---
Да , там они и оказались
Добрый день. Не могу разобраться с заполнение реквизита составного типа в табличной части документа.
Программно создаю документ. Добавляю строку в табличную часть. Реквизит строки документа составного типа имеет значение «Неопределено». Как записать туда значение?

После отработки кода Реквизит ОснованиеПлатежа = Неопределено, хотелось бы видеть там договор.

```1c
    &НаСервере
    Процедура БанкПоступлениеОКНаСервере_С()
    ДокументПост = Документы.ПоступлениеБезналичныхДенежныхСредств.СоздатьДокумент();
    Для Каждого Строка Из Строки Цикл
    СтрТЧ = ДокументПост.РасшифровкаПлатежа.Добавить();
    Договор = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("1");
    СтрТЧ.ОснованиеПлатежа = Договор;
    КонецЦикла;
    ДокументПост.Записать(РежимЗаписиДокумента.Запись, РежимПроведенияДокумента.Неоперативный);
```
---
Никаких проблем с составным типом не бывает. Никаких танцев с бубном не надо.
Если не присваивает, покажите отладку на точке где конец цикла и чтобы в табло было и переменная договор и значение реквизита СтрТЧ.ОснованиеПлатежа.
---
Вероятно вот это
```1c
    Справочники.ДоговорыКонтрагентов.НайтиПоКоду("1");
```
 возвращает Неопределено. Неопределено при НайтиПоКоду() возвращается, если для справочника длина кода указана 0. Конфигурация какая?
---
1С:ERP Управление предприятием 2 (2.5.10.63)

```1c
    Справочники.ДоговорыКонтрагентов.НайтиПоКоду("1");
```
 Тут все правильно, я получаю договор.

Проблема тут
```1c
    СтрТЧ.ОснованиеПлатежа = Договор;
```

```1c
    СтрТЧ.ОснованиеПлатежа
```
 Реквизит имеет составной тип. Но при добавлении новой строки у него значение "Неопределено"
---
Никаких проблем с составным типом не бывает. Никаких танцев с бубном не надо.
Если не присваивает, покажите отладку на точке где конец цикла и чтобы в табло было и переменная договор и значение реквизита СтрТЧ.ОснованиеПлатежа.
---
Сори все норм работает немного с типами перепутал. (У меня "договор" и "объект взаиморасчетов" имеет одинаковое наименование)
Для упращения сократил свой код. И вам написал рабочий вариант.
---
реквизит ОснованиеПлатежа не имеет в своем составе типов тип Справочник.Договор. Пихать его туда бессмысленно, если не добавить в состав составного типа для этого реквизита. Поэтому и Неопределенно, что не может его принять.
---
В типовой ЕРП есть
http://joxi.ru/GrqNn6NcbRgLDm
---
в типовой и ДоговорыКонтрагентов без кода. Так что там х.з.
---
Потому и запросил табло и точку останова (раз разработчик не умеет пользоваться отладкой)