Deutsch

Воспоминания лисица, 09.05.2024

311  
uscheswoi_82 коренной житель09.05.24 23:17
uscheswoi_82
NEW 09.05.24 23:17 

Всем привет!

Сегодня хотел бы вспомнить про FoxPro, лого у FoxPro лисица, ведь fox с английского переводится как лисица. Моя сeстра когда жила в Алматы, программировала на работе на Clipper и FoxPro под DOS. Перед отъездом в Германию я изучал Microsoft Visual FoxPro 5.0. И сегодня пойдёт речь об более современной версии - Microsoft Visual FoxPro 7.0 Professional Edition. К сожалению у меня upgrade версия, но у меня есть лицензионный Visual Studio 6.0 Enterprise Edition, поэтому Microsoft Visual FoxPro 7.0 без проблем установилась Короче в Казахстане на выставке давали специальные диски, где расхваливаливали во всю Microsoft Visual FoxPro 6.0. Короче инструмент Microsoft Visual FoxPro давал возможность быстро разработать программное обеспечение под Windows, которое заточено на хранение и поиск данных. Допустим для телекомуникационных компаний - база данных телефон и абонентов, в полиции учёт преступников и их преступлений, может быть в больнице картотека пациентов и их болезни, ещё где-нибудь.

Допустим с новым компьютером, который мне подарили родители в Алматы, была предустановленая демо-версия программы "Зарплата и Пенсионные отчисления",



При загрузки показывается стартовая заставка Microsoft Visual FoxPro 5.0, а потом запускается сама программа:



Вот так выглядет лицензионная коробка Microsoft Visual FoxPro 7.0 Professional, но Update, справа диск с программой Visual Studio 6.0 Enterprise Edition, благодаря ей Microsoft Visual FoxPro 7.0 смогла установиться на мой компьютер:



Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#1 
uscheswoi_82 коренной житель09.05.24 23:38
uscheswoi_82
09.05.24 23:38 
в ответ uscheswoi_82 09.05.24 23:17

Итак, в Microsoft Visual FoxPro 7.0 на CD входит сама система разработки ПО, создания помощи в формате CHM, урезаный установщик Install Shield только для Visual FoxPro, а так-же документация MSDN 2000 на 3х CD-ROMах. Единственное что я не нашёл на диски это программа, спомощью которой можно создавать пиктограммы или иконки для Visual FoxPro приложения.

Я всё забыл про Visual FoxPro, но недавно я гуглил и гуглил. Я узнал из интернета (гугла), что чтобы распространять или продавать созданое ПО, нужно компилировать программу в формате APP, а потом в установщик подключать откомпилированный в формате APP, и исполняемые файлы (VFP7.EXE, VFP7DEU.DLL, итд.). Ещё я понял, что желательно когда распространяешь ПО, создавать папку не в Program Files, а в какую-нибудь свою папку, допустим если ПО для милиции/полици то лучше создать папку POLICE на диске C:\.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#2 
uscheswoi_82 коренной житель09.05.24 23:52
uscheswoi_82
NEW 09.05.24 23:52 
в ответ uscheswoi_82 09.05.24 23:38

Чтобы клиент, которому ПО было продано мог запускать ваше приложение, нужно запустить следующую команду примерно вот так:

vfp7.exe -T myproj.app


Чтобы записать информацию из текстовых полей в таблицу, нужно выполнить следующее, есть допустим таблица CDS, и там есть следующие поля cd_id, description, и year:

IF !USED("cds") THEN
  USE cds IN 0
ENDIF
SELECT cds
APPEND BLANK 
REPLACE cd_id WITH thisform.txtCd_id.Value IN cds
REPLACE description WITH thisform.txtDescription.Value IN cds
REPLACE year WITH thisform.txtyear.Value IN cds


А чтобы перемещаться по записям:

Назад:

IF NOT BOF()
  SKIP -1
  thisform.Refresh()
ENDIF


Вперёд:

IF NOT EOF()
  SKIP 1
  thisform.Refresh()
ENDIF
Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#3 
uscheswoi_82 коренной житель19.05.24 01:32
uscheswoi_82
NEW 19.05.24 01:32 
в ответ uscheswoi_82 09.05.24 23:52

Вот что у меня получилось, простая база данных преступников для полиции, это программа спокойно запустилась в Windows 8.1, а среда разработки запускается и в Windows 2000, как настроение у меня появится, покажу как его делал:



Программу написанную в среде Microsoft Visual FoxPro 7 компилировал в app, а запускаю я программу вот так:

vfp7.exe -T police.app

Кстати со средой Microsoft Visual FoxPro 7 там были готовые иконки, иконку флага США я взял именно со среды.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#4 
uscheswoi_82 коренной житель22.05.24 03:16
uscheswoi_82
NEW 22.05.24 03:16 
в ответ uscheswoi_82 19.05.24 01:32

Всё приходится вспоминать, т.к. давно не программировал в Microsoft Visual FoxPro. Типа у нас программа база данных для полиции:

Есть таблица taeter (т.е. преступники) см.:



А вот так выглядет форма frmtaeter.scx:



Вот код frmtaeter.scx:

событие cmdSpeichern:

IF !USED("taeter") THEN 
  USE taeter IN 0
ENDIF
SELECT MAX(taeter_id)+1 AS newID FROM taeter INTO CURSOR temp
SELECT taeter
APPEND BLANK 
REPLACE taeter_id WITH temp.newID IN taeter
REPLACE vorname WITH thisform.txtVorname.Value IN taeter
REPLACE nachname WITH thisform.txtNachname.Value IN taeter
REPLACE gebdatum WITH thisform.txtGebDatum.Value IN taeter
REPLACE geschlecht WITH thisform.txtGeschlecht.Value IN taeter
REPLACE datum WITH thisform.txtDatum.Value IN taeter
thisform.Release()


Событие cmdAbbrechen:

Thisform.Release()


Пояснение, вроде бы в Microsoft Visual FoxPro нет авто увеличения счётчика для ключевого поле, как в Microsoft Access, поэтому делают так:

SELECT MAX(taeter_id)+1 AS newID FROM taeter INTO CURSOR temp
Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#5 
uscheswoi_82 коренной житель22.05.24 03:52
uscheswoi_82
NEW 22.05.24 03:52 
в ответ uscheswoi_82 22.05.24 03:16

Завтра возможно займусь календарём для моего приложения:


Когда подключу его в форму, будет выглядеть вот так:


Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#6 
uscheswoi_82 коренной житель23.05.24 03:45
uscheswoi_82
NEW 23.05.24 03:45 
в ответ uscheswoi_82 22.05.24 03:52

Всем привет, продолжим разговор про Microsoft Visual FoxPro 7.0 Professional Edition:

Чтобы сменить заголовок главного окна и иконку, нужно написать следующее:

_screen.Caption = "Vasja Pupkin"
_screen.Icon = "C:\police\flgusa01.ico"


Вот:



Вуаля! А вот и результат, вместо заголовка окна "Microsoft Visual FoxPro" увидите "Vasja Pupkin", а вместо иконки лисы, вы увидите флаг США:



Чтобы отобразить меню, я пишу DO "C:\police\menü1.mpr", и в главном окне появляется кастомное меню:




Потом, оказывается форма выделенная жирным шрифтом, это стартовая форма, т.е. если откомпилировать наше приложение и превратить в формат APP, то запустится форма, которая выделена жирным шрифтом, я в ней и меняю заголовок окна, и иконку у главного окна, просто у формы есть событие Load:


Потом можно заполнить контактные данные приложения, скорей всего это контактные данные фирмы, которое разработало это ПО, вот я тоже всякую фигню заполнил, и иконку поставил флаг США:



Программировать на Microsoft Visual FoxPro 7.0 одно удовольствие, очень сильно приятно, успокаивают психику и нервы. Засчёт того что получается всё как надо, получаешь удовольствие. В мозг выстреливает дофамин и серетанин. Ощущения что я нахожусь под сильный кайфом.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#7 
uscheswoi_82 коренной житель23.05.24 04:42
uscheswoi_82
NEW 23.05.24 04:42 
в ответ uscheswoi_82 23.05.24 03:45

Итак, продолжу болтавню про программирование на Microsoft Visual FoxPro 7.0 Professional. Короче методом тыка, и у меня есть некий опыт работы со ставителями отчётов (Visual Basic 6.0, CrystalReport, Microsoft Access), я создал простенький отчёт, так выглядет в режиме редактирования :



Вуаля а вот и отчёты:



Вуаля! А вот и результат, короче я распечатал отчёты на виртуальном принтере Foxit Reader PDF Printer, который после печати сохраняет в формате PDF вот такой отчёт:



Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#8 
uscheswoi_82 коренной житель23.05.24 04:51
uscheswoi_82
NEW 23.05.24 04:51 
в ответ uscheswoi_82 23.05.24 04:42

Теперь давайте поговорим про кастомное меню. Короче как уже выше писал, посколько Visual FoxPro распространяется со средой разработки, то нужно загрузить кастомное меню, иначе пользователь при запуске VFP9.exe увидит стандартное FoxPro-шное меню. Я загружаю кастомное меню как выше писал при загрузки формы. Ещё я заметил что в Visual FoxPro, чтобы в кастомном меню закрыть Visual FoxPro, нужно написать всего лишь команду QUIT, см.:



Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#9 
uscheswoi_82 коренной житель6 дней назад, 05:05
uscheswoi_82
NEW 6 дней назад, 05:05 
в ответ uscheswoi_82 23.05.24 04:51

Всем привет! Продолжим, заниматься Microsoft Visual FoxPro 7. Короче чтобы буква пола т.е. Geschlecht в отчётах было большой т.е. M или W, я в свойствах указал Großbuchstaben, поэтому в отчётах стоит большие буквы M или W:


Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#10 
uscheswoi_82 коренной житель6 дней назад, 05:17
uscheswoi_82
NEW 6 дней назад, 05:17 
в ответ uscheswoi_82 6 дней назад, 05:05

От программирование на Microsoft Visual FoxPro 7.0 получаешь одно удовольствие, среду быстро осваиваю, и язык программирования. Единственное что плохо, это то что в таблицах нет автоматического счётчика, как это в Microsoft Access для ключевого поле, и то что не поддерживает UTF-8, Microsoft Visual Studio 2002 (т.е. Microsoft Visual Studio 7.0) уже поддерживает UTF-8, а Microsoft Visual FoxPro 7.0 не поддерживает хммм.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#11 
uscheswoi_82 коренной житель6 дней назад, 05:29
uscheswoi_82
NEW 6 дней назад, 05:29 
в ответ uscheswoi_82 6 дней назад, 05:17

Как во многих средах разработки Visual Studio и Visual Studio .NET, и Microsoft Access, так и в Microsoft FoxPro в форме можно указать как кнопку по умолчанию, она выделится чёрным бордюром, которая сработает при нажатие на клавишу Enter см.:



Так-же есть последовательно Tab-стопа:



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