Создание htm /txt страниц сайта/журнала с помощью шаблонов
Здравствуйте!
От экстенсивного пути развития – к интенсивному.
«Экстенсивное земледелие - система ведения хозяйства, при которой рост объема продукции достигается за счет расширения обрабатываемых земельных площадей…»
Попробую остановиться в бесконечных доработках программы (баги, кстати, убираю всегда!), поэтому предлагаю другой вариант развития программы – написание апплетов.
Предлагаю следующий апплет, надеюсь не последний…
Название: a_wiz_con
Что делает: создает соединение с таблицой Visual FoxPro, либо с ЛЮБОЙ базой данных (возвращает курсор), и, в качестве бонуса, строит html-таблицу (table), в которой данные обновляются в момент генерации проекта. Т.е. Вы можете ОДИН раз настроить соединение с базой и можно в дальнейшем НЕ париться, все автоматически возьмется из базы и также автоматически построится таблица!
Если Вы не любитель FoxPro - ну что же, Вам даже не понадобится разбираться, что это за код, зачем он это делает...
В ином случае (т.е. любитель), апплет позволяет редактировать конечный код, поэтому Вы всегда можете вставить необходимый оператор html-разметки в нужном месте FoxPro-программы.
Результат формируется в МОМЕНТ ГЕНЕРАЦИИ! Вы работаете с ЖИВЫМИ ДАННЫМИ.
Ну чтож, вперед...
Главное окно апплета:
Name - Название процедуры соединения и генерации
Notes - примечания
Edit - изменение соединения
Append - добавить соединение
Delete - удалить соединение
Edit code - редактирование кода FoxPro, если Вам не понравится то, что визард сгенерил
Выбираем Append
Добавилась строка NEW 26/09/2006 18:35:29 - название соединения
При нажатии на Edit - откроется сл. окно:
В нем меняем название (Name) на нужное - например sel_proc
В примечаниях (Notes) вносим Пример работы с табл. FoxPro
Здесь нужно определиться, с чем Вы будете работать:
FoxPro table
Base connection
Excel
Text with. delim ___
Text with. delim Tab
Titles for grid from... - очень интересная штука! Если нажато (и ранее Вы уже выбирали столбцы для сетки), то апплет вернет те значения (оглавление, процент ширины и порядок), которые Вы устанавливали ранее!
Выбираем FoxPro table
Next - откроется сл. окно:
Table Name - название таблицы Visual FoxPro, например a_spispro
Cursor name - название курсора (такое, какое Вам надо), например a_sps
SQL query - запрос к таблице (Table Name) с получением курсора
Апплет сам создаст курсор, если оставить его пустым - select * from a_spispro into cursor a_sps
В случае с Base connection:
ODBC Name - название ODBC соединения (что такое ODBC соединение?)
Cursor name - название курсора (такое, какое Вам надо)
SQL query - запрос к базе по ODBC соединению, например select * from table_1 where id>100. Запрос придется написать самому...
Next - откроется сл. окно:
Окно поделено на две части
Верхняя часть: Cписок всех Columns (колонок) курсора
Если Вы создаете просто Connection, без всяких сеток, Grid-ов и т.д., можете ничего здесь не менять.
В ином случае здесь можно задать порядок (Order), введя число (чем больше, тем левее в таблице), заголовок колонки (Title), процент по ширине (%), и самое главное - указать, что колонка будет выводиться в процессе генерации (In GRID)!
Нижняя часть: результат запроса НА ТЕКУЩИЙ МОМЕНТ. Можно просмотреть, что, где.
ОБРАТИТЕ ВНИМАНИЕ!
Результат формируется в МОМЕНТ ГЕНЕРАЦИИ! Вы работаете с ЖИВЫМИ ДАННЫМИ.
Здесь же можно задать, с какой строки выводить данные.
Если Вы не выберите хотя бы одну колонку (In GRID), код для генерации не будет создан. Это нужно для того, если Вы хотите формировать таблицу в HTML по своему.
Совет - лучше редактировать код, который сгенерит апплет (а это позволяется!), чем вручную, с нуля, заниматься муторной работой.
Апплет САМ приведет все типы к символьным значениям (с помощью функций), сам выставит проценты, сам упорядочит колонки. Вам останется лишь что-то изменить где-то.
Next - откроется сл. окно:
Осталось малое - либо применить изменения, либо вернуться к первому окну. Кстати, это можно сделать в любой момент.
Для получения результата запуска аплета достаточно в контенте разместить, например, следующий код:
`exec_proc('a_wiz_con',.f.,'sel_proc')`
Где exec_proc - запуск пользовательской процедуры
.f.-флаг
sel_proc - название Connection
Как загрузить апплет? Выбираем из программы Сервис/Загрузка с сайта...
Далее, выбираем группу "Wizards Connection" и Открыть
Далее, выбираем Wizard connection (он там пока один...) и Загрузить отмеченные.
Далее, Работа/Открыть, нажимаем кнопку Процедуры
При попытке "Выполнить процедуру" программа ПРАВИЛЬНО укажет, что необходимо сделать Setup, поэтому нажимаем Setup и подтверждаем. Все.
Нажмите "Выполнить процедуру" - как работать дальше, Вы уже знаете
Хотелось бы узнать Ваше мнение о пути развития программы, для чего достаточно кликнуть по выбранным ссылкам. Количество “кликов” – это Ваше отношение к программе.