helpf.pro
Регистрация
 0 
Распечатать

Как заполнить диаграмму данными?

Код 1C v 8.2 УП
 // Перезаполнит объект Диагамма значениями из Источник
// Параметры:
// Диаграмма - Диаграмма
// Источник - Массив, Таблица значений, Табличная часть - Коллекция,
// для которой доступен обход элементов коллекции посредством оператора Для каждого … Из … Цикл.
// ПараметрыЗаполнения - Структура - обязательные ключи "Точки", "Серии", "Значения"
// имена коллонок Источника
Процедура ЗаполнитьДиаграмму(Диаграмма, Источник, ПараметрыЗаполнения)

Перем ИндексТочек, ИндексСерий;
Перем Серия, Точка;
Перем ЗаписьИсточника;
Перем ПолеТочек, ПолеСерий, ПолеЗначений;

Диаграмма.Очистить();
Диаграмма.Обновление = Ложь;

Если Не (ТипЗнч(ПараметрыЗаполнения) = Тип("Структура")
Или ТипЗнч(ПараметрыЗаполнения) = Тип("ФиксированнаяСтруктура")
Или ТипЗнч(ПараметрыЗаполнения) = Тип("ФиксированноеСоответствие")
Или ТипЗнч(ПараметрыЗаполнения) = Тип("Соответствие")) Тогда

ПараметрыЗаполнения = Новый Структура;
КонецЕсли;

ПараметрыЗаполнения.Свойство("Точки", ПолеТочек);
ПараметрыЗаполнения.Свойство("Серии", ПолеСерий);
ПараметрыЗаполнения.Свойство("Значения", ПолеЗначений);

Для Каждого ЗаписьИсточника Из Источник Цикл
Точка = ПолучитьИндексОбъектаДиаграммы(Диаграмма.Точки, ЗаписьИсточника[ПолеТочек], ИндексТочек);
Серия = ПолучитьИндексОбъектаДиаграммы(Диаграмма.Серии, ЗаписьИсточника[ПолеСерий], ИндексСерий);
Диаграмма.УстановитьЗначение(Точка,Серия,ЗаписьИсточника[ПолеЗначений]);
КонецЦикла;

Диаграмма.Обновление = Истина;

КонецПроцедуры

// Вернёт число - индекс элемента Коллекции (Точки, Серии)
Функция ПолучитьИндексОбъектаДиаграммы(Коллекция, Значение, КешЗначений)

Перем индекс;

Если КешЗначений = Неопределено Тогда
КешЗначений = Новый Массив;
КонецЕсли;

индекс = КешЗначений.Найти(Значение);

Если индекс = Неопределено Тогда
КешЗначений.Добавить(Значение);
Коллекция.Добавить("" + Значение);
Индекс = КешЗначений.Количество()-1;
КонецЕсли;

Возврат индекс;
КонецФункции
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 11171
 0 
Распечатать
Возможно, вас также заинтересует
Как заполнить табличную часть формы программно? 8
Нужно по кнопке Заполнить - сформировать данные для заполнения табличных частей и заполнить их. Форма имеет вид: Рядом с кнопкой Записать и закрыть добавлена кнопка Заполнить документ , код ее команды: // Код заполнения ТЧ НаСервере П
1C медленно работает по сети с базой на SQL Server 22
Данное обстоятельство может быть обусловлено многими причинами. Одна из них - неоптимальная настройка MS SQL . Перечислим неоптимальности в настройке: 1) Неправильно указанный сетевой протокол, используемый для взаимодействия 1С с SQL Server. П
1С 7.x : Как получить курсы валют с сайта НБУ http://www.bank.gov.ua/ за любую дату ? 6
Функция ПолучитьТаблицуКурсовНБУ(ДатаКурса, Ежедневно = 1) // если в качестве второго параметра указать число отличное от 1 - получем валюты, которые котируются на ежемесячной основе Перем Reader, Url, Точки, HtmlTab, Строк, Р, НомСтроки, НомЯче
Microsoft SQL Server Native Client Добавление значения в столбец "datetime" привело к переполнению 2
При формировании отчета на СКД получили ошибку: Microsoft SQL Server Native Client 11.0: Добавление значения в столбец "datetime" привело к переполнению Подробнее текст такой: ... по причине: Ошибка компоновки данных по причине: Ошибка получени
ZIP-архив Разделить и Объединить Файл 0
При работе с большими объемами данных могут возникнуть проблемы при пересылке архивных файлов. Типичной такой ситуацией является ограничение некоторых почтовых серверов на размер сообщения - если письмо превышает некий заранее установленный размер, о
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.