Имя: Пароль:
1C
 
Можно ли в динамический список (УФ) выводить вычислимые поля в СКД.
0 Гений 1С
 
гуру
16.09.15
11:22
Есть отчет, он показывает список товаров, хранящихся в ячейке (УТ11).
Хотелось бы в форму выбора ячейки также напротив каждой ячейки показывать список товаров.
Но не вижу в настройке динамического списка вычислимых полей.
Причем это должны быть вычисления на уровне СКД, а не языка запросов, т.к. конкатенация списков есть только в СКД.

Возможно это сделать? Или СКД к динамическим спискам не позволяет такого решения?
1 Бубка Гоп
 
16.09.15
11:26
(0) Неужели для того, чтобы вывести товары в ячейке, нужны вычисляемые поля?
2 Гений 1С
 
гуру
16.09.15
11:35
(1) ключевое слово - конкатенация.
3 Гений 1С
 
гуру
16.09.15
11:36
т.е. список такой:

Колонка    Колонка
с ячейкой  со списком
ячейка1    пиво Овип Локос, пиво Балтика
ячейка2    водка Смирнов, водка Абсолют
...
4 Гений 1С
 
гуру
16.09.15
11:37
Если бы можно было на сервере обработать динамический список перед выводом на экран, тоже было бы неплохо.
5 Гений 1С
 
гуру
16.09.15
12:28
Че то так не взлетает:


&НаКлиенте
Процедура ДинамическийСписокПриАктивизацииСтроки(Элемент)
    // Вставить содержимое обработчика.
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
    ПодключитьОбработчикОжидания("ОбновлениеДинамическогоСписка", 1);
КонецПроцедуры

&НаКлиенте
Процедура ОбновлениеДинамическогоСписка()
    Инд = 1;
    Пока истина Цикл
        ТекДанные = Элементы.ДинамическийСписок.ДанныеСтроки(Инд);
        Если ТекДанные = Неопределено Тогда
            Прервать;
        КонецЕсли;
        ТекДанные.Наименование = "№ " + Инд;
        Инд = Инд + 1;
    КонецЦикла;
    ЭтаФорма.ОбновитьОтображениеДанных();
    //Элементы.ДинамическийСписок.Обновить();
КонецПроцедуры
6 Fedor-1971
 
16.09.15
12:36
(4) у Дин.Списка нет итератора для перебора строк.
Рули запросом, в нём вычисляй нужные тебе поля
7 NcSteel
 
16.09.15
12:38
(0) Запрос динамического списка должен быть максимально простым, без соединений и т.д.
8 Бубка Гоп
 
16.09.15
13:02
(5) Перебирать дин. список бессмысленно хотя бы потому что он динамический, т.е. сразу всех данных в нем как правило нет, подгружаются "на лету".
p.s. если придумаешь как сделать (3) напиши, аж интересно стало
9 Гений 1С
 
гуру
16.09.15
13:02
(6) в языке запросов нет конкатенации.

получается, что список УФ на порядок хуже обычных форм:

1. Нельзя вывести свои значения, которые не вычисляются запросом (например конкатенация и значения, которые берутся из другой базы).

2. Нет события скроллинга и изменения текущих отображаемых элементов.

И вот нафиг было так кастрировать функционал? Опять теоретики мучают практиков.
10 Гений 1С
 
гуру
16.09.15
13:02
(8) что значит подгружаеются на лету? То, что выводится на форму, уже подгружено.
11 Бубка Гоп
 
16.09.15
13:04
(10) Значит, что в списке содаржится инфа на экран + сколько то процентов для прокрутки, скроллишь - он тянет из базы еще на экран и т.д.
12 Бубка Гоп
 
16.09.15
13:07
Он предназначен только для вывода информации, как то ее менять непосредственно в нём возможности нет.
Но ведь кроме ДС есть и другие элементы.
13 Бубка Гоп
 
16.09.15
13:08
Например, можно поизвращаться через ТЗ
14 Гений 1С
 
гуру
16.09.15
13:13
(11) понятно, но что мешало создать доступный список текущих отображаемых строк и событие скроллинга? Идиотизм от 1С.

(12) ну и добавить возможность менять. На выходе имеем что УФ искусственно беднее обычных. Бред.

(13) можно конечно, но если нужно всего одну колонку к форме выбора из списка элементов прикрутить, то это то еще извращение...
15 DmitrO
 
16.09.15
13:33
Вычисляемых полей (как в СКД) в ДС действительно не хватает.
16 Гений 1С
 
гуру
16.09.15
13:34
(15) не перестаю удивляться горячей любви фирмы 1С к разработчикам на её платформе.
17 DmitrO
 
16.09.15
13:37
(16)любовь, она такая: где то нежность, где то страдания.
18 Гений 1С
 
гуру
16.09.15
13:40
(17) хотел выругаться, но сдержался.
19 Salimbek
 
16.09.15
13:50
(0) Посмотри тут вариант: http://www.cyberforum.ru/1c/thread646682-page3.html
20 Гений 1С
 
гуру
16.09.15
14:01
(19) это не вариант, а извращение. Условное оформление будет слишком напряжным, при этом надо знать заранее список элементов, так проще в запрос подсунуть таблицу.
Но я же не могу сразу вычислить все остатки, запихнуть их в таблицу и подать запросу. Долго получится.
21 Гений 1С
 
гуру
16.09.15
15:18
Кстати, а зачем ДанныеФормыСтруктура сделана на чтение, если при ее изменении не меняется отображение динамического списка? что за нонсенс
22 Гений 1С
 
гуру
16.09.15
15:19
то бишь если я меняю данные строки, они не отображаются на форме.
23 Гёдза
 
16.09.15
15:36
Приходится работать с тем что есть
24 Гений 1С
 
гуру
16.09.15
15:46
(23) я не против, только не надо пропогандировать это гуано как передовое и крутое. ;-)
блин, сознательно испохабить и кастрировать функционал - это уметь надо. Спасибо, дорогое 1с.
25 Гёдза
 
16.09.15
16:45
(24) Передовое, крутое, но не функциональное )))
26 Гёдза
 
16.09.15
16:45
и тормозное