Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 12:25

Изменение табличной части выбранных пользователем документов

Автор kssh24, 19 янв 2023, 16:06

0 Пользователей и 1 гость просматривают эту тему.

Максим75

Цитата: kssh24 от 26 янв 2023, 09:39Максим75, подскажите, пожалуйста, как реализовать возможность выбора нескольких номенклатурных позиций в соответствующем реквизите формы, по которому отбираются документы?
вот честно говоря не знаю, если мне такое надо изначально по задаче, по всегда через СКД закручиваю все.
В СКД делаю отборы, вывожу на форму, и там есть возможность в виде сравнения не только равно указывать, но еще и много различных плюшек. С точки зрения быстроты - не правильно, потому как 1С рекомендует сразу в наборе данных все условия накладывать, но зачем-то отборы в СКД сделали, вот ими и пользуюсь.
Просто потом сам результат компоновки не в табличный документ вывожу, а в таблицу значений на форме и уже ее юзаю.

Самому интересно, как не через СКД реализовать список значений в выборе для передачи в параметр запроса. То что в запросе надо переделывать условие на конструкцию "В" и потом параметр через массив передавать, это знаю. А вот как реализовать возможность выбора не одного значения, а нескольких? Через механизм подбора?
Может кто подскажет, спасибо.

LexaK

kssh24,
Цитироватькак реализовать возможность выбора нескольких номенклатурных позиций
Попробуйте использовать реквизит с типом СписокЗначений, его, потом, можно использовать в запросе, задать как параметр и условие
Где
документ.Номенклатура в (&СписокНоменклатуры)
если помогло нажмите: Спасибо!

Максим75


Попробуйте использовать реквизит с типом СписокЗначений, его, потом, можно использовать в запросе, задать как параметр и условие
Где
документ.Номенклатура в (&СписокНоменклатуры)
[/quote]

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

LexaK

Максим75, "а можно списку значений нужный тип назначить"
да, можно, в конструкторе формы, свойство реквизита (именно реквизита не поля) у меня закладка свойств Объект там Тип Значения
если помогло нажмите: Спасибо!

kssh24


Максим75

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

не знал, спасибо.

kssh24

LexaK, опять с вопросом к самым умным

обработкой отобрали документы, в которых будем менять цену

как прописать условие, что если заполнена номенклатура или мин.цена, или макс.цена или какая-то комбинация этих значений, то цена должна изменяться только по этой номенклатуре с ценой, которая подходит

получается надо каждую строку тч документа проверять на условия, но я не пойму кааак?
запрос какой-то должен быть?

код и форма во вложениях) 


LexaK

kssh24, а это у вас что за задача? какая-то курсовая работа по программированию,
которую надо абы как сдать и забыть?

или это какой-то тест для устройства на работу или прохождение куда-то?
если помогло нажмите: Спасибо!

kssh24

LexaK, это задача на стажировке) я сама в этом году бухучет окончила, 2 месяца назад подалась в программирование, сразу попала на стажировку и вот мучаюсь

Максим75

можно прямо в цикле по строкам документа и проверять

вот то что в коде:
Для Каждого СтрокаДок из Док.Товары цикл

СтрокаДок и будет строкой документа, в цикле пробегутся все строки.
Достучаться к реквизиту каждой строки через конструкцию СтрокаДок.Имя_Реквизита (цена, Номенклатура и т.д), как они заданы в данных документа для табличной части Товары.
Ну и проверять на соответствие условиям. Если выполнилось, то вот то что написано
СтрокаДок.ЦЕна = СтрокаДок.Цена*1.5 (ну если в полтора раза увеличить).

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск