|
8.2 УФ форма отчета | ☑ | ||
---|---|---|---|---|
0
qeos
29.12.11
✎
11:49
|
как это делается? дайте пример. только не СКД!!
|
|||
1
Джинн
29.12.11
✎
11:51
|
А в чем собственно проблема? Посмотри в УТ11 любой отчет.
|
|||
2
qeos
29.12.11
✎
11:52
|
(1) УТ нету..
проблема в том что макетов нету.. получается все руками форматировать? |
|||
3
YF
29.12.11
✎
11:52
|
(3) Обычные формы умеешь делать для отчетов?
|
|||
4
qeos
29.12.11
✎
11:53
|
обычные - да..
но.. хочу макеты.. |
|||
5
YF
29.12.11
✎
11:53
|
(4) В чем проблема-то?
|
|||
6
qeos
29.12.11
✎
11:53
|
(3) хотя может и нет.. где макеты-то?
|
|||
7
YF
29.12.11
✎
11:54
|
(6) Какое отношение макеты имеют к форме?
|
|||
8
Джинн
29.12.11
✎
11:57
|
(5) А макеты там же, где обычно - в макетах Отчета, а не его формы.
|
|||
9
qeos
29.12.11
✎
11:59
|
бррр... давно писал...
|
|||
10
qeos
29.12.11
✎
12:01
|
&НаСервере
Процедура СформироватьОтчет() Запрос = Новый Запрос("ВЫБРАТЬ.... Выборка = Запрос.Выполнить().Выбрать(); ТабДок = ЭтаФорма.ТаблицаОтчета; ПолучитьМакетОформления(""); Индекс = 1; Пока Выборка.Следующий() Цикл Область = ТабДок.Область("R"+Индекс+"C2"); Область.Текст = Выборка.Ссылка; Индекс = Индекс + 1; КонецЦикла; КонецПроцедуры &НаКлиенте Процедура Сформировать(Команда) СформироватьОтчет(); КонецПроцедуры как правильно работать? чтото на сервере нет функции ПолучитьМакет.. а эта ПолучитьМакетОформления("") - не та.. |
|||
11
acsent
29.12.11
✎
12:03
|
Данные получаешь с помошью компоновки, выводишь руками. Есть событи ПриКомпоновкеРезультата
|
|||
12
qeos
29.12.11
✎
12:05
|
(11) а если без скд? или компановка это не скд?
|
|||
13
qeos
29.12.11
✎
12:05
|
http://sky1c.ru/node/190
вот такое как на УФ? |
|||
14
Леха Дум
29.12.11
✎
12:06
|
&НаСервере
Макет = Отчеты.ТвойОтчет.ПолучитьМакет("ТвойМакет"); &НаКлиенте Процедура Сформировать(Команда) ТабДок = СформироватьОтчет(); ТабДок.Показать(); или отобразить в элюуправления КонецПроцедуры |
|||
15
Леха Дум
29.12.11
✎
12:06
|
элюуправления = эл. управления
|
|||
16
qeos
29.12.11
✎
12:07
|
(14) а если это внешняя обработка?
|
|||
17
Пришел в тапках
29.12.11
✎
12:07
|
(14) Опередил )
|
|||
18
acsent
29.12.11
✎
12:07
|
(12) Зачем без СКД? А как же отборы всякие?
|
|||
19
Пришел в тапках
29.12.11
✎
12:07
|
(16) Если внешняя - просто ПолучитьМакет("МойСуперМакет");
|
|||
20
acsent
29.12.11
✎
12:08
|
В принципе можно и руками данные получать
|
|||
21
acsent
29.12.11
✎
12:09
|
(14) Не пойдет. Не сможешь таб док на клиент передать
|
|||
22
qeos
29.12.11
✎
12:09
|
(18) скд не все умеет..
(19) наСервере нет такой функции.. у тонкого клиента тоже.. |
|||
23
qeos
29.12.11
✎
12:10
|
(21) какой выход есть?
|
|||
24
qeos
29.12.11
✎
12:11
|
(21) допустим я получу данные на сервере.. но на клиенте на тонком я тоже не смогу вывести?
|
|||
25
Леха Дум
29.12.11
✎
12:11
|
(21) это про что?
Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение. Сериализуется. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен {http://v8.1c.ru/8.1/data/spreadsheet}. Имя типа XDTO: SpreadsheetDocument |
|||
26
Леха Дум
29.12.11
✎
12:12
|
+(25) Элемент управления соответствующий тоже вроде никто не отменял
|
|||
27
Buster007
29.12.11
✎
12:12
|
я в модуле объекта формировал ТабДок и передавал на клиента.
|
|||
28
qeos
29.12.11
✎
12:13
|
(27) можешь показать?
|
|||
29
qeos
29.12.11
✎
12:14
|
+(28) с макетом?
|
|||
30
ДенисЧ
29.12.11
✎
12:16
|
(28) вот тебе начало моего кода. Рабочего.
Внешняя обработка на УФ. &НаСервере Функция Распечатать() текОбъект = ЭтаФорма.РеквизитФормыВЗначение("Объект"); док = Объект.ВыбДокумент; Макет = текОбъект.ПолучитьМакет("СчетФактура"); табДок = Новый ТабличныйДокумент; облШапка = Макет.ПолучитьОбласть("Шапка"); //и так далее Возврат ТабДок; КонецФунции |
|||
31
acsent
29.12.11
✎
12:17
|
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь; ДокументРезультат.Очистить(); // тут далее код по выводу отчета КонецПроцедуры |
|||
32
acsent
29.12.11
✎
12:18
|
В модуле отчета
|
|||
33
Buster007
29.12.11
✎
12:18
|
(29) в (30) там всё верно ) да и в (31) верно, но если обработка, то не будет работать (31)
|
|||
34
acsent
29.12.11
✎
12:20
|
(33) Зачем обработка, когда отчет? Пора уже отходить от семерочных методов
|
|||
35
qeos
29.12.11
✎
12:21
|
(34) не подходит мне скд.. v8: УФ: построение отчета по разным данным
|
|||
36
acsent
29.12.11
✎
12:22
|
(35) Причем здесь СКД? никто не заставляет юзать скд
|
|||
37
acsent
29.12.11
✎
12:23
|
у тебя просто не в модуле формы процедура Сформировать, а в модуле объекта
|
|||
38
qeos
29.12.11
✎
12:24
|
(30) вот она плюшка: ЭтаФорма.РеквизитФормыВЗначение("Объект");
спасибо |
|||
39
Buster007
29.12.11
✎
12:42
|
(34) я 7кой вообще не работал ) но бывают такие случаи, когда надо вывести и из обработки )
А для примера есть даже в типовой УТ11 есть обработка ПечатьТТН, а не отчет. ) |
|||
40
acsent
29.12.11
✎
12:46
|
Плюс моего метода в том, что этот отчет можно будет формировать из какого-нибудь регламентного задания
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |