arefaste/1C_Forums huggingface dataset:
{ВнешняяОбработка.Запросник2_0.Форма.Форма.Форма(773)}: Ошибка при вызове метода контекста (Выполнить): {(14, 3)}: Синтаксическая ошибка "Запрос.УстановитьПараметр("СобИнвНомер","
<<?>>Запрос.УстановитьПараметр("СобИнвНомер", Значение)

Не пойму в чем именно ошибка
---
Или Вы не дописали, или
```1c
    Запрос = Новый Запрос; Запрос.Текст = "...";
```

Ну, и если используете консоль, то обычно в тексте пишется только запрос, параметры указываются в отдельных полях.
---
Или Вы не дописали, или
```1c
    Запрос = Новый Запрос; Запрос.Текст = "...";
```

Ну, и если используете консоль, то обычно в тексте пишется только запрос, параметры указываются в отдельных полях.
---
Да с параметрами разобрался, только вот теперь запрос выполняется уже 10 минут.
Может неправильно указал тип параметра Значение
Значение = ЭлементыФормы.ТаблицаТоваров.ТекущаяСтрока.ИнвНомерСкр; - указал строка тк ИнвНомерСкр - строка
---
Ошибка не соответствует тому, что написано в теме.

Или вы часть исправить успели или прикрепите обработку
Доброе время суток, уважаемые!
Не могли бы вы помочь мне в, возможно, глупой (с точки зрения профессионализма), однако мучающей меня сегодня несколько часов проблеме?

Есть регистр остатков. При элементарном запросе для получения конечного остатка на текущую дату, с единственной группировкой возвращает 1 (слева на скрине), хотя должно быть 0. Регистр был закрыт правильно. Был приход 1 и расход 1. Это отчетливо видно на универсальном отчете по регистрам (справа на скрине).

Я действительно не понимаю что не так делаю в запросе и с чем это может быть связано.

Заранее благодарю!
---
Потому что Условие(запрос. ....) не всегда работает корректно.
Лучше его не использовать.
---
Запрос не показываем.
параметры не показываем.

Гадайте, люди добрые, мы сами неместные...
---
это тот который слева. тот который справа, формируется на уровне метаданных
---
а если условие убрать?
---
ну мне нужны только положительные значения. у меня реально много НУЛЕВЫХ, они меня не интересуют..
---
1. Я спросил не "зачем там условие", а "что получится, если его убрать"
2. В регистре правильном не должно быть нулевых остатков
---
Действительно, если убрать условие ">0" будет вот такой результат:
не подскажите из-за чего это может быть?
---
Потому что Условие(запрос. ....) не всегда работает корректно.
Лучше его не использовать.
---
Спасибо огромное за помощь!

2. В регистре правильном не должно быть нулевых остатков
Логически я это понимаю, но у меня они есть. Это означает я неправильно делаю "Расход"?
---
Нет, просто не договариваешь. Если регистр по измерениям закрылся в ноль - запрос КонОст такое просто не покажет. А если показывает - значит, есть больше одного ресурса. И вот этот большеодин - не закрывается.
---
Очень странно. Конкретно в этом примере ПРИХОД 1 - РАСХОД 1. КонОст = 0. Или я что-то не так понимаю?)
---
Это все ресурсы? Может, ещё сумма есть?
---
Да, только количество.
---
ооой, извиняюсь) точно.

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

    Запрос.Выполнить(ТекстЗапроса);

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

```1c
    Запрос 1
    ВЫБРАТЬ
    ЗаказПокупателя.Ссылка КАК Заказ,
    ЗаказПокупателя.ОсновнойМенеджер КАК менеджер,
    ЗаказПокупателя.СуммаДокумента
    ИЗ
    Документ.ЗаказПокупателя КАК ЗаказПокупателя
    ГДЕ
    ЗаказПокупателя.Дата >= &выбдата
```

Запрос2:

```1c
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка КАК Акт,
    РеализацияТоваровУслуг.Ответственный КАК Менеджер,
    РеализацияТоваровУслуг.СуммаДокумента
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.Дата >= &выбдата
```

Теперь хочу сделать один общий отбор, например по менеджеру.
Делаю эти две таблицы, добавляю в группировки менеджера и имею ошибку "Использование полей из не связанных наборов данных не допустимо"

Могу переименовать менеджеров в запросе, например, менеджер_заказ и менеджер_акт, но тогда появятся два независимых отбора.
А хочется сделать один.

Можно это обойти без программной настройки всего этого добра?
---
В общем обошёл таким образом.
Создал ещё один запрос, по менеджерам.
С ним соединил все остальные по нужному полю. Менеджеров всех остальных запросов добавил в поля, запрещённые к выбору.
И вынес отбор только по новому запросу на форму.
Вроде как работает.
---
Введите в оба запроса фейковое булевое поле "Связь"
и установите по нему связь, чтобы избавить СКД от ругательств. Это сомнительный костыль.

А вообще такие задачи проще решить одним запросом с ОБЪЕДИНИТЬ

наверняка есть более рациональные решения, но мне лень вникать
---
Запросы друг с другом не связаны в принципе.
Тем более - у меня в реале этих запросов - 20 штук )))
И связь делать каждый к каждому...
---
Никто такими извращениями не занимался?
---
В общем обошёл таким образом.
Создал ещё один запрос, по менеджерам.
С ним соединил все остальные по нужному полю. Менеджеров всех остальных запросов добавил в поля, запрещённые к выбору.
И вынес отбор только по новому запросу на форму.
Вроде как работает.
Привет всем, интересует такой вопрос.

Как можно осуществить быстрый поиск по табличной части документа, например "Отчет о розничных продажах" (рисунок 1). Например нужно найти позицию "Память SanDisk...", начинаю набор на клавиатуре, сразу редактируется выбранная позиция (рисунок 2).

Поиск Ctrl + F не подходит.

За ранее спасибо.
---
Через "Изменить форму" выведите в таблицу поле "Номенклатура.Наименование", пусть по нему поиск делают
---
Я не прав, эту функцию включать нужно, но что бы она работала правильно у поля табличной части в свойстве "РежимРедактирования" нужно установить "Вход", тогда при вводе с клавиатуры не будет редактироваться номенклатура.
---
Еще можно попробовать установить свойство таблицы формы "Поиск при вводе" в значение "Использовать"
---
Ctrl+F работает, если ткнуть перед этим в табличную часть
---
Я знаю что он работает, но он не подходит. Нужен именно быстрый поиск, а по Ctrl + F нельзя сделать поиск по первым двум символам, а именно нужно выбрать номенклатуру. Это сильно замедляет процесс.
---
В поле "Где искать" у вас есть пункт "Номенклатура (по строке)"? Если да, то оно вам и нужно
---
Так то оно так, но пользователей все равно не устраивает такой вариант.. Так как много лишних действий, поиском им приходится пользоваться много.
---
Через "Изменить форму" выведите в таблицу поле "Номенклатура.Наименование", пусть по нему поиск делают
---
неплохой вариант, спасибо!
---
Еще можно попробовать установить свойство таблицы формы "Поиск при вводе" в значение "Использовать"
---
Это как раз и даёт тот функционал, который есть сейчас, при вводе начинается редактирование позиции и идёт поиск по всей номенклатуре.
---
Я не прав, эту функцию включать нужно, но что бы она работала правильно у поля табличной части в свойстве "РежимРедактирования" нужно установить "Вход", тогда при вводе с клавиатуры не будет редактироваться номенклатура.
Здравствуйте.
Как проверить существование каталога?
Проверял так (как и в и-нете пишут):

```1c
    Файл = Новый Файл(Путь);
    Если Не Файл.Существует() тогда
    // нет пути
    конецесли;
```

Но в клиент-серверной базе не хочет работать, почему?
---
Если на сервере, то проверяется, есть ли каталог на компьютере с сервером 1С и из-под пользователя, от которого запущена служба сервера 1С.
---
Этот кусок на клиенте или на сервере выполняется?
"Не хочет работать" - это какую конкретно ошибку выдаёт?
---
НаСервере
Выдает, что нет каталога.
---
Потому, что на сервере действительно нет этого каталога. В клиент-серверной базе надо ВСЕГДА учитывать ГДЕ исполняется код - на сервере или на клиенте.
---
А какие пути видно НаСервере СУБД?
Она на том же ПК (терминальном сервере) развернута, или она, там на неизвестно каком разделе развернута и не видит стандартный путь c:\ (или видит, но он другой для нее)?.

Так то я понял, что надо по другому делать.
---
Если на сервере, то проверяется, есть ли каталог на компьютере с сервером 1С и из-под пользователя, от которого запущена служба сервера 1С.
---
Ну, скорее всего, тут на этом терминальном сервере службу запустил Сис. админ и он также просто пользоваетель этого терминального Windows.
Т.е. должен те же пути видеть, что и под просто пользователем, под которым я пытаюсь проверить существование каталога.

Хотя я сейчас не там, я проверял путь //tsclient/... т.е. относительно тек. пользоваетля.
Ясно, что под админом он не виден.

Но надо будет проверить, просто папку на диске c, например.
---
А какие пути видно НаСервере СУБД?Вообще никакие. Ибо 1с к серверу СУБД вообще не имеет ни малейшего отношения. Речь о файловой системе с сервером 1с. И той части, которая видна юзеру, под которым этот самый сервер 1с запущен. Права ваши, сисадминские и прочие тут никаким боком и рядом не лежат.
---
Ну да, ясно, что не про СУБД речь.
Имел ввиду что видно "при выполнении кода НаСервере"
Как это назвать правильно, сервер 1С, серверная часть 1С?
---
сервер 1С
Может кто знает планируют ли разработчики в обновлениях добавить функционал с новым порядком исчисления ндс при реализации лома, сырых шкур и алюминия вторичного.
Знаю что в некоторых конфигурациях это уже сделано!
Вопрос будут ли изменения в УПП 1.3 ???
---
http://v8.1c.ru/lawmonitor/lawchanges.jsp?lawSectionUuid=6ee83f39-8f12-422c-97a2-5c2009c2a458

 Управление производственным предприятием, редакция 1.3 Запланировано 12.01.2018
---
http://v8.1c.ru/lawmonitor/lawchanges.jsp?lawSectionUuid=6ee83f39-8f12-422c-97a2-5c2009c2a458

 Управление производственным предприятием, редакция 1.3 Запланировано 12.01.2018
---
Спасибо!!
1С:Предприятие 8.2 (8.2.19.83)

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

А теперь есть галочка, ставишь галочку "просмотр результата" и там править нет возможности.
Подскажите в чем дело??
---
ты вот так заходишь? https://ibb.co/hV33Gm
---
Похоже, что на поддержке.
---
Ну да, на поддержке с возможностью редактирования.

А как иначе?
---
Снял с поддержки, накатил обновление из файла.

Опять нет возможности редактировать результат объединения.
---
Вот скриншот.
---
Тут видна галочка.
---
а как ты заходишь в настойку функций?
скорее всего ты заходишь через показать различия, а надо через настройка объединения
---
я ставлю галочку

"Показать различия" - это на втором рисунке видно, внизу.
Только тогда показывает.
---
ты вот так заходишь? https://ibb.co/hV33Gm
---
Там и вариантов нет, выбираешь Луппу и заходишь.
А если через клик правой клавиши мыщи, то он вообще объединить не дает, только сравнение будет.
---
Ясно, это только в в 8.3, так.
В общем накатил в пустую файловую базу конфу. У меня на сервере 8.2, а на компе 8.3
И уже там можно править с удобством.
8.3 УФ

Как можно после заполнения(изменения) ячейки 1 перейти в другую ячейку 2, с открытием справочника и отбором по значению ячейки 1?

ячейка 1 - справочник номенклатура
ячейка 2 - справочник спецификация (связь параметра выбора: Отбор.Владелец(Продукция.Номенклатура))

```1c
    &НаКлиенте
    Процедура ПродукцияНоменклатураПриИзменении(Элемент)
    СтрокаТаблицы = Элементы.Продукция.ТекущиеДанные;

    СтрокаТаблицы.Спецификация = СтрокаТаблицы.Спецификация............................;
    КонецПроцедуры
```
---
можно: АвтоВыборНезаполненного = Истина и РежимВыбораНезаполненного = РежимВыбораНезаполненного.ПриАктивизации;
---
Получить форму выбора и передать в нее отбор ? https://infostart.ru/public/236382/
---
- перейти в ячейку спецификация, активировать нажатие показать все
---
ну, можно и так сказать )
---
- так открывает и получает отбор спецификаций по номенклатуре

```1c
    &НаКлиенте
    Процедура ПродукцияНоменклатураПриИзменении(Элемент
    П = Новый Структура;
    СтрокаТаблицы = Элементы.Продукция.ТекущиеДанные;
    Номенклатура = СтрокаТаблицы.Номенклатура;
    Отбор = Новый Структура;
    Отбор.Вставить("Владелец", Номенклатура);
    П.Вставить("Отбор", Отбор);

    ОткрытьФорму("Справочник.Спецификации.ФормаВыбора", П);
    КонецПроцедуры
```

а как передать выбранную спецификацию в ячейку спецификация?
---
видимо, добавить событие для т.ч. Продукции "ОбработкаВыбора" и проверять там, пришло ли в выбранное значение элемент с типом СправочникСсылка.Спецификации и т.д.
---
а по другому (проще) можно выбрал номенклатуру нажал Enter перешел в ячейку спецификация и открылась форма выбора(типа нажал F4) ?
---
можно: АвтоВыборНезаполненного = Истина и РежимВыбораНезаполненного = РежимВыбораНезаполненного.ПриАктивизации;
---
ура! спасибо!
Коллеги, появилась задачка, надо табличную часть документа показать в виде иерархии. Т.е. сейчас табличная часть отражает документы, которые создали и добавили, но иногда приходится обнулять сумму и создавать на основании текущей строки. Юзеры хотят видеть этот список в виде иерархии, может кто реализовывал подобное, подскажите в какую сторону смотреть.

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

А может не так все страшно:
- редактирует пользователь Дерево как реквизит формы.
- перед записью программа переписывает в ТЧ объекта, но кодируя иерархию в спец полях
- при открытии документа обратное преобразование из ТЧв Дерево
Т.е. зачем на каждое движение обработчики, только старт-финиш.
---
Т.е. зачем на каждое движение обработчики, только старт-финиш.
Ситуации разные бывают. Если бы все так линейно было, то и дерево было-бы нафиг не нужно.
Однако нет, нам надо и суммы строк при изменениях пересчитывать, и сумму документа, и различные параметры выбора полей менять, и видимость и доступность в зависимости от операций и ситуаций..

Если таких потребностей нет, то естественно и обработчики не нужны.
---
в документообороте что-то подобное вроде видел.

эту экзотику пользователи хотят давно, но у объекта-документа нет свойства типа "деревянная часть", только табличная.
Посему реализуют только Кулибины.
---
Просто в табличной части формы можно установить отображение "Иерархический список", вот подумал есть метод реализовать иерархию.
Добрый день. Подскажите пожалуйста, как можно отобразить итог по количеству в печатной форме упд?
---
Сделайте внешнюю печатную форму и не заморачивайтесь. Во внешней форме либо итог использовать либо в цикле, где строки перебираются счетчик с итогом наращивайте, в макете добавить параметр и в него выводить данный итог.
---
В обработке вывода подвала посчитать. Взять табличную часть документа и применить к ней функцию Итог(ИмяКолонки) и вывести в табличный документ
---
Сделайте внешнюю печатную форму и не заморачивайтесь. Во внешней форме либо итог использовать либо в цикле, где строки перебираются счетчик с итогом наращивайте, в макете добавить параметр и в него выводить данный итог.
---
Спасибо, так и сделал, всё получилось! ++
В базу БП 3.0 загружены справочники и остатки на 01.01.2018 из Бухгалтерии 7.7. Загрузка прошла успешно. Далее нужно периодически через COM-соединение переносить в БП из УТ 10.3 только документы "Реализация ...". Для переноса документов реализации из УТ 10.3 в БП 3.0 написана обработка со следующим куском:

```1c
    &НаКлиенте
    ...
    Пока ВыборкаБД.СледующийПоЗначениюПоля("Ссылка") Цикл
    ...
    ДанныеДокумента=Новый Структура;
    ДанныеДокумента.Вставить("Дата",ВыборкаБД.Ссылка.Дата);
    ДанныеДокумента.Вставить("Номер",ВыборкаБД.Ссылка.Номер);
    ДанныеДокумента.Вставить("ИНН",ВыборкаБД.Ссылка.Контрагент.ИНН);
    ДанныеДокумента.Вставить("КПП",ВыборкаБД.Ссылка.Контрагент.КПП);
    ДанныеДокумента.Вставить("НомерДоговора",ВыборкаБД.Ссылка.ДоговорКонтрагента.Номер);
    ДанныеДокумента.Вставить("ДатаДоговора",ВыборкаБД.Ссылка.ДоговорКонтрагента.Дата);
    ДанныеДокумента.Вставить("СуммаДокумента",ВыборкаБД.Ссылка.СуммаДокумента);
    ДанныеДокумента.Вставить("Наименование",ВыборкаБД.Ссылка.Контрагент.Наименование);
    ДанныеДокумента.Вставить("НаименованиеПолное",ВыборкаБД.Ссылка.Контрагент.НаименованиеПолное);

    Докум=НайтиСоздатьДокументНаСервере(ДанныеДокумента);

    Пока ВыборкаБД.СледующийПоЗначениюПоля("Номенклатура") Цикл
    ДанныеСтроки=Новый Структура;
    ДанныеСтроки.Вставить("НомерСтроки",ВыборкаБД.НомерСтроки);
    ДанныеСтроки.Вставить("Наименование",ВыборкаБД.Номенклатура.Наименование);
    ДанныеСтроки.Вставить("Количество",ВыборкаБД.Количество);
    ДанныеСтроки.Вставить("Цена",ВыборкаБД.Цена);
    ДанныеСтроки.Вставить("Сумма",ВыборкаБД.Сумма);
    ЗаписатьСтрокуДокументаНаСервере(Докум,ДанныеСтроки);
    КонецЦикла;
    ...
    КонецЦикла;
```

При первом проходе обработка затыкается на
Докум=НайтиСоздатьДокументНаСервере(ДанныеДокумента);
При втором проходит успешно и создает нужные документы.

Я удаляю эти документы (помечаю и удаляю помеченные) и запускаю обработку снова. Все проходит успешно.
Если восстановить базу из копии (по состоянию до загрузки документов), то обработка опять затыкается.
Никак не могу понять почему это строка ведет себя по разному.
---
Спасибо. Проблема снялась.
Оказалось, что ошибка была далеко внутри этой функции. При создании документа осуществлялся поиск контрагентов и договоров в соответствующих справочниках. И в случае их отсутствия создавались новые элементы. Так вот при создании договора и была ошибка, а отладчик (остановка по ошибке) останавливался на указанной строке.
---
Сообщение:

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

Пробовал в процедуру при Записи добавить такой код, но не помогает

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

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

Можно интерактивно это повторить: в открытой форме вашего исходного документа после того как он перезаписался программно, но до того как вы нажмете кнопку записать сначала нажмите кнопку "Все действия" -> "Перечитать".
---
смотрите метод Прочитать()

"Расширение управляемой формы для объектов (Managed form extension for objects)
Прочитать (Read)
Синтаксис:
Прочитать()
Описание:
Обновляет объект управляемой формы.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер). "
---
бновляет объект

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

Прочитать (Read)
Синтаксис:

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

Можно интерактивно это повторить: в открытой форме вашего исходного документа после того как он перезаписался программно, но до того как вы нажмете кнопку записать сначала нажмите кнопку "Все действия" -> "Перечитать".
---
Все действия" -> "Перечитать

А как мне програмно записать это?

Я пробовал, что-то типо

Если Форма.открыта Тогда
Форма.Закрыть();
КОнецЕсли;

Но чёт не вышло)
---
или чтобы не париться со всеми этими событиями можете просто изначально закрывать форму исходного документа, тогда не будет возможности в "устаревшей" версии вызвать запись или проведение :)