Анимация
JavaScript
|
Главная Библионтека 30 26 20 15 Ю 5 -И □ Группа 1 Г-:уппэ 2 □ Jjjynna И1н«нени« данкыя для Изменены вк(Ай Ткп J Рис. 10.7. Форма для представления графиков с помощью MS Excel 7.0 В современных условиях все больше специалистов могут самостоятельно использовать стандартные пакеты программ. Например, готовить графики и другую расчетную информацию с помощью пакета Excel. В этом случае достаточно только правильно импортировать данные из СУБД в Excel. Один из возможных способов представлен ниже. Он реализован в форме "Характеристика модели автомобиля", разработка которой была описана в предыдущей главе. Программный код для передачи данных в Microsoft Excel: oleExcel=CREATEOBJECT("Excel.Application") &&Создаем объект Excel oleExcel.Visible=.T. && Делаем его видимым oleExcel.Workbooks.Add && Добавляем Книгу oleExcel.Selection.ColumnWidth = 20 && Ширина 1 колонки oleExcel.Range("B1").Select oleExcel.Selection.ColumnWidth = 12 && Ширина 2 колонки oleExcel.Range("C1").Select oleExcel.Selection.ColumnWidth = 12 && Ширина 3 колонки oleExcel.Columns("A:A").Select && Отмечаем 1 колонку oleExcel.Selection.WrapText = .T. && Перенос непоместившихся символов на следующую строку oleExcel.Range("A1:C1").Select oleExcel.Selection.HorizontalAlignment =7 && Заголовок размещаем в 1, 2 и 3 ячейках первой строки oleExcel.Range("A2:C2").Select oleExcel.Selection.HorizontalAlignment = -4108 && Центрируем 1, 2 и 3 ячейки второй && строки oleExcel.Columns("A:B").Select oleExcel.Selection.Borders(2).Weight=2 && Линия справа oleExcel.Columns("A:C").Select oleExcel.Selection.Borders(3).Weight=2 && Нижняя линия oleExcel.Range("A2:C2").Select oleExcel.Selection.Borders(3).Weight=-4138 && Верхняя линия oleExcel.Selection.Borders(4).Weight=-4138 && Нижняя линия oleExcel.Range("A1:C1").Select oleExcel.Selection.Font.Bold = .T. oleExcel.Selection.Font.ColorIndex = 25 oleExcel.ActiveCell.FormulaR1C1 = "Характеристика модели автомобиля" oleExcel.Range("A2").Select oleExcel.ActiveCell.FormulaR1C1 = "Наименование модели" oleExcel.Range("A2:C2").Select oleExcel.Selection.Font.Bold = .T. oleExcel.Range("B2").Select oleExcel.ActiveCell.FormulaR1C1 = "Мощность" oleExcel.Range("C2").Select oleExcel.ActiveCell.FormulaR1C1 = "Крутящий момент" ******* Добавления значений ******* FOR I = 1 TO KOL Z oleExcel.Cells(i+2,1).Value = all value(i,1) oleExcel.Cells(i+2,2).Value = all value(i,2) oleExcel.Cells(i+2,3).Value = all value(i,3) ENDFOR ******* Строим диаграмму ******* oleExcel.ActiveSheet.ChartObjects.Add(245, 10, 340, 270).Select oleExcel.ActiveChart.; chartwizard(oleExcel.range(oleExcel.cells(2,1),oleExcel.cells(12,3)),; -4100,5,1,1,1,2,"Десять лучших","","","") && Где: && Gallery - -4100, && Format - 5, && PlotBy - 1, && CategoryLabels - 1, && SeriesLabels - 1, && HasLegend - 2, && Title - "Десять лучших", && CategoryTitle - "", && ValueTitle - "", && ExtraTitle - "" ******* Изменяем угол просмотра ******* oleExcel.ActiveChart.Elevation = 0 oleExcel.ActiveChart.Rotation = 328 Результат выполнения данного кода представлен на рис. 10.8. »я Ёадм Фщдаг Снушл Д»м 2 Lsv-I i авттшЕии ИРМ пи HfliiHcuib Turin
J>« 14Мт«н>и flurrtuubJ щмшнп «« A«HUM Рис. 10.8. -Г Построение отчета в Word for Windows Чрезвычайно популярным пакетом для подготовки текстовой информации в нашей стране является текстовый процессор Word for Windows. Поэтому вполне объяснимо желание пользователя увидеть нужные ему данные в любимом редакторе и самостоятельно преобразовать их в требуемый вид. Приведем образец кода для передачи данных из формы "Характеристика модели автомобиля" в Microsoft Word: oleWord=CREATEOBJECT("Word.Basic") oleWord.FileNewDefault oleWord.AppShow oleWord.FilePageSetup(„"2,54 см","2,54 см","2,5 см","1,5 см","0 см","21 см","29,7 см") oleWord.FormatFont("14",0,9,0,0,0,0,1,0,"0 пт","0 пт",0,"", ,"Times New Roman Cyr", , 1) oleWord.FormatParagraph( "0 см", "0 см","0 пт","0 пт", 0,"",1,1, 0, 0, 0, 0, 0,"0","0 см") oleWord.Insert("Характеристика модели автомобиля") oleWord.InsertPara oleWord.InsertPara *********Создание таблицы*************** oleWord.TableInsertTable( ,"3",ALLT(STR(Kol z+1))) oleWord.TableSelectColumn && Выделение колонки oleWord.LeftPara && Выравнивание по левому краю oleWord.TableSelectTable && Выделение таблицы oleWord.TableRowHeight("0",2,"25 пт","0 см", 0,1) oleWord.TableSelectColumn && Выделение колонки oleWord.LineDown(1) oleWord.LineUp(1) oleWord.TableSelectColumn && Выделение колонки oleWord.TableColumnWidth("11 см","0,38 см") && Установка ширины выделенной колонки oleWord.NextCell oleWord.NextCell oleWord.TableSelectColumn && Выделение колонки oleWord.TableColumnWidth("3,5 см","0,38 см") oleWord.NextCell oleWord.NextCell oleWord.TableSelectColumn && Выделение колонки oleWord.TableColumnWidth("3,5 см","0,38 см") oleWord.TableSelectTable && Выделение таблицы oleWord.FormatBordersAndShading (3, 0, 2, 2, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, "0 пт", 0, 0, 0,"0", -1) oleWord.CharRight(1) oleWord.LineUp(1) oleWord.TableSelectRow && Выделение ряда oleWord.TableHeadings oleWord.Bold oleWord.CenterPara oleWord.FormatParagraph("","","","",4,"25 пт") oleWord.CharLeft(1) oleWord.Insert("Наименование модели") oleWord.NextCell oleWord.Insert("Мощность") oleWord.NextCell oleWord.Insert("Крутящий момент") oleWord.NextCell ******* Добавления значений в таблицу******* FOR I = 1 TO KOL Z oleWord.Insert(all value(i,1)) oleWord.NextCell oleWord.Insert(STR(all value(i,2))) oleWord.NextCell oleWord.Insert(STR(all value(i,3))) IF I<<KOL Z oleWord.NextCell ENDIF ENDFOR Результат выполнения данного кода представлен на рис. 10.9. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 [ 119 ] 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |