|   |   | 
| 
 | v7: ТиС 7.7 ,групповая обработка документов, отбор по группе контрагентов | ☑ | ||
|---|---|---|---|---|
| 0
    
        tesei 17.03.17✎ 13:27 | 
        в типовой обработке сделал выбор клиента - группы:
 Процедура ПриОткрытии() Форма.ВыбКонтрагент.ВыборГруппы(1); КонецПроцедуры Выбираю группу, но теперь не работает отбор документов: Док=СоздатьОбъект("Документ"); Если (ВыбКонтрагент.Выбран()=1) Тогда Док.ВыбратьПоЗначению(ДатаНачала,ДатаКонца,"Контрагент",ВыбКонтрагент); КонецЕсли; Как наиболее простым способом отобрать документы по контрагентам из группы? | |||
| 1
    
        VladZ 17.03.17✎ 13:31 | 
        (0)  Док.ВыбратьПоЗначению выбирает по определенному значению (проверка на равенство).
 Зачем дорабатывать стандартную обработку? Она и так замечательно работает! | |||
| 2
    
        tesei 17.03.17✎ 13:31 | 
        (1) Нужно обработать документы ко контрагентам из группы.     | |||
| 3
    
        VladZ 17.03.17✎ 13:31 | 
        +1 Встаешь на контрагентов. Тычешь "заполнить по реквизиту" (какая-то доп.кнопка есть, ищи). Заполнишь список контрагентов. И для них выводишь нужные доки.     | |||
| 4
    
        пипец 17.03.17✎ 14:00 | 
        хмм групповая обработка - а универсальные или множественные поделки ?     | |||
| 5
    
        tesei 17.03.17✎ 14:19 | 
        (3) ты не путаешь с UChoice?     | |||
| 6
    
        Builder 17.03.17✎ 14:20 | 
        Запрос не предлагать?     | |||
| 7
    
        Злопчинский 17.03.17✎ 14:47 | 
        как вы утомили...     | |||
| 8
    
        Злопчинский 17.03.17✎ 14:50 | 
        В обработку внести косметические изменения
 1. //[+]progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ Форма.ВыбКонтрагент.ВыборГруппы(1); //[+]_progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ КонецПроцедуры // ПриОткрытии() 2. Процедура ПоКнопкеСформировать() // Формируем таблицу номенклатуры ТаблицаДокументов.Очистить(); ТаблицаДокументов.НоваяКолонка("Пометка", "Число" ,1,, , 4 ); ТаблицаДокументов.НоваяКолонка("Документ", "Документ", ,, , ); ТаблицаДокументов.НоваяКолонка("Дата", "Дата" , ,,"Дата" , 10,,2); ТаблицаДокументов.НоваяКолонка("СтрДокумент","Строка" , ,,"Документ" , 32 ); ТаблицаДокументов.НоваяКолонка("Номер", "Строка" , ,,"Номер" , 17,,2); ТаблицаДокументов.НоваяКолонка("Автор", "Строка" , ,,"Автор" , 30 ); ТаблицаДокументов.НоваяКолонка("Статус", "Строка" , ,,"Статус" , 25,,2); ТаблицаДокументов.НоваяКолонка("Сумма", "Строка" , ,,"Сумма" , 20,,2); ТаблицаДокументов.НоваяКолонка("Валюта", "Строка" , ,,"Валюта" , 7,,2); ТаблицаДокументов.НоваяКолонка("Проект", "Строка" , ,,"Проект" , 30 ); ТаблицаДокументов.НоваяКолонка("Информация", "Строка" , ,,"Информация" , 50 ); ТаблицаДокументов.НоваяКолонка("Комментарий","Строка" , ,,"Комментарий", 50 ); ТаблицаДокументов.ВыводитьПиктограммы("Пометка",1); ТаблицаДокументов.ВидимостьКолонки("Документ", 0); ВидыДок = ""; Для Инд=1 По ВыбранныеДокументы.РазмерСписка() Цикл ВидыДок = ВидыДок + Документы.ПолучитьЗначение(ВыбранныеДокументы.ПолучитьЗначение(Инд))+","; КонецЦикла; Если ПустаяСтрока(ВидыДок)=1 Тогда Возврат; КонецЕсли; Док=СоздатьОбъект("Документ"); Если (ВыбКонтрагент.Выбран()=1) Тогда //[*]progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ // Док.ВыбратьПоЗначению(ДатаНачала,ДатаКонца,"Контрагент",ВыбКонтрагент); // ------------- Док.ВыбратьДокументы(ДатаНачала,ДатаКонца); //[*]_progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ ИначеЕсли (ВыбПроект.Выбран()=1) Тогда Док.ВыбратьПоЗначению(ДатаНачала,ДатаКонца,"Проект", ВыбПроект); 3. //Проверка проекта Если ВыбПроект.Выбран() = 0 Тогда ИначеЕсли (Док.Проект <> ВыбПроект) Тогда Продолжить; КонецЕсли; //Проверка склада Если ВыбСклад.Выбран() = 0 Тогда ИначеЕсли глЕстьРеквизитШапки("Склад", Док.Вид()) = 0 Тогда Продолжить; ИначеЕсли (Док.Склад <> ВыбСклад) Тогда Продолжить; КонецЕсли; //[+]progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ //Проверка контрагента Если ВыбКонтрагент.Выбран() = 0 Тогда ИначеЕсли глЕстьРеквизитШапки("Контрагент", Док.Вид()) = 0 ТогдаПродолжить; Иначе Если ВыбКонтрагент.ЭтоГруппа()=0 Тогда Если (Док.Контрагент <> ВыбКонтрагент) Тогда Продолжить; КонецЕсли; Иначе Если Док.Контрагент.ПринадлежитГруппе(ВыбКонтрагент) = 0 Тогда Продолжить; КонецЕсли; КонецЕсли; КонецЕсли; //[+]_progadmin, 17.03.2017, ДОБАВЛЕНО НЕТИПОВОЕ //Проверка вида документа Если Найти(ВидыДок,Док.Вид()+",")=0 Тогда Продолжить; КонецЕсли; 4. Профит | |||
| 9
    
        tesei 17.03.17✎ 16:51 | 
        (8) спасибо!     | |||
| 10
    
        Злопчинский 18.03.17✎ 00:38 | 
        (9) шо, работает?!     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |