Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Отбор в требование накладной

Отбор в требование накладной
Я
   GroZnoR
 
16.11.20 - 17:02
Доброго, подскажите куда рыть
С точкой остановы практики мало, и бегая по модулям не совсем улавливаю суть
Есть доработанный момент с МОЛ

&НаКлиенте
Процедура ОбработкаПодбораМатериалы(Команда)

    ПараметрыПодбора = ПолучитьПараметрыПодбора("Материалы");
    Если ПараметрыПодбора <> Неопределено Тогда
        ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.Форма", ПараметрыПодбора,
            ЭтаФорма, УникальныйИдентификатор);
    КонецЕсли;

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


Сюда МОЛ прилетает
Но открывается все равно отбор по всем товаром на складе
Как быть?
   GroZnoR
 
1 - 16.11.20 - 17:05
   Kassern
 
2 - 16.11.20 - 17:06
(0) У вас в номенклатуре для каждого товара материально ответственное лицо указано? Вроде как для склада/помещения это дело указывается
   GroZnoR
 
3 - 16.11.20 - 17:13
Извиняюсь за информацию, просто адаптация с юзвера еще идет)
Конфигурация БП 3.0 (3.0.78.64) 
Документ требование накладная сам отбор выглядит так
http://prntscr.com/vk3kic
(2) Нет, и раньше не было. Но все работало вроде как.
   dka80
 
4 - 16.11.20 - 17:16
   GroZnoR
 
5 - 16.11.20 - 17:20
(4) Все верно, в параметрах отбора он есть. Но открывается все равно по всем.
   dka80
 
6 - 16.11.20 - 17:21
(5) нет, не верно. У тебя в ПараметрыПодбора должен быть ключ "Отбор". На (1) его не видно
   GroZnoR
 
7 - 16.11.20 - 17:53
(6) Функция отбора
&НаКлиенте
Функция ПолучитьПараметрыПодбора(ИмяТаблицы)
    
    ПараметрыФормы = Новый Структура;
    
    ДатаРасчетов = ?(НачалоДня(Объект.Дата) = НачалоДня(ТекущаяДата()), Неопределено, Объект.Дата);
    
    ПараметрыФормы.Вставить("ВидПодбора", "");
    
    Если ИмяТаблицы = "Материалы" Тогда
        ПредставлениеТаблицы = НСтр("ru = 'Материалы'");
        ПараметрыФормы.Вставить("ПоказыватьЗабалансовыеОстатки", Ложь);
    ИначеЕсли ИмяТаблицы = "МатериалыЗаказчика" Тогда
        ПредставлениеТаблицы = НСтр("ru = 'Материалы заказчика'");
        ПараметрыФормы.Вставить("Контрагент", Объект.Контрагент);
        ПараметрыФормы.Вставить("ВидПодбора", "МатериалыЗаказчика");
    КонецЕсли;
    
    ЗаголовокПодбора = ПолучитьЗаголовокПодбора(Объект.Ссылка, ПредставлениеТаблицы);
    
    ПараметрыФормы.Вставить("ЕстьЦена",            Ложь);
    ПараметрыФормы.Вставить("ЕстьКоличество",      Истина);
    ПараметрыФормы.Вставить("ДатаРасчетов",        ДатаРасчетов);
    ПараметрыФормы.Вставить("Валюта",              ВалютаРегламентированногоУчета);
    ПараметрыФормы.Вставить("Организация",         Объект.Организация);
    ПараметрыФормы.Вставить("Подразделение",       Объект.ПодразделениеОрганизации);
    ПараметрыФормы.Вставить("Склад",               Объект.Склад);
    ПараметрыФормы.Вставить("МОЛ",                 Объект.МОЛ);
    ПараметрыФормы.Вставить("Заголовок",           ЗаголовокПодбора);
    ПараметрыФормы.Вставить("ИмяТаблицы",          ИмяТаблицы);
    ПараметрыФормы.Вставить("Услуги",              Ложь);
    ПараметрыФормы.Вставить("ПоказыватьОстатки",   Истина);
    ПараметрыФормы.Вставить("ПоказыватьОтрицательныеОстатки",   Ложь);
    Параметрыформы.Вставить("ПоказыватьЦены",      Ложь);
    

    Возврат ПараметрыФормы;
    
КонецФункции



Попробовал вставить отбор 
 Параметрыформы = Новый Структура("Отбор", Параметрыформы);

Но что-то пошло не так.
   dka80
 
8 - 16.11.20 - 17:57
Параметрыформы = Новый Структура("Отбор", Параметрыформы); - что за трэш?


ПараметрыПодбора= Новый Структура("Отбор", Параметрыформы);
 ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.Форма", ПараметрыПодбора,
            ЭтаФорма, УникальныйИдентификатор);
   GroZnoR
 
9 - 16.11.20 - 18:06
(8) Так работать не будет, он же тут параметрыформы не увидит
&НаКлиенте
Процедура ОбработкаПодбораМатериалы(Команда)

    ПараметрыПодбора = ПолучитьПараметрыПодбора("Материалы");
    
    ПараметрыПодбора = Новый Структура("Отбор", Параметрыформы);
    
    Если ПараметрыПодбора <> Неопределено Тогда
        ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.Форма", ПараметрыПодбора,
            ЭтаФорма, УникальныйИдентификатор);
    КонецЕсли;

КонецПроцедуры
   GroZnoR
 
10 - 16.11.20 - 19:17
Попробовал так
Процедура ОбработкаПодбораМатериалы(Команда)

    ПараметрыПодбора = ПолучитьПараметрыПодбора("Материалы");
    
    ПараметрыПодбораОтбор = Новый Структура("Отбор", ПараметрыПодбора);    
    Если ПараметрыПодбора <> Неопределено Тогда
        ОткрытьФорму("Обработка.ПодборНоменклатуры.Форма.Форма", ПараметрыПодбораОтбор,
            ЭтаФорма, УникальныйИдентификатор);
    КонецЕсли;

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

Тоже ломается отбор вообще
   GroZnoR
 
11 - 17.11.20 - 10:57
Есть еще варианты товарищи?
   dka80
 
12 - 17.11.20 - 11:12
Вот тебе рабочий вариант. Что еще нужно я не знаю

ПараметрыОтбора = Новый Структура;
    Если ЗначениеЗаполнено(Объект.Организация) Тогда
        ПараметрыОтбора.Вставить("Организация", Объект.Организация);
    КонецЕсли;
    
    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("Отбор",                 ПараметрыОтбора);
    ПараметрыФормы.Вставить("РежимВыбора",             Истина);
    ПараметрыФормы.Вставить("ЗакрыватьПриВыборе",    Ложь);
    
    ОбработкаВыбора = Новый ОписаниеОповещения("ВыбратьДокументыПриемаКонец", ЭтаФорма);
     
    ОткрытьФорму("Документ.ПриемНаРаботу.ФормаВыбора", ПараметрыФормы, Элементы.РаботникиОрганизации);
   GroZnoR
 
13 - 17.11.20 - 17:33
(12) У меня ПараметрыОтбора в другой функции же
   GroZnoR
 
14 - 17.11.20 - 18:00
(12) Допустим если сделать Вот так
http://prntscr.com/vktvan
Открывается вроде с отбором ,но по факту еще хуже
http://prntscr.com/vktwka
По умолчанию открывается так
http://prntscr.com/vktzju
   GroZnoR
 
15 - 23.11.20 - 10:05
Разобрался всем спасибо.
Проблема была совсем не тут.
   dka80
 
16 - 23.11.20 - 10:17
С одной стороны молодец, конечно, что разобрался, но с другой стороны неделя...
И по правилам хорошего тона, принято описывать найденное решение - кому-то может помочь ))
   GroZnoR
 
17 - 23.11.20 - 11:07
(16) Неделю был на больничном, сегодня пришел свежей головой
Параметры то передавались, а вот на форме отбор по этим параметрам не шел.

Обработка.ПодборНоменклатуры
Здесь при обновление люди не перенесли реквизит с физлицом (МОЛ)

Список тем форума
Рекламное место пустует  Рекламное место пустует
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.