|
Обработка табличной части | ☑ | ||
---|---|---|---|---|
0
skupidom5
11.09.17
✎
22:58
|
В документе Авансовый отчет на вкладке Оплата по кнопке "Заполнить по поступлениям" открывается форма выбора документов "Поступление товаров и услуг" с множественным выбором.При подборе каждого поступления в оплаты добавляются строчки из поступлений.Нужно реализовать возможность не сразу выбирать поступления,а сначала подобрать поступления в список,а потом уже их содержимое в Оплаты.Как реализовать подбор поступлений в список значений?
|
|||
1
rudnitskij
11.09.17
✎
23:02
|
посмотреть как этот подбор реализован уже сейчас - вариант неприемлемый?
|
|||
2
rudnitskij
11.09.17
✎
23:03
|
(1) "...открывается форма выбора документов "Поступление товаров и услуг"..." - нет ли здесь подсказки, какую форму смотреть? Как считают читатели форума?
|
|||
3
Лефмихалыч
11.09.17
✎
23:03
|
(1) на ветки автора посмотри. Он просит готовое решение, которое можно было скопипастить, не приходя в сознание
|
|||
4
Лефмихалыч
11.09.17
✎
23:03
|
Ливингстара синдром
|
|||
5
Злопчинский
11.09.17
✎
23:08
|
(0) херня какаято
|
|||
6
Злопчинский
11.09.17
✎
23:09
|
В таком изложении задача - бред сивого мерина ибо подбирать в список, а потом переносить список в результат - нахрега лишнее промежуточное звено?
|
|||
7
skupidom5
11.09.17
✎
23:11
|
сейчас рпеализовано напрямую множественная выборка документов-поступлений и заполнение тч Авансового отчета содержимым тч Услуги из поступлений
Процедура ЗаполнитьОплатыПоОснованиюПТУУслуги(ПТУСсылка) Экспорт Курс = ЗаполнениеДокументов.КурсДокумента(ЭтотОбъект, мВалютаРегламентированногоУчета); Кратность = ЗаполнениеДокументов.КратностьДокумента(ЭтотОбъект, мВалютаРегламентированногоУчета); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ПоступлениеТоваровУслугУслуги.Ссылка.Контрагент КАК Контрагент, | ПоступлениеТоваровУслугУслуги.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента, | ПоступлениеТоваровУслугУслуги.Ссылка.Сделка КАК Заказ, | ПоступлениеТоваровУслугУслуги.Проект КАК Проект, | ПоступлениеТоваровУслугУслуги.Сумма КАК Сумма, | ВЫБОР | КОГДА ПоступлениеТоваровУслугУслуги.Ссылка.ВалютаДокумента = ПоступлениеТоваровУслугУслуги.Ссылка.ДоговорКонтрагента.ВалютаВзаиморасчетов | ТОГДА ПоступлениеТоваровУслугУслуги.Ссылка.КурсВзаиморасчетов | ИНАЧЕ 1 | КОНЕЦ КАК КурсДокумента, | ВЫБОР | КОГДА ПоступлениеТоваровУслугУслуги.Ссылка.ВалютаДокумента = ПоступлениеТоваровУслугУслуги.Ссылка.ДоговорКонтрагента.ВалютаВзаиморасчетов | ТОГДА ПоступлениеТоваровУслугУслуги.Ссылка.КратностьВзаиморасчетов | ИНАЧЕ 1 | КОНЕЦ КАК КратностьДокумента, | ПоступлениеТоваровУслугУслуги.Ссылка.НомерВходящегоДокумента КАК НомерВходДок, | ПоступлениеТоваровУслугУслуги.Ссылка.ДатаВходящегоДокумента КАК ДатаВходДок, | ПоступлениеТоваровУслугУслуги.рар_ВидРабот КАК ВидРабот, | ПоступлениеТоваровУслугУслуги.Содержание КАК Содержание, | ПоступлениеТоваровУслугУслуги.Ссылка.Ссылка КАК Поступление, | ПоступлениеТоваровУслугУслуги.Ссылка.ВалютаДокумента КАК ВалютаДокумента |ИЗ | Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги |ГДЕ | ПоступлениеТоваровУслугУслуги.Ссылка = &ПТУ"; Запрос.УстановитьПараметр("ПТУ",ПТУСсылка); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл // Структура группировки СтруктураОтбора = Новый Структура; СтруктураОтбора.Вставить("Контрагент",Выборка.Контрагент); СтруктураОтбора.Вставить("ДоговорКонтрагента",Выборка.ДоговорКонтрагента); СтруктураОтбора.Вставить("ДокументПоступления",Выборка.Поступление); Если ЗначениеЗаполнено(Выборка.Заказ) Тогда СтруктураОтбора.Вставить("Сделка",Выборка.Заказ); КонецЕсли; Если ЗначениеЗаполнено(Выборка.Проект) Тогда СтруктураОтбора.Вставить("Проект",Выборка.Проект); КонецЕсли; Если ЗначениеЗаполнено(Выборка.ВидРабот) Тогда СтруктураОтбора.Вставить("рар_ВидРабот",Выборка.ВидРабот); КонецЕсли; СуммаПересчитанаПоАвансовомуОтчету = МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(Выборка.Сумма, Выборка.ВалютаДокумента,ВалютаДокумента, Выборка.КурсДокумента, Курс, Выборка.КратностьДокумента, Кратность); // СтрокаТабличнойЧасти = ОбработкаТабличныхЧастей.НайтиСтрокуТабЧасти(ОплатаПоставщикам,СтруктураОтбора); Если СтрокаТабличнойЧасти <> Неопределено Тогда СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Сумма + СуммаПересчитанаПоАвансовомуОтчету; СтрокаТабличнойЧасти.СуммаВзаиморасчетов = СтрокаТабличнойЧасти.Сумма; Иначе СтрокаТабличнойЧасти = ОплатаПоставщикам.Добавить(); СтрокаТабличнойЧасти.Контрагент = Выборка.Контрагент; СтрокаТабличнойЧасти.ДоговорКонтрагента = Выборка.ДоговорКонтрагента; СтрокаТабличнойЧасти.Сделка = Выборка.Заказ; СтрокаТабличнойЧасти.Проект = Выборка.Проект; СтрокаТабличнойЧасти.Сумма = СуммаПересчитанаПоАвансовомуОтчету; СтрокаТабличнойЧасти.КурсВзаиморасчетов = Выборка.КурсДокумента; СтрокаТабличнойЧасти.КратностьВзаиморасчетов = Выборка.КратностьДокумента; СтрокаТабличнойЧасти.СуммаВзаиморасчетов = Выборка.Сумма; // входящий документ: СтрокаТабличнойЧасти.ВидДокВходящий = "расписка"; СтрокаТабличнойЧасти.ДатаВходящегоДокумента = СокрЛП(Выборка.ДатаВходДок); СтрокаТабличнойЧасти.НомерВходящегоДокумента = СокрЛП(Выборка.НомерВходДок); // СтрокаТабличнойЧасти.рар_ВидРабот = Выборка.ВидРабот; СтрокаТабличнойЧасти.Содержание = Выборка.Содержание; СтрокаТабличнойЧасти.ДокументПоступления = Выборка.Поступление; // Счета учета: СчетаУчета = БухгалтерскийУчетРасчетовСКонтрагентами.ПолучитьСчетаРасчетовСКонтрагентом(Организация, СтрокаТабличнойЧасти.Контрагент, СтрокаТабличнойЧасти.ДоговорКонтрагента); СтрокаТабличнойЧасти.СчетУчетаРасчетовСКонтрагентом = СчетаУчета.СчетРасчетов; СтрокаТабличнойЧасти.СчетУчетаРасчетовПоАвансам = СчетаУчета.СчетАвансов; КонецЕсли; КонецЦикла; КонецПроцедуры // СкопироватьУслуги() Процедура КоманднаяПанельОплатаПоставщикамЗаполнитьПоПоступлениям(Кнопка) РеквизитыДокумента = ЭлементыФормы.ОплатаПоставщикам; ФормаВыбора = Документы.ПоступлениеТоваровУслуг.ПолучитьФормуВыбора(,РеквизитыДокумента); ФормаВыбора.РежимВыбора = Истина; ФормаВыбора.ЗакрыватьПриВыборе = Ложь; ФормаВыбора.Открыть(); КонецПроцедуры Процедура ОплатаПоставщикамОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ЗаполнитьОплатыПоОснованиюПТУУслуги(ВыбранноеЗначение); КонецПроцедуры |
|||
8
skupidom5
11.09.17
✎
23:13
|
нужен незамысловатый предварительный подбор поступлений в форму списка при подборе с последующим заполнением тч Авансового отчета
|
|||
9
Fram
11.09.17
✎
23:16
|
(8) даже если еще 50 раз написать хадание это не ответит на вопрос нахрена
|
|||
10
Fram
11.09.17
✎
23:16
|
*задание
|
|||
11
Tateossian
11.09.17
✎
23:18
|
(8) Ты хочешь легко и непринужденно реализовать АРМ Подборщик оплат с их разнесением.
По сабжу. Сделай еще одну промежуточную форму. Ну и вообще - а в чем проблема удалить лишние строчки из авансового отчета? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |