|
8.2 Внешняя ОБРАБОТКА. Вывод СКД в Табличный документ. | ☑ | ||
---|---|---|---|---|
0
totparen
15.08.11
✎
10:23
|
Ребята, помогите пожалуйста написать функцию возврата табличного документа на основании СКД. Незнама с чего начать. УТ 11.
|
|||
1
Wobland
15.08.11
✎
10:25
|
намекаю:
ДокРезультат=ЭлементыФормы.Результат; ДокРезультат.Очистить(); ПроцессорВывода=Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокРезультат); |
|||
2
totparen
15.08.11
✎
10:28
|
А как же "СКД = ПолучитьМакет("СКД");"?
и ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент - не для тонкого клиента. |
|||
3
Defender aka LINN
15.08.11
✎
10:29
|
(2) Разрешаю сделать это на сервере.
|
|||
4
Wobland
15.08.11
✎
10:30
|
ну у меня кода чуть больше, чем я привёл ;)
ну делай на сервере, возвращай ТабДок. ТабДок клиент понимает? |
|||
5
totparen
15.08.11
✎
10:39
|
Ребята, чё прикалываетесь?! Нифига я не одупляю не Клиент-Серверные кода, не компоновку. Дайте мне какой-нибдуь кодище в тему, я уж его сам по косточкам разберу.
|
|||
6
Wobland
15.08.11
✎
10:45
|
намекаю:
ДокРезультат=Новый ТабличныйДокумент; ДокРезультат.Очистить(); ПроцессорВывода=Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокРезультат); Возврат ДокРезультат; это на сервере |
|||
7
Wobland
15.08.11
✎
10:49
|
>функцию возврата табличного документа на основании СКД
а если у тебя на форму уже выводится отчёт, то ЭлементыФормы.ТвоёПолеТабДока будет содержать то, что надо |
|||
8
Wobland
15.08.11
✎
10:49
|
Элементы.ТвоёПолеТабДока в 8.2, да?
|
|||
9
totparen
15.08.11
✎
10:50
|
(6) Я просто не пойму, как в этом коде указать мою СКД. Это же не Отчет, где можно установить основную СКД, а Обработка.
|
|||
10
Нуф-Нуф
15.08.11
✎
10:53
|
http://1cskd.ru/
здесь найдешь все что тебе нужно |
|||
11
totparen
15.08.11
✎
10:57
|
(10) да, отличный сайт. Давно с ним знаком.
|
|||
12
totparen
15.08.11
✎
11:01
|
Вот только мне бы это всё под управляемое приложение...
|
|||
13
Wobland
15.08.11
✎
11:06
|
(12) 1006 руб.
|
|||
14
totparen
15.08.11
✎
13:53
|
Среагировал тип этого (пользуйтесь люди, мне не жалко!)
функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) Результат = Новый ТабличныйДокумент; // Схема компоновки данных СхемаКомпоновкиДанных = ПолучитьМакет("СКД"); // Загрузка настроек КомпоновщикНастроекКомпоновкиДанных = Новый КомпоновщикНастроекКомпоновкиДанных; КомпоновщикНастроекКомпоновкиДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); КомпоновщикНастроекКомпоновкиДанных.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию); // Установка параметров данных КомпоновщикНастроекКомпоновкиДанных.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("Ссылка", МассивОбъектов[0]); // Компоновка макета КомпоновщикМакетаКомпоновкиДанных = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновкиДанных = КомпоновщикМакетаКомпоновкиДанных.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроекКомпоновкиДанных.ПолучитьНастройки());//,,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); // Инициализация процессора компоновки ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных); ПроцессорВывода = новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.НачатьВывод(); Пока Истина Цикл ЭлементРезультата = ПроцессорКомпоновкиДанных.Следующий(); Если ЭлементРезультата= Неопределено Тогда Прервать; Иначе ПроцессорВывода.ВывестиЭлемент(ЭлементРезультата); КонецЕсли; КонецЦикла; ПроцессорВывода.ЗакончитьВывод(); Возврат Результат; КонецФункции |
|||
15
Wobland
15.08.11
✎
13:57
|
(14) ну вот, стоило немного задуматься. а ты кодище, кодище..
|
|||
16
detec
15.08.11
✎
13:58
|
(0) Можно нескромный вопрос? Почему для СКД выбрана именно обработка, а не отчёт? В (14) приведен самый что ни есть типовой код.
|
|||
17
totparen
15.08.11
✎
14:13
|
(16) Насколько я понял, в УТ11 "Дополнительные обработки и отчеты" не хавает Внешний отчет, в качестве дополнительной печатной формы для документа... Или я что-то не то делал?
|
|||
18
detec
15.08.11
✎
14:55
|
(17) Непонятно, какой смысл делать на СКД печатную форму документа? В своей практике я только 1 раз сталкивался, что на СКД было выгодно сделать одну очень забористую ПФ. А так - чем не устраивает конструктор печати?
З.Ы. занимаюсь в основном разработкой отчётов на СКД. |
|||
19
totparen
15.08.11
✎
15:51
|
(18) Стыдно признаться - никогда не работал с конструктором печати.
Что-то я не понял ваше ЗЫ - Вы либо один раз сталкивались с СКД, и в основном работаете с конструктором печати, либо в основном в СКД разрабатываете отчеты? Да и тендеция такова что все отчеты скоро будут разрабатываться на СКД. |
|||
20
Nutsiiam
15.08.11
✎
16:17
|
(19) конструктор печати не использовал? :) Честно, если бы мне сказали когда про СКД только писюкнули в книжке переход от 8.0 к 8.1 - что СКД так захватит умы - не поверил бы!
Ну ты чтоб стыдно не было, возьми простой запрос какой-нибудь, да отчет обычный конструктором сделай - и посмотришь сразу, какой там код генериться - там все элементарно на столько, на сколько можно. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |