Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Очень хотелось бы услышать мнения профессионалов об этих продуктов с точки зрения - "легкости" написания клиентов к БД (MS SQL2000) - легкость освоения продукта, в том числе и квалификация программиста сопровождения - интегрированность с другими продуктами особенно .Net, Power Designer, MS SQL 2000, COM+/MTS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2003, 14:12 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Ну во первых VFP надо брать 8. Плохо знаю Power Builder, но постараюсь быть объективным. Рассказываю в основном про VFP8 1) легкость освоения продукта Для VFP я бы сказал средняя.В России есть некоторый недостаток документации. Вообще скажем так. Чуть тяжелее чем VB. PB наверняка легче... 2) в том числе и квалификация программиста сопровождения Тут все лучше. Рантайм компиляция позволяет создавать очень удобный интерфейс для внедренцев. 3) интегрированность с другими продуктами а)особенно .Net Хорошая. Позволяет общаться через COM,Web Services и DataSet черезXML. б), Power Designer, Здесь ситуация так себе. Тем более что PD кажется ориентирован на проектирование ERD для сервера. в)MS SQL 2000 Хорошая . MS вообщем-то на это и ориентируются сейчас. г), COM+/MTS Хорошая. Уровень VB6 Есть плюс - можно использовать наследование реализации в COM Недостаток - оторванные рекордсеты только через XML Минус: Слабое внутреннее средство построения отчетов, рекомендуется использовать внешние генераторы. В PB с этим вроде куда лучше. Честно говоря идея MS перекинуть всех с фокса на .NET , что постепенно и происходит Коментарии принимаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2003, 15:18 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Есть еще один минус у фокса. Нет CallBack функций. Приходится на сях dllину рисовать :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2003, 15:21 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Насколько я понимаю, по простоте написания клиентов к БД фокс сопоставим с дельфями и VB. Так вот по моему опыту PB требует раз в 10 меньше усилий для написания аналогичного интерфейса, чем дельфи и VB. Но это только если следовать навязываемой PB технологии интерфейса - интенсивное использование DataWindiws. В результате получаются очень приличные и удобные приложения. Если же использовать DW просто как грид, то по большому счету получится тот же VB. По PB8 (девятого еще не видел): - легкость освоения продукта, в том числе и квалификация программиста сопровождения Самое начало освоения PB более сложное чем у VB и сопоставимо с дельфями. Потом становится легче. Знаю одного чистого VB - шника легко перешедшего на PB и перетащившего туда свое приложение (без DataWindow, они там не нужны). Говорит, что получилось проще и жить ему стало легче. Кстати и работать стало заметно быстрее. В дебагере меньше наворотов чем у VB. Например нельзя поредактировать код и продолжить отладку. Но все основные фичи конечно присутствуют. - интегрированность с другими продуктами особенно .Net, Power Designer, MS SQL 2000, COM+/MTS .Net обещали в девятом PB поддерживать в полном объеме. Не знаю, что это значит. Power Designer даже умеет строить готовые PB приложения по схеме БД. Не использовал, ничего не могу сказать о качестве, но сильно сомневаюсь, что сразу можно клиенту показывать. С MS SQL 2000 разговаривает без проблем через ODBC. Наверное и по другому умеет, но это уже будут извращения. COM+/MTS - поддерживает ActiveX без проблем. Не использовал за ненадобностью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 02:21 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Насколько я понимаю, по простоте написания клиентов к БД фокс сопоставим с дельфями и VB. Да это так. Есть один плюс. На клиенте для обработки данных пользуешься тем же самым SQL COM+/MTS - поддерживает ActiveX без проблем. Не использовал за ненадобностью. А приложения среднего звена на нем можно лабать? С MS SQL 2000 разговаривает без проблем через ODBC. Наверное и по другому умеет, но это уже будут извращения. Вот тут они похожи. Хотя через ADO тоже можно,но родных контролов для ADO нет, приходится использовать внешние ActiveX и то кстати не все подходят. Правда при использовании прямого соединения VFP8 легко получает данные одновременно в формате ADO и родном. А вот оторванные рекордсеты повторюсь через XML ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 10:14 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Огромное спасибо за ответы! Также, хотелось бы услышать о возможностях этих продуктов с точки зрения формирования отчетов в виде plain text'а ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 10:55 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
А вот для этой вещи проще продукта чем фокс я не знаю. Как напрямую из курсора в текст так и обычные отчетные формы можно выбрасывать чисто в текстовом виде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 11:17 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"Также, хотелось бы услышать о возможностях этих продуктов с точки зрения формирования отчетов в виде plain text'а". Если можно, то поточнее, что имелось ввиду? Что Вы, подрузумеваете под термином отчет. В PB (PowerBuilder) благодоря DataWindow можно строить очень навороченные отчеты, и соответственно распечатывать их. Если необходимо перенести отчет ещё куда-то, с сохранением внешнего вида, то Данные из DW (DataWindow) можно импортировать в: 1. HTML Table (TR, TD элементы) 2. XML 3. XSLFO (Возможно) 3. PDF Кроме того данные можно импортировать в форматы: - Excel, Excel5 - Text (tab-separated) - CSV - SYLK - WKS, WK1 - dbf (dbase2, dbase3) - SQL syntax - PSR (PowerSoft Report format) - WMF ActiveX в приложениях использую без проблем. Кроме того есть возможность создавать: - OLE Autmated (создавал); - COM/MTS, COM+ компоненты (Через DCOM удалось организовать доступ по локальной сети к устройству подключенному к COM-порту); - COM/MTS, COM+ клиента (не пользовался); - много чего, но я этим не пользуюсь (JSP, EAServer component, EJB Client proxy для WebLogic от BEA , WebSphere on IBM). В PB9 Enterprise Edition only появился PB Native Interface, который позволяет реализовать вызов Call Back функций из C++. Java общается с PB через JNI. Подключаться к БД можно: - используя следующие стандартные интерфейсы (ODBC, OLEDB, JDBC) - используя native интерфейсы: Informix, Microsoft SQL Server ("You can access Microsoft SQL Server version 6.0, 6.5, 7.0 and SQL Server 2000 databases using the Microsoft SQL Server interface." Написано в хелпе), Oracle (7.3, 8.0.x, Oracle8i, Oracle9i), Sybase ASE,DirectConnect ("The DirectConnect interface uses Sybase's Open Client CT-Library (CT-Lib) API to access a database through Sybase middleware data access products such as DirectConnect for DB2/MVS and Open ServerConnect™." Написано в хелпе.) PowerScript (За Fox не скажу, т.к. с ним не работал вообще) поддерживает embeded SQL и Dynamic SQL. Embeded SQL это: CLOSE Cursor; CLOSE Procedure; COMMIT; CONNECT; DECLARE Cursor; DECLARE Procedure; DELETE; DELETE Where Current of Cursor; DISCONNECT; EXECUTE; FETCH; INSERT; OPEN Cursor; ROLLBACK; SELECT; SELECT BLOB; UPDATE; UPDATEBLOB; UPDATE Where current of Cursor. Dynamic SQL. Существует 4 формата (процедуры) использования динамических запросов SQL: 1 EXECUTE IMMEDIATE Используется для запросов, которые не продуцируют Result Set и не требуют ввода параметров. 2 PREPARE и EXECUTE Используется для запросов, которые не продуцируют Result Set, но требуют ввода параметров. Запрос PREPARE пересылает на сервер оператор SQL c зарезервированными местами для ввода параметров, и запрос EXECUTE, перадающий на сервер параметры и для оператора SQL и выполняет сам опреатор SQL. 3 (Динамические курсоры и процедуры) DECLARE Cursor|Proc DYNAMIC CURSOR | PROCEDURE PREPARE OPEN DYNAMIC Cursor | EXECUTE DYNAMIC Proc FETCH Cursor | Proc INTO HostVarList CLOSE Cursor | Procedure Используется для выполнения операторов SQL продуцирующих Result Set в которых параметры ввода и колонки Result Set известны на момент компиляции. 4 DECLARE Cursor|Proc DYNAMIC CURSOR | PROCEDURE PREPARE DESCRIBE OPEN DYNAMIC Cursor | EXECUTE DYNAMIC Proc FETCH Cursor | Proc INTO HostVarList CLOSE Cursor | Procedure Используется для выполнения операторов SQL продуцирующих Result Set в которых параметры ввода, или колонки Result Set, или оба этих параметра не известны на момент компиляции. В жизни пользуюсь лишь EXECUTE IMMEDIATE. Если необходимые параметры известны, то Формат 2 легко можно уложить в Формат1. Вместо Формата 3 использую функцию SyntaxFromSQL(...) для генерации синтаксиса DataWindow. Выбрав данные в DataWindow провожу дальнейшую обработку (сортировка, фильтрация, правка и т.д) Формат 4 мною не юзался, а надо бы. Фактически позволяет создать визульные средства для генерации запросов конечным пользователем (продвинутым, коих мало, но они в тельняшках). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 14:06 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
CLOSE Cursor; CLOSE Procedure; COMMIT; CONNECT; DECLARE Cursor; DECLARE Procedure; DELETE; DELETE Where Current of Cursor; DISCONNECT; EXECUTE; FETCH; INSERT; OPEN Cursor; ROLLBACK; SELECT; SELECT BLOB; UPDATE; UPDATEBLOB; UPDATE Это все относится к операциям с данными на сервере,это любой язык программирования имеющий доступ к соответствующим API позволяет. Я имел ввиду SQL для работы с уже полученными резалтсетами на клиенте. Или PB работает как надстройка над TSQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 14:14 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Ermak: круто, большое спасибо за описание возможностей Embedded SQL &&& Dynaic SQL насчет plain text - я думал это стандартный термин - я под ним понимаю неструктурированные текстовые файлы которые готовые к печати на dos'овском принтере ( например на СМ6315 ). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 15:31 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Кажется я пост не внимательно читал. По поводу SQL. Фокс это все делает и даже во многих местах удобнее. Например может создать объект из полей текущей записи. Сбросить поля объекта в запись и т.д.С данными там очень наворочено...СУБД все таки. А вот при работе MS SQL резалтсеты на клиенте только STATIC . Динамические рекордсеты только через ADO... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 16:04 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"Я имел ввиду SQL для работы с уже полученными резалтсетами на клиенте. Или PB работает как надстройка над TSQL?" Поймите TSQL и PowerBuilder это не близнецы братья и никто ни над кем не надстройка (TSQL - это Sybase, а PB - это в девичестве PowerSoft). Про интерфейсы доступа к БД мною написано выше. Совершенно прекрасно (насколько позволяет драйвер ODBC) работаю как с 1С (dbf), так и с ASA. В сегодняшнем рабочем проекте участвуют: 2 различных информационных базы 1C + ASA. Доступ к 1С и ASA через ODBC. В другом проекте испльзуется PostgreSQL, который крутится на Free BSD и клиент на PB, который естественно крутится на Win. Доступ к PostgreSQL идет через ODBC. По поводу качества доступа через OLE DB или JDBC ничего сказать не могк, т.к. ими не пользовался, ну не надо это мне при наличии драйверов ODBC. А ODBC драйверов в поставке с PB тоже идет не слабо. PB c сервером БД разговаривает только (и никак иначе) через SQL. Для облегчения жизни клиента (в данном случае это пользоватeль PB, т.е разработчик) в плане работы с данными используется технология DataWindow, которя состоит из 2-х частей: Datawindow object + DataWindow control or component. DataWindow object - "defines the data source and presentation style for the data." Фактически содержит: - SQL запросы для Retrieve, Insert, Delete, Update данных. - Оформление при отображении и печати. -Все остальные параметры касаемые отображения и редактирования данных ( Допустимые параметры редактирования, правила валидации при вводе, список обновляемых полей, наименование таблицы обновления, формат ввода и отображения, порядок сортировки, фильтры, Агрегатные и прочие calculated функции. Действия если была правка ключевых полей и т.д) DataWindow Control - Визуальный объект (DataStore - не визуальный объет) для управления и манипуляции DataWindow object и содержит ссылку на него. Именно в Event'ах (dbError(...), editChanged(...), SQLPreview(...), RetrieveRow(), UpdateRow(),rowFocusChanged(), ItemFocusChanged(), ItemError()...) DataWindow control разработчик пишет все программные обработки (scripts) используя соответствующие методы (functions) dataWindow control ( retrieve(...), update(...), insertRow(), deleteRow(),selectRow(), rowCount(), setFilter(), settransObject(...), setItem(),...). DataWindow control для хранения данных имеет 3 внутренних буфера: - Primary отображает видимые оданные - Filter содержит данные, которые были скрыты после применения фильтра - Deleted содержит данные, которые были удалены. Таким образом для обращения к данным выбранным в Datawindow control SQL не требуется. Если честно, то я и не понимаю зачем необходим SQL для result seta, если сам по себе result set есть результат SQL запроса. Хотя. DataWindow control можно перевести в режим Query mode, который позволяет временно конвертировать окно DataWindow в форму для определения критериев отбора данных. В этом случае это будет для пользователя скорее QBE, но при выборки данных , PB автоматически преобразует данные из формы в соответствующее выражение WHERE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 16:34 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 funikovyuri "насчет plain text - я думал это стандартный термин - я под ним понимаю неструктурированные текстовые файлы которые готовые к печати на dos'овском принтере ( например на СМ6315 )." Если речь идет просто о печати отображаемых данных, то печатайте на здоровье. Что вижу, то и печатаю (что видется, то и печатается). Хотя. Зачастую необходимо чтобы распечатанные данные выглядели несколько иначе, чем отображаемые на мониторе. Я в таких случаях пользуюсь следующей технологией: Помния, что DataWindow object содержит описание оформления данных 1. Создаем DataWindow object для отображения на мониторе пользователя, который назавем "dd_формаПросмотра" 2. Создаем DataWindow object для печати на принтере, который назавем "dd_ФормаПечати" Выбираем данные в DataWindow control (c данным визуальным объектом сопоставляем "dd_формаПросмотра"), редактируем, смотрим, в общем трем-мнем и решаем печатать, нажав допустим кнопку <Печать>. В соответствующем event'е кнопки <Печать> : 1. создаем не визуальный аналог DataWindow control называемый DataStore. Не надо бояться - это всего лишь одна строка кода что-то навроде - l_ds = Create DataStore. 2. Ассоциируем DataStore c "dd_ФормаПечати". Тоже одна строка кода - l_ds.dataObject = "dd_ФормаПечати". 3. Разрешаем использовать dataStore данными, которые уже были выбраны в нашей форме (функция Sharedata), тоже одна строка кода, что-то вроде dw_1.sharedata(l_ds) 4. Выполняем печать. Тоже одна строка кода l_ds.print() PS. Извиняюсь за свой несколько многословный и сбивчивый ответ. Просто иногда лучше и нагляднее как-то продемонстрировать конкретную технологию работы, чем абстактно пытаться объяснить возможности продукта. PPS. Не знаю, что это за марка принтера, но если это что-то большое банковское, то Вам приходится единовременно печатать большой объем информации. Подготовка больших отчетов может занимать (и часто занимает) много времени. При этом как правило оператор, а в качестве оного может выступать и бухгалтер и экономист, на время подготовки отчета лишены возможности продолжать работать с БД. Если интересно как этого можно избежать в PB, то могу поделиться опытом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 17:32 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Это действительно интересно. И вообще классные ответы! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 17:44 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
P.S. СМ6315 - это, действительно, банковский русский линейно-матричный принтер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 17:45 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Да по таким ответам хелпы можно писать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 18:13 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Если это клиент для MS SQL2000, то лучше вибирать продукти MS. Здесь уже много говорилось о Фоксе (на этом форуме), повторять не буду. Нужно только взять, поставить и попробовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 19:19 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Вообще-то PowerBuilder начиная с версии 6 позволяет создавать многопоточные приложения. Вот этим и можно воспользоваться. По умолчанию приложение PB - однопоточное, и именно в этом главном потоке допускается использование любых визуальных элементов интерфейса. Во всех остальных потоках нужно использовать только не визуальные объекты, но DataStore - это и есть не визуальный объект. Поэтому большие или долгие отчеты нужно выполнять не в главном потоке приложения, а в дополнительных (специально созданных для этого). Конечно разработки и отладка таких приложений не мед, но главное, что это возможно. В случае такого подхода пользователь, а им как говорилось выше может быть допустим бухгалтер, не выпадает из производственного процесса, а допустим обслуживает посетителей, формируя для них требуемые справки, или производит другие технологические операции требующие обращения к БД. Вообще-то если СУБД позволяет, то PB может поддерживать асинхронные операции ("By default, PowerBuilder operates synchronously"). По крайней мере это относится к операции Retrieve. В данном случае если надоело ждать пока что-то там выберется, допустим заказали с сервера на клиента 10 млн записей, то с помощью dbCancel() можем этот процесс прервать. К моему великому сожелению ASA 7 этого не умеет. Но умеют следующие товарищи: - DIR Sybase DirectConnect - IN9 Informix - JDB JDBC - MSS Microsoft SQL Server - ODBC (if driver and back-end DBMS support this feature) - O73 Oracle 7.3 - O84 Oracle 8.x and Oracle8i (8.1.5 and higher database connections only) - O90 Oracle9i - SYC Sybase Adaptive Server Enterprise PS. Странно вроде бы один раз уже отправил ответ о многопоточном приложении, но похоже что не в форум, а на луну. Если в конце концовответ с луны дойдет до форума, то к этому я не имею никакого отношения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 19:27 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Если бы мне нужно было только цепляться к базе и выводить на матричный принтер, то я б не мучался, а написал бы консольное приложение на C+ODBC. При наличии навыков там работы-то на день. Как работать с ODBC неплохо описано в MSDN да и исходников по инету немеряно. Но вот если данные нужно вводить, причем много, долго и упорно, то юзер бы этого не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 21:51 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
>>PowerScript (За Fox не скажу, т.к. с ним не работал вообще) поддерживает embeded SQL и Dynamic SQL.... >Это все относится к операциям с данными на сервере,это любой язык программирования имеющий доступ к соответствующим API позволяет. У PB есть небольшое преимущество в этом смысле перед VB и дельфями (фокса не знаю): SQL операторы пишутся прямо в текст программы без всякого дополнительного оформления, примерно как это делается в сохраненках. Только операторы с возвращаемым датасетом требуют открытия курсора, который тоже часть языка. Если же возвращается одна строка, то тоже используется простой "select ... into..." прямо в скрипте. Вот это в PB называется "embeded SQL". Путаница с терминологией. 2 Crip >>Насколько я понимаю, по простоте написания клиентов к БД фокс сопоставим с дельфями и VB. >Да это так. Есть один плюс. На клиенте для обработки данных пользуешься тем же самым SQL Немного непонятно получилось. Я просто хотел сказать, что покольку вопрос был о фоксе, а я с ним никогда не работал, то приходится делать предположение о его сопоставимоести с относительно известными мне продуктами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2003, 23:41 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2NNN: задача шире. Есть огромное количество отчетов - некоторые из них достаточно сложны( кросс табы и т.д. ). Различные операторы печатают их по мере необходимости. НО есть так называемая ежедневная отчетность - это подмножество всех отчетов, которое печатается разом по утрам - в .txt это где-то 1.2Mb - вот ее мы и печатаем на CM6315 - даже для него там работы на пол часа! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 08:34 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2NNN: C+ODBC - не хочется по тому что на написание и модификацию таких отчетов( а их, я повторюсь, много ) потребуется по-крайней мере человек достаточно хорошо владеющий С - а я считаю что это плохо - держать квалифицированного специалиста для подготовки отчетов! ИТОГО: есть система( т.е. будет ) - точнее это АБС есть много отчетов отчеты должен иметь возможность создавать специалист средней квалификации - при этом бысто и удобно(для него) не хотелось бы без необходимости вносить гетерогенность в интсрументы разработки - т.е. если я предпологаю такой интсрументарий Power Designer + MS SQL + PB/VFP( клиент ) + C#( какие-то нетривиальные компоненты - то что на PB/VFP делать не удобно ) То мне бы не хотелось еще брать и программиста на С! 2Alex Antipenko: в списке интрументов уже присутсвуют инструменты не только от MS( например PD ). К тому же PB зарекомендовал себя как надежное средство для построения клиентов для MS SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 08:42 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2funikovyuri > я предпологаю такой интсрументарий Power Designer + MS SQL + PB/VFP( клиент ) + C#( какие-то нетривиальные компоненты - то что на PB/VFP делать не удобно ) Дык, а если просто Power Designer + MS SQL + C#? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 10:03 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2c127 У PB есть небольшое преимущество в этом смысле перед VB и дельфями (фокса не знаю): SQL операторы пишутся прямо в текст программы без всякого дополнительного оформления, примерно как это делается в сохраненках. Только операторы с возвращаемым датасетом требуют открытия курсора, который тоже часть языка. Если же возвращается одна строка, то тоже используется простой "select ... into..." прямо в скрипте. Вот это в PB называется "embeded SQL". Путаница с терминологией В фоксе тоже самое только еще судя по всему больше возможностей. Правда есть свои минусы. А вот по поводу задачи которую ставит автор поста , то мое мнение ближе к NNN. Мне кажется С# вполне должен решить нужные проблемы... А то еще дополнительно изучать всякие PowerBuilderы , фоксы, мучаться с особенностями их работы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 10:19 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
funikovyuri Складывается впечатление, что Вам навязывают Фокс, а вы от него отбиваетесь. Это ваш выбор. Если вам больше нравится PB, тогда пробуйте его. Возможно в PB есть что-то покруче чем в Фоксе, но Фокс не стоит на месте, он также развивается. Начинается разработка 9 версии. А вообще клиента к MS SQL2000 можна писать не только на этих 2 продуктах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 10:23 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Согласен с Crip , а может действительно попробуй C#. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 10:29 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ALL: насчет C#. Вот что я считаю его минусами в данной ситуации: - высокая квалификация разработчика - я имею ввиду что незачем, да и не всегда возможно брать спеца для разработки каких-то тривиальных задач - разработку GUI считаю как раз такой задачей - ведь для ее решения есть специальные инструменты(PB) в которых все стандартные сценарии работы уже отшлифованы. - высокая квалификация программистов сопровождения - разрабатываемую систему после меня будут развивать. При ее реализации на С# для этого потребуется намного более квалифицированный специалист (читай дорогой) чем при реализации на VFP/PB. - C# - зеленый язык, и еще мало кто имеет достаточный опыт проектирования на нем - я не в восторге от RAD возможностей VS.NET - с точки зрения написания клиентов к БД. Обсуждаемы мной продукты имеют куда более развитую инфраструктуру в этой области. В этом я полностью согласен с ACRUS - есть инструмент(PB например) - легко и красиво решающий задачу написания DB GUI. Для всего остального этот инструмент поддерживает возможность использования компонентов созданных с помощью других инструментов через какую-либо компонентную модель - в данном случае это .Net 2Alex Antipenko: Да действительно - можно сказать что мне его навязывают. Существующая система написана на FoxPro 2.6. Но так или иначе решение за мной и я занимаюсь анализом все за и против. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 11:02 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2funikovyuri Мне кажется, что PB куда более прост как RAD средство, чем фокс. А по поводу квалификации я с вами не согласен,сложность программирования приблизительно одинакова...Хотя соглашусь, что программисты на фоксе стоят дешевле,но это всего лишь из-за того , что упал спрос на них... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:08 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Кину в общую корзину еще про PB: 1. Доступ к данным DataWindow организован в виде 2-мерного массива Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Что это дает ? Получается, что у DataWindow можно получить или записать значение любого поля и записи (даже для множества полей и записей) очень элементарным путем и никаких движений курсором по нему. Понятие текущей записи - это только для визуального представления DataWindow и оно указывает что конкретно сейчас видит и редактирует пользователь. 2. Expression в DataWindow - очень похоже на принципы Crystal Report. То есть на любое свойство контрола или поля DataWindow спокойненько можно впихнуть скрипт, который в зависимости от условий будет определять значение свойства. Допускается использование функций, написанных вами. Простой пример мощности такой технологии -берем поле Name, на свойство Background Color вешаем следующий Expression: Код: plaintext 1. В итоге в представлении DataWindow поле Name будет выделятся красным цветом, если значение поля Value предыдущей строки меньше нуля (!!!). Думаю если иметь фантазию, то Expression применение не малое найдется как в формах, так и отчетах DataWindow. С учетом того, что DataWindow позволяет программе подсунуть любой Expression и он его выполнит, он еще является некоторым подобием легендарной макроподстановки фокса. 3. DataWindow изначально работают по технологии кэшированных изменений, причем самое похожее к нему, что я видел по принципам работы - это DataSet из .NET . Хотя на самом деле мне в PB больше нравиться - все гораздо умнее сделано, особенно если вспомнить вышеуказанные здесь буфера. Радует, что PB изначально очень граммотно получает данные и отсылает их изменения на сервер. Можно ручками настроить принципы сохранения измененных данных даже для сложных, казалось бы не редактируемых запросов. Identity поддерживается нормально. Также есть возможность проводить изменения в БД посредством указанных хранимых процедур. Все SQL скрипты элементарно перехватываются в специально созданных для этого событиях, так что сделать для клиента SQL монитор - пару строк кода, еще можно перехватывать SQL скрипт изменения записи, который PB уже сформировал, но еще не послал и даже его поменять или дописать по необходимости. 4. Поддержка зашаренных DataWindow очень мощная технология, которая позволяет какому то DataWindow ссылаться на данные, содержащемся в другом DataWindow. Что мы с этого имеет - легко можно на форму кинуть DataWindow в виде представления Grid, плюс сделать возможность вызывать дополнительное окно редактирование с представлением FreeForm для определенной записи. Причем данные для обоих DataWindow будут общие, а вот текущая запись у каждого своя и можно спокойненько для каждой требуемой записи создавать свое окно редактирования. Еще плюсик - делаем 2 DataWindow на один источник данных - один в виде грида, другой в виде отчета. Отчет шарим на грид. В итоге меняем данные в гриде, отчет (или график например) на автопилоте тут же пересчитывается. Получили редактируемый отчет. Данные кстати прекрасно экспортяться, так что никто не мешает сохранить записи на диск, потом в любой момент восстановить. 5. О встроенном SQL уже упоминали, что он пишется прямо как код программы и соотвествующе компилируется и проверяется на синтаксис, что является несомненным преимуществом. Однако еще замечательно, что SQL в PB позволяет писать скрипты без описания параметров запросов: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Теперь представьте, что можно с этим сделать, особенно если вспомнить, что помимо явного описания скрипта PB поддерживает динамический SQL и работу с курсорами. 6. PowerScript забавный конечно язык - этакая помесь Basic и Java (да да, больше во многом похоже на Java, а не Си). Непривычный сначала, но как оказывается очень удобный. Писать на нем графические приложения или визуальные компоненты конечно не стоит, зато вот под создание клиентских частей он очень даже неплохо продуман. Тут не только языки до кучи смешаны, но и технологии тоже - ООП мирно уживается с процедурными элементами программирования, сборщик мусора не мешает самому программисту по необходимости удалять обьекты, массивы мирно уживаются и так же часто используются как коллекции, данные можно хранить как в структурах, так и полях обьектов. Однако хотелось бы обратить внимание на 2 самых замечательных вещи: это безразмерные массивы и события. Думаю все согласяться что работать с массивами все таки легче, чем с коллекциями, особенно если массивы позволяют динамически менять свой размер и автоматом поддерживают операцию присваивания. А уж если массивы участвуют как свойства в базовых компонентах PB, так это вообще приятно. События это отдельный разговор - во всех языках программирования событие - это оповещение подписчиков от некоего класса о произошедшем действии. В PB событие - это с точностью до наоборот - действие некоего класса на вызов его события кем то. События могут наследоваться, однако в отличие от наследований в методах классов порядок выполнения события идет от предка к наследнику. Второе отличие событий от методов класса - разрешается их динамический вызов, который в отличие от динамического вызова метода класса (он тоже есть, правда его правильней назвать отложенный вызов) не приведет к ошибке выполнения. Пример: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Теперь самое главное - в PB для выполнения функций и событий поддерживается очередь (!!!), т.е. их отложенное выполнение. Так что если например во время выполнения кода события из него необходимо вызвать некое действие или событие, которое противоречит выполяемому событию и должно выполниться только после окончания всех текущих действий, пишем: Код: plaintext 1. 2. и гарантированно получаем нужный результат без всяких заморочек. 7. Все вышеперечисленные пункты, плюс поддержка наследования любых обьектов приложения, будь то меню, формы, визуальные компоненты или классы, приводит при правильном стиле проектирования приложения к очень показательным результатам, у которого основные этапы проектирования: a. Проектирование библиотек общего назначения, служащих хранилищем расширенных по функционалу решений (например у меня свой унаследованный от стандартного DataWindow контрол, позволяющий много чего, вплоть до записи в ini их настроек). б. Проектирование библиотек маштаба предприятия (или каркасов для приложения). Если проект крупный, разработчиков много, то без такого шага не обойтись - все общие для проекта решения должны быть выделены в макеты и именно наследуя их, разработчики должны строить свои частные решения в. Проектирование модулей - тут уже реализуются конкретные решения. Так же если проект очень крупный, тиражный и предполагается его быстрое динамическое развитие для каждого клиента, то имеет смысл этап "Б" усложнить до уровня системы, имеющей свою IDE с дизайнерами DataWindow (легко реализуется засчет того, что DataWindow спокойно можно создавать во время выполнения и хранить где угодно, хоть в БЛОБах). Так же такая система должна поддерживать систему plug-in (легко реализуется засчет возможностей динамического подключения библиотек и исследования их содержимого). Вот вроде и все по PB с точки зрения его основных достоинств по сравнению с другими инструментами построения клиентских частей. В принципе я конечно еще не упомянул о 3-звенке, быстрой разработке web-приложений и других интересных возможностях, но достаточно сказать, что это есть, легко программируется и надежно работает. P.S. Для описания использовался PB версии 8.0 . Что там они придумали в 9-ой версии, понятия не имею. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:21 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
придумали вот это Click on a topic for more information. Then use the Browse buttons on the Help window or the hot links to navigate. · DataWindow XML support · PowerBuilder Document Object Model · PowerBuilder Native Interface · JSP targets · Web services for JSP clients · Web services for Windows clients · EJB clients for third-party application servers · XML and CSV import and save · Saving as PDF and XSL-FO · The OrcaScript language · PowerBuilder Runtime Packager · PowerBuilder Resource Monitor · Source control enhancements · DataWindow enhancements · PowerScript enhancements · Debugger enhancements · Database connectivity enhancements · Miscellaneous enhancements ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:37 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
ASCRUS, после твоего повествования мне захотелось поставить и покопать PB. Вполне серьезно. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:37 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS: огромное спасибо! Ждал вашего ответа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:39 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"ИТОГО: есть система( т.е. будет ) - точнее это АБС есть много отчетов отчеты должен иметь возможность создавать специалист средней квалификации - при этом бысто и удобно(для него) не хотелось бы без необходимости вносить гетерогенность в интсрументы разработки - т.е. если я предпологаю такой интсрументарий Power Designer + MS SQL + PB/VFP( клиент ) + C#( какие-то нетривиальные компоненты - то что на PB/VFP делать не удобно ) То мне бы не хотелось еще брать и программиста на С!" Что ж разумное решение. Я бы посоветовал бы Вам, хотя бы посмотреть на те демо примеры отчетов, которые можно делать с помощью технологи DataWindow. Кроме PB, DataWindow имеется в таком продукте Sybase, как InfoMaker. Кроме того можно скачать с www.sybase.ru (www.sybase.com) evaluation version PowerBuilder (~90 Mb в zip-файле). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:39 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Ermak: уже сделано :) Сижу - тащусь. Только вот с документацией проблемы - мало ее. Так что читаю книгу о PB4( нашел за 5р ) и его родную документацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:44 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Тем кто постоянно проектирует клиентов БД для сложных и больших проектов настоятельно рекомендую посмотреть в сторону PB. Самое плохое, что документации почти ноль. Для московских программистов или бывающих здесь проездом могу поделиться компактом с 2 книжками по PB (пересланными мне с Украины), правда отсканенными в jpg и по 5 и 6 версиям PB, но как говориться на безрыбье и рак рыба :) Так же их можно скачать с ftp одного хорошего человека, который согласился их выложить: Код: plaintext 1. 2. 3. 4. он правда из германии, поэтому я не знаю, насколько у них вечер отличается и ночь от наших :) Со мной же лучше всего связаться для начала по моему мылу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 12:48 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"Только вот с документацией проблемы - мало ее. Так что читаю книгу о PB4( нашел за 5р ) и его родную документацию." Из того что идет вместе с PB обратите внимание на: - "Application Techniques" - "DataWindow Programmer's Guide" Кроме того полный комлект документации в формате PDF (на English) можно тащить с http://sybooks.sybase.com/pb.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 14:11 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Укьфл: отлично! спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 14:37 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Мастера рекламы блин. Прочел пост ASCRUS и понял, что в фоксе почти все это есть и даже больше. Но рекламировать ломает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 14:57 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Crip: наоборот - давай точку зрения спеца по Fox'у.! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 15:12 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
В плане языка мне кажется что у фокса все что нужно есть и даже больше чем надо. По крайней мере в PB ничего такого, чего нет в фоксе я не увидел, судя по постам. Но...Как RAD фокс думаю уступает PB. Что-бы приложение получилось работоспособным никакие визарды и генераторы не подойдут. Все нужно ручками писать и знать некоторые подводные камни. Вот если это все написать , то уже да. Благодаря тому, что практически все что есть в среде доступно в рантайме сопровождение очень сильно облегчается. И еще повторюсь MS плавно пытается увести людей с фокса на .NET. Фокс конечно еще будет суппортиться по крайней мере лет 10, пока пользователи не поймут , что он уже не чем от .NET не отличается Хороший продукт, но без большого будущего :( Правда почему-то популярность его гораздо меньше, чем он того заслуживает. Видать то , что в прошлом было написано куча корявых прог под ДОС испортило. Мне вот только не верится, что в PB все так легко и просто и вообще ничего писать не надо. Все за вас сделают. Ни какой генератор головы ведь не заменит. И в любой работе самое главное это решение поставленной задачи, а как это должно мало волновать заказчика... 2NNN Такое ощущение , что ты уже поостыл к VFP? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 15:27 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Crip Все есть везде. Другое дело какой ценой это все достается. Для меня корректное сравнивание инструментов - это в первую очередь не их возможности, а заложенные в них концепции правил проектирования и реализации продуктов. В PB я считаю сама модель правил проектирования проектов правильная, все логично, продуманно, никаких прикруток и довесок, строгая ориентация средства только на построение клиентов релляционных БД. Может ли VFP похвастаться тем, что он изначально был ориентирован на работу с SQL БД, что в нем все изначально продуманно и нет никаких "левых" решений в виде прикруток и довесок, противоречащих его изначальным концепциям ? Я VFP не видел, поэтому ответ за Вами. Однако в свое время я очень много работал с ForxPro 2.0-2.5 и хорошо зная как и с чем он работал сильно сомневаюсь, что он стал таким вот удобным средством для проектирования сложных клиентских приложений. Я не сомневаюсь, что MS вставил в VFP все, что только имеет громкое имя и может принести деньги - ООП, интернет, 3-звенки и т.д., но я знаю, к чему это приводит - наслоению технологий, путанице и возрастанию размера и читабельности кода. PB изначально был спроектирован под клиент-серверные системы, с поддержкой принципов ООП, SQL, кэшированных изменений и мощным механизмом полученных с БД обработки и отображения данных. Правильная модель его реализации и явилась залогом того, что любые его новые возможности органично вписываются в него, позволяя оставлять те же концепции проектирования программ, расширяя их новыми функциональными возможностями. FoxPro был изначально спроектирован под файл-серверные системы, как клон процедурного D-Base языка. По моему этим сказано все. В свое время я писал на FoxPro крупные проекты, которые до сих пор крутяться и прекрасно работают. Однако времена меняются и считающиеся тогда крупные проекты семечки по сравнению с тем, чем я занимаюсь теперь, что привело к моему переходу с файл-серверных на клиент-серверные технологии и соотвествующе и выбору других средств проектирования клиентов. Пока писал ... новый пост от Вас появился. Прокоментирую: Что-бы приложение получилось работоспособным никакие визарды и генераторы не подойдут Ни о каких генераторах и визардах в PB речи я не вел. Их там особо и нет. Все дело в правильной модели PB, отсюда и мало кода. И еще повторюсь MS плавно пытается увести людей с фокса на .NET Насчет увести с фокса на .NET - чисто маркетинговый ход. Я пока не увидел чего то револлюционного в .NET, что действительно бы облегчило работу по созданию клиентских приложения. Я бы даже сказал усложнило на самом деле, так как компонентая модель ООП конечно универсальна, но усложняет проектирование и кодирование узконаправленных приложений, хотя оставляет широкий выбор расширения средств. Думаю зависимость между универсальностью, скоростью и качеством величина постоянная для любого средства и чем то жертвовать приходится всегда. В PB ООП обрезан по самое не хочу - там он реализован ровно настолько, чтобы позволить проектировать иеархию повторно используемых решений в проекте и писать 3-звенки. Больше на нем ничего не сделаешь. В C# можно делать все, но только через ООП и соотвественно классы и компоненты, что приводит к скатыванию кода до уровня управления классами, понижению его читабельности и возникновению многих проблем при решении узкоспециализированных задач, решения которых гораздо спецефичнее, чем набор предлагаемых классов и компонент для решения общего круга задач. Видать то , что в прошлом было написано куча корявых прог под ДОС испортило Извините - но насчет кучи корявых прог под ДОС - это необоснованный выпад. Куча корявых прог есть на любом средстве программирования и я бы сказал ДОСовый Fox как раз может гордиться тем, что стал "учителем" очень многих сейчас уважаемых и проффесиональных программистов, как кодеров, так и проектировщиков БД. Ради интереса поспрашивайте на форумах SQL.RU, сколько сейчас "крутых" программистов с Фокса слезло - думаю статистика Вас удивит. Заодно можете спросить, почему они с Фокса слезли в свое время. И в любой работе самое главное это решение поставленной задачи, а как это должно мало волновать заказчика... Как решается задача очень даже должно волновать заказчика. Ведь ему потом на этом продукте работать и возможно своими силами сопровождать не один год в условиях постоянно динамически изменяющихся внешне и внутре экономических условий. Вам не кажется странным, что не только в мире, но и у нас очень много крупных проектов реализовано с использованием PB и проекты уже годами сопровождаются силами внутренних АСУ (хоть в тех же крупных американских банках) ? Причем никто из них особо о смене инструмента не говорит, не смотря на то, что некоторые проекты были написаны 10 лет назад. И зарплаты PB программистов там стабильно держаться на высоком уровне (да и у нас кстати тоже, правда по причине отсуствия таких программистов). Думаю это хороший показатель в пользу того, что проекты на PB легко реализуются и в дальнейшем так же легко сопровождаются. P.S. Кстати не знаю насколько это правда, но читал, что PB выступил в роли дедушки Access и VB, чему немного верю, с учетом того что формы Access уж очень во многом напоминают DataWindow из PB, который был сделан гораздо раньше, чем Access. PowerSoft-овцы утверждают, что Билли лично к ним приезжал, смотрел на их разработки и в первых версиях Access и VB участвовала команда разработчиков PB, в том числе и Watcom-вцы, которые в свое время разработали по заказу PowerSoft язык PowerScript и виртуальную машину PBVM. Вот такие вот сплетни ходят по интернету :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 16:20 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"Мне вот только не верится, что в PB все так легко и просто и вообще ничего писать не надо. Все за вас сделают. Ни какой генератор головы ведь не заменит." Да нет в PB никакого магического или мифического генератора. И голову, впрочем как и знание вкупе с опытом и интуицией никто не отменял. Ни в какой среде разработки медом не намазано, а жаль. " И в любой работе самое главное это решение поставленной задачи, а как это должно мало волновать заказчика... " Совершенно верно ибо, ни PB, VFP заказчик на хлеб намазывать не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 16:25 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Ни каких прикруток и довесок. Довеском является лишь поддержка совместимости в 2.x. Все остальное было заложено еще в 3-й версии. Ну а сравнение с Access вообще выглядит странно. С моей точки зрения Access является примером продукта с которым по началу все легко и просто , а когда нужно писать что серьезнее начинаются серьезные проблемы. Как язык программирования фокс выглядит гораздо более ориентированным под профессионального разработчика нежели Access. Меня вообще удивляет подход многих людей не знакомых с VFP. Такое ощущение , что данные товарищи преднамеренно пытаются показать свою сравнительную крутизну , на том лишь основании , что используют другое средство проектирования. То есть кто пишет на VFP - дурак. А тот кто пишит на Delphi или PB - юный Страуструп... Потрясающая логика... Больше я сюда не пишу ничего , так как дальше диалого в таком русле считаю бессмысленным До свидания... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 16:32 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Crip А меня наоборот удивляет подход людей, знакомых только с VFP - когда им говорят, что есть и другие технологии (заметьте я не зря очень часто повторяю именно слово другая технология, а не язык или средство) и которые сразу рвуться в бой, даже не ознакомившись с идеями, которые пытаются до них донести собеседники - прям какой то комплекс неполноценности, который приводит к тому, что на любое сравнения VFP с чем то все обижаются и говорят, что их назвали дураками. А ведь стоило бы развивать свой кругозор и оценивать инструменты программирования не с точки зрения крутизны, а эффективности под конкретно поставленные задачи. Я например Access рассматриваю не как язык программирования, а как настольную БД и считаю для своих целей он очень даже ничего. Если кто то на нем и пытается крупные проекты писать - так это проблема не Access, а "светлой головы" программиста. Извините, если чем обидел, задачи такой во всяком случае перед собой не ставил. Крутизну свою доказывать не стал бы - ее уровень я и сам неплохо и точно могу оценить по кол-ву и обьему запущенных проектов :) Просто хотелось малость расширить кругозор коллег, так как сам собственно говоря вполне недавно перелез с Delphi на PB и был страшно огорчен, что раньше никогда о нем ничего не слышал и не видел и считаю что очень много из за этого потерял :) С чем считаю тему закрытой и говорю всем до свиданья :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 16:59 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Crip Хоть ты и обещал больше сюда не писать, но надеюсь прочитаешь. > Такое ощущение , что ты уже поостыл к VFP? Не дождетесь! Я подостыл к подобным спорам. Тем более я совсем не предствляю PB как средство разработки, поэтому сравнивать не могу. Разве что в очередной раз написать, что с тобой согласен практически полностью. ЗЫ наверное у меня просто психологическое состояние на грани - напарник в отпуске, грузят asp, дома комп скоро накроется и проч, поэтому стараюсь посещать только форумы №37 и №16, так, вместо отдыха:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 17:03 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 Crip. Кончайте обижаться и дуться, ну не в детском же мы саду право. ASCRUS прямо сказал, что: "Я VFP не видел, поэтому ответ за Вами. Однако в свое время я очень много работал с ForxPro 2.0-2.5 и хорошо зная как и с чем он работал сильно сомневаюсь, что он стал таким вот удобным средством для проектирования сложных клиентских приложений" Ничего оскорбительного я не заметил. Также согласен с его же мыслью: "Все дело в правильной модели PB, отсюда и мало кода". Но, подчеркиваю думать от этого не приходится меньше, ни капельки. Просто когда отпадает головная боль, по поводу как вернуть на клиента Result set, забодай его комар, освобождается время и силы на решение задачи эффективного представления и обработки полученной информации. Немножко отвлекаясь от темы. В нашей организации у начальника продавцов новая забава, попытка найти для себя подходящую CRM. Сразу хочу предупредить, что это человек который четко знают что уму нужно от CRM, и мне в этом приходится ассистировать, в смысле развернуть очередную Evaluation or Demo version на ПК. Просмотрел уже более 10 различных систем, но... В подавляющем количестве систем для представления данных из БД используется Grid для отображения списка + Free form для ввода и редактирования строки из Grid. Да и grid какой-то унылый и невзрачный. То, проблемы с фильтрацией, то проблемы с сортировкой, то отсутствие режимов просмотр/правка. Отсутствие экспорта результатов, невозможность печати Grida, невозможность Preview и т.д. Грустно это. Откуда такая скупость в средствах представления данных, если приложение ориентировано на работу с СУБД? При этом это все коммерческие разработки, и разработчики наверняка прилагали максимум усилий, что бы сделать продукт удобным для пользователя, сделать его коммерчески успешным. Остальной дизайн, признаю, как правило хорош, но работа с данными реализована посредственна. Но это же и есть главное необходимое требование для приложения обрабатывающего данные из БД. Именно поэтому я в своё время выбрал PB. За его возможности взаимодействия с различными релционными СУБД. Подчеркиваю различными. В июньском номере Windows & .net magazine/re (www.winnetmag.ru) есть неплохая статья "Эволюция технологий доступа к данным", прочтите её. Краткий анализ технологий Microsoft в этом вопросе показывает их движение к технологии аналогичной DataWindow. Ну не обессудте - это именно так. С песнями, плясками, бешенным маркетингом, но движение идет в том же направлении, что уже имеется сейчас в DataWindow. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2003, 17:20 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 funikovyuri >есть много отчетов отчеты должен иметь возможность создавать специалист средней квалификации - при этом бысто и удобно(для него) не хотелось бы без необходимости вносить гетерогенность в интсрументы разработки - т.е. если я предпологаю такой интсрументарий Посмотри датавиндовс. Дополнительных средств вроде кристал репортс не требуется вообще. Очень удобно. 2 Crip >Прочел пост ASCRUS и понял, что в фоксе почти все это есть и даже больше. Сила DW ИМХО не в том, что он позволяет представлять данные в виде двумерного массива, а в том, это что сложная форма внесения/просмотра данных и одновременно готовый к печати документ. Можно даже всякие графики и диаграммы строить. Это основное отличие от других RAD средств, с которыми я работал. 2 Ermak >В данном случае если надоело ждать пока что-то там выберется, допустим заказали с сервера на клиента 10 млн записей, то с помощью dbCancel() можем этот процесс прервать. К моему великому сожелению ASA 7 этого не умеет. Может я чего-то недопонял, но можно прервать retrieve из события retrieverow. Я использую. Если интересно - напишу подробней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.07.2003, 02:11 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS > А меня наоборот удивляет подход людей, знакомых только с VFP - когда им говорят, что есть и другие технологии.. Хорошее замечание, но надо уточнить, что на людей, знакомых только с VFP обычно смотрят как на людей, знакомых только с FoxPro 2.0 и при этом ссылаются на личных опыт. Да откуда я могу знать личный опыт других? Я сидел на одном проекте под FPD 2 года, а другой за это время может наклепал пару десятков однотипных программ. Вот и получается одним приходится решать неординарные задачи и лесть в дебри, а другие лихо освоив метод copy-paste кричат об каком-то опыте. Не хочу никого обижать, но ваше мнение - это ваше мнение. Был у меня знакомый дельфист, которого перевели под фокс. Он мне показал 20 вещей, которых якобы нет в фоксе. Потом выразил неудовольствие, что это типа намного сложнее и логика совершенно другая. Пришлось показывать вещи, которые в фоксе реализованы лучше. Паритет был уствновлен, больше мы с ним не спорили, а спокойно работали в паре. > А ведь стоило бы развивать свой кругозор и оценивать инструменты программирования не с точки зрения крутизны, а эффективности под конкретно поставленные задачи. Странное замечание, особенно в адрес Crip. Отвечу за себя, развивать кругозор будешь поневоле, хороших книг и статей по фоксу в последнее время мало, поэтому и читаем все подряд по подходящей тематике. Жалко времени на пощупать руками обычно не хватает, отсюда - полное отсутствие опыта, поэтому молчим и говорим только о том, в чем разбираемся. Да и о недостатках, если и пишут, но очень мягко. А в нашей работе знание недостатков часто важнее знания достоинств. 2Ermak > Грустно это. Откуда такая скупость в средствах представления данных, если приложение ориентировано на работу с СУБД? Ну во-первых, есть стандарты (скорее даже привычка). А во-вторых, время обычно ограничено, поэтому юзабилити отводится второстепенная роль. Кроме прочего, это вопрос скорее эргономический, а много ли среди программеров хороших психологов? > Именно поэтому я в своё время выбрал PB. За его возможности взаимодействия с различными релционными СУБД. Подчеркиваю различными. ИМХО сейчас очень трудно найти средство, которое этого делать не умеет. > В июньском номере Windows & .net magazine/re (www.winnetmag.ru) есть неплохая статья "Эволюция технологий доступа к данным" Не обижайтесь, зайдите на http://www.louvre.fr/ , там есть обзорные статьи о музее, а есть подробная история создания Джоконды. Я к тому, что подобные 'как посмотреть Лувр аз пять минут' можно встретить на каждом углу. > Краткий анализ технологий Microsoft в этом вопросе показывает их движение к технологии аналогичной DataWindow. Ну не обессудьте, но то что я читал об ADO.NET напоминает мне de javu. Кажется я это уже видел еще в VFP3 или даже в FP2. Если же учитывать, что OLEDB использует технологию, заимствованную из FoxPro (только пишут об этом редко и неохотно), а ADO.NET - это очередное продложение, то может быть давно пора признать, что идеи д-ра Фултона живут и побеждают? ЗЫ из этого топика для себя я сделал такой вывод: VFP явно проигрывает PB в скорости разработки. Но я не отношу VFP к RAD (конечно, оно может быть использовано в этом качестве, но очень не советую, особенно в первое время) и если приложить некоторые предварительные усилия, то потом время написания приложений существенно сократится. Большая открытость , дает больший контроль, а возможность создания дополнительных библитек, используя FoxAPI, о чем писал Crip, позволяет решать задачи практически любой сложности. Так что пишите на том, что хорошо знаете и в чем уверены. Ваши личные значния и опыт - самое большая ценность, отсутствие которой не компенсировать никакими суперсовременными технологиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2003, 09:23 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
К дискуссии подключаются интересные люди (NNN). Хотелось бы узнать о VFP, как средстве разработки клиента несколько поподробнее, в частности: - Какие инерфейсы доступа к данным поддерживает VFP? - Если можно, то с Вашей личной оценкой, что хорошо, а что плохо реализовано? - Доступ к каким SQL серверам будет эффективен при разработе клиента на VFP (будет здорово, если будут ссылки на собственный опыт)? -У меня после чтения тутошних форумов сложилось ощущение (заметьте не мнение, а именно ощущение), что связка VFP + MS SQL2000 будет работать лучше, беспроблемнее, чем допустим VFP + SQL производства не Microsoft. Если это так, то почему, за счет каких механизмов, если не так, то почему такое мнение существует? PS. Большая просьба ко всем участникам дискуссии,свои аллергические реакции на технологии, продукты, прошлый опыт, и родовую память обуздывать и не реагировать. Проявляйте максимальную корректность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2003, 11:56 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Ermak > Хотелось бы узнать о VFP, как средстве разработки клиента несколько поподробнее, в частности: - Какие инерфейсы доступа к данным поддерживает VFP? Собственные функции у фокса есть только для ODBC. В 8-й версии была расширена поддержка ADO (ее можно было использовать и раньше через CreateObject(), но CursorAdapter намного облегчает работу с ADO, о чем Crip уже писал). Но! Есть возможность создания библиотек на C/C++, поэтому можно говорить о возможности использования практически любого интерфейса. Из того, что я видел или слышал краем уха: Существует библиотека для работу напрямую с OLEDB, дублирующая родные функции ODBC и расширяющая некоторые возможности. Существует библиотека, использующая для работы DB Library SQL Server (жаль развитие DB Library остатновлено, мне говорили, что эта связка работает очень быстро). Существует библиотека, использующая для работы Native API Oracle. Наверное есть и другие.Если вас не устраивают сторонние библиотеки, то у вас всегда есть возможность написать свою собственную. Это, конечно, потребует намного больше времени, чем при работе с RAD, но, во-первых, эти модули будут использоваться повторно, а во-вторых иногда результаты превосходят ожидания. Из личного опыта: более-менее серьезно писал библиотеки только для Novell, но вы бы видели выражения лиц бывалых админов, когда я им демонстрировал возможности, которые предоставляет NDK, но нет в стандартных средствах. Кроме того, используя COM, можно обращаться не только к ADO, но и к компонентам .NET, включая соответственно ADO.NET. Даже видел в инете по этому поводу обширную статью. И еще, несмотря на то, что родных функций для ODBC около десятка, вы можете использовать любую внутреннюю функцию ODBC, для этого, как правильно не нужно даже использовать С+FoxAPI, достаточно объявить функцию: declare [..] FuncName in odbc32.dll .. > - Если можно, то с Вашей личной оценкой, что хорошо, а что плохо реализовано? Все вроде бы реализовано довольно неплохо. Говорят, что бывает лучше, но то, на что меня пихали не произвело на меня особого впечатления. Если подойти серьезно и хорошо во всем разобраться думаю никаких проблем не будет. Главное не забывать, что кроме foxhelp.chm в msdn есть и другие файлы :) Лично меня больше беспокоит отсутствие нормальной многопоточности и устаревший генератор отчетов, да и встроеное средство для отображения диаграм не помешало бы. А несбыточная мечта - прямой доступ из VFP к SQL Server по TDS-протоколу :) В целом, в фоксе, конечно, есть шероховатости, которые иногда мешают, но особых проблем никогда не было. > - Доступ к каким SQL серверам будет эффективен при разработе клиента на VFP (будет здорово, если будут ссылки на собственный опыт)? Исходя из первого пункта - имя сервера особого значения не имеет :) Собственный серьезный опыт с клиент-сервером довольно небольшой, всего два года, но связка VFP+SQL Server меня вполне устраивает. Опыты с Oracle тоже вполне успешно проводились с использованием фокса, но так получилось, что это было совсем недолго. Кроме того, написать клиентское приложение на фоксе, которое бы не зависило от типа сервера (конечно, используя какие-либо механизмы настройки для оптимизации) - вполне разрешимая задача. > -У меня после чтения тутошних форумов сложилось ощущение (заметьте не мнение, а именно ощущение), что связка VFP + MS SQL2000 будет работать лучше, беспроблемнее, чем допустим VFP + SQL производства не Microsoft. Если это так, то почему, за счет каких механизмов, если не так, то почему такое мнение существует? ИМХО такое мнение существует прежде всего потому, что серверная БД поставляется либо с собственным средством разработки (в котором к тому же могут быть использованы недокументированные возможности и т.д.), либо все клиентские примеры в документации приводятся на определенном языке программирования. Ясное дело, никто не хочет лишний раз рекламировать продукт конкурента. Из объективных причин могу принять лишь отсутствие ODBC-драйвера и то с оговорками. Поэтому здесь больше вопросы маркетинга, политики и проч. А о том, что лучше всего писать программы лучше всего на том, что хорошо знаешь, я уже говорил :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2003, 13:52 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2NNN (Crip не оставайся в стороне) "Собственные функции у фокса есть только для ODBC"... ODBC так ODBC. "И еще, несмотря на то, что родных функций для ODBC около десятка, вы можете использовать любую внутреннюю функцию ODBC, для этого, как правильно не нужно даже использовать С+FoxAPI, достаточно объявить функцию: declare [..] FuncName in odbc32.dll .. " Возможность использования ф-ий WinAPI32 это хорошо. В PB это тоже имеет место быть. Несмотря на то, что как правило в PB, соединение с БД происходит через ODBC не пришлось обращаться к внутренним ф-циям API ODBC. Давайте пройдемся по ODBC сначала до конца. Допустим мы решили подключиться к какой-нибудь БД, используя для этого ODBC. Для этого, я например, буду спользовать примерно такой код Код: plaintext 1. Понимаю, что это глупо (прямо извращение какое-то) из VFP подключаться к ИБ 1С через какое-то там ODBC, но всетаки как это будет выглядеть на VFP? Просто я думаю, что комплект ODBC драйверов от Microsoft у Вас на ПК скорее всего уже установлен (Microsoft Visual FoxPro Driver). Строка 1 говорит, что в качестве интерфейса доступа к данным будем использовать ODBC, строка 2 говорит, что подключаться будем к DSN = DB_1C. Так как ИБ 1С состоит просто из набора *.DBF файлов, то для подключения к БД не требуется задавать имя подключеня (UID) и пароль (PWD). PS. В принципе можем пройтись не через *.DBF базу, а допустим через какой-нибудь SQL сервер (Использую ASA, могу установить ещё MS SQL 7., на Free BSD крутится PostGre SQL. Других дистрибутивов у меня просто нет.). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2003, 17:51 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Ermak > Несмотря на то, что как правило в PB, соединение с БД происходит через ODBC не пришлось обращаться к внутренним ф-циям API ODBC. Для 99% процентов случаев достаточно того, что предоставляют собственные функции фокса. Но иногда хочется выйти за эти пределы, например, получить всю информацию, предоставляемую SQLGetInfo, что можно сделать только с помощью обращения к API. > Понимаю, что это глупо (прямо извращение какое-то) из VFP подключаться к ИБ 1С через какое-то там ODBC, но всетаки как это будет выглядеть на VFP? Синтаксис будет очень похож. Если используется DSN, то лучше так: Код: plaintext Но можно и указать строку подключения без DSN. Примерно так я подключаюсь к тестовой базе на работе: Код: plaintext Можно вообще ничего не указывать, в этом случае откроется окно выбра DSN и всю информацию можно будет ввести и выбрать интерактивно. Надеюсь все понятно и ничего объяснять ненужно:) Кроме того, можно создать объект Connection, который будет храниться в фоксовской БД, и использовать совместно с REMOTE VIEW. Там аналогично указывается DSN, логин и пароль, либо строка подключения. В этом случае подключение подключение будет установлено при обращении к REMOTE VIEW, естественно возможно совместное использование одного подключения несколькими вьюхами. Но REMOTE VIEW - это ближе к рекордсету, а до него мы еще не дошли :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2003, 18:37 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Остается только требовать новый порум по PB! Кто за збор подписей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 11:20 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
funikovyuri С одной стороны было бы неплохо, очень удобные форумы на sql.ru . Проблема в том, что не так уж много разработчиков на PB в России. Если поглядеть на форумы по PB Sybase Developer или же Sybase.ru , то активность форумов почти нулевая. В основном как то больше получается по почте или Аське общаться с коллегами, работающими с PB. Хотя кто знает - может быть на sql.ru при соотвествующей агитации народ и пошел бы в форум :) NNN Насчет отношения к VFP, как старому foxpro, Вы абсолютно правы - многие так и делают. Именно поэтому я и подчеркнул, что с VFP не работал. Однако когда я описывал PB, я постарался обьяснить, что с моей точки зрения по концепциям работы он стоит в стороне от распостраненных ООП языков программирования, таких как Delphi, C#, Java, с фоксом я сравнений старался не проводить. Несмотря на то, что они поддерживают все, что может PB и даже намного больше, будучи универсальными мощными средствами построения любых GUI-клиентов, с моей точки зрения "цельность" функциональности PB и его узкоспециализированность выигрывает по сравнению с универсальностью компонентно-ориентированных средств. Например DataWindow как средство ввода и просмотра данных по возможностям ничем не уступает мощным гридам сторонних производителей для других языков программирования (тот же QuantumGrid или UltraGrid), одновременно как средство построения отчетов и графиков он не остает от Crystal Report, плюс как компонент "набор-данных" он позволяет легко обрабатывать и манипулировать данными, поддерживая все современные концепции доступа к данным (те же отложенные/кэшированные изменения). Включаем сюда еще язык выражений, который поддерживается DataWindow и получаем, что только один DataWindow по возможностям и функционалу предоставляет то, что в других языках было бы реализовано с использованием кучи компонент, причем в основном сторонних производителей. Следует еще подчеркнуть, что спроектированный DataWindow нельзя назвать компонентом - хранится он как описание получения данных, правил их изменения и верификации и визуального отображения. Такое представление является автономным - его можно создавать динамически или же подгружать с любого источника (файловой системы, BLOB-ов и т.д.) и в любой момент запустить в приложении, указав его в кач-ве источника для визуального контролса DataWindow, лежащего на какой-то форме. Так же есть возможность использовать DataWindow без его визуализации в невизуальном классе DataStore. Думаю понятно что я хотел этим сказать - главное преимущество PB - это его высокоуровневость и специализированность на уровне языка и встроенных средств работы с данными. Я считаю, что в свое время fox в файл-серверных системах и получил широкое распостранение и известность именно благодаря тем же вышеописанным качествам, имея специальный встроенный dbase язык манипуляции данных и неплохие средства их визуального отображения на уровне самой системы (думаю все со мной согласятся). Поэтому и хотелось бы узнать от специалистов, работающих на VFP и знающих динамику его развития - что представляет из себя сейчас VFP - к кому он теперь ближе - к компонентным ООП языкам или же он остался таким же специализированным языком, но уже с продвинутыми возможностями построения клиент-серверных приложений ? Поддерживает ли он изначально все то, что есть во многих других средствах, не только в PB - мощные гриды, построение сложных отчетов, кросстабов, графиков, сохранение в БД посредством отложенных изменений, фильтрацию и сортировку наборов данных, работу с множествами записей, возможность организации форм ввода и просмотра данных и отчетов для интернет-браузеров и построение 3-звенных систем ? И самое главное - если может, то насколько это реализовано "аппаратно" в самом фоксе - сколько кода и усилий необходимо приложить для реализации вышеперечисленных возможностей. P.S. В Delphi или .NET например из этого можно все, но только с учетом использования сторонних компонент и то во многих случаях приходится все равно писать немало дополнительного кода. В PB так же из этого можно все, но почти без написания дополнительного кода и вообще без каких то дополнительных компонент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 13:28 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Поэтому и хотелось бы узнать от специалистов, работающих на VFP и знающих динамику его развития - что представляет из себя сейчас VFP - к кому он теперь ближе - к компонентным ООП языкам или же он остался таким же специализированным языком, но уже с продвинутыми возможностями построения клиент-серверных приложений ? Нечто среднее. Это и специализированный язык, но в тоже время с развитыми средствами ООП. Подробно расписывать неохота, проще ответить на вопросы, тем более, что о языковых возможностях фокса я вроде не раз писал. Поддерживает ли он изначально все то, что есть во многих других средствах, не только в PB - мощные гриды, построение сложных отчетов, кросстабов, графиков, Согласно современным требованиям думаю нет. Для этого В основном используются сторонние продукты. Именно поэтому я ранее автору поста рекомендовал все же PB. сохранение в БД посредством отложенных изменений, фильтрацию и сортировку наборов данных, работу с множествами записей, Да... возможность организации форм ввода и просмотра данных и отчетов для интернет-браузеров и построение 3-звенных систем ? И самое главное - если может, то насколько это реализовано "аппаратно" в самом фоксе - сколько кода и усилий необходимо приложить для реализации вышеперечисленных возможностей. Да, но в плане интернета есть ограничения. Тут фокс рассматривается MS как возможность построения приложений среднего звена и Web Services. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 13:47 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS Поскольку Crip вернулся и ответил на всё, то позвольте мне задать несколько вопросов. 1. Про DataWindow - насколько его универсальность избыточна и как это влияет на производительность? 2. Про Grid - что подразумевается под гридом, отвечающим современным требованиям. 2Crip А что ты такого не смог сотворить в фоксовском гриде? Просто интересно, что люди с гридами творят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 14:23 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
И ещё один вопрос: Какие объём библиотек поддержки для PB? спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 15:51 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Crip Сенкс за ответ. Будет время, ради интереса надо будет поюзать VFP в просветительских целях :) NNN В принципе как не странно, такая вот универсальность DataWindow не ущемляет разработчиков в решении каких то специализированных решений и ничуть не снижает скорости обработки данных. Сам DataWindow по заверению разработчиков изначально проектировался, как средство обработки больших обьемов данных, не даром у него есть опции различных вариантов получения и хранения наборов данных - весь в памяти, считывание с сервера по мере необходимости и хранение посредством кэша на диске. Я единственное не понимаю, как они умудрились создать внутренний интерпретатор выражений под DataWindow, который может использовать не только собственные внутренние функции, но и внешние, написанные на языке PB - PowerScript, при этом довольно таки шустро работая. Также для контроля производительности у DataWindow есть события для контроля всех его операций с БД - от позаписного считывания с сервера до генерации скриптов по получению или сохранению данных. Так что даже при получении записей с БД в любой момент можно прервать операцию, если это будет необходимо. Также предусмотренны быстрые методы копирования и перемещения записей между одинаковыми по структуре полей DataWindow, что я например активно использую для организации форм выборов множества записей с последующим сохранением их в темповые таблицы для организации отчетов по выбранному множеству. Для конвертации и больших перегонок данных между различными источниками данных есть DataPipline, смахивающий по принципам на DTS из MSSQL. Насчет гридов - очень легко можно организовывать гриды с группировками, аггрегирующими и вычисляемыми столбцами, "expression" позволяют на любое свойство описать выражение, возвращающее его значение в зависимости от заданных условий, на DataWindow сразу можно расписать правила целостности полей, легко организуются навороченные lookup поля посредством подключения в виде выпадающего списка любого указанного DataWindow. Естественно любой DataWindow может себя отпечатать в виде отчета, причем в настройках DataWindow изначально можно указать, что будет присутствовать в отчете, а что только показываться на экране. Метод кэширования DataWIndow позволяет организовывать на один набор данных множество DataWindow с различными видами представлений информации, служащих как для ввода данных, так и для предоставления отчетов и графиков, как я уже и говорил раньше имея каждый в отдельности собственную текущую позицию записи в наборе данных. Также в PB имеется полный набор функций управления печатью - распечатать можно все что угодно, плюс можно организовывать очереди печати и печатать туда формы, DataWindow и вручную управлять выводом на листы текстов, графики и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 16:18 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Alex Antipenko Привожу данные под Windows версию: если брать полную версию ядра PB - то 8 мегабайт. Плюс dll-ки для доступа к нужным интерфейсам доступа к данных - например для доступа через ODBC dll весит 500 кило. Если реализуется поддержка 3-звенки или web-а, то в инсталяцию включаются дополнительные dll, отвечающие за соотвествующие функции. Под другие ОС насчет размеров не знаю, наверное примерно те же самые обьемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 16:32 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2NNN Ну скажем так...Вы Quantum Grid наверное видели. Фоксовому гриду до него далеко. Печать данных нужно реализовывать самому. Хотя это не столь тяжелое занятие. Я уже не говорю про всякие навороты реализованные через SHAPE. фоксовый грид даже до DbGridEh ИМХО не дотягивает. Вообще чтобы было также круто надо юзать внешние компоненты. Еще раз повторюсь. Пока отчетность в фоксе сделана так себе...В девятке обещают вроде несколько поправить сей недостаток ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 16:53 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS Спасибо за подробный ответ. При возможности также попытаюсь потрогать руками . Или хотя бы что-то позаимствовать, в моей библиотеке есть пара узкоспециализированных классов, которые отдаленно напоминают DataWindow. Ну а что, насчет недостатков, чего не хватает? (извиняюсь, если чего пропустил) 2Crip Скажем так, я с навороченным гридами редко встречаюсь, так что будет время поищу скриншоты в инете. А про отчетность - согласен. > В девятке обещают вроде несколько поправить сей недостаток Ну годик подождать - не проблема :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 16:56 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
В принципе стандартных возможностей PB хватает для нормальной жизни. Не хватает полноценного экспорта в excel, экспортироваться в него могут только данные с DataWindow, а не отчет. Есть конечно нормальный экспорт в HTML, PDB и WMF, но это не то, что частенько нужно. Судить больше о том что не хватает сложно - я на самом деле не могу считать себя спецом в PB с учетом того, что недавно с ним познакомился и использую пока больше как генератор отчетов для своего проекта. Фактически я пользуюсь только стандартными наворотами самого PB, а на самом деле еще мегов на 12 у него в комплекте идет огромная библиотека иеархий готовых решений классов, форм и компонент PFC (Power Builder Foundation Class Library). Там чего только нет, по моему на все случаи жизни - достаточно брать уже готовые каркасы, наследоваться и дописывать частные решения. Я пока с PFC не работал, хотелось поюзать сам PB, понять его принципы и методики работы. Хотя если начну крупный проект писать на PB, то PFC буду использовать обязательно, так как мне уже очевидно, что многие сложные решения, которые я сейчас в своем маленьком приложении пишу ручками на "чистом" PB, в PFC уже достаточно полно предоставлены множеством удобных решений. В качесте явных недостатков можно назвать некоторую глюкавость самой IDE PB и способы компиляции исходных текстов программ. Например автокомпиляция кода функции или события приводит к тому, что я не могу в них сослаться на несуществующую функцию или переменную и потом перейти в раздел, где я ее и опишу. Лечиться только ремарками - заремарили, описали новую функцию, вернулись, разремарили. То же самое можно сказать и про ООП - если у базового класса удалить свойство или метод, который вызывается из наследуемых классов, то их дизайнер открыть не удасться - придется вызывать редактор исходника такого класса и ручками убрать ссылки на несуществующие более свойства или методы. Далее я так понимаю в PB при изменении иеархии классов или их аттрибутов их наследники не перекомпилируются и остаются со старым байт-кодом, лечиться полной или частичной перекомпиляцией проекта (под словом компиляция я понимаю не компиляцию в машинный код, как например в Delphi, а компиляцию в байт-код, как у VB, то есть процесс этот не занимает много времени). В принципе кое-что я обьяснить для себя в таких вот недостатках PB могу - динамическое подключение и связывание библиотек во время выполнения это не шутки и многие ограничения насколько я понимаю идут оттуда. В принципе я на них сильно не жалуюсь, так как полностью поддерживаю взгляды разработчиков PB, что проектировать надо сразу и не есть хорошо базовую иеархию классов в середине пути изменять, но вот навязывать такие пусть и хорошие правила программирования все таки жестоко. Ну и немного непривычный и во всяком случае для меня неудобный отладчик, который иногда просто неизвестно почему при пошаговом выполнении кода может снести как процесс сам PB. Также не понятна ситуация с машинным кодом - вроде бы PB полностью поддерживает 2 модели работы приложений - через байт-код и прямые откомпиленные exe-файлы с dll, однако я слышал, что нативные файлы могут глючить и не все правильно выполнять, но об этом уже более знающих людей надо спрашивать, чем я. Ну а в самом выполнении функциональности программ пока глюков я не нашел, хотя сейчас юзаю PB пожесткому, чтобы определить его слабые и сильные стороны и точно знать, что точно в нем делать не стоит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 17:47 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS Еще раз спасибо. Больше вопросов вопросов не имею, поэтому покидаю этот топик. Хотя если будут вопросы по VFP, появится что-то интересное или Crip'у понадобиться помощь и у меня будет свободная минутка, то непременно вернусь (при условии, что Crip перестанет на меня выкать). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.07.2003, 22:19 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
при условии, что Crip перестанет на меня выкать LOL... Договорились ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 10:33 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Как в PB установить у элементов управления привязку к краю окна? Есть ли такая возможность вообще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 11:26 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
В самом PB такого нет и судя по 9 версии не предвидится. Существует 2 пути: 1. прописать все ручками на событие resize контейнера компонента 2. воспользоваться pfc, в которой есть специальная функция размещения компонент по форме. Функция довольно таки мощная и позволяет расписать не только выравнивание компонент по форме, но и их пропорциональность в размерах и даже zoom в DataWindow. По принципам работы и функциональности один в один, как схема GridBagLayout в Java. Посмотреть как это сделано лучше всего в демках PFC. P.S. Может правда форум по PB попробовать попросить организовать у админа ? Я бы туда друзей с Украины затащил - PB там довольно таки распостранен и по опыту нам до них далеко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 11:54 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2ASCRUS\r \r > Может правда форум по PB попробовать попросить организовать у админа ? \r \r Попытка не пытка. Для создания новых форумов есть два пути:\r Форум по Java\r Форум по Fox Pro? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 12:04 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
sergei_p писал:Как в PB установить у элементов управления привязку к краю окна? Есть ли такая возможность вообще? При использовании PFC - сервис n_cst_resize. Посмотри в BOL. Без использования - отрабатывай событие resize. Hint: n_cst_resize как и многие другие сервисы PFC легко выделяются из библиотеки и могут использоваться сепаратно. PS. Даёшь форум по PB ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 12:09 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Организовал тему Сбор подписей на открытие форума по Power builder на sql.ru. Думаю если много народу там выскажет свое желание админ смилостивиться над нами и сделает нас счастливыми. Тем более что PB одно из ведущих средств разработки клиентов и прям как то обидно, что он не предоставлен никак на этом замечательном сайте, давно уже переставшем быть просто SQL и более претендующего на название клиент-серверные технологии :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 12:17 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Попробуйте. Сколько было воплей о том, что не нужен форум по фоксу и что туда никто кроме женщин 30-50 лет ходит не будет ;) . Скоро по количеству постов форум перебьет все форумы по .NET вместе взятые ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 12:18 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Угу - я на это тоже внимание обратил :) Как всегда оказалось, что вопли о смерти фокса оказались преждевременными, как доказательство - активность форума по Фоксу :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 12:22 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Коли NNN ещё здесь , попытаюсь осветить свою точку зрения на NNN писал:Ну а что, насчет недостатков, чего не хватает? Напрягает отсутсвие возможности работать напрямик с исходным кодом. Костыль, предложенный в восьмерке и девятке - "Edit source" -есть решение неудовлетворительное, ибо является просто экспортом / импортом вытащенным в оболочку. Кривая (неудобная) работа с API. Начинающие всегда с удивлением узнают, что любимой функции f() не существует, если среди параметров есть хоть одна строка. Как не вспомнить "There is no spoon..." . А следует вызывать fa(), причём знать, в какой библиотеке она живет. Нет доступа к константам, структурам, битовым маскам, являющимся неотъемлемой частью любого API - Win32, например. Всё это конечно обходимо, но напрягает конкретно. Получение из внешней функции указателя на массив структур - житейское дело, скажем, в VC - драмма в трёх частях с прологом и эпилогом. Возможно, NI, появившийся в девятке, как-то поможет жизни, пока не копал. При разрастании проекта > 20 Mб, т.е. вполне среднего, начинаются новые радости: сборка в *.exe+[*.dll] практически отпадает. Ну оооочень долго. Есть инкрементальная сборка, но это не панацея. На рынке присутствуют компиляторы для PB сторонних производителей, которые рекламируют свою продукцию: "У нас в 10 раз быстрей на большинстве проектов." PB (всех мне извесных модификаций) слишком корешится с Dr. Watson. А проще говоря, валится в самое неподходящее время. Иногда даже приходится забирать написанный скрипт в клипборд до сохранения... Могу ещё добавить, если мало. PS. Все недостатки перекрываются наличием неоспоримых достоинств - упоминавшимся здесь уже DataWindow / DataStore (не путать с гридами, абсолютно разные вещи) и возможностью с полпинка средствами самого продукта построить вполне сносную трехзвенку - Distributed PowerBuilder (по крайней мере до 9 версии). PS/2. Использую PB в качестве основного средства разработки уже шесть лет, поэтому журю на правах старого приятеля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 13:19 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Привет всем из Украины. Некоторые мои мысли относительно вопроса. Я считаю что все средства хороши, если ты в них спец. Но предпочтение отдаю PowerBuilder. Хотя работал и сейчас иногда работаю на Delphi, Foxpro . Почему PowerBuilder 1. производительность програмиста. (Попробуйте подключиться к базе и сделать выборку из таблицы и посмотреть все стили представления даных. И попробуйте сделать то же в Delphi, Foxpro) 2. DataWindow - практически используя его одного при разработке проета Client/server можна запрограмировать очень многое, 3. PFC - 1. возможность наследования библиотеки для уровня предприятия, отдела. Соответственно доработать на данных уровнях необходимые функции (для каждого из них). Что сразу дает разграничение прав. 4. PFC - идет в открытом коде. Прекрасная возможность посмотреть как другие пишут код. Недостатки 1. мало литературы. Ссылки на книги вам уже дали. Если кто не может скачать могу попробовать отослать компакт(есть опыт). Я имею ввиду книг на русском , украинском ... языках. Если посмотреть на amazon.com совсем противоположное. 2. недоработанный Debug. На сегодня хочется побольше функций от него. особенно когда закрывает среду разработки. 3. компиляция в exe . После необходимо полное тестирование проекта. замечены некоторые неточности в работе. Лучше компилировать в p-код как рекомендует фирма. 4. выгрузка данных в офисные приложения. Без нее можна обойтись. Но думаю разработчики PowerBuilder должны это учесть. Это некоторые мои мысли в общих чертах. Если есть вопросы. Задавайте попробую ответить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 13:38 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Нет доступа к константам, структурам, битовым маскам, являющимся неотъемлемой частью любого API - Win32, например. Всё это конечно обходимо, но напрягает конкретно. Получение из внешней функции указателя на массив структур - житейское дело, скажем, в VC - драмма в трёх частях с прологом и эпилогом. С этой частью API вызовов в VFP , тоже проблемы. Если в VB еще есть какая-то через уши поддержка структур, то в VFP их нет вообще. Есть только свои объекты и классы, не имеющие отношения к апишным структурам. Поэтому приходится обращаться через строковые буфера,для чего народом нарисованы нехилые классы преобразования. Я лично их не использую потому считаю , что гораздо проще обернуть нужный мне API вызов COM-объект на С++. Тоже самое с CallBack функциями и др. А вот многопоточность в фоксовом коде нормально не организуешь. Все равно будет отжирать процессор по полной в период выполнения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 13:44 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Dmitry Belousov > Коли NNN ещё здесь Только как читатель. Но все-равно спасибо за ответ. Остальным вместо спасибо (а то я так превращусь в сенкс-спаммера) - мой голос в поддержку вашего форума. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 13:48 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 NNN "Скажем так, я с навороченным гридами редко встречаюсь, так что будет время поищу скриншоты в инете. А про отчетность - согласен." Смотри не жалко. http://www.dw-extreme.com/index.htm К вопросу а resize. Подсмотрел реализацию splitbar'а кажется в примере от pb6. Если у кого нет PB6,то можно тут http://web.vrn.ru/567637/PB/pbobj.htm. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.07.2003, 16:06 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
насчет генератора отчетов в VFP - чем именно он плох и чего там не хватает - хоты бы по-сравнению с Fast Reports/ Crystal Reports??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2003, 11:49 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Нынешний генератор отчетов в VFP это песня. Правда в девятке вроде обещают поправить дело , но пока все вот так: 1) Не объектно-ориентирован. С запущенным окном отчета можно произвести уже минимум действий и то с извращениями; 2) Нет экспорта данных никуда. Можно только запустить в режиме TO ASCII, то бишь ваш любимый plain text. Правда появилось несколько сторонних продуктов по экспорту в office, html. Но работают они недостаточно быстро, за исключением PDF. PDF правда и так можно генерить, печатая но соответствующий принтер. Все остальное уже по мелочи. Но думаю первых двух пунктов вполне достаточно...Поэтому большинство народу стараются использовать чего-нибудь более человечное, SpreadSheet например... Есть правда один плюс у фокспрошного генератора - быстр собака. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2003, 12:07 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Почему PB9.0 отваливается? Открываю Example'ы просмотрю окон 5-7 и PB вываливается. Чё за фигня? Кто знает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2003, 12:13 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
sergei_p писал:Почему PB9.0 отваливается? Открываю Example'ы просмотрю окон 5-7 и PB вываливается. Чё за фигня? Кто знает? К некоторой падучести PB следует привыкнуть. "Ложиться" он периодически будет. С количеством окон, IMHO, это не связано. Что можно сделать: Посмотреть, что является текущим DB profile. При открытии dwo, он лезет в базу, если активен preview pane. Сгенерить проект (full rebuild). При этом будет проведена регенерация всех объектов. Если ничего не помагает, посмотреть наличие патчей на sybase.com. Скачать, накатить. BTW. А почему не в новом "форуме" на форуме по Sybase? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2003, 12:59 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Спасибо. P.S. А уж подумал что pb9 без глючное средство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.07.2003, 13:19 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Crip в)MS SQL 2000 Хорошая . MS вообщем-то на это и ориентируются сейчас. г), COM+/MTS Хорошая. Уровень VB6 Есть плюс - можно использовать наследование реализации в COM Недостаток - оторванные рекордсеты только через XML Как насчет CREATEOFFLINE() ?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 15:47 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Спасибо ASCRUS-u и Ермаку за содержательные постинги. 2 ASCRUS мощные гриды, построение сложных отчетов, кросстабов, графиков, сохранение в БД посредством отложенных изменений, фильтрацию и сортировку наборов данных, работу с множествами записей, возможность организации форм ввода и просмотра данных и отчетов для интернет-браузеров и построение 3-звенных систем ? И самое главное - если может, то насколько это реализовано "аппаратно" в самом фоксе - сколько кода и усилий необходимо приложить для реализации вышеперечисленных возможностей. Есть ощущение, что на фоксе ручками придется работать МНОГО больше..:( Report в фоксе весьма хилый. Грид вызывает чувства неудовлетворения, Аксессовский лучше. Компонентная ООП модель 8й версии уже неплоха. Например, есть ли такое в PB - You can use the BINDEVENT( ) function to attach, or bind, an event, method, or property from one Visual FoxPro object, or event source, to the method or event of another Visual FoxPro object, or the event handler. Уже неплохая обработка ошибок - TRY...CATCH…FINALLY. Как в PB? Русских форумов по VFP поболе будет; а вот в фидо на вопрос, стоит ли заниматься PowerBuilder-ом , был ответ, что он типа издыхает. Почем купил - за то продал, хотелось бы, чтобы все было не так. Очень хороши в фоксе возможности локальной обработки данных. Правда, оператор выборки SELECT недоделанный, нет нормальных вложенных запросов, зато навигационная модель хороша, иногда бывает удобней ей пользоваться. Очень удобно в фоксе можно организовать обновления версий - не останавливая запущенных программ; к работающей системе можно подключать модули (p-code), не собирая их в один EXE-файл или DLL. Для исполнения достаточного одного этапа компиляции в p-code, компиляция доступна в среде исполнения. PB я не знаю. Но доберусь, хотя бы чтоб плотнее познакомиться, что за зверь - DataWindow. ---------- В PB событие - это с точностью до наоборот - действие некоего класса на вызов его события кем то. типа это метод? ----------- События могут наследоваться, однако в отличие от наследований в методах классов порядок выполнения события идет от предка к наследнику А ежели мне надо модифицировать или вообще отменить метод предка ? -------- 2 who know Остался неосвещенным вопрос от Crip - как идет серьезная работа с уже полученными резалтсетами на клиенте. Только через ODBC? Или даже так: К элементам DataWindow можно ли обращаться через SQL-операторы или только как к элементам массива? Было бы интересно работать с отобранными данными в том же стиле и ключе, что и с данными на сервере. - Можно ли создавать классы во время выполнения? В фоксе - да, с определенными извращениями. - Можно ли сделать UPDATE или INSERT в 2 связанные таблицы (типа шапка документа и строки, в родительской ПКлюч по полю типа идентити) в одной транзакции, много ли придется шевелить ручками? -------- как доказательство - активность форума по Фоксу :) Хе-хе, в фидо загляните.. Вообще, ИМХО, ньюс-группы удобнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 15:54 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
"Уже неплохая обработка ошибок - TRY...CATCH…FINALLY. Как в PB?" Начиная с версии 8.0 есть. "События могут наследоваться, однако в отличие от наследований в методах классов порядок выполнения события идет от предка к наследнику А ежели мне надо модифицировать или вообще отменить метод предка ? " Можно отменить выполнение обработки события предка. Можно выполнить сообытие предка после своей обработки. Модифицировать событие предка нельзя. "2 who know Остался неосвещенным вопрос от Crip - как идет серьезная работа с уже полученными резалтсетами на клиенте. Только через ODBC? Или даже так: К элементам DataWindow можно ли обращаться через SQL-операторы или только как к элементам массива? Было бы интересно работать с отобранными данными в том же стиле и ключе, что и с данными на сервере. " ODBC интерфейс используется специальным объектом (transaction) для организаци связи и выполнения запросов с нужным SQL сервером. Кроме ODBC, можно использовать OLE DB и Native интерфейсы. DataWindow с базой данных работает только через transactionObject, Резалтсет, он же DataWindow (после выборки данных) уже есть результат работы SQL (Select, StoredProc). После этого для навигации по Datawindow используется "навигационный" подход (получилось масло-масленное, но так и должно быть, в смысле масло просто обязано быть масленным). Вы можете редактировать как хотите выбранные данные, после чего при выполнении метода update() DataWindow автоматически сформирует необходимые SQL выражения (Insert, Delete, Update) и выполнить их. Выбранные данные можно сортировать, можно наложить фильтр (обращения к БД при этом не происходит). Если переключить DataWindow в query mode, то получаем QBE форму, тут же в самом DataWindow определяем критерии. При выходе из Query mode, оператор SELECT будет динамически изменен в соответствии с введенными критериями и данные в DataWindow будут выбраны из БД заново. "Можно ли создавать классы во время выполнения? В фоксе - да, с определенными извращениями." Если классы в фоксе "тоже", что объекты в PB, то создать новый класс нельзя, а экземпляры объектов (визуалные и невизуальные) можно. "Можно ли сделать UPDATE или INSERT в 2 связанные таблицы (типа шапка документа и строки, в родительской ПКлюч по полю типа идентити) в одной транзакции, много ли придется шевелить ручками?" Я бы сделал примерно так (insert): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. А много это или мало решайте сами. PS. По поводу издыхает - на мой взгляд фигня. Правильнее было бы сказать, что PB не является на сегодняшний день в России, модным средством разработки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 17:05 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Sjfx Bindable в PB не поддерживается. Try есть, реализован один в один, как в Java, то есть если метод вызывает Exception, то он должен в своем заголовке ее описать, а при использовании такого метода PB будет требовать, чтобы он обязательно был заключаен в блок try ... catch. Однако в PB это используется для разработки обьектов для EAS. Сама же обработка ошибок в PB базируется на стандартном методе возврата функцией флага успешности завершения, что в принципе я даже считаю удобным для клиентского приложения, в котором и не может быть большого кол-ва критичных участков кода. PB так же как и Fox поддерживает динамические библиотеки и приложение даже во время выполнения спокойно может изменять список подключенных к приложению библиотек, исследовать метаструктуру обьектов и пользоваться их функционалом. Насчет издыхания PB не знаю честно говоря сильно сомневаюсь, с учетом того, что в новую 9 версию встроена поддержка XML, .NET и JSP, а значит продукт пользуется спросом, раз он эволюционирует и не отстает от современных технологий. Событие в PB действительно по смысловой нагрузке фактически является методом класса, изменить или отменить порядок их выполнения можно. Однако в отличие от методов к событиям можно обращаться динамически, без ошибок компиляции или во времени выполнения, то есть если оно не будет обнаружено у обьекта ошибкой это считаться не будет. Вся парадигма PB построена на событиях. Фактически функции класса получаются некоторыми его служебными действиями, а события служат для вызова действий и управлением логики между обьектами. Также в PFC (базовая библиотека классов) пошли далее, применив при построении иеархии базовых классов не модель иеархии наследования обьектов, а модель делегирования, где в этих библиотеках существуют как бы 3 уровня: 1. Сервисы - невизуальные классы, выполняющие определенный круг действий 2. Компоненты - наследованные от стандартных компонент PB классы, с интегрированной поддержкой сервисов 3. Классы-надстройки - специальные классы, которые можно изменять для изменения и дополнения функциональности PFC Фактически такая схема позволяет во первых комбинировать в приложении только нужную функциональность сервисов, во вторых - не привязываться к жесткой зависимости от иеархии наследования, в третьих - через классы надстройки менять и дополнять базовую функциональность PFC, не боясь все потерять, когда выйдет новый PB с новой PFC, так как производитель гарантирует неизменность классов надстроек и вводит изменения только в базовые сервисы и компоненты. Так что например если базовый сервис вызывает окно сортировки и Вам не нравиться его оформление и что все там по английски, то достаточно изменить такое окно в классе надстроек, которое наследовано от базового окна PFC и спокойно получить результат, при этом сохраняя всю логику и функционал базового класса без всякого наследования и дописания кода. Данные PB может получать от ODBC, OLE DB, Direct Connect, JDBC и Native Interface (Oracle, MSSQL, Sybase ASE, Informix). Данные хранятся в буферах (массивах). SQL локально к ним естественно применять нельзя, жирно конечно клиенту иметь свой SQL движок. Зато можно оперировать множествами, то есть копировать и перемещать указанные по рангу записи между DataWindow с одинаковой структурой записей и работать со значениями полей указанных в ранге записей (например с 10 по 100 запись одной командой полю присвоить значение). Не понял вопроса насчет создавать классы во время выполнения. Я так понял генерить классы и тут же подключать. Этого делать в PB нельзя, зато можно во время выполнения создавать или изменять описания DataWindow, фактически при желании можно сделать свой дизайнер форм и отчетов, не понятно правда зачем. Так же в PB поддерживается для невизуальных классов свойство AutoInstatiate, которое позволяет указать PB, что класс глобальный и автоматически создается при первом к нему обращении. Правильное сохранение, добавление ключей (и даже их каскадное обновление и удаление) в дочерние наборы данных реализовано в виде специальных сервисов PFC, которые просто нужно подключить и пользоваться их услугами. P.S. Вроде по всем вопросам постарался ответить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 18:29 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Ну вот - пока писал, меня уже обогнали :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 18:30 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 All Можно отменить выполнение обработки события предка. Можно выполнить сообытие предка после своей обработки. Модифицировать событие предка нельзя. Собсно, под модификацией я и понимал замену события предка своим. Данные хранятся в буферах (массивах). SQL локально к ним естественно применять нельзя, жирно конечно клиенту иметь свой SQL движок. Мы ж на жирных клиентах работаем, отчего нет. В фоксе - есть, и это хорошо.. Можно загрузить данные с сервера, отрубиться, поработать, пополучать отчеты, выключить комп, назавтра включить и обновить данные на сервере. Хотя вроде как в поставке ПБ идет ASA в какой-то минимальной конфигурации, вероятно, можно приспособить. Жалоб на падучесть фокса намного меньше. Кстати еще неприятность в фоксе, как она мне не нравится! Дело в том, что эта зараза обработку событий от клавы перемежает с обработкой своего внутреннего генератора событий, еще с ДОСовских времен(!), нажатия на клаве конвертит в свое событие и отдает на обработку. Это приводит к дерганности движения курсора внутри textBox-a, editBox-a и визуальной дерганности прохода по записям в гриде, когда нажата стрелка на клаве. В ДОСе это было полезно, сам пользовал, а в винде нафиг не нужно. Коллеги, вы бы заглянули на fido7.ru.powerbuilder , послушали бы печальную песнь... Тоже информация к размышлению. 2 ASCRUS В ASA вроде как БД до 2ГБ, до 12 БД на сервер. Что за 26 ГБ (из другой ветки)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 20:06 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
Цитирую BOL ASA: Database size 13 files per database. For each file, the largest file allowed by operating system and file system Field size 2 Gb File size (FAT 12) 16 Mb File size (FAT 16) 2 Gb File size (FAT 32) 4 Gb File size (NTFS, HP-UX 11.0 and later, Solaris 2.6 and later): 256 Gb for 1 kb pages 512 Gb for 2 kb pages 1 Tb for 4 kb pages File size (NetWare) 4 Gb File size (all other platforms and file systems) 2 Gb Так же поддерживает RAM для XP и 2003: NonAWE - 2,3 гб AWE - 64 гб Настольная версия поддерживает до 2 процессоров, NET версия столько же, сколько может поддерживать ОС. Заявленная поддержка железа в самый раз для сервера рабочих групп :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.07.2003, 21:59 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2 Sjfx >Можно загрузить данные с сервера, отрубиться, поработать, пополучать отчеты, выключить комп, назавтра включить и обновить данные на сервере. ПБ тоже так работает. Пока датавиндову не скажешь update, данные лежат на клиенте и сервер можно отрубать. Выключать клиентский комп, правда, без подготовки нельзя: сначала нужно сделать export куда-нибудь, а когда включишь - import. ASA к повербилдеру идет, но поставлять ее заказчику вместе с приложением нельзя, нужно покупать сервер. >Жалоб на падучесть фокса намного меньше. Гораздо меньше, я например уже лет 10 ни одной не слышал. Наверное потому что я и людей не знаю, которые с ним работают - некому жаловаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 00:40 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
2Sjfx,ACRUS: насчет BINDEVENT(). В ООП иногда встречается такая штука как DELEGATION - возможность делегировать обработчики событий одного объекта другому - на этой концепции любят строить систему событий. Так вот в PB, по-крайней мере 9, эта идея реализована. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 09:21 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
funikovyuri Если в 9 версии сделали поддержку делегирования событий, то пожалуй срочно надо на него посмотреть :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 10:38 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
bindevent() в VFP8 это и есть делегирование... Метод делегата можно вызвать до, после и вместо события...В метод делегата передаются те же параметры, что и в событие... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 11:10 |
|
||
|
Visual FoxPro 7 vs Power Builder 9
|
|||
|---|---|---|---|
|
#18+
К некоторой падучести PB следует привыкнуть. "Ложиться" он периодически будет. По-моему, после такого ветку можно прикрыть:-((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.08.2003, 16:12 |
|
||
|
|

start [/forum/topic.php?all=1&fid=35&tid=1554308]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
115ms |
get tp. blocked users: |
2ms |
| others: | 251ms |
| total: | 439ms |

| 0 / 0 |
