|
СКД программный вывод расшифровка | ☑ | ||
---|---|---|---|---|
0
Soulseller76
31.03.16
✎
13:34
|
При программном выводе СКД не работает расшифровка.Вместо формы объекта выходят цифры.
Куда хоть смотреть?! |
|||
1
Soulseller76
31.03.16
✎
13:34
|
Забыла сказать. Обычные формы.
|
|||
2
zladenuw
31.03.16
✎
13:49
|
(1) ну так ты выводишь. код покажи
|
|||
3
Тролль главный
31.03.16
✎
13:50
|
лучше запрос
|
|||
4
Soulseller76
31.03.16
✎
13:52
|
В двух словах о проблеме. Есть макет типа "схема компоновки данных". Там программно заполняются параметры и компонуется отчет. Но в результате даже у ссылочных полей не работает расшифровка. Отчет формируется по нажатию кнопки:
СхемаКомпоновкиДанных = ПолучитьМакет("АнализВзаиморасчетовПоСчету"); //создадим компоновщик настроек и загрузим настройки по умолчанию, вместо настроек по умолчанию можно использовать восстановленные настройки КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных(); КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию); Настройки = КомпоновщикНастроек.Настройки; //установка параметров отчета Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("СуммаНачислений",Параметры.СуммаНачислений); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("КонечныйОстаток",Параметры.КонечныйОстаток); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ЕстьНедоплата",Параметры.ЕстьНедоплата); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ЕстьПереплата",Параметры.ЕстьПереплата); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ЕстьЧастьОплаты",Параметры.ЕстьЧастьОплаты); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ОплаченПолностью",Параметры.ОплаченПолностью); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("ЕстьНачисления",Параметры.ЕстьНачисления); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("СтатусСчета",Параметры.СтатусСчета); Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("СчетНаАренду",Параметры.СчетНаАренду.Ссылка); //Помещаем в переменную данные о расшифровке данных - здесь ненужный пункт, но пусть будет. ДанныеРасшифровкиСКД = Новый ДанныеРасшифровкиКомпоновкиДанных; //Формируем макет, с помощью компоновщика макета КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; //Передаем в макет компоновки схему, настройки и данные расшифровки МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровкиСКД); // //Выполним компоновку с помощью процессора компоновки ВнешнийНаборДанных = Новый Структура("тзВзаиморасчеты", тзВзаиморасчеты); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, ВнешнийНаборДанных, ДанныеРасшифровкиСКД, ИСТИНА); // //Очищаем поле табличного документа Результат = Новый ТабличныйДокумент(); //Выводим результат в табличный документ ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(Результат); ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); //Адрес = ПоместитьВоВременноеХранилище(ДанныеРасшифровкиСКД, Результат); //ДанныеРасшифровки = Адрес ; Результат.Области.Найти("Регистратор"); Результат.ОтображатьЗаголовки = Ложь; Результат.ОтображатьСетку = Ложь; //Результат.ТолькоПросмотр = Истина; Результат.Показать("АнализВзаиморасчетов по счету Аренды "+Ссылка); |
|||
5
PR третий
31.03.16
✎
13:53
|
(3) Нахрен тебе запрос? Мадам просто не понимает, что ручная обработка расшифровки предполагает ручную обработку этих самых "цифр", которые не цифры, а вполне себе другой тип.
В Яндексе уже давно все расшивровано на эту тему. |
|||
6
zladenuw
31.03.16
✎
13:55
|
(4) так нахрена вручную формировать отчет ? параметры можно подсунуть и без формирования программно
|
|||
7
zladenuw
31.03.16
✎
13:57
|
(6) в добавок. при изменение их просто обновляешь их в компоновке.
http://1cskd.ru/2011/03/parametr-programmno-v-8-2/ |
|||
8
Soulseller76
31.03.16
✎
13:57
|
(5) Так в каком месте устроить эту "ручную обработку"?
Если писать Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка), то где ее вызывать? При двойном клике на отчете в эту процедуру я не попадаю. |
|||
9
PR третий
31.03.16
✎
13:58
|
||||
10
PR третий
31.03.16
✎
13:59
|
+(9) Вообще, по-моему расшифровку даже при программном выводе можно оставить типовую, главное выводить правильно.
|
|||
11
Soulseller76
31.03.16
✎
14:12
|
(10) Что значит "правильно"? Я ее выводу неверно? Тогда в чем моя ошибка?
|
|||
12
zladenuw
31.03.16
✎
15:12
|
||||
13
zladenuw
31.03.16
✎
15:13
|
а вообще мой тебе советь почитать книгу Хрусталевой про реализацию сложных отчетов. там про расшифровку так же есть
http://asu.ugatu.ac.ru/library/81/e.ju.hrustaleva___razrabotka_slogn_h_otchetov_v_1s_predprijatii_8.pdf |
|||
14
EvgeniuXP
31.03.16
✎
20:23
|
(13) хрусталева - это основы, много что там не досказано
|
|||
15
EvgeniuXP
31.03.16
✎
20:23
|
И осталось за кулисами
|
|||
16
Soulseller76
01.04.16
✎
11:19
|
(12) Я это все читала! Я много инфы перекопала прежде чем решилась обратиться за помощью в форум. Не помогает мне это. :(
|
|||
17
Soulseller76
01.04.16
✎
11:26
|
(12) Когда я делаю внешний отчет с этим же запросом и выводом на форму - все как описано в той ссылке, что вы мне дали - все ок! Но когда это все 1. Макет документа и 2. Я программно вывожу в табличный документ, который инициирую в процедуре - не срабатывает.
|
|||
18
DailyLookingOnA Sunse
01.04.16
✎
11:27
|
Ну и теперь для табличного документа нужно закодить обработчик "ОбработкаРасшифровки".
|
|||
19
Soulseller76
01.04.16
✎
12:27
|
(18) Откуда данный обработчик вызывать? Если я его помещаю просто в код - то на него нет реакции при отладке.
|
|||
20
EvgeniuXP
01.04.16
✎
20:37
|
нет реакции, значит не в макете у ячейки табличного документа не указала имя расшифровки.
|
|||
21
EvgeniuXP
01.04.16
✎
20:38
|
потом положи туда значение (заполняют как параметры в макете) - и будет срабатывать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |