Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 мар 2024, 13:42

Табличная часть в динамическом списке

Автор loiterer, 30 авг 2016, 11:16

0 Пользователей и 1 гость просматривают эту тему.

loiterer

Добрый день всем.
Может кто подскажет в каком направлении рыть. БП 3. Документ СчетНаОплатуПоставщика. В него добавлена ТЧ Согласования(три колонки - роль, сотрудник, согласовано(булево)).
Строки согласующих лиц добавляются при создании документа. Надо чтобы в ФормеСписка появились колонки по количеству строк в ТЧ со значением согласовано(с галочками).
Ну в динамический список я добавил ТЧ, а какие условия ставить ума не приложу. Помогите, пжл.

ВЫБРАТЬ
   ДокументСчетНаОплатуПоставщика.Ссылка,
   ДокументСчетНаОплатуПоставщика.ПометкаУдаления,
   ДокументСчетНаОплатуПоставщика.Номер,
   ДокументСчетНаОплатуПоставщика.Дата,
   ДокументСчетНаОплатуПоставщика.Проведен,
   ДокументСчетНаОплатуПоставщика.Организация,
   ДокументСчетНаОплатуПоставщика.Контрагент,
   ДокументСчетНаОплатуПоставщика.ДоговорКонтрагента,
   ДокументСчетНаОплатуПоставщика.Комментарий,
   ДокументСчетНаОплатуПоставщика.Ответственный,
   ДокументСчетНаОплатуПоставщика.ВалютаДокумента,
   ДокументСчетНаОплатуПоставщика.СуммаДокумента,
   ДокументСчетНаОплатуПоставщика.НомерВходящегоДокумента,
   ДокументСчетНаОплатуПоставщика.ДатаВходящегоДокумента,
   СостоянияЭД.СостояниеВерсииЭД,
   ВЫБОР
      КОГДА ДокументСчетНаОплатуПоставщика.ПометкаУдаления = ИСТИНА
         ТОГДА 2
      КОГДА ДокументСчетНаОплатуПоставщика.Проведен = ИСТИНА
         ТОГДА 1
      ИНАЧЕ 0
   КОНЕЦ КАК СостояниеДокумента,
   ВЫБОР
      КОГДА ДокументыСОшибкамиПроверкиКонтрагентов.Документ ЕСТЬ NULL
         ТОГДА ЛОЖЬ
      ИНАЧЕ ИСТИНА
   КОНЕЦ КАК СодержитНекорректныхКонтрагентов,
   НаличиеПрисоединенныхФайлов.ЕстьФайлы,
   ДокументСчетНаОплатуПоставщика.СуммаОплат,
   ДокументСчетНаОплатуПоставщика.ИтОст,
   ДокументСчетНаОплатуПоставщика.Контракт,
   ДокументСчетНаОплатуПоставщика.Месяц,
   ДокументСчетНаОплатуПоставщика.СтатьяДвиженияДенежныхСредств,
   ДокументСчетНаОплатуПоставщика.Авто,
   ДокументСчетНаОплатуПоставщика.Согласования.(
      Ссылка,
      НомерСтроки,
      Сотрудник,
      Роль,
      Согласовано
   )
ИЗ
   Документ.СчетНаОплатуПоставщика КАК ДокументСчетНаОплатуПоставщика
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
      ПО (СостоянияЭД.СсылкаНаОбъект = ДокументСчетНаОплатуПоставщика.Ссылка)
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДокументыСОшибкамиПроверкиКонтрагентов КАК ДокументыСОшибкамиПроверкиКонтрагентов
      ПО ДокументСчетНаОплатуПоставщика.Ссылка = ДокументыСОшибкамиПроверкиКонтрагентов.Документ
         И (&ИспользованиеПроверкиВозможно)
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеПрисоединенныхФайлов КАК НаличиеПрисоединенныхФайлов
      ПО (НаличиеПрисоединенныхФайлов.ОбъектСФайлами = ДокументСчетНаОплатуПоставщика.Ссылка)

vitasw

Не, не получится. Как вариант: вешайте 2-ой дин. список с отображением этих ваших подписей с установкой параметра ссылки документа при активации строки.

LexaK

вариант конечно есть, но первый раз с такой постановкой задачи сталкиваюсь

в зависимости сколько строчек с подписантами вы хотите вывести, столько левых соединений надо сделать, я выкладываю ваш запрос с показом первой строки с подписантом,
а уж вторую, третью и т.д. строки сами допилите,

запрос целиком ваш, только заменен ваш "вывод табличной части" на вывод первой строки согласующего


ВЫБРАТЬ
   ДокументСчетНаОплатуПоставщика.Ссылка,
   ДокументСчетНаОплатуПоставщика.ПометкаУдаления,
   ДокументСчетНаОплатуПоставщика.Номер,
   ДокументСчетНаОплатуПоставщика.Дата,
   ДокументСчетНаОплатуПоставщика.Проведен,
   ДокументСчетНаОплатуПоставщика.Организация,
   ДокументСчетНаОплатуПоставщика.Контрагент,
   ДокументСчетНаОплатуПоставщика.ДоговорКонтрагента,
   ДокументСчетНаОплатуПоставщика.Комментарий,
   ДокументСчетНаОплатуПоставщика.Ответственный,
   ДокументСчетНаОплатуПоставщика.ВалютаДокумента,
   ДокументСчетНаОплатуПоставщика.СуммаДокумента,
   ДокументСчетНаОплатуПоставщика.НомерВходящегоДокумента,
   ДокументСчетНаОплатуПоставщика.ДатаВходящегоДокумента,
   СостоянияЭД.СостояниеВерсииЭД,
   ВЫБОР
      КОГДА ДокументСчетНаОплатуПоставщика.ПометкаУдаления = ИСТИНА
         ТОГДА 2
      КОГДА ДокументСчетНаОплатуПоставщика.Проведен = ИСТИНА
         ТОГДА 1
      ИНАЧЕ 0
   КОНЕЦ КАК СостояниеДокумента,
   ВЫБОР
      КОГДА ДокументыСОшибкамиПроверкиКонтрагентов.Документ ЕСТЬ NULL
         ТОГДА ЛОЖЬ
      ИНАЧЕ ИСТИНА
   КОНЕЦ КАК СодержитНекорректныхКонтрагентов,
   НаличиеПрисоединенныхФайлов.ЕстьФайлы,
   ДокументСчетНаОплатуПоставщика.СуммаОплат,
   ДокументСчетНаОплатуПоставщика.ИтОст,
   ДокументСчетНаОплатуПоставщика.Контракт,
   ДокументСчетНаОплатуПоставщика.Месяц,
   ДокументСчетНаОплатуПоставщика.СтатьяДвиженияДенежныхСредств,
   ДокументСчетНаОплатуПоставщика.Авто,
   
   //1-ая строка с согласующим
   Согл1.Сотрудник как Сотрудник1,
   Согл1.Роль как Роль1,
   Согл1.Согласовано как Согласовано1
   
ИЗ
   Документ.СчетНаОплатуПоставщика КАК ДокументСчетНаОплатуПоставщика
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
      ПО (СостоянияЭД.СсылкаНаОбъект = ДокументСчетНаОплатуПоставщика.Ссылка)
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДокументыСОшибкамиПроверкиКонтрагентов КАК ДокументыСОшибкамиПроверкиКонтрагентов
      ПО ДокументСчетНаОплатуПоставщика.Ссылка = ДокументыСОшибкамиПроверкиКонтрагентов.Документ
         И (&ИспользованиеПроверкиВозможно)
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеПрисоединенныхФайлов КАК НаличиеПрисоединенныхФайлов
      ПО (НаличиеПрисоединенныхФайлов.ОбъектСФайлами = ДокументСчетНаОплатуПоставщика.Ссылка)
     
ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПоставщика.Согласования КАК Согл1
по ДокументСчетНаОплатуПоставщика.Ссылка = Согл1.Ссылка
и  Согл1.НомерСтроки = 1

если помогло нажмите: Спасибо!

loiterer

LexaK, Спасибо, работает. Будем пользоваться фиксированным, благо их всего 5. Но интересно, можно ли сделать с меняющимся списком?
Добавлено: 31 авг 2016, 05:09


LexaK, Можно еще вопрос несколько по другой теме. Сделал отчет по договорам на СКД.
Результат выглядит следующим образом:

                                                              Сумма приход   Сумма расход
Плательщик               
Договор               
Документ               
ВТБ 24 (ПАО)                                                    26 334,02   
Основной                                                    26 334,02   
Поступление на расчетный счет БПБП-000066 от 21.06.2016 23:59:59      26 334,02   
ГЕО-ПРОЕКТ ООО                                                    4 100 000,00   
22/15-ПС от 16.07.2015 (проектно-изыскательские работы)            1 814 028,76   
Поступление на расчетный счет БПБП-000005 от 22.01.2016 23:59:59      272 104,36   
Поступление на расчетный счет БП00-000012 от 20.10.2015 23:59:59      1 541 924,40   
23/15-ПС от 16.07.2015 (проектно-изыскательские работы)            983 213,43   
Поступление на расчетный счет БПБП-000003 от 22.01.2016 23:59:59      147 482,03   
Поступление на расчетный счет БП00-000011 от 20.10.2015 23:59:59      835 731,40   
24/15-ПС от 16.07.2015 (проектно-изыскательские работы)            1 302 757,81   
Поступление на расчетный счет БПБП-000004 от 22.01.2016 23:59:59      195 413,67   
Поступление на расчетный счет БП00-000010 от 20.10.2015 23:59:59      195 413,67   
Поступление на расчетный счет БП00-000008 от 02.10.2015 23:59:59      911 930,47   
ГеоПрофи ООО                                                                5 404,00
Основной                                                               5 404,00
Списание с расчетного счета БП00-000066 от 08.10.2015 23:59:59               5 404,00

Суииа приход и сумма расход - вычисляемые поля. У договора есть реквизит - Сумма договора. Возможно ли здесь же в СКД сделать, чтобы фигурировали сумма договора и остаток платежей по договору. Вот Так:

                                             Сумма договора  Сумма приход   Сумма расход  Остаток
Плательщик               
Договор               
Документ               
ВТБ 24 (ПАО)                                                    26 334,02                
Основной                                       126 334,02   26 334,02                  100 000,00
Поступление на расчетный счет БПБП-000066 от 21.06.2016 23:59:59      26 334,02   
ГЕО-ПРОЕКТ ООО                                                    4 100 000,00   
22/15-ПС от 16.07.2015 (проектно-изыскательские работы)            1 814 028,76   
Поступление на расчетный счет БПБП-000005 от 22.01.2016 23:59:59      272 104,36   
Поступление на расчетный счет БП00-000012 от 20.10.2015 23:59:59      1 541 924,40   
23/15-ПС от 16.07.2015 (проектно-изыскательские работы)          83 213,43   983 213,43                   900 000,00
Поступление на расчетный счет БПБП-000003 от 22.01.2016 23:59:59      147 482,03   
Поступление на расчетный счет БП00-000011 от 20.10.2015 23:59:59      835 731,40   
24/15-ПС от 16.07.2015 (проектно-изыскательские работы)        1 302 757,81   1 302 757,81                   0
Поступление на расчетный счет БПБП-000004 от 22.01.2016 23:59:59      195 413,67   
Поступление на расчетный счет БП00-000010 от 20.10.2015 23:59:59      195 413,67   
Поступление на расчетный счет БП00-000008 от 02.10.2015 23:59:59      911 930,47   
ГеоПрофи ООО                                        5 500,00                   5 404,00        96,00
Основной                                                               5 404,00
Списание с расчетного счета БП00-000066 от 08.10.2015 23:59:59               5 404,00
Добавлено: 31 авг 2016, 05:19


LexaK, Некрасиво получилось. Вообщем надо, чтобы сумма договора и остаток фигурировали только в строке договор, а договор это группировка.

cska-fanat-kz

Цитата: loiterer от 31 авг 2016, 03:29LexaK, Спасибо, работает. Будем пользоваться фиксированным, благо их всего 5. Но интересно, можно ли сделать с меняющимся списком?

какое слово непонятно:
Цитата: vitasw от 30 авг 2016, 11:25вешайте 2-ой дин. список с отображением этих ваших подписей с установкой параметра ссылки документа при активации строки

??
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

LexaK

ЦитироватьНо интересно, можно ли сделать с меняющимся списком?
а зачем меняющийся? забейте максимально возможное число подписывающих! просто в тех документах где их 1, 2 просто остальные колонки будут пустыми,
если люди работают с разными видами документа, то они в настройках формы могут скрыть лишние колонки.


по поводу отчета
если хотите видеть сумму только по группировке Договор, то Конфигураторе в СКД на закладке Ресурсы, есть колонка расчитывать по, там для нужного ресурса указываете Договор.
данный ресурс будет расчитываться/выводиться только для группировки Договор.
Вроде это вам надо. Проверьте.
если помогло нажмите: Спасибо!

loiterer

LexaK, Не, что-то не получается
Есть Договор, в котором четыре поля сумма договора, приход, расход, остаток. И есть документы: расход и приход, в которых собственно 1 поле - сумма документа.
Надо, чтобы в результате появился список, в котором в строке договор заполнялись все 4 поля, а в строке документ только приход или расход. Договор - это группировка, а документ - детальная запись.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск