arefaste/1C_Forums huggingface dataset:
Платформа 8.3. При переносе данных в табличную часть объекта формы выдает ошибку
Ошибка при установке значения атрибута контекста (Товары)
{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(76)}:ВыгрузитьТаблицуЗначенийВМассив(Объект.Товары, Форма.Объект.Товары);
{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(58)}:ДобавитьТоварыВЗаказ();

по причине:
Нельзя изменять поле, содержащее объект данных формы

Вот код:

Процедура ДобавитьТоварыВЗаказ()

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

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

&НаСервере
Процедура ВыгрузитьТаблицуЗначенийВМассив(ИмяТаблицыОбъекта,ТаблицаДока)

 ТаблицаДанных = ИмяТаблицыОбъекта.Выгрузить();

 МассивСтрок = Новый Массив;

 Для Каждого СтрокаДанных Из ТаблицаДанных Цикл

  СтруктураСтроки = Новый Структура;

  Для Каждого Колонка Из ТаблицаДанных.Колонки Цикл

   ИмяКолонки = Колонка.Имя;
   СтруктураСтроки.Вставить(ИмяКолонки, СтрокаДанных[ИмяКолонки]);

  КонецЦикла;

  МассивСтрок.Добавить(СтруктураСтроки);

 КонецЦикла;

 ЗагрузитьТаблицуЗначенийИзМассива(МассивСтрок, ТаблицаДока);

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

&НаСервере
Процедура ЗагрузитьТаблицуЗначенийИзМассива(МассивСДанными, ИмяТаблицыОбъекта)
 ТаблицаОбъекта = ИмяТаблицыОбъекта.Выгрузить();
 ТаблицаОбъекта.Очистить();

 Для Каждого ЭлементМассива Из МассивСДанными Цикл

  СтрокаТаблицы = ТаблицаОбъекта.Добавить();
  ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ЭлементМассива);

 КонецЦикла;

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

Тут заполнить таблицу объекта формы в цикле.

Форма.Открыть();
---
```1c
    &НаСервере
    Процедура ВыгрузитьТаблицуЗначенийВМассив(Знач ИмяТаблицыОбъекта, Знач ТаблицаДока)
```
---
Ошибка уйдет, но работать не будет.
(1)Бред какой то в коде. Зачем по таблице формировать массив, если в конце этой же процедуры этот массив загружается в другую таблицу?
Достаточно в цикле обойти одну таблицу и добавить данные в другую. На клиенте, без вызова серверной процедуры.
---
но работать не будетА вот такие проблемы индейцов шерифа уже не волнуют.
---
Действительно не работает, в таблицу документа данные не передаются. А как без массива можно передать?
---
Достаточно в цикле обойти одну таблицу и добавить данные в другую. На клиенте, без вызова серверной процедуры.
После этой строки:
Форма = ПолучитьФорму("Документ.ЗаказПоставщику.Форма.ФормаДокумента", ,ЭтаФорма);

Тут заполнить таблицу объекта формы в цикле.

Форма.Открыть();
---
Действительно, благодарю! как я сразу не догадался)))
Добрый день.
Как программно назначить картинку кнопке из макета (двоичные данные картинки в формате BMP) ?

Вот такой код не работает. Вылетает с ошибкой "Недопустимое значение".

```1c
    &НаСервере
    Процедура НазначитьКартинкиКнопкам()
    КартинкаУстановленаПометка = Новый Картинка(ПолучитьМакетНаСервере("УстановленаПометка"));
    ЭтаФорма.Команды["ОтметитьВсе"].Картинка = КартинкаУстановленаПометка;
    КонецПроцедуры

    &НаСервере
    Функция ПолучитьМакетНаСервере(ИмяМакета)
    Объект1 = РеквизитФормыВЗначение("Объект");
    Макет = Объект1.ПолучитьМакет(ИмяМакета);
    Возврат Макет;
    КонецФункции

    &НаКлиенте
    Процедура ПриОткрытии(Отказ)
    // Вставить содержимое обработчика.
    НазначитьКартинкиКнопкам();
    КонецПроцедуры
```

Вот такой код тоже вылетает с той же ошибкой.

```1c
    &НаСервере
    Функция ПолучитьМакетНаСервере(ИмяМакета)
    Объект1 = РеквизитФормыВЗначение("Объект");
    Макет = Объект1.ПолучитьМакет(ИмяМакета);
    Возврат Макет;
    КонецФункции

    &НаКлиенте
    Процедура ПриОткрытии(Отказ)
    // Вставить содержимое обработчика.
    КартинкаУстановленаПометка = Новый Картинка(ПолучитьМакетНаСервере("УстановленаПометка"));
    Элементы.ОтметитьВсе.Картинка = КартинкаУстановленаПометка;
    КонецПроцедуры
```

Есть ли вообще рабочий способ ?
---
Командам и кнопкам программно можно назначать только встроенные в библиотеку картинки.
---
Вылетает с ошибкой "Недопустимое значение".
На какой строке хоть вылетает? Где недопустимое значение? В каком операторе?
---
На какой строке хоть вылетает? Где недопустимое значение? В каком операторе?
Вылетает при назначении картинки.

```1c
    &НаСервере
    Процедура НазначитьКартинкиКнопкам()
    КартинкаУстановленаПометка = Новый Картинка(ПолучитьМакетНаСервере("УстановленаПометка"));

    ЭтаФорма.Команды["ОтметитьВсе"].Картинка = КартинкаУстановленаПометка; //Здесь вылетает

    КонецПроцедуры
```
---
Командам и кнопкам программно можно назначать только встроенные в библиотеку картинки.
---
Попробуйте такую последовательность:

Двоичные данные из макета
Двоичные данные во временный файл
Новый Картинка из временного файла
Картинка в поле формы

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

Двоичные данные из макета
Двоичные данные во временный файл
Новый Картинка из временного файла
Картинка в поле формы

Если сработает...
Не срабатывает.
Поменял формат картинки в макете на png. Не работает.
А на картинке из библиотеки картинок работает нормально.
Похоже у картинки из макета(двоичные данные) и из библиотеки картинок разные форматы или типы данных.
---
Выбор картинки -- Из файла, выбираете файл и вуаля)
Всем привет, нужно задать переменную к которой буду обращаться ней из разных процедур, функций и менять ее. Вот например, нужно создать переменную благодаря которой при любом изменении на форме все предыдущие данные будут удаляться один раз и заново записывать данные из файла dbf

 ПеременУдаление=0;// ОШИБКУ Выдает такой вариант

&НаСервере
Процедура ЗаписьСправочникаНаСервере(СтруктураЗначенийПолей)

   /////////////// Удаляю все значения ////////////////////////////
  Если ПеременУдаление=0 Тогда
   Выборка=Справочники.ЗаводскоеОборудование.Выбрать();
   Пока Выборка.Следующий() Цикл
    ОбъектСправочника=Выборка.ПолучитьОбъект();
    ОбъектСправочника.Удалить();
   КонецЦикла;
   ПеременУдаление=1
  КонецЕсли;
  ////////////////////////////////////////////////////////////­////

КонецПроцедуры
---
Добавить переменную в реквизит формы
---
Вот здесь хорошо описано: https://1c.ru/rus/partners/training/courses.jsp?type=44#285
---
Добавить переменную в реквизит формы
Доброй ночи! Подскажите, первый раз такое вижу. Создаю программно документ "ЗаказПоставщику". Добавляю строки в Таблицу Запасы. Заполняется все кроме количества.
                                НоваяСтрока = Док.Товары.Добавить();
    НоваяСтрока.Номенклатура = Выборка.Ссылка;
    НоваяСтрока.Количество = 1;
    НоваяСтрока.Цена = Цена1;
    НоваяСтрока.Сумма = СуммаСтроки;
---
Есть, есть как раз КоличествоУпаковок в Рознице. Замени в коде количество на КоличествоУпаковок, посмотри результат
---
количество ставил и из выборки и просто число. Остается просто незаполненным.
---
Например, в УТ два поля Количество и КоличествоУпаковок и на форму выводится как раз второе
---
а в реквизитах ТЧ написано просто Количество
---
Розница 2.2
---
Есть, есть как раз КоличествоУпаковок в Рознице. Замени в коде количество на КоличествоУпаковок, посмотри результат
---
Спасибо тебе большое. Действительно упаковки. Интересно тогда для чего обычное количество там.
Всем доброго дня!
Попал на такую ситуацию - возврат товара от комиссионера проходит с пустым НДС, в итоге ошибка при закрытии месяца
Обнаружены отрицательные остатки по количеству в регистре себестоимости по организации.
Пробовал перепроводить документы, но указания НДС в возврате не появилось.
Возможно что-то ещё нужно добавить в документ?
---
В документе возврата указывается документ продажи для каждой строки товара. Это указание программе для расчета себестоимости. Если докумет продажи не указан, то возврат выступает в роли поступления. Себестоистоимость в этом случае берется равной сумме указанной в строке товара.
Если заводить документом Ввод остатков товаров, переданных на комиссию, то по моему его нельзя указать в качестве документа продажи в строке товара при возврате. Возможным вариантом будет создавать ввод остков собсвенных товаров, делать реализацию (передача коммисионеру) и потом делать возврат от комиссионера с указанием документа продажи.
---
Правильно ли я понимаю, что если у меня возврат от комиссионера идёт в чистую базу, то программа некорректно и считает себестоимость из-за этого?
Каким документом корректнее всего заводить информацию по передаче этого товара на комиссию - ввод остатков товаров, переданных на комиссию?
---
В документе возврата указывается документ продажи для каждой строки товара. Это указание программе для расчета себестоимости. Если докумет продажи не указан, то возврат выступает в роли поступления. Себестоистоимость в этом случае берется равной сумме указанной в строке товара.
Если заводить документом Ввод остатков товаров, переданных на комиссию, то по моему его нельзя указать в качестве документа продажи в строке товара при возврате. Возможным вариантом будет создавать ввод остков собсвенных товаров, делать реализацию (передача коммисионеру) и потом делать возврат от комиссионера с указанием документа продажи.
---
да, у меня пустой. Фактически начали работать с программой с 1 июля, товары были переданы ранее.
т.к. документ продажи не указан, он у меня и поступает, но под деятельность необлагаемую НДС и закрытие месяца корректно его отразить не может - пишет про отрицательные остатки.
Да, попробовал завести ввод остатков, выбрать его не даёт.
Видимо придётся воспользоваться как раз вашим вариантом, с фиктивной передачей на комиссию 1 июля и возвратом с указанием этого документа.
Но позиций там уже накопилось больше 10000...
Попробую ещё вариант удаления из Комплексной и засинхронизировать из бухгалтерии.
---
А в отчёте о продаже комиссионера возвраты идут с отрицательным количеством, зачем ещё требуется заводить возврат от комиссионера?
---
Отчет комиссионера нужен когда он (комиссионер) продал наш товар. Тогда он отчитывается перед нами.
Мы же рассматривали схему когда идет возврат товара от комиссионера. Прикрепил картинки с движениями товара когда создан Отчет комиссионера и когда создан Возврат от комиссионера.
Вот код, на фото видно что я вызвал току останова, но ни в одном элементе не вижу Элемент или ВыбранноеЗначение

&НаСервереБезКонтекста
Процедура ГруппаОборудованияОбработкаВыбораНаСервере(ВыбранноеЗначение)
 // Вставить содержимое обработчика.
 Для Каждого вЗнач Из ВыбранноеЗначение Цикл
  перемен=вЗнач;
 КонецЦикла;
КонецПроцедуры

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

Ошибка поле обьекта не обнаружено ВыделеныйТекст
---
А как вы формируете этот список выбора?
---
На картинке показал
---
Вот у вас пустое значение для строк в графе Значение, именно это пустое значение вы и получаете в событии Обработка выбора, когда выбираете строку из выпадающего списка.
---
я пробовал что ни будь туда записать, но не получается. ПОЧЕМУ?
---
Какого типа этот реквизит? Ссылка на справочник Группы оборудования?
Зачем вы вообще список этот заполняете?
Почему нельзя просто выбрать значение из справочника?

Снимите флаг Режим выбора из списка и очистите список выбора.
Удалите все обработчики поля.
Будет выбирать просто из справочника.
---
Без значения вы и будете получать пустую ссылку. У вас в справочнике должны быть уже созданы эти элементы справочника. Либо добавьте их в конфигураторе предопределенными элементами справочника и заполните колонку значение ими в списке выбора. Либо программно добавляйте существующие элементы справочника
---
у вас же получилось заполнить представление. Значит и есть возможность заполнить значение.
Вообще попробуйте для начала заполнить список выбора в процедуре "ПриСозданииНаСервере". А на форме очистите значение.
Имеем: обычные формы
"Управление торговлей",10.3
самописный справочник, самописный документ
Выбор в поле ввода табличного поля.
Хотелка: Добавить поиск по ключевому слову

Получилось только по первому слову наименования.

Собственно вопрос: возможно ли это сделать в обычных формах?
Как?
---
в поле вводе, есть событие АвтоПодбор пишите в нем запрос
выбрать
ссылка
из ...
где Наименование подобно "%ВведеныйТекст%"
---
Конечно, там же есть полнотекстовый поиск. В УТ 10.3 он используется в форме списка справочника номенклатуры, например, можно оттуда все стянуть.
---
в типовой, в номенклатуре - способ поиска строки при вводе по строке = "начало"
по началу и у меня получается
а по "любой части" никак ))
---
по любой части .Полнотекстовый поиск там. Только там очень много всего, в двух строчках не объяснить. Но можно выковырять и использовать. Конфигурация 10.3.13.2

/
```1c
    /функция создает сервисный объект для поиска номенклатуры
    Функция СоздатьОбъектПоискаДанныхДляНоменклатуры(Знач ЭлементФормыЗначениеОтбора, Знач ОбъектФормыСписок, Знач СписокДанных) Экспорт

    мПоискОбъектовВСпискахДанных = Обработки.ПоискОбъектовВСпискахДанных.Создать();
    мПоискОбъектовВСпискахДанных.ТипОбъектовПоиска = Тип("СправочникСсылка.Номенклатура");
    мПоискОбъектовВСпискахДанных.ПрефиксНазванияСпискаДляСохранения = "мСписокЗначенийОтбораНоменклатуры.";

    мПоискОбъектовВСпискахДанных.СписокБыстрыхОтборовПоРеквизитам = Новый СписокЗначений();
    мПоискОбъектовВСпискахДанных.СписокБыстрыхОтборовПоРеквизитам.Добавить("Наименование", "Наименование");
    мПоискОбъектовВСпискахДанных.СписокБыстрыхОтборовПоРеквизитам.Добавить("Артикул", "Артикул");
    мПоискОбъектовВСпискахДанных.СписокБыстрыхОтборовПоРеквизитам.Добавить("НаименованиеПолное", "Полное наименование");

    мПоискОбъектовВСпискахДанных.ОбъектФормыЗначениеОтбораСпискаДанных = ЭлементФормыЗначениеОтбора;
    мПоискОбъектовВСпискахДанных.ОбъектФормыСписок = ОбъектФормыСписок;
    мПоискОбъектовВСпискахДанных.Список = СписокДанных;
    мПоискОбъектовВСпискахДанных.ПрефиксПутиСохраненияНастроекПользователя = "Справочники.Номенклатура.ФормаСписка";

    Возврат мПоискОбъектовВСпискахДанных;

    КонецФункции
```
---
в поле вводе, есть событие АвтоПодбор пишите в нем запрос
выбрать
ссылка
из ...
где Наименование подобно "%ВведеныйТекст%"
---
спасибо, по вашей подсказке все получилось.
В поле ввода использовала два события АвтоПодборТекста и ОкончаниеВводаТекста
Там прописала свой запрос.
---
процедуры из общего модуля не стала использовать
ПроцедурыПоискаПоСтроке.АвтоПодборТекстаВЭлементеУправления(
ПроцедурыПоискаПоСтроке.ОкончаниеВводаТекстаВЭлементеУправления(
в них прописан поиск по началу ((
---
в них прописан поиск по началу ((
Может у меня слишком старая конфа?
---
по этому пути не пошла, мне его тоже советовали
Всем добрый.
Необходимо у огромной массы пользователей удалить одну роль.

Пишу след код:

```1c
    ПользователиМассив = ПользователиИнформационнойБазы.ПолучитьПользователей();

    Для каждого СтрокаПользователи из ПользователиМассив Цикл

    Если СтрНайти(СтрокаПользователи.ПользовательОС, "\\kry\testkry") Тогда // тут пока сделал проверку чисто по одному пользователю тестовому, потом условие будет другое

    ИмяРоли = "МОЯ РОЛЬ"; // название тут конечно другое, своё внутрннее
    Роль = Метаданные.Роли[ИмяРоли];
    Пользователь = ПользователиИнформационнойБазы.НайтиПоИмени(СтрокаПользователи.ПолноеИмя);

    Если Пользователь <> Неопределено И Пользователь.Роли.Содержит(Роль) Тогда
    Пользователь.Роли.Удалить(Роль);
    КонецЕсли;

    КонецЕСли;
    КонецЦикла;
```

Так вот, код везде идет. Удаляет, если после строчки "Пользователь.Роли.Удалить(Роль);" смотреть "Пользователь.Роли" - там роли которую я хочу удалить действительно нет. Но при повторном запуске обработки - она уже есть. Мне ещё необходимо как-то роли записать или что?
---
Записывать пользовательИБ после изменения ролей кто за вас будет?
---
Записывать пользовательИБ после изменения ролей кто за вас будет?
---
Да, о самом очевидном забыл, спасибо.
---
Конфигурация КА 1.1.
Почему не проваливется в метод ПриЗакрытииФормы?

```1c
    &НаКлиенте
    Процедура АртикулНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    //АртикулНачалоВыбораНаСервере(СтандартнаяОбработка);
    СтандартнаяОбработка=Ложь;

    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("РежимВыбора",Истина);
    ОбработкаВыбора = Новый ОписаниеОповещения("ПриЗакрытииФормы",ЭтаФорма);

    ФормаВыбора = ПолучитьФорму("Справочник.Номенклатура.ФормаВыбора",ПараметрыФормы,ЭтаФорма,,,ОбработкаВыбора);
    ФормаВыбора.Открыть();

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

    &НаКлиенте
    Процедура ПриЗакрытииФормы(Результат,ДопПараметры) Экспорт
    Если Результат <> Неопределено Тогда
    Артикул = Результат.Артикул;
    Номенклатура = УстановитьНоменклатуру(Артикул);
    КонецЕсли;
    Сообщить("123");
    КонецПроцедуры
```
---
А почему через "ПолучитьФорму", а не через "ОткрытьФорму"?
---
А почему через "ПолучитьФорму", а не через "ОткрытьФорму"?
---
Уже сам исправил,спс
---
потому что
Добрый день.
БСП, создано расширение, куда добавлена роль, роль добавлена в профиль, создана группа доступа, пользователь добавлен в группу доступа. При обновлении в предприятии назначение для пользователя сохраняется, в конфигураторе слетает.
Как поправить, кто сталкивался?
---
Вопрос решился так https://v8book.ru/public/932081/
---
Проверьте, что база была запущена с ключом /С ЗапуститьОбновление.... (точно не помню).
Тогда только перезапишите группу доступа.
---
Имеете ввиду ЗапуститьОбновлениеИнформационнойБазы? получается при каждом обновлении придется прописывать этот ключ и потом убирать его?
---
А помогло?
---
пока не могу попробовать, но решение сложнее чем проставить галку в конфигураторе одному пользователю.
---
Здесь именно прикол с ролями бывает.
---
Сейчас выяснил, что и обновления не было еще. То есть роль слетает сама по себе непонятно с чем связана.
---
попробую так сделать https://v8book.ru/public/932081/ Спасибо за помощь.
---
может быть у товарища стоят полные права, и БСП успешно убирает все лишние роли.
   попробуйте еще роль в конфу положить
---
Да так и есть.
---
Пользователи.РолиДоступны() вместо РольДоступна(),
---
РольДоступна
У меня ЖКХ там есть этот код.
---
значит ваше ЖКХ не хочет мирно жить с БСП)
---
Вопрос решился так https://v8book.ru/public/932081/
---
При создании ролей в расширении конфигурации и назначении их пользователям в конфигураторе - эти права слетают практический всегда при обновлениях
А так же слетают после внесения изменений в код самого расширения сравнением/объединением
Независимо - имеет юзер полные права или нет
---
Могли бы придумать на ролях признак не затрагивающий конкретные роли при обновлениях профилей
Порушили константу мироздания: Поставил в конфигураторе галку и эта галка - навсегда
Почему не отображается процент северной надбавки в пф Приказ о приеме Т-1? как его вывести туда,
сейчас выводится только, то что он есть "Северн.надб.", а районный коэффициент отображается нормально с коэффициентом, а не просто.
---
процент можно взять здесь КадровыйУчетРасширенный.ПроцентСевернойНадбавки
---
сделать ВПФ
---
внешнюю?
---
да, кроме того туда можно нормально вывести и другие причитающиеся надбавки сотрудника
---
а как?
---
обычно код пишется руками) Задайте вопрос яснее
---
откуда тянуть северную надбавку?
---
процент можно взять здесь КадровыйУчетРасширенный.ПроцентСевернойНадбавки
---
спасибо
Добрый день. Делаю отчет скд в расширении, при формировании запроса выдает ошибку "Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых типов". При этом в консоли запросов никаких ошибок не возникает. Подскажите, пожалуйста, как исправить? Все объекты метаданных, нужные в отчете, заимствованы в расширение.
```1c
    ВЫБРАТЬ
    ТоварыОрганизацийОстатки.КоличествоОстаток КАК КоличествоОстаток,
    АртикулыПоставщиковНоменклатураПоставщика.Номенклатура КАК Номенклатура,
    АртикулыПоставщиковНоменклатураПоставщика.Характеристика КАК Характеристика
    ИЗ
    РегистрНакопления.ТоварыОрганизаций.Остатки КАК ТоварыОрганизацийОстатки
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.АртикулыПоставщиков.НоменклатураПоставщика КАК АртикулыПоставщиковНоменклатураПоставщика
    ПО (АртикулыПоставщиковНоменклатураПоставщика.Номенклатура = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Номенклатура)
    И (АртикулыПоставщиковНоменклатураПоставщика.Характеристика = ТоварыОрганизацийОстатки.АналитикаУчетаНоменклатуры.Характеристика)
```
---
Всем спасибо. Я сделал по другому, создал отчет в консоли скд, выгрузил в xml и загрузил в свой.
---
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.АртикулыПоставщиков.НоменклатураПоставщика
это табличная часть справочника получается?

я бы тогда выбрал ее отдельно во временную таблицу по условиям отбора Номенклатуры\Характеристик и соединялся уже с временной таблицей
---
Был в платформе такой баг, попробуйте более новую версию.
8.3.23.1865 - вроде в ней исправляли.
Ну или наоборот, попробуйте на 8.3.22.
---
Сколько уже было сказано, пересказано - не надо в расширении лезть в запрос, сохраните его как внешний и проверьте, как отладите, вернете назад
---
Всем спасибо. Я сделал по другому, создал отчет в консоли скд, выгрузил в xml и загрузил в свой.
Добрый день!

Имеется конфигурация БП 3.0.

Делаю выборку документов "Поступление на расчетный счет" где вид операции указан "Оплата от покупателя". Соотвественно, в карточке документа в поле "Счёт на оплату" указана ссылка на счёт.

Пытаюсь получить эту ссылку:

```1c
    Поступление = Документы.ПоступлениеНаРасчетныйСчет.НайтиПоНомеру("00БП-000861", Дата(2023,09,20));

    Сообщить(Поступление.НазначениеПлатежа);
    Сообщить(Поступление.ДокументОснование);
```

Для некоторых документов ссылка на счёт выводится, а для некоторых нет. И причина такого поведения не ясна. В карточках документов счёт указан.
---
В качестве "пальцем в небо" - в документах, где не выводится - хранится в ТЧ РасшифровкаПлатежа.
Документ сделан так, что если в этой ТЧ 1 строка, то выглядит не как ТЧ, а как обычные реквизиты.
---
В качестве "пальцем в небо" - в документах, где не выводится - хранится в ТЧ РасшифровкаПлатежа.
Документ сделан так, что если в этой ТЧ 1 строка, то выглядит не как ТЧ, а как обычные реквизиты.
---
Спасибо, удалось получить таким способом для всех счетов.

```1c
    Поступление.РасшифровкаПлатежа.Получить(0).СчетНаОплату
```
День добрый!
Каким образом можно обратиться к реквизитам переданного в СКД параметра?
Конфигурацией в СКД передаётся параметр &Склад, нужно в СКД получить &Склад.Магазин.ФорматМагазина
В прямую в запросе не работает:

```1c
    ОбъектПланирования = &Склад.Магазин.ФорматМагазина
```

Пробовал на закладке "Параметры" добавить параметр "ФорматМагазина" у которого выражение поставить &Склад.Магазин.ФорматМагазина, тоже не работает.
Возможно ли решение?
---
На примере магазина:

1. В запросе можно записать:
Выразить(&Склад Как Справочник.Склады).Магазин.ФорматМагазина

2.Во многих типовых конфигурациях есть, что-то наподобие:

ОбщегоНазначения.ПолучитьЗначениеРеквизита(&Склад, "Магазин")
---
На примере магазина:

1. В запросе можно записать:
Выразить(&Склад Как Справочник.Склады).Магазин.ФорматМагазина

2.Во многих типовых конфигурациях есть, что-то наподобие:

ОбщегоНазначения.ПолучитьЗначениеРеквизита(&Склад, "Магазин")
---
Спасибо Александр!
Всё получилось.
---
Спасибо тоже помогло