Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Нюансы VisualFoxPro / 12 сообщений из 12, страница 1 из 1
13.03.2009, 23:34
    #35868857
Нюансы VisualFoxPro
На понимание нюансов тратится много времени и усилий.
А если они описаны в одном месте, то при мистическом поведении программы, можно довольно быстро мистику развеять.
Поделитесь нюансами в одном месте - здесь.

&&...........................................................

1. Метод UnLoad() модальной формы возвращает значение в to-переменную.
do form Forma with pa1, pa2 to ValRet
Такой вызов немодальной формы выдаёт ошибку.
...
Рейтинг: 0 / 0
14.03.2009, 03:21
    #35868953
reware
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нюансы VisualFoxPro
ВладимииирНа понимание нюансов тратится много времени и усилий.
А если они описаны в одном месте, то при мистическом поведении программы, можно довольно быстро мистику развеять.
Поделитесь нюансами в одном месте - здесь.

&&...........................................................

1. Метод UnLoad() модальной формы возвращает значение в to-переменную.
do form Forma with pa1, pa2 to ValRet
Такой вызов немодальной формы выдаёт ошибку.
Мистика в том, что вы, вроде зная о методах формы, не заметили в хелпе указания для чайников -
"If you use TO, the WindowType property of the form must be set to 1 (Modal). ". Дальше обьяснять ?
...
Рейтинг: 0 / 0
14.03.2009, 04:17
    #35868963
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нюансы VisualFoxPro
Вряд ли этот тред кому-то поможет. Даже заглянув сюда трудно запомнить все нюансы. Прочел и забыл. А при возникновении реальной проблемы сомневаюсь что кто-то запустит поиск со словом "нюанс", а потом будет перечитывать многие страницы этой веточки. Скорее при поиске будет упомянут более конкретный атрибут возникшего затруднения. Значительно более полезным будет структурированный FAQ. На Foxclub'е такой есть

Для мистикой стало формирование многостраничного отчета-когда код верен, с данными полный порядок-а поди ж ты на просмотр и печать выводится какой-то сумбур, даже количество страниц на одном и том же отчете каждый раз разное. Оказалось, что нельзя держать при формировании отчета фокус на гриде-такой вот недокументированный и ни разу не логичный нюанс. Решение можно найти здесь
...
Рейтинг: 0 / 0
14.03.2009, 09:59
    #35869007
Нюансы VisualFoxPro
reware, спасибо.

В том-то и нюанс заключается, что вроде бы знаешь о чём-то, да не всё или не совсем так, как на самом деле. А для кого-нибудь другого, твой нюанс не нюанс, а вполне очевидная вещь.

2. Если в форме свойство DeskTop=.T. , то вызванное из неё командой wait window «Привет» сообщение под ней и не видно.
3. Если в форме свойство DeskTop=.T. , а в запущенной из неё форме DeskTop=.F., то запущенная форма под ней и не видна. А если запущенная форма ещё и немодальная, то она не активируется и не получает управления .
...
Рейтинг: 0 / 0
14.03.2009, 10:12
    #35869019
Нюансы VisualFoxPro
Dag, спасибо за ссылки.

Если при поиске будет упомянут конкретный атрибут возникшего затруднения, то в результате, возможно, мы выйдем на эту веточку, которая кому-то сможет помочь.

4. Если таблица открыта с псевдонимом M , то квалифицированное обращение к её полю невоз-можно. В операции yy = m.xx переменной yy будет присвоено значение переменной xx , а не значение поля xx таблицы с псевдонимом M . Чтобы переменной yy было присвоено значение поля xx таблицы с псевдонимом M надо:

Select M && сделать текущей таблицу с псевдонимом M
yy = xx && в правой части операции имя поля написать без квалификатора.
...
Рейтинг: 0 / 0
14.03.2009, 10:17
    #35869025
Нюансы VisualFoxPro
Владимииир4. Если таблица открыта с псевдонимом M , то квалифицированное обращение к её полю невоз-можно. В операции yy = m.xx переменной yy будет присвоено значение переменной xx , а не значение поля xx таблицы с псевдонимом M . Чтобы переменной yy было присвоено значение поля xx таблицы с псевдонимом M надо:

Select M && сделать текущей таблицу с псевдонимом M
yy = xx && в правой части операции имя поля написать без квалификатора.
Использование однобуквенных псевдонимов давным-давно, еще со времен ДОС, не говоря уже про VFP, большой моветон. Достаточно использовать осмысленные псевдонимы и "нюанс" как бы становится совершенно эфемерным.
...
Рейтинг: 0 / 0
14.03.2009, 10:28
    #35869040
Нюансы VisualFoxPro
проходящий., согласен, так и делаю, но ради эксперимента решил проверить, а что будет если ...

5. Щелчёк левой клавишей мыши по кнопке « x » – закрытия формы приводит к выполнению методов формы QweryUnLoad() , Destroy() и UnLoad(), минуя Release() .
6. Выполнение метода Release() формы приводит к выполнению методов Destroy() и UnLoad(), минуя QweryUnLoad() .
...
Рейтинг: 0 / 0
14.03.2009, 19:46
    #35869451
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нюансы VisualFoxPro
Владимииир

5. Щелчёк левой клавишей мыши по кнопке « x » – закрытия формы приводит к выполнению методов формы QweryUnLoad() , Destroy() и UnLoad(), минуя Release() .


Надо читать - приводит к выполнению СОБЫТИЙ QweryUnLoad() , Destroy() и UnLoad(), те причинноследственная связь правильная, метод Release явно не вызывается.



Владимииир

6. Выполнение метода Release() формы приводит к выполнению методов Destroy() и UnLoad(), минуя QweryUnLoad() .

Опять читаем правильно .

Выполнение метода Release() формы приводит к выполнению СОБЫТИЙ [b]Destroy() и UnLoad(), минуя СОБЫТИЕ QweryUnLoad

И читаем ФАК Как перехватить нажатие на крестик в правом верхнем углу формы
...
Рейтинг: 0 / 0
14.03.2009, 20:57
    #35869494
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нюансы VisualFoxPro
Сборник нюансов FoxPro называется HELP. Вы его читать не пробовали? Я без шуток. Практически все, что вы здесь описываете - это прямые цитаты из соответствующих статей HELP. Только, вы как-то выборочно читаете.

Например, если в HELP прямо написано, что свойство используется для модальных форм, то, очевидно, что для не модальных форм его использовать может привести к ошибкам. Какой уж тут "нюанс".

QueryUnload() - так прямо в HELP и написано, что "The QueryUnload event does not occur if you issue the RELEASE command on the form in code or invoke the form's Release method."

Для справки: в HELP более 4 тысяч статей. Во многих из них описаны некоторые нюансы.

Тем не менее, лично вы ЭТОТ сборник нюансов благополучно игнорируете. Какие основания у вас есть считать что, во-первых, ваш сборник нюансов будет меньше по размеру, а, во-вторых, что его кто-то вообще кроме вас будет читать? Вы не цените чужой труд (в данном случае, составителей HELP FoxPro), почему будут ценить ваш (данный сборник нюансов)?
...
Рейтинг: 0 / 0
15.03.2009, 14:15
    #35869888
Нюансы VisualFoxPro
PaulWist, спасибо за ссылку!

Пожалуй FoxClub посмотрю подробно.

Хочу поговорить о событиях и методах, но позже.


7. SQLExec(MConnectDescr,’… ”…” …’) не любит двойных кавычек « » внутри себя.
8. SQLExec(MConnectDescr,“SELECT FROM ?Var …”) не любит знак вопроса « ? » после предложения FROM в запросе. А так любит: SQLExec(MConnectDescr,“SELECT FROM ” + Var + “…”).
9. В функции SQLExec() выражение ?aa + bb равносильно ?(aa + bb) , и не идентично ?aa + ?bb .
...
Рейтинг: 0 / 0
15.03.2009, 14:25
    #35869899
Нюансы VisualFoxPro
ВладимирМ, спасибо, что откликнулись.

У меня нюансов меньше, чем Help.

Вот последние два на сегодняшний день.

10. Метод (событие) Init() объекта принимает параметры .
11. nShiftAltCtrl => 1 – 4 – 2

Вы спрашиваете, кто кроме меня их будет читать.
Отвечаю на прямо поставленный вопрос:
- Вы. Уже прочитали.
Что уже позволяет мне считать мой труд не напрасным.
...
Рейтинг: 0 / 0
15.03.2009, 19:46
    #35870089
Нюансы VisualFoxPro
Владимииир7. SQLExec(MConnectDescr,’… ”…” …’) не любит двойных кавычек « » внутри себя.В общем-то, содержимое второго параметра функции SQLEXEC относится к серверу и никак не обрабатывается фоксом. Для фокса это просто строка. На каком основании это отнесено к фоксу? Это первое. А вторым является настраиваемая "любовь" сервера к двойным кавычкам, по крайней мере для MS SQL Server.
8. SQLExec(MConnectDescr,“SELECT FROM ?Var …”) не любит знак вопроса « ? » после предложения FROM в запросе. А так любит: SQLExec(MConnectDescr,“SELECT FROM ” + Var + “…”).Опять попытка на фокс свалить даже то, что к нему ну никак относится не может. Это сервер не терпит имя таблицы в виде параметра.
9. В функции SQLExec() выражение ?aa + bb равносильно ?(aa + bb) , и не идентично ?aa + ?bb .Преобразование параметров, указанных в виде знаков вопроса производит ODBC драйвер, а не фокс. Опять мимо кассы.

Сударь, пока что Вы демонстрируете отнюдь не нюансы фокса, а просто плохое знание инструмента. Которое именно по незнанию кажется чем-то нелогичным.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Нюансы VisualFoxPro / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]