Имя: Пароль:
1C
1С v8
Подбор нескольких значений в таблицу
, , ,
0 grum01
 
21.10.15
14:44
Привет. А вот еще задачка:
Есть табличное поле документа. В одной строке в разных колонках должна быть дважды введена номенклатура, причем разная. Как это реализовать через подбор по справочнику номенклатура? Типа выбрал Номенклатура1, ввел количество; выбрал Номенклатура2, ввел количество. Не закрывая подбор (по крайней мере, чтобы пользователю не было видно, что он закрывается). Не могу сообразить как заставить ОбработкаВыбора подождать второе значение номенклатуры.
Причина - разрабатываем документ пересорта в УТ.

8.2, простые формы, SQL
1 VikingKosmo
 
21.10.15
14:46
в УТ есть документ ПересортицаТоваров. ПересортицаТоваров Карл!
2 ДенисЧ
 
21.10.15
14:46
Открыть форму документа поступление товаров - никак не?
Чтобы посмотреть, как в ней подбор реализован?
3 VikingKosmo
 
21.10.15
14:46
не дочитал про обычные формы, видимо речь про не про ту УТ
4 grum01
 
21.10.15
14:55
(3) В какой УТ есть пересорт? Конфу подскажи - посмотрю.
5 VikingKosmo
 
21.10.15
14:56
УТ 11.1
6 grum01
 
21.10.15
14:57
(5) Ок, гляну. Мы на 10.3 сидим. И уходить не будем. Потому сами изобретаем :)
7 grum01
 
21.10.15
15:40
(5) Посмотрел, это все не то. Тем более, что подбора там все равно нет.
Если у тебя 1-2-3 позиции, конечно, можно и так ввести. А если десятки позиций постоянно - замучаешься.
8 Timon1405
 
21.10.15
15:49
в типовой 10.3 из коробки работает обработка перетаскивания из формы подбора. с вас 500р
9 Михаил Козлов
 
21.10.15
15:53
Может глянуть в сторону:
- в модуле формы завести переменную-флаг, что был 1-ый подбор и переменную, в которую сохранять значения подбора;
- в обработке побора либо (если первый подбор был) - добавлять новую строку и номенклатура1 брать из значения переменной, а номенклатура2 - из параметров процедуры.
10 1sanekmaloi1
 
21.10.15
16:05
Типовой подбор в ут 11:
из дока, по кнопке открылась форма, на ней дерево номенлатура и табчасть, дабл клик на номенклатуре -добавилась в тч - спрашивает колво - вводит во вторую колонку, потом по кнопке перенести в документ просто всю тч в док загружает.
Делай так же, только заполняй по порядку, дабл клик новая строка и кол-во, еще дабл клик если в строке вторая номенклатура пустая то в нее значение и кл-во и так далее,
ну в конце естессно всю тч в док.
11 grum01
 
22.10.15
03:53
(8) перетаскивание? как это может быть применено в данном контексте? 500р пока не заработали
12 grum01
 
22.10.15
03:55
(9) тогда уж проще условие поставить в ОбработкаВыбора: если нет Параметр2, то брать с бодбора, если есть - вводить новую строку.
в эту сторону и думаю
13 grum01
 
22.10.15
04:03
(10) Вот тут вообще не понял. Кнопки "Подбор" там нет. Есть просто выбор номенклатуры в каждую ячейку. Никакого количества не запрашивает.
А ведь еще хорошо бы спрашивать характеристику.
В общем не смог воспроизвести твои инструкции в УТ11. Но на какую-то смenye. мысль они натолкнули. Попробую ее подумать.. )
14 grum01
 
22.10.15
04:08
(10) А! Ты говорил про стандартный подбор. А я искал в доке ПересортицаТоваров. Да посмотрел. Интересное решение. Но ведь оно совсем никак не отличается от подбора сразу в ТЧ документа. Все равно в одну строку не введешь.
Буду думать в сторону условий в ОбработкаВыбора (12)
15 grum01
 
22.10.15
04:22
Да. В общем получилось через условие в ОбработкаВыбора.
----------------------
   Если ЭлементыФормы.Товары.ТекущиеДанные = Неопределено ИЛИ
        (ЭлементыФормы.Товары.ТекущаяСтрока.НоменклатураСписания <> Справочники.Номенклатура.ПустаяСсылка() И
         ЭлементыФормы.Товары.ТекущаяСтрока.НоменклатураОприходования <> Справочники.Номенклатура.ПустаяСсылка()) Тогда
                НовСтрока = Товары.Добавить();
                НовСтрока.НоменклатураСписания = ВыбранноеЗначение;
                НовСтрока.ЕдиницаСписания = НовСтрока.НоменклатураСписания.ЕдиницаХраненияОстатков;
                ЭлементыФормы.Товары.ТекущаяСтрока = НовСтрока;

    Иначе        
                ЭлементыФормы.Товары.ТекущаяСтрока.НоменклатураОприходования = ВыбранноеЗначение;
                ЭлементыФормы.Товары.ТекущаяСтрока.ЕдиницаОприходования = ЭлементыФормы.Товары.ТекущаяСтрока.НоменклатураОприходования.ЕдиницаХраненияОстатков;
    КонецЕсли;
----------------------
16 grum01
 
22.10.15
04:24
Только все равно кривовато. Плюс еще надо запрашивать количество и характеристики.
Всяко придется делать свою форму подбора.
17 Михаил Козлов
 
22.10.15
11:36
(16) Думаю, можно обойтись штатной.
Запрос количества и характеристики регулируется параметрами, передаваемыми в подбор (если не ошибаюсь) или флажками на форме подбора.