|
|
|
Диаграмма в 1С | ☑ | ||
|---|---|---|---|---|
|
0
dainastar
12.10.10
✎
10:45
|
Есть диаграмма:
СекцияДиаграмма = ПолучитьМакет("Макет").ПолучитьОбласть("Диаграмма"); Диаграмма1 = СекцияДиаграмма.Рисунки.Диаграмма2.Объект; Диаграмма1.Очистить(); Диаграмма1.ТипДиаграммы = ТипДиаграммы.График; Диаграмма1.Обновление = Ложь; Диаграмма1.КоличествоСерий = 1; Диаграмма1.Серии[0].Текст = "Остаток"; Для Каждого СтрокаТЗ Из ТабЗнач Цикл Диаграмма1.КоличествоТочек = Диаграмма1.КоличествоТочек + 1; Диаграмма1.Точки[Диаграмма1.КоличествоТочек - 1].Текст = Формат(СтрокаТЗ.Дата,"ДЛФ=Д"); Диаграмма1.УстановитьЗначение(Диаграмма1.КоличествоТочек - 1,0,СтрокаТЗ.Остаток,); КонецЦикла; Диаграмма1.Обновление = Истина; ТабДок.Вывести(СекцияДиаграмма); Нужно добавить в эту диаграмму еще одну серию: значение точки заказа. Подскажите как это сделать? |
|||
|
1
Невский Александр
12.10.10
✎
10:49
|
(0)
СерииДиаграммы (ChartSeriesCollection) Добавить (Add) Синтаксис: Добавить(<Текст>) Параметры: <Текст> (необязательный) Тип: Строка. Название серии. Возвращаемое значение: Тип: СерияДиаграммы. Описание: Добавляет новую серию в конец коллекции серий диаграммы. Пример: Диаграмма.Очистить(); Для Серия = 1 По 4 Цикл НоваяСерия = Диаграмма.Серии.Добавить("Серия №" + Серия); КонецЦикла; А так что не катит? |
|||
|
2
dainastar
12.10.10
✎
10:53
|
Так я добавлю серии, а как потом мне вывести ее? установить соответствие между точками и этой серии
|
|||
|
3
dainastar
12.10.10
✎
11:10
|
Пожалуйста, если кто-то знает ПОМОГИТ!!! Я в отчаянии :((((
|
|||
|
4
Невский Александр
12.10.10
✎
11:18
|
Откуда будут браться значения для серий и точек диаграммы?
|
|||
|
5
Невский Александр
12.10.10
✎
11:21
|
Можно перебрать точки с сериями в цикле
Примерно вот так: Для Каждого ТекТочка ИЗ Точки Цикл Для Каждого ТекСерия ИЗ Серии Цикл Значение = [<находим значение>]; УстановитьЗначение(ТекТочка,ТекСерия,Значение); КонецЦикла; КонецЦикла; так тоже не пойдет? |
|||
|
6
dainastar
12.10.10
✎
11:22
|
Из таблицы значений:
Период Остаток Значение точки заказа 01.10 100 150 02.10 200 200 .... серии - остаток, значения точки заказа точки - значения периода (01.10, 02.10 и т.д.) |
|||
|
7
Невский Александр
12.10.10
✎
11:41
|
Диаграмма1.Серии.Добавить("Остаток");
Диаграмма1.Серии.Добавить("ЗначениеТочкиЗаказа"); Для Каждого Строка ИЗ ТабЗн Цикл Диаграмма1.Точки.Добавить(Формат(Строка.ТабЗн,"ДФ='dd.MM.yyyy'")); КонецЦикла; Для Каждого ТекТочка ИЗ Точки Цикл Для Каждого ТекСерия ИЗ Серии Цикл ТекСтроки = ТабЗн.НайтиСтроки(Новый Структура("Период", Новый Дата(Прав(ТекТочка.Значение,4), СРЕД(ТекТочка.Значение,3,2),ЛЕВ (ТекТочка.Значение,2),0,0,0))); Если ТекСтроки.Количество()>0 Тогда Если ТекСерия.Значение = "Остаток" Тогда УстановитьЗначение(ТекТочка,ТекСерия,ТекСтроки.Получить(0).Остаток); ИначеЕсли ТекСерия.Значение = "ЗначениеТочкиЗаказа" Тогда УстановитьЗначение(ТекТочка,ТекСерия,ТекСтроки.Получить(0).ЗначениеТочкиЗаказа); КонецЕсли; КонецЦикла; КонецЦикла; |
|||
|
8
Невский Александр
12.10.10
✎
11:41
|
(7) ну или что-то в таком духе не подойдет?
|
|||
|
9
dainastar
12.10.10
✎
11:51
|
А что делает строка:
ТекСтроки = ТабЗн.НайтиСтроки(Новый Структура("Период", Новый Дата(Прав(ТекТочка.Значение,4), СРЕД(ТекТочка.Значение,3,2),ЛЕВ (ТекТочка.Значение,2),0,0,0))); |
|||
|
10
dainastar
12.10.10
✎
11:54
|
На этой строчке выдает ошибку:
Преобразование значения к типу Число не может быть выполнено |
|||
|
11
Невский Александр
12.10.10
✎
11:59
|
(9) немного неправильно я написал
Новый Дата(ЧИСЛО(Прав(ТекТочка.Значение,4)), ЧИСЛО(СРЕД(ТекТочка.Значение,3,2)),ЧИСЛО(ЛЕВ (ТекТочка.Значение,2),0,0,0))) В точке хранится значение текстового типа - нужно обратно преобразовать, чтобы найти значение в твоей таблице Для Каждого Строка ИЗ ТабЗн Цикл Диаграмма1.Точки.Добавить(Формат(Строка.ТабЗн,"ДФ='dd.MM.yyyy'")); КонецЦикла; - и здесь тоже неправильно, нужно конечно Строка.Период Но текст я написал примерный, для образца - чтобы узнать, в таком виде подойдет или нет |
|||
|
12
dainastar
12.10.10
✎
13:50
|
Все равно выдает ту же ошибку:(
|
|||
|
13
dainastar
12.10.10
✎
13:59
|
Так тоже не получается:(
он серию остаток выводит как точку |
|||
|
14
dainastar
12.10.10
✎
14:05
|
вообще не добавляет вторую серию :(
|
|||
|
15
dainastar
13.10.10
✎
08:32
|
Поступила другим образом:
1) создала таблицу значений с колонками "Дата,Остаток,ЗначениеТочкиЗаказа" 2) заполнила таблицу значений 3) вывожу диаграмму: Диаграмма1.Очистить(); Диаграмма1.ТипДиаграммы = ТипДиаграммы.График; Диаграмма1.СерииВСтроках = Ложь; Диаграмма1.Обновление = Ложь; Диаграмма1.ИсточникДанных = ТабЗнач; Диаграмма1.Обновление = Истина; В таком случае выводит вообще что-то непонятное. Т.Е. те данные,что записаны в строках он как-будто вообще не воспринимает. Проверила, в таблице хранятся правильные данные. В чем проблема? |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |