|   |   | 
| 
 | Результат запроса aka ТЗ на УФ | ☑ | ||
|---|---|---|---|---|
| 0
    
        andrewks 05.01.12✎ 17:05 | 
        копаю тут УФ. что, такая связка в общем случае не предусмотрена?
  реквизит у формы типа ТЗ сделал, НаСервере отрабатывает запрос, результат выгружается в этот реквизит (ДанныеФормыКоллекция). а как показать-то её? если не задать у ТЗ колонки - она не отображается, если задать - появляется зависимость от текста конкретного запроса. или щас уже так не модно, и нужно для этого Таблицу пользовать? | |||
| 1
    
        andrewks 05.01.12✎ 17:27 | 
        короче, никак, да? или есть изощрённый способ?     | |||
| 2
    
        Новиков 05.01.12✎ 17:34 | 
        Ну это, динамическим списком там чутка поиграть, не?     | |||
| 3
    
        andrewks 05.01.12✎ 17:44 | 
        (2) ну, интересен именно случай с ТЗ.
  думаю щас в сторону ИзменитьРеквизиты(). правильно мыслю? | |||
| 4
    
        nicxxx 05.01.12✎ 17:46 | 
        на клиенте ТЗ нет. и не будет.     | |||
| 5
    
        andrewks 05.01.12✎ 17:47 | 
        (4) ну, как бы в реквизите и на форме-то есть     | |||
| 6
    
        nicxxx 05.01.12✎ 17:51 | 
        ну как бы тип данных - не ТЗ а Коллекция     | |||
| 7
    
        andrewks 05.01.12✎ 17:55 | 
        (6) в курсе. сути это не меняет. тип данных реквизита указывается как ТЗ, отображается тоже в ТЗ     | |||
| 8
    
        nicxxx 05.01.12✎ 17:59 | 
        ну да, только на клиента надо передавать эту ТЗ кодом, например:
  ЗначениеВДанныеФормы(ДеревоБДРФорма, ДеревоБДР); | |||
| 9
    
        nicxxx 05.01.12✎ 18:00 | 
        ну или как там у тебя реквизиты называются:
  ЗначениеВДанныеФормы(ТЗ_результатЗапроса, ТЗ_реквизитФормы); | |||
| 10
    
        andrewks 05.01.12✎ 18:00 | 
        (8) ну так и делаю. просто структура колонок должна быть привязана к конкретному запросу. а интересно, можно ли универсализировать     | |||
| 11
    
        nicxxx 05.01.12✎ 18:04 | 
        если только программно добавлять реквизиты ТЗ:
  ТипЧисло = Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(8,0)); МассивТипов = Новый Массив; МассивТипов.Добавить("СправочникСсылка.СтатьиДоходовРасходов"); ТипСтатья = Новый ОписаниеТипов(МассивТипов); ДобавляемыеРеквизиты = Новый Массив; КолонкаДерева = Новый РеквизитФормы("СтатьяДР", ТипСтатья, "ДеревоБДР", "СтатьяДР"); ДобавляемыеРеквизиты.Добавить(КолонкаДерева); ИзменитьРеквизиты(ДобавляемыеРеквизиты); | |||
| 12
    
        andrewks 05.01.12✎ 18:06 | 
        (11) вот так и хочу щас попробовать, просто пока занят в соседней ветке :)     | |||
| 13
    
        nicxxx 05.01.12✎ 18:09 | 
        скорее взлетит, чем нет, но подумать над реализацией придется...     | |||
| 14
    
        andrewks 05.01.12✎ 18:26 | 
        сопсна, во: v8: СКД 8.2: программный вывод в дерево значений на форме
  я не первый извращенец :) | |||
| 15
    
        andrewks 06.01.12✎ 09:16 | 
        срослось, однако.
  короче, в реквизитах создаём коллекцию с типом "ТаблицаЗначений" без колонок, элемент формы не создаём. (т.к. программно удалять можно только программно добавленные реквизиты и элементы) потом на сервере, после выполнения запроса: 
  | |||
| 16
    
        andrewks 06.01.12✎ 09:28 | 
        важное дополнение:
  если таблицу надо потом позволить редактировать, то лучше исключить из описаний типов Null, пришедший к нам из выгрузки результата запроса. для этого немного модифицируем вот здесь: Для каждого ТекКол из ТабРез.Колонки Цикл ТекТипы=Новый ОписаниеТипов(ТекКол.ТипЗначения,,"Null"); МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы(ТекКол.Имя,ТекТипы,ИдКоллекции)); КонецЦикла; | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |