powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Какую версию FOX PRO выбрать для работы?
22 сообщений из 22, страница 1 из 1
Какую версию FOX PRO выбрать для работы?
    #34081492
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ, смешно наверное задавать подобные вопросы. Но нужна консультация.
Имеем пакет программ, разработанный на FoxPro под DOS. Таблички ес-сно в dbf.
Проблема:
Нужно сделать интерфейс под Win. С МИНИМУМОМ переделок - чтоб базу не надо было конвертить, чтоб все расчетные коды работали - т.е. только чтоб быстренько слепить нитерфейсы и все.
Какую версию FOX PRO взять? 2.5? 3.0? 5.0? 6.0? или сразу 8.0?
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34081512
Юрий Р.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Наверное с минимумом переделок следует использовать 2.5 или 2.6 for Win, но ...
Чтобы интерфейс выглядел более-менее современно лучше все же взять одну из последних версий: 8.0 или 9.0
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34081544
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HremaКакую версию FOX PRO взять? 2.5? 3.0? 5.0? 6.0? или сразу 8.0?Однозначно купить VFP 9.0 а потом скачать и установить SP1

Good luck!
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34081673
Фотография Vladimir M Sklyar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+1

VFP 9 + SP1
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082460
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Ch HremaКакую версию FOX PRO взять? 2.5? 3.0? 5.0? 6.0? или сразу 8.0?Однозначно купить VFP 9.0 а потом скачать и установить SP1

Good luck!

И что - она поддерживает работу с DBF-файлами в DOS кодировке?
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082475
Hrema Sergey Ch HremaКакую версию FOX PRO взять? 2.5? 3.0? 5.0? 6.0? или сразу 8.0?Однозначно купить VFP 9.0 а потом скачать и установить SP1

Good luck!

И что - она поддерживает работу с DBF-файлами в DOS кодировке?
Они все (т.е. все версии) поддерживают... Только сначала просят указать кодовую страницу (один раз, а потом "запоминают" ее в заголовке. На работе DOS-программ это влияния не оказывает)...
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082479
oldfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
работу с DBF-файлами в DOS кодировке поддерживают все версии.
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082651
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Станислав С Hrema Sergey Ch HremaКакую версию FOX PRO взять? 2.5? 3.0? 5.0? 6.0? или сразу 8.0?Однозначно купить VFP 9.0 а потом скачать и установить SP1

Good luck!

И что - она поддерживает работу с DBF-файлами в DOS кодировке?
Они все (т.е. все версии) поддерживают... Только сначала просят указать кодовую страницу (один раз, а потом "запоминают" ее в заголовке. На работе DOS-программ это влияния не оказывает)...

я инсталлировал FoxPro 5.0 rus.
добавляю в сволодную таблицу *.dbf, открываю его на просмотр - чебурашки. Я выбирал кодовые страницы и 866, и 1251. Другие думаю нет смысла выбирать.. Нашел программку dbassist, сконвертил с галкой ANSI, открыл в FoxPro - русские буквы появились. Но не хочется же все DBF-ы конвертить - там их более 500...
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082666
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кстати при импорте *.PRG - те же грабли - сплошные чебурашки вместо русских букв.. выбор кодовой страницы не влияет.. :(
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082842
karly™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу разочаровать автора топика

Теоретически, перенести из DOS в Win без переделок можно. Тестовые примеры худо-бедно работают.

Практически, я не встречал ни одного приложения, которое было конвертировано "парой кликов".

Во-первых, Win - это другая идеология программирования, совершенно другой пользовательский интерфейс, и т.п.

Во-вторых, не все так просто с работой в DOS-кодировке из под Win. Проблема не в "кривости VFP", а в принципиальных трудностях, обойти которые нельзя. Речь идет об индексных файлах.

Так что у вас два пути:
- Оставить все, как есть. DOS имеет свои преимущества
- Все-таки переписать программу. Заодно добавите какие-нибудь улучшения, до которых раньше руки не доходили
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082886
-----------
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор DOS имеет свои преимущества

телефон ТГА имеет преимущество перед Панасоником-
им можно колоть греческие орехи

главное перим-во фокспро под вин. - возможность
быстро и просто создать немодальный интерфейс.

родитель, предок, событие - нужно еще и начинать думать
с другой стороны
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082905
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
karly™Во-вторых, не все так просто с работой в DOS-кодировке из под Win. Проблема не в "кривости VFP", а в принципиальных трудностях, обойти которые нельзя. Речь идет об индексных файлах.

Так что у вас два пути:
- Оставить все, как есть. DOS имеет свои преимущества
- Все-таки переписать программу. Заодно добавите какие-нибудь улучшения, до которых раньше руки не доходили

ок. я тогда понимаю Ваш совет так: раз необходимы WIN-нитерфейсы, то нужно переписывать. А заодно и переконвертировать таблицы, перестроить индексы и использовать новые возможности. Тогда беру 8.0? или все же 9.0+sp1? Какая лучше, в чем отличия, какая более стабильна и какая может считаться "промышленной" версией? Надеюсь есть обе русские версии (8 и 9). И еще вопрос - таблички так и оставить свободными? или имеет смысл создать базу данных с индексами и вьюхами, наворотить хранимых процедур и т.д.? Подозреваю что втоорое, но нужно сделать все "малой кровью", поэтому хочется знать стоит ли это того (соотношение затрат\результат).
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082958
Hrema
я инсталлировал FoxPro 5.0 rus.
добавляю в сволодную таблицу *.dbf, открываю его на просмотр - чебурашки. Я выбирал кодовые страницы и 866, и 1251. Другие думаю нет смысла выбирать.. Нашел программку dbassist, сконвертил с галкой ANSI, открыл в FoxPro - русские буквы появились. Но не хочется же все DBF-ы конвертить - там их более 500...
Сделайте в командном окне:
Код: plaintext
1.
2.
3.
4.
  SET DEFAULT TO "<место установки FoxPro>\tools\cpzero"
  do cpzero.prg with "<путь и имя вашей таблицы>",  866 
  use <путь и имя вашей таблицы>
  brow
и увидите, что Вы Глубоко не правы.
Насчет prg-шек: "есть такая буква".
Но их несложно конвертировать при помощи функции
Код: plaintext
CPCONVERT( 866 , 1251 ,<строка>)
Причем, под "строкой" может быть и целый текстовый файл, преобразованный в строку при помощи функции
Код: plaintext
FileToStr(<FileName>)
.
(Насчет наличия последней функции в пятерке ничего не скажу, а в 6-ке она уже есть!)
Но в любом случае есть вариант:
File->Memo-field->Convert memo-field string-by-string->Save to Result File
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34082971
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>я инсталлировал FoxPro 5.0 rus
До версии 5.0 включительно для коектной работы с кодовыми таблицами нужен файл FOXPRO.INT и в CONFIG.FPW надо указать CODEPAGE=1251
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34083029
Hrema karly™Во-вторых, не все так просто с работой в DOS-кодировке из под Win. Проблема не в "кривости VFP", а в принципиальных трудностях, обойти которые нельзя. Речь идет об индексных файлах.

Так что у вас два пути:
- Оставить все, как есть. DOS имеет свои преимущества
- Все-таки переписать программу. Заодно добавите какие-нибудь улучшения, до которых раньше руки не доходили

ок. я тогда понимаю Ваш совет так: раз необходимы WIN-нитерфейсы, то нужно переписывать. А заодно и переконвертировать таблицы, перестроить индексы и использовать новые возможности. Тогда беру 8.0? или все же 9.0+sp1? Какая лучше, в чем отличия, какая более стабильна и какая может считаться "промышленной" версией? Надеюсь есть обе русские версии (8 и 9). И еще вопрос - таблички так и оставить свободными? или имеет смысл создать базу данных с индексами и вьюхами, наворотить хранимых процедур и т.д.? Подозреваю что втоорое, но нужно сделать все "малой кровью", поэтому хочется знать стоит ли это того (соотношение затрат\результат).
Вы понимаете не совсем правильно. Можно оставить программу "как есть" и пользоваться DOS-интерфейсом из-под Windows. Но намного приятнее для пользователя получить интерфейс в "стиле Windows". А это предполагает несколько иную парадигму программирования (реакция на события: в любой момент может быть нажата любая кнопка, выбрана любая форма из доступных на экране и т.д.), хотя ее зачатки можно усмотреть и в ДОСовском Фоксе (например, системное меню работает "независимо" от программы и в любой момент можно к нему обратиться).
Таблицы можно оставить свободными, если предполагается одновременная работа DOS и Win версий. Если же этого не предполагается, то лучше перековертировать.
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34083069
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предполагаем что одновременная работа старых DOS-приложений и нового под win должна быть. (нужен плавный переход - т.е. часть юзеров будет работать в старом пакете, а "опытная группа" будет тестировать версию под Win). Т.е. оставляем таблички свободными.
тогда осталось выяснить какую версию FoxPro брать? 6, 8 или 9?
Может кто подсказать?
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34083116
HremaПредполагаем что одновременная работа старых DOS-приложений и нового под win должна быть. (нужен плавный переход - т.е. часть юзеров будет работать в старом пакете, а "опытная группа" будет тестировать версию под Win). Т.е. оставляем таблички свободными.
тогда осталось выяснить какую версию FoxPro брать? 6, 8 или 9?
Может кто подсказать?
Ту, которую сможете достать/купить.
Если есть возможность, то лучше брать последнее (т.е. VFP9+SP1) - вроде бы отзывы о ней неплохие + возможности языка SQL по построению запросов все ближе приближаются к "монстрам" типа SQL-сервер.
Хотя доступной документации (где все разжевано) - в разы меньше, чем по 6-ке.
Но ведь для того форум и существует, чтобы делиться опытом...
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34083132
Hrema
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Станислав С HremaПредполагаем что одновременная работа старых DOS-приложений и нового под win должна быть. (нужен плавный переход - т.е. часть юзеров будет работать в старом пакете, а "опытная группа" будет тестировать версию под Win). Т.е. оставляем таблички свободными.
тогда осталось выяснить какую версию FoxPro брать? 6, 8 или 9?
Может кто подсказать?
Ту, которую сможете достать/купить.
Если есть возможность, то лучше брать последнее (т.е. VFP9+SP1) - вроде бы отзывы о ней неплохие + возможности языка SQL по построению запросов все ближе приближаются к "монстрам" типа SQL-сервер.
Хотя доступной документации (где все разжевано) - в разы меньше, чем по 6-ке.
Но ведь для того форум и существует, чтобы делиться опытом...
Тогда принимаю решение использовать 6.0. Судя по всему по ней и доков можно найти, и примеров, и ошибки в ней меньше, и видимо промышленных приложений есть достаточно..
Всем спасибо.
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34083164
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
и ошибки в ней меньше

это откуда?
в транзакции в заголовке количество записей не меняется - вот это баг так баг до 9сп1

в 9-ке - SQl(insetr from,update from ...),КА,репортлистнер,гдиплюс,биндивент....
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34084212
Aijik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор авторИ что - она поддерживает работу с DBF-файлами в DOS кодировке?

Они все (т.е. все версии) поддерживают... Только сначала просят указать кодовую страницу (один раз, а потом "запоминают" ее в заголовке. На работе DOS-программ это влияния не оказывает).

Если перейдете на девятку, и планируете продолжать использовать DBF с 866-й кодировкой, то знайте, что оригинальный релиз VFP 9 вообще отключает Rushmore-оптимизацию по таблицам с кодовой страницей отличной от системной (CODEPAGE в config.fpw), а SP1 разрешает оптимизацию только при установке SET ENGINEBEHAVIOUR 80 или 70, т.е. отличной от установки по умолчанию (90). Более того, даже в этом случае, при определенных обстоятельствах выборки будут некорректными (примеры были на форуме foxclub.ru). Именно по причине глюков оптимизацию по умолчанию вырезали из VFP9, плюс те же глюки присутствуют в VFP более ранних версий
Так что ИМХО лучше DBF таки конвертить в 1251
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34084259
GreenStar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дайте пожалуйста ссылку на SP1
...
Рейтинг: 0 / 0
Какую версию FOX PRO выбрать для работы?
    #34084311
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо, вот для "ленивых" вариант переделанной программы cpzero.prg - запускаете ее из кактлога, где Ваши файлы DBF - она автоматом переопределяет кодовую таблицу. ПЕРЕД ТЕМ КАК ДЕЛАТЬ НА РАБОЧЕЙ БАЗЕ - сделайте копии и Вам нужен будет Exclusive доступ ко всем таблицам:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
* CPZERO -- Poke a codepage byte into a database header
* Copyright Microsoft Corp,  1993 - 2001 
*
* Usage:
*    DO CPZERO WITH dbfname                     && marks the database with codepage  0  (i.e., no codepage)
*
*    DO CPZERO WITH dbfname, codepage_number    && marks the database with specified codepage
*
* Some common valid numbers are:
*   Windows             1252 
*   DOS                  437 
*   International DOS    850 
*

*!*	PARAMETER m.fname, m.cpbyte
IF SET("TALK") = "ON"
  SET TALK OFF
  m.mtalk = "ON"
ELSE
  m.mtalk = "OFF"
ENDIF

#DEFINE C_TOTAL  29      && total code page numbers supported

*!*	IF PARAMETERS() <  2 
*!*	  m.cpbyte =  0 
*!*	ENDIF

PRIVATE m.mtalk, m.vuename

#DEFINE c_buf_size  32 

#DEFINE c_noopen    1 
#DEFINE c_badbyte   2 
#DEFINE c_notfox    3 
#DEFINE c_maxerror  4 

#DEFINE c_notopened_LOC 	"The table could not be opened."
#DEFINE c_invalid_page_LOC	"Invalid code page specified."
#DEFINE c_NotFoxTable_LOC	"Not a FoxPro table."

#DEFINE c_OpenTable_LOC		"Table:"

m.vuename = ""

DECLARE error_array[c_maxerror]
error_array[c_noopen] = c_notopened_LOC
error_array[c_badbyte] = c_invalid_page_LOC
error_array[c_notfox] = c_NotFoxTable_LOC


gnTablesnumber = ADIR(gaTables, '*.DBF')
FOR i= 1  TO gnTablesnumber
  m.fname=ALLTRIM(gaTables(i, 1 ))
  m.cpbyte= 1251 
  WAIT WINDOW 'Converting table '+m.fname+'('+ALLTRIM(STR(i))+'/'+ALLTRIM(STR(gnTablesnumber))+') to '+;
  ALLTRIM(STR(m.cpbyte)) NOWAIT 
  
  DO SETUP
  DO MAIN
  DO cleanup

ENDFOR

PROCEDURE SETUP
m.vuename = SYS( 2023 )+"\"+SYS( 3 )+".VUE"
CREATE VIEW (m.vuename)


PROCEDURE cleanup
IF FILE(m.vuename)
  SET VIEW TO (m.vuename)
  DELETE FILE (m.vuename)
ENDIF
SET TALK &mtalk

PROCEDURE MAIN
PRIVATE m.fp_in, m.buf, m.found_one, m.i, m.outbyte

* Set up table of code pages and DBF bytes numbers
DIMENSION cpnums[C_TOTAL, 2 ]
cpnums[  1 , 1 ] =  437 		&& MS-DOS, U.S.A.
cpnums[  1 , 2 ] =  1 
cpnums[  2 , 1 ] =  850 		&& MS-DOS, International
cpnums[  2 , 2 ] =  2 
cpnums[  3 , 1 ] =  1252 		&& Windows, U.S.A & West European
cpnums[  3 , 2 ] =  3 
cpnums[  4 , 1 ] =  10000 	&& Macintosh, U.S.A.
cpnums[  4 , 2 ] =  4 
cpnums[  5 , 1 ] =  852 		&& MS-DOS, East European
cpnums[  5 , 2 ] =  100 
cpnums[  6 , 1 ] =  866 		&& MS-DOS, Russian
cpnums[  6 , 2 ] =  101 
cpnums[  7 , 1 ] =  865 		&& MS-DOS, Nordic
cpnums[  7 , 2 ] =  102 
cpnums[  8 , 1 ] =  861 		&& MS-DOS, Iceland
cpnums[  8 , 2 ] =  103 
cpnums[  9 , 1 ] =  895 		&& MS-DOS, Kamenicky (Czech)
cpnums[  9 , 2 ] =  104 
cpnums[ 10 , 1 ] =  620 		&& MS-DOS, Mazovia (Polish)
cpnums[ 10 , 2 ] =  105 
cpnums[ 11 , 1 ] =  737 		&& MS-DOS, Greek
cpnums[ 11 , 2 ] =  106 
cpnums[ 12 , 1 ] =  857 		&& MS-DOS, Turkey
cpnums[ 12 , 2 ] =  107 
cpnums[ 13 , 1 ] =  863 		&& MS-DOS, Canada
cpnums[ 13 , 2 ] =  108 
cpnums[ 14 , 1 ] =  950 		&& Windows, Traditional Chinese
cpnums[ 14 , 2 ] =  120 
cpnums[ 15 , 1 ] =  949 		&& Windows, Korean (Hangul)
cpnums[ 15 , 2 ] =  121 
cpnums[ 16 , 1 ] =  936 		&& Windows, Simplified Chinese
cpnums[ 16 , 2 ] =  122 
cpnums[ 17 , 1 ] =  932 		&& Windows, Japanese (Shift-jis)
cpnums[ 17 , 2 ] =  123 
cpnums[ 18 , 1 ] =  874 		&& Windows, Thai
cpnums[ 18 , 2 ] =  124 
cpnums[ 19 , 1 ] =  10007 	&& Macintosh, Russian
cpnums[ 19 , 2 ] =  150 
cpnums[ 20 , 1 ] =  10029 	&& Macintosh, East European
cpnums[ 20 , 2 ] =  151 
cpnums[ 21 , 1 ] =  10006 	&& Macintosh, Greek
cpnums[ 21 , 2 ] =  152 
cpnums[ 22 , 1 ] =  1250 		&& Windows, East European
cpnums[ 22 , 2 ] =  200 
cpnums[ 23 , 1 ] =  1251 		&& Windows, Russian
cpnums[ 23 , 2 ] =  201 
cpnums[ 24 , 1 ] =  1253 		&& Windows, Greek
cpnums[ 24 , 2 ] =  203 
cpnums[ 25 , 1 ] =  1254 		&& Windows, Turkish
cpnums[ 25 , 2 ] =  202 
cpnums[ 26 , 1 ] =  1255 		&& Windows, Hebrew (Only supported on Hebrew OS)
cpnums[ 26 , 2 ] =  125 
cpnums[ 27 , 1 ] =  1256 		&& Windows, Arabic (Only supported on Arabic OS)
cpnums[ 27 , 2 ] =  126 
cpnums[ 28 , 1 ] =  1257 		&& Windows, Baltic
cpnums[ 28 , 2 ] =  204 
cpnums[ 29 , 1 ] =  0 		&& No codepage mark.
cpnums[ 29 , 2 ] =  0 

IF EMPTY(m.fname)
  m.fname = GETFILE("DBF|SCX|VCX|FRX|LBX|MNX",c_OpenTable_LOC)
ENDIF
IF !EMPTY(m.fname)
  CLOSE DATABASES
  m.outbyte = m.cpbyte
  m.found_one = .F.
  FOR m.i =  1  TO C_TOTAL
    IF m.cpbyte = cpnums[m.i, 1 ]
      m.outbyte = cpnums[m.i, 2 ]
      m.found_one = .T.
      EXIT
    ENDIF
  ENDFOR
  IF m.found_one
    m.cpbyte = m.outbyte
  ELSE
* Was it a valid DBF byte if it wasn't a valid code page?
    FOR m.i =  1  TO C_TOTAL
      IF m.cpbyte = cpnums[m.i, 2 ]
        m.found_one = .T.
      ENDIF
    ENDFOR
    IF !m.found_one
      DO errormsg WITH c_badbyte
      RETURN TO cpzero
    ENDIF
  ENDIF

  IF FILE(m.fname)
    m.fp_in = FOPEN(m.fname, 2 )
    IF m.fp_in >  0 
* First check that we have a FoxPro table...
      m.buf=FREAD(m.fp_in,c_buf_size)
      IF (SUBSTR(m.buf, 1 , 1 ) = CHR( 139 ) OR SUBSTR(m.buf, 1 , 1 ) = CHR( 203 );
          OR SUBSTR(m.buf, 31 , 1 ) != CHR( 0 ) OR SUBSTR(m.buf, 32 , 1 ) != CHR( 0 ))
        =FCLOSE(m.fp_in)
        DO errormsg WITH c_notfox
        RETURN TO cpzero
      ELSE
* Now poke the codepage id into byte  29 
        =FSEEK(m.fp_in, 29 )
        =FWRITE(m.fp_in,CHR(m.cpbyte))
        =FCLOSE(m.fp_in)
      ENDIF
    ELSE
      DO errormsg WITH c_noopen
      RETURN TO cpzero
    ENDIF
  ELSE
    DO errormsg WITH c_noopen
    RETURN TO cpzero
  ENDIF
ENDIF


PROCEDURE errormsg
PARAMETER num
WAIT WINDOW error_array[num] NOWAIT
m.cpbyte=1251 - задется необходимая кодовая таблица
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Какую версию FOX PRO выбрать для работы?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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