Имя: Пароль:
1C
1С v8
Подбор из Дерева значений
0 Gill
 
21.10.11
15:36
Привет всем! Есть документ в который подбираются материалы,кол-во и виды работ. Подбор осущ-ся из "формы подбора", на которой есть Таб.поле (тип ТЗ)из нее по определнным условиям подбирается номенклатура,кол-во и вид.работы, при этом на этой ТЗ есть колонка Остаток (совокупный в разрезе всех складов) при выделении которой на этой же форме подбора в другом таб.поле (тип Дерево значений - по аналогии с формой списка справочника "Номенклатура" в типовых конфах) выводятся остатки по складам. Вопрос: Как бы сделать так, чтобы при выборе номенклатуры из ТЗ можно было бы еще и выбрать склад(ы) для загрузки в ТЧ документа?

Процедура ВыполняемыеРаботыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   // Вставить содержимое обработчика.
   Строка = ЭлементыФормы.ВыполняемыеРаботы.ТекущаяСтрока;
   
   Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда    
       ТекстВвестиЧисло = "Укажите количество материала";
       Если  ВвестиЧисло(пКоличество, ТекстВвестиЧисло, 15, 3)=Истина тогда
           Количество=пКоличество;
           
           НоваяСтрока=ВыполняемыеРаботы.Добавить();
           
           НоваяСтрока.Номенклатура=ВыбранноеЗначение.Номенклатура;
           НоваяСтрока.ЕдиницаИзмерения = ВыбранноеЗначение.ЕдиницаИзмерения;        
           НоваяСтрока.Количество = Количество;            
           НоваяСтрока.ВидРаботы = ВыбранноеЗначение.ВидРаботы;
           НоваяСтрока.ЕдиницаИзмеренияРаботы = ВыбранноеЗначение.Ед_изм;
           //НоваяСтрока.Склад= ???;
       КонецЕсли;
   КонецЕсли;
   
   СтандартнаяОбработка = Ложь;
   

КонецПроцедуры
1 Gill
 
21.10.11
15:58
^
2 Gill
 
21.10.11
16:06
ФормаПодбораСклада = Документы.ПроектНарядаНаСтроительныеРаботы.ПолучитьФорму("ФормаПодбораСклада");
                        ФормаПодбораСклада.Открыть();
                        ФормаПодбораСклада.РежимВыбора = Истина;
                        ФормаПодбораСклада.ЗакрыватьПриВыборе = Ложь;
                        //ФормаПодбораСклада.ЭлементыФормы.ТабличноеПолеОстаткиТоваров.Значение = ОстаткиТоваров.Скопировать();
                        ЗначениеДерева=ФормаПодбораМатериалов.ЭлементыФормы.ТабличноеПолеОстаткиТоваров.Значение;

                          ФормаПодбораСклада.ЭлементыФормы.ТабличноеПолеОстаткиТоваров.Значение =ЗначениеДерева;

Пытался так, но фигня какая-то получатся, как в выбранное значение подцепить поле "Склад"?
3 Gill
 
21.10.11
16:09
(2) Имеется ввиду вызывал другую (дополнительную)форму куда выгружал данные из ДЗ основной формы подбора.
4 Gill
 
21.10.11
16:17
Мдааа...видимо пятница сказывается ))
5 Gill
 
21.10.11
16:24
^^
6 Gill
 
21.10.11
16:39
у меня прямо монолог какой-то получается с самим собой! подскажите кто-нибудь!?
7 Mort
 
21.10.11
16:40
(6) Попроще мысль вырази в (0)
8 Pro-tone
 
21.10.11
16:44
(0) ну вообще-то остатки фильтруются по складу, на форме подбора должен быть фильтр по складу, равно как и в шапке документа. Или я чего-то не понял судя по твоей формулировке.
9 vmv
 
21.10.11
16:44
тарабарщина какая-то, как говорил классик

"фигня какая-то"(с)
10 Gill
 
21.10.11
16:46
(7) Нужно при подборе номенклатуры из ТЗ как-то выбирать конкретный склад на котором есть остатки по этой номенклатуре, чтобы можно было дальше эту строку (строки) поместить в ТЧ наряда на работы....в итоге например должно быть так: в наряде 3 строки:

1. Гвоздь д12   2шт   Общестр.работы  Склад №1
2. Гвоздь д12   2шт   Общестр.работы  Склад №5
3. Лист гипсокартона    1шт   Общестр.работы  Склад №1
11 Gill
 
21.10.11
16:49
(10) т.е. нужно предоставить возможность пользователю выбирать из этой "формы подбора" кроме номенклатуры, вида работы (из ТЗ этой формы) еще и склад,который отображается в виде дерева значений при выводе строки ТЗ...
12 vmv
 
21.10.11
16:50
ох уж этот при выводе строки ТЗ.

хорошо, что его в 8.2 убрали, будет меньше монстроидального кода
13 Gill
 
21.10.11
16:53
(12) а по существу?
14 Gill
 
21.10.11
17:01
Как бы еще проще выразится: Вот представьте есть Лист гипсокартона на 3 разных складах, при подборе этого материала ползователь видит, что у него в колонке остаток написано 300шт., при этом расшифровка по складам отображается в соседнем окошке этой же формы, где указано что 150 шт на складе №1, 100 шт на складе №2 и 50 шт на складе №3...Тут он захотел выдать "по немножку" сразу с трех складов, выбрав эту номенклатуру система должна предложить на выбор один из трех складов на которых есть этот материал ну и т.д., в итоге эти 3 строчки сядут в документ "наряд"..с которого дальше программно будут создаваться столько документов "Пермеещений товаров", сколько комбинаций разных складов есть в этом доке....
15 Gill
 
21.10.11
17:02
p.s. (14) ну как-бы ОбходРезультатаЗапроса.ПоГруппировкам складов
16 Gill
 
21.10.11
17:14
видимо доступнее объяснить не получилось....в любом слчае всем спасибо
17 Gill
 
21.10.11
17:44
Частично решил задачу, но как-то некрасиво получается при подборе номенклатуры тот же "гипсокартон" теперь плодится на ТЗ по-строчно столько раз, сколько есть вхождения этого материала на разных складах, может есть все-таки идеи по поводу того,что я хотел в (14)?
18 Gill
 
21.10.11
18:25
^ я всё еще не теряю надежды
19 Gill
 
22.10.11
11:59
^
20 Gill
 
26.10.11
11:25
Так все-таки как бы избежать вариант применения (17)....Очень нужно,подскажите!!!
21 Gill
 
26.10.11
11:52
^
Закон Брукера: Даже маленькая практика стоит большой теории.