Анимация
JavaScript
|
Главная Библионтека Развитие визуальных средств разработки приложений коснулось расширения возможностей программиста при создании представлений и запросов. Вы можете создавать внешние объединения, указывать псевдонимы для колонок, определять явно или в процентах число строк, помещаемых в результат. Эти возможности основываются на расширенном синтаксисе команды SELECT-SQL: SELECT [ALL DISTINCT] [TOP nExpression [PERCENT]] [Alias.] Select Item [AS Column Name] [, [Alias.] Select Item [AS Column Name] ...] FROM [FORCE] [DatabaseName!] Table [Local Alias] [[INNER LEFT [OUTER] RIGHT [OUTER] FULL [OUTER] JOIN DatabaseName!]Table [Local Alias] [ON JoinCondition]] [[INTO Destination] [TO FILE FileName [ADDITIVE] TO PRINTER [PROMPT] TO SCREEN]] [PREFERENCE PreferenceName] [NOCONSOLE] [PLAIN] [NOWAIT] [WHERE JoinCondition [AND JoinCondition ...] [AND OR FilterCondition [AND OR FilterCondition ...]]] [GROUP BY GroupColumn [, GroupColumn ...]] [HAVING FilterCondition] [UNION [ALL] SELECTCommand] [ORDER BY Order Item [ASC DESC] [, Order Item [ASC DESC] ...]] Опция INTO Destination при направлении результата запроса в курсор получила новое предложение CURSOR CursorName [NOFILTER] Использование опции NOFILTER позволяет облегчить создание последовательных запросов, так как в этом случае не надо указывать константы в результате первого запроса для резервирования колонок. Курсор, созданный с этой опцией, записывается в виде временной таблицы на диск, которая уничтожается при закрытии курсора. Используя Конструктор представления можно указать для представления такие же расширенные свойства, как ранее были возможны только для таблицы (формат, маска ввода и т. д.). Расширение возможностей технологии клиент-сервер В связи с тем, что в настоящий момент Visual FoxPro является одним из наиболее эффективных средств разработки клиентских программ для приложений, работающих по технологии клиент-сервер, развитию этих возможностей в новой версии было уделено большое внимание. Первое, что бросается в глаза - это более глубоко интегрированный в Администратор ODBC Конструктор соединения (Connection Designer). Он также обеспечивает возможность установки дополнительных свойств для оптимизации соединений. Для повышения гибкости работы с внешним сервером Visual FoxPro 5.0 приобрел новый элемент работы с данными - Offline Views - независимые представления. Что это такое? Это представления, которые после получения данных могут использоваться самостоятельно, в отрыве от источника данных, и при необходимости обновлять данные в источнике на основе выполненных пользователями изменений. Независимые представления могут использоваться, например, в ситуации, когда с приложением работает пользователь, который в силу специфики своих обязанностей использует переносной компьютер. В этом случае он может в начале рабочего дня с помощью независимых представлений создать подмножество БД, хранящейся на сервере. В конце рабочего дня, заехав в офис, он может обновить БД на сервере данными, которые были изменены в независимых представлениях в течение рабочего дня. При обновлении данных Visual FoxPro автоматически управляет задачей координации изменений между независимым представлением и данными в БД. Для создания и использования независимых представлений вы можете применять следующие команды и функции. Для получения независимого представления на основе существующего откройте соответствующую БД и используйте функцию CREATEOFFLINE(/ewWame [, cPath]) которая возвращает .T., если независимое представление успешно создано. Параметр V/ewName указывает имя существующего представления. Параметр cPath позволяет указать папку для расположения временных таблиц для независимого представления. Открыть и работать с данными в независимом представлении можно, используя команду USE [[DatabaseName.JTable SQLV/ewName ?] [IN nWorkArea cTableAlias] [ONLINE] [ADMIN] [AGAIN] [NOREQUERY [nDataSessionNumber]] [NODATA] [INDEX IndexF/leL/st ? [ORDER [nIndexNumber IDXF/leName [TAG] TagName [OF CDXF/leName] [ASCENDING DESCENDING]]]] [ALIAS cTableAl/as] [EXCLUSIVE] [SHARED] [NOUPDATE] Новая опция ADMIN позволяет просмотреть все выполненные изменения и при необходимости отменить какие-либо изменения. Опция ONLINE используется для переноса изменений, выполненных в независимом представлении на БД сервера. Для соединения независимого представления с БД сервера и перехода в режим работы обычного представления выполните функцию DROPOFFLINE(cV/ewName) Построение пользовательского интерфейса Несмотря на то, что внешне в новой версии вы найдете мало различий в визуальных средствах разработки пользовательского интерфейса, как только вы начнете работать, сразу столкнетесь с порой пусть небольшими, но приятными нововведениями. Конструктора формы коснулись следующие улучшения: • Поддерживается как однодокументный (SDI), так и многодокументный (MDI) интерфейс. • Расширена возможность использования технологии перетаскивания, теперь, перетаскивая с помощью мыши поля таблиц на проектируемую форму, для создания объекта используется класс, указанный в контейнере БД. • Появилась возможность просматривать и устанавливать требуемое значение свойства сразу для нескольких элементов управления, имеющих одинаковые свойства. • Работая в окне Properties, вы можете переключать активные элементы управления нажатием клавиш Tab, PgDn, PgUp, Home и End совместно с клавишей Ctrl. Без клавиши Ctrl эти клавиши помогут вам быстро находить требуемые свойства в списке. • Многие диалоговые окна остаются на экране и облегчают тем самым множественный выбор, не требуя многократного вызова. • На стандартной панели инструментов новая кнопка Design, наряду с уже существовавшей в третьей версии кнопкой Run, позволяет быстро переключаться между режимом работы с формой в режим проектирования и обратно. В новой версии Visual FoxPro при создании нового файла меню вам будет предложен выбор между созданием привычного меню и контекстного меню (shortcut menu), вызываемого при нажатии правой кнопки мыши на определенном элементе управления. Для этого достаточно для события PightClick соответствующего элемента управления записать код запуска файла требуемого меню: DO edtshort.mpr Таблица П.1.1. Свойство ActiveForm.Property [ = Setting] ActiveForm.Metrtod Свойства объекта Application Параметры Описание AutoYield [ = lExpr] Caption [ = cText] DefaultFilePath [ = cPath] FullName Height [ = nHeight] Left [ = nDist] Property -свойство формы Setting - значение свойства Method - метод формы lExpr - по умолчанию равен .T., что предусматривает приоритет событий Windows. Значение .F. предотвращает прерывание выполнения кода Visual FoxPro. При этом события Windows ставятся в очередь cText - текст заголовка cPath - обозначение устройства, папки или пути Обеспечивает ссылку на активную форму или объект SCREEN Определяет способ обработки событий Windows высота nHeight окна приложения nDist - расстояние от левого края Определяет заголовок окна приложения Определяет папку по умолчанию для приложения Определяет путь и имя файла для запуска копии Visual FoxPro Определяет высоту окна приложения Определяет расположение окна приложения с левого В Конструкторе меню появилась новая кнопка Insert Bar, которая позволяет вывести диалоговое окно со списком стандартных команд главного меню Visual FoxPro и разместить нужную команду в вашем меню. Теперь не придется искать в документации мудреное название команды Copy из меню Edit, если вы решили предоставить пользователю возможность копировать данные. Значительно расширен набор примеров (Solutions), в которых показано, как можно наиболее эффективно использовать преимущества Visual FoxPro при решении конкретных задач, с которыми программист сталкивается при работе над пользовательским приложением. Эти примеры можно использовать как отдельные компоненты вашего будущего приложения. Расширение функций OLE Основная новость здесь - Visual FoxPro стал OLE-сервером. Таким образом, другие приложения, поддерживающие стандарт OLE 2.0, могут использовать объекты Visual FoxPro для расширения своей функциональности. Для этих целей вы можете создать как out-of-process (EXE), так и in-process (DLL) сервер. В Visual FoxPro 5.0 доступ к объектам выполняется, как и в подавляющем большинстве других OLE-серверов, с помощью объекта верхнего уровня Application. В табл. П.1.1 перечислены его свойства, а в табл. П.1.2 - методы. 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 |