Имя: Пароль:
1C
1С v8
Расшифровка СКД 1С 8.3
,
0 Progr 1C
 
23.05.16
15:19
Как сделать программную расшифровку диаграммы сформированное с помощью СКД 1С 8.3? У меня при стандартной расшифровке число выдает.(
1 Nuobu
 
23.05.16
15:23
Там справа от названия темы есть буква "Я". Пробовали нажимать?
2 Progr 1C
 
23.05.16
15:26
Да нагуглил уже не понятно
3 Timon1405
 
23.05.16
15:29
по букве Я работает яндекс, импортозамещение, панимаешь
4 Progr 1C
 
23.05.16
15:33
Да знаю. Но я много чего уже посмотрел в инете.( Попробую еще посидеть(((
5 AceVi
 
23.05.16
16:13
(4) Тема неоднократно обсуждалась.
У стандартного отчета на СКД есть реквизит ДанныеРасшифровки - вот это цифра это значение одного из полей ДанныеРасшифровки. либо сам получи нужную строку, либо есть процедуры типа этой - ТиповыеОтчеты.ОбработкаРасшифровкиТиповогоОтчета, где используются процедуры по типу таких ТиповыеОтчеты.ПолучитьМассивПолейРасшифровки, которые и работают с реквизитом ДанныеРасшифровки. вот туда копай.
6 Progr 1C
 
24.05.16
07:33
В процедуре РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) через точку останова проверяю ДанныеРасшифровки пустое
7 Progr 1C
 
24.05.16
07:34
Реквизит ДанныеРасшифровки пустое нет никаких данных
8 Progr 1C
 
24.05.16
08:49
?
9 LordCMEPTb
 
24.05.16
08:53
Значит надо копать программный вывод отчета, где-то данные расшифровки потерялись.
10 AceVi
 
24.05.16
10:01
(7) У тебя стандартный СКД отчет?
Посмотри в модуле объекта процедуру сформироватьОтчет там данныеРасшифровки передаються обязательно в СКД, может как то по другому переменную назвали. а может вообще ничего не передают, проверь там.
11 Progr 1C
 
24.05.16
12:19
Нет. У меня в отчете 4 диаграммы первую я сформирую через СКД. Остальные 3 программно. Я убрал командную панель. И добавил свою команду сформировать. При нажатие выполняется и скд и программно созданные диаграммы. Да я назвал ДанныеРасшифровки Как ДанныеРасшифровкиК. Если не переименовать оно не дало возможности сформировать отчет.
12 Progr 1C
 
24.05.16
12:21
Ошибку выдало Не сответствие типов параметр 3
13 Progr 1C
 
24.05.16
12:21
{Отчет.КоличествоСооружении.Форма.ФормаОтчета.Форма(26)}: Ошибка при вызове метода контекста (Инициализировать)
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки);
по причине:
Несоответствие типов (параметр номер '3')
14 Nuobu
 
24.05.16
12:23
(11) Так сразу бы и сказал.
Все ссылки завязаны на том, что отчет, который формируется - один. И в нём присутствует нужная тебе расшифровка.
А в твоём случае нужно хранить все четыре отчета на форме, чтобы в расшифровке определить, по какому отчету пользователь хочет её увидеть.
Плюс, твой отчет не до конца понимает, какая схема главная для табДока Результат.

Стандартный код:

    НастройкиСКД = КомпоновщикНастроек.Настройки;
    
    СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
    
    ДанныеРасшифровкиОтчета = Новый ДанныеРасшифровкиКомпоновкиДанных;
    
    НастройкиСКД.ПараметрыДанных.Элементы.Найти("Номенклатура").Значение = Справочники.Номенклатура.НайтиПоКоду("1"); // заполняем какие-то параметры

    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиСКД, ДанныеРасшифровкиОтчета);
    
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровкиОтчета);

    ДокументРезультат = ЭлементыФормы.Результат;
    ДокументРезультат.Очистить();
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
    ДокументРезультат.Показать();

Тебе нужно будет подменить
НастройкиСКД = КомпоновщикНастроек.Настройки;
СхемаКомпоновкиДанных = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
на нужный отчет.
15 Progr 1C
 
24.05.16
13:09
Этот код я писал уже. Остальные 3 диаграммы отлично работает.
16 Progr 1C
 
24.05.16
13:10
Именно первая диаграмма при расшифровке число дает
17 Progr 1C
 
24.05.16
13:14
как мне поймать момент когда скд начинает заполнять данныерасшифровки и заполнять для каждой столбика диаграммы свою расшифровку
18 Progr 1C
 
24.05.16
13:16
ДанныеРасшифровкиК = Новый ДанныеРасшифровкиКомпоновкиДанных;
19 Progr 1C
 
24.05.16
13:17
как ДанныеРасшифровкиК заполнят своими данными
20 Progr 1C
 
24.05.16
13:18
ДанныеРасшифровкиК.Элементы.Добавить(Тип("СправочникСсылка.Фонды"),,"Количество");
21 Progr 1C
 
24.05.16
13:18
вот так попробовал но выдает ошибку
22 Progr 1C
 
24.05.16
13:18
Недопустимое значение параметра (параметр номер '1')
23 AceVi
 
24.05.16
14:19
(22)   Вот же!
ДанныеРасшифровкиОтчета = Новый ДанныеРасшифровкиКомпоновкиДанных;
    
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиСКД, ДанныеРасшифровкиОтчета);

"Момент" ты не поймаешь - это на уровне платформы.
24 Progr 1C
 
25.05.16
08:49
У меня на реквизит:"Результат" тип:ТабДок  выходит диаграмма сформированный с помощью СКД. Теперь как делать расшифровку столбца? Диаграмма Гистограмма объемная.
25 Progr 1C
 
25.05.16
08:53
Задача. У меня есть Справочник:Товары. Я вывожу на два столбца количество товаров: первый- новые и второй-старое. При клике на столбец у меня должно выйти список товаров.
26 Progr 1C
 
25.05.16
08:54
Например Новых товаров: 5. При нажатие на этот столбец должен выйти список 5-ти товаров.
27 AceVi
 
25.05.16
09:29
(26) Последний раз - ты передаешь в СКД вот такой объект
ДанныеРасшифровкиОтчета = Новый ДанныеРасшифровкиКомпоновкиДанных;
Скд там сам расшифровки раскидывает по полной, когда ты нажимаешь столбец - у тебя срабатывает процедура РезультатОбработкаРасшифровки - где Расшифровка - это не значение расшифровки как таковой - а номер в из колонки в таблице ДанныеРасшифровкиОтчета которая вернулась из СКД. вот найти этот номер и там будет колонка Значение - где и будет содержаться непосредственное значение расшифровки.
Это все если мы говорим о стандартном СКД отчете. если ты сам что то придумал то см и делай расшифровку.
28 Progr 1C
 
25.05.16
09:45
В процедуре "РезультатОбработкаРасшифровки" Перем ДанныеРасшифровкиОтчета  Пустое!!!
29 Progr 1C
 
25.05.16
09:46
проверял через точку останова
30 AceVi
 
25.05.16
11:15
(28) Да я назвал ДанныеРасшифровки Как ДанныеРасшифровкиК. Если не переименовать оно не дало возможности сформировать отчет. (с) - Твои слова из (11) поста? ну и проверяй как ты там назвал.
31 Progr 1C
 
25.05.16
12:15
Я как назвал так и проверяю
32 Progr 1C
 
25.05.16
12:16
Пустое!!!
33 Progr 1C
 
25.05.16
12:28
?
34 AceVi
 
25.05.16
12:33
(32) Отчет сформируеться в УПП?
Скинь отчет([email protected]) я гляну, может без формирования будет ясно что как.
Сейчас сделал тест - на скд вывел диаграмму - при клике на Историю(на столбец не реагирует) заходит в расшифровку - там цифра - по этой цифре отсюда ДанныеРасшифровки получил значение. в чем проблема у тебя, непонятно.
И в любом случае - в значении расшифровки из ДанныеРасшифровки храниться не "5 новых номенклатур" а значение поля, а вот по значению поля ты и можешь найти свои 5 новых номенклатур.
Вот написал и задумался - что же у тебя там в отчете? если у тебя просто Колонка1=Новые Колонка2=5 - то где тут ссылки то на конкретные номенклатуры? пришли отчет, так непонятно что ты хочешь.
35 Progr 1C
 
25.05.16
13:19
Я отправил можете посмотреть
36 Progr 1C
 
25.05.16
13:25
(34)Вы открыли?
37 Progr 1C
 
25.05.16
13:51
Ну как там?
38 Progr 1C
 
25.05.16
13:57
(AceVi)?
39 AceVi
 
25.05.16
14:13
(37) на обеде? вкусно очень)
не торопись. никто не обещал в сей момент глянуть. сейчас посмотрю.
40 Progr 1C
 
25.05.16
14:15
I am sorry!!!
41 Progr 1C
 
25.05.16
14:15
Приятного апетита
42 Progr 1C
 
25.05.16
14:31
Нет у нас вечер уже(17:29)
43 Progr 1C
 
25.05.16
15:03
?
44 AceVi
 
25.05.16
15:22
(37) Короче, дело к ночи)
Зря ты сам решился делать)
1. У тебя управляемые формы, и ты не можешь передать на клиента объект ДанныеРасшифровкиК как ты его назвал, заметь что в в самой процедуре СформироватьНаСервере он у тебя существует и заполнен.
2. Тебе надо поместить ДанныеРасшифровкиК  во временное хранилище(ПоместитьВоВременноеХранилище смотри справку) а адрес поместить в переменную ЭтаФорма.ДанныеРасшифровки
3. при расшифровки ты выполняешь ПолучитьИзВременногоХранилища куда ставишь адрес. и получаешь расшифровку на клиенте.
4. а дальше что то типа такого  
Данные = ПолучитьИзВременногоХранилища(ТвойАдрес);
Элементы = Данные.Элементы.Получить(Расшифровка);
      Поля = Элементы.ПолучитьПоля();
и там разберешься уже.
45 Progr 1C
 
25.05.16
15:25
Можете сделать на моем базе и отправить? плиз
46 AceVi
 
25.05.16
15:29
(45) Работа, 10 строк накалякать. даже если справку читать 30 минут уйдет. может сам?

А ежели не сам, то сколько платишь?
47 AceVi
 
25.05.16
15:44
(45) http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=624023

вот еще почитай. думаю пригодиться все это)
48 Одинесю
 
25.05.16
15:55
(47) Там, кстати, НаСервереБезКонтекста можно, мы же не передаем весь контекст формы.
49 Progr 1C
 
26.05.16
08:19
Лучше все прогрраммно сделать)))
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший