Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как указать в set path to сотни баз для перебора и сравнения информации? / 25 сообщений из 29, страница 1 из 2
13.12.2010, 19:41
    #37012174
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Всем доброе время суток.
Напишу сразу, в Foxpro не программировал.
По работе понадобилось перебрать и сравнить кучу баз. Базы находятся во многих подкаталогах.
Каталоги располагаются примерно так:
база1\база1,1\D???????.dbf, S???????.dbf
\база1,2\D???????.dbf, S???????.dbf
база2\база2,1\D???????.dbf, S???????.dbf
\база2,2\D???????.dbf, S???????.dbf
база3\база3,1\D???????.dbf, S???????.dbf
\база3,2\D???????.dbf, S???????.dbf
база4\база4,1\D???????.dbf, S???????.dbf
\база4,2\D???????.dbf, S???????.dbf
Накопал код программки в которой база D используется в виде параметра и подставляется как Alias.
Проблема в том как указать в set path to, путь к расположению всех этих баз, так как пути не вмещаются в определенное ограничение в 2046 символов команды.
Помогите пожалуйста.
Спасибо.
...
Рейтинг: 0 / 0
13.12.2010, 23:49
    #37012438
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
В предыдущем посте я немного спешил, поэтому немного более развернуто поясню сейчас.
В visual foxpro projects\DATA\ находятся базы, но они там находятся не просто как куча файлов, а в подкаталогах, которые в свою очередь, также находятся в подкаталогах. Т.е. вид такой как на рисунке. После того как база D находится, должно произойти сравнение по определенным полям с базой S расположенной в том же каталоге, что и база D. После чего из Базы D и базы S должны быть удалены записи, отвечающие условию проверки. Запуск .PRG файла происходит из командной строки, где параметр (база D) передается таким образом c:\foxpro program.prg d???????.dbf
Каким образом можно указать SET PATH TO что бы в этих ~80 каталогах с подкаталогами, были обнаружены нужные базы и переданы как параметр. Желательно пояснить для FOXPRO 2.6 или Visual FOXPRO 9. Вы поможете мне не только с решением этого вопроса, но и научите меня тому что меня интересует.

P.S. перечитал кучу хелпов, постов и советов, в которых описано как указать путь к базам находящимся непосредственно в .\DATA\, и они мне не подходят.

Спасибо за помощь!
...
Рейтинг: 0 / 0
14.12.2010, 00:13
    #37012470
XAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
mpol,

1) забудьте про set path, не нужна эта команда ни в Вашем конкретном случае, ни вообще.
2) то, что Вы называете "базами", принято называть просто таблицами.
3) в размещении таблиц видимо есть определенная система? Ну не просто ж так они распиханы по директориям? Но даже если случайным образом - функция adir Вам поможет ;)
...
Рейтинг: 0 / 0
14.12.2010, 08:19
    #37012620
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
XAndympol,

1) забудьте про set path, не нужна эта команда ни в Вашем конкретном случае, ни вообще.
2) то, что Вы называете "базами", принято называть просто таблицами.
3) в размещении таблиц видимо есть определенная система? Ну не просто ж так они распиханы по директориям? Но даже если случайным образом - функция adir Вам поможет ;)

Размещение таблиц действительно не просто так. Но, если я правильно понимаю, то для того что бы функция ADIR отработала, нужно тоже указать ей путь к базам, что они находятся именно там. Опять же как указать путь? Или я не правильно мыслю?
...
Рейтинг: 0 / 0
14.12.2010, 10:05
    #37012725
Как указать в set path to сотни баз для перебора и сравнения информации?
mpolдля того что бы функция ADIR отработала, нужно тоже указать ей путь к базам, что они находятся именно там. Опять же как указать путь? Или я не правильно мыслю?В аргументах, как же еще? Или Вы под словами "маска файлов" не можете представить что-то вроде "009\D???????.dbf"?
...
Рейтинг: 0 / 0
14.12.2010, 10:37
    #37012799
Как указать в set path to сотни баз для перебора и сравнения информации?
mpol,

в функции ADIR можно указать атрибут, включающий обработку каталогов. Действуйте так:
1 первым ADIRом забираете в массив список всех папок в опорной папке
2 перебираете их в цикле
3 для каждой подпапки вторым ADIRом во второй массив забираете список её подпапок
4 перебираете их в цикле
5 для каждой подпапки второго массива опять же ADIRом считываете их содержимое и обрабатываете, как вам надо.
...
Рейтинг: 0 / 0
14.12.2010, 14:18
    #37013470
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
проходящий.mpolдля того что бы функция ADIR отработала, нужно тоже указать ей путь к базам, что они находятся именно там. Опять же как указать путь? Или я не правильно мыслю?В аргументах, как же еще? Или Вы под словами "маска файлов" не можете представить что-то вроде "009\D???????.dbf"?

Если бы у меня был один каталог, я бы такую маску и указал бы, но у меня куча вложенных директорий.

Шестипаловmpol,

в функции ADIR можно указать атрибут, включающий обработку каталогов. Действуйте так:
1 первым ADIRом забираете в массив список всех папок в опорной папке
2 перебираете их в цикле
3 для каждой подпапки вторым ADIRом во второй массив забираете список её подпапок
4 перебираете их в цикле
5 для каждой подпапки второго массива опять же ADIRом считываете их содержимое и обрабатываете, как вам надо.

Мысль очень хорошая, мне нравится. Вот только я пока еще не смог точно разобраться с ADIR, ведь я FOXPRO не знаю. Но я попытаюсь! Спасибо!
...
Рейтинг: 0 / 0
14.12.2010, 14:40
    #37013525
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Вот пример рекурсивного перебора файлов в папке и подпапках.
Выводит имена всех файлов на экран:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
clear
ParseFolder('c:\')
return

func ParseFolder
lpara tcPath
local i
local array laF[ 2 ]
? 'FOLDER: ' + tcPath
for i =  1  to adir(laF, addbs(tcPath) + '*.*', 'D')
	if 'D' $ laF[i,  5 ]
		if laF[i,  1 ] != '.'
			ParseFolder(addbs(tcPath) + laF[i,  1 ] + '\')
		endif
	else
		? 'FILE: ' + tcPath + laF[i,  1 ]
	endif
endfor
return
...
Рейтинг: 0 / 0
14.12.2010, 21:58
    #37014533
Как указать в set path to сотни баз для перебора и сравнения информации?
mpolпроходящий.пропущено...
В аргументах, как же еще? Или Вы под словами "маска файлов" не можете представить что-то вроде "009\D???????.dbf"?

Если бы у меня был один каталог, я бы такую маску и указал бы, но у меня куча вложенных директорий. Ни в жисть бы не додумался! Ведь вложенные каталоги - это для меня такая новость! А вместо 009 в моем примере подставить другую строку в цикле невозможно?

ps: иногда посещает мысль, что люди совершенно разучились или обленились думать.
...
Рейтинг: 0 / 0
14.12.2010, 22:41
    #37014585
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Снова всем привет!
Пробую разобраться в этом кусочке кода и понять для себя что есть что.

______________________________________________________________________________________

clear
ParseFolder('c:\')
return

func ParseFolder
lpara tcPath
local i
local array laF[2]
? 'FOLDER: ' + tcPath
for i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D')
if 'D' $ laF[i, 5]
if laF[i, 1] != '.'
ParseFolder(addbs(tcPath) + laF[i, 1] + '\')
endif
else
? 'FILE: ' + tcPath + laF[i, 1]
endif
endfor
return

______________________________________________________________________________________

ParseFolder('c:\') - это указывает функции ParseFolder начальный каталог обработки.

lpara tcPath - это параметр или переменная в которую заносится начальный каталог обработки.

local i - объявление переменной.

local array laF[2] - создание массива с именем laF и что значит 2? Этот массив содержит 2 "колонки" в которые заносятся данные о директориях и файлах обнаруженных при проходе цикла?

? 'FOLDER: ' + tcPath - в начале первого прохода цикла выводится на экран начальный каталог обработки, а в последующие проходы, начальный каталог обработки + найденный каталог.

for i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D') - начало цикла, при каждом проходе которого Adir заносит в laF очередной найденный каталог + имя найденного файла если такой есть. Маска *.* указывает на то что заносится ВСЕ и каталоги и файлы? Или это маска для поиска файлов? Я пытался менять маску на *.dbf, но при этом этот код не срабатывал. 'D' - указывает на то, что обрабатываются все каталоги или на то что будут обработаны файлы находящиеся в обнаруженных каталогах???

if 'D' $ laF[i, 5] - условие, если ('D' как я понял, указывает на 'D' в предыдущей команде for i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D')), а не на то, что в массиве находится найденный каталог или файл содержащий в имени D. В этом месте [i, 5] i- это переменная объявленная ранее, а вот что такое 5 я не смог понять и найти в сети объяснения, поясните если не трудно. Буду очень благодарен, все таки я никогда не программировал, а понять желаю все, иначе и учится этому и не нужно, без попытки понять. )))) К стати, когда я при попытке понять что же это за 5, подставлял вместо нее 4 или 7, FOX на меня нецензурно выражался. Наверное было за что. ))))

if laF[i, 1] != '.' - снова условие, в котором происходит сравнение найденного, на нахождение в нем точки. Другими словами это выборка на соответствие каталогу, а не файлу. Правильно?

ParseFolder(addbs(tcPath) + laF[i, 1] + '\') - тут полный путь с подпапками, addbs добавляет слэш \, если такового в пути не хватает.

? 'FILE: ' + tcPath + laF[i, 1] - выводит найденные файлы на экран.

Поясните мне понять, что же все таки означает это - [i, 5] и это - [i, 1].
Спасибо!
...
Рейтинг: 0 / 0
14.12.2010, 22:46
    #37014595
Как указать в set path to сотни баз для перебора и сравнения информации?
mpolfor i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D') - начало цикла, при каждом проходе которого Adir заносит в laF очередной найденный каталог + имя найденного файла если такой есть. Маска *.* указывает на то что заносится ВСЕ и каталоги и файлы? Или это маска для поиска файлов? Я пытался менять маску на *.dbf, но при этом этот код не срабатывал. 'D' - указывает на то, что обрабатываются все каталоги или на то что будут обработаны файлы находящиеся в обнаруженных каталогах???

if 'D' $ laF[i, 5] - условие, если ('D' как я понял, указывает на 'D' в предыдущей команде for i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D')), а не на то, что в массиве находится найденный каталог или файл содержащий в имени D. В этом месте [i, 5] i- это переменная объявленная ранее, а вот что такое 5 я не смог понять и найти в сети объяснения, поясните если не трудно. Буду очень благодарен, все таки я никогда не программировал, а понять желаю все, иначе и учится этому и не нужно, без попытки понять. )))) К стати, когда я при попытке понять что же это за 5, подставлял вместо нее 4 или 7, FOX на меня нецензурно выражался. Наверное было за что. ))))
...
Поясните мне понять, что же все таки означает это - [i, 5] и это - [i, 1].
Ну вот, опять ничего нового? А прочитать хелп по функции adir() религия не позволяет? Там, между прочим, все это и расписано. В хелпе в первую очередь надо искать, а не в сети.
...
Рейтинг: 0 / 0
14.12.2010, 22:52
    #37014603
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
проходящий. Ни в жисть бы не додумался! Ведь вложенные каталоги - это для меня такая новость! А вместо 009 в моем примере подставить другую строку в цикле невозможно?

ps: иногда посещает мысль, что люди совершенно разучились или обленились думать.

Я конечно понимаю, что для кого то эта задача как 2 пальца об асфальт, а для меня это внове, и думать я не разучился, я ищу на форумах и во всяких хелпах обяснения, но не везде все расписано и без определенных разъяснений, хоть и возможно но трудно понять. Думаю, через это многие проходили. А в том, что найдутся люди желающие помочь разобраться я не сомневаюсь.

P.S. К сожалению, согласен с вашим постскриптумом, но это относится не ко всем. Так что не все потеряно. )
...
Рейтинг: 0 / 0
15.12.2010, 07:20
    #37014909
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Странная логика, все гораздо прозаичней :)
mpollocal array laF[2] - создание массива с именем laF и что значит 2? Этот массив содержит 2 "колонки" в которые заносятся данные о директориях и файлах обнаруженных при проходе цикла?
2 ничего не значит, просто невозможно объявить массив менее чем из 2-х элементов.

mpolfor i = 1 to adir(laF, addbs(tcPath) + '*.*', 'D') - начало цикла, при каждом проходе которого Adir заносит в laF очередной найденный каталог + имя найденного файла если такой есть. Маска *.* указывает на то что заносится ВСЕ и каталоги и файлы? Или это маска для поиска файлов? Я пытался менять маску на *.dbf, но при этом этот код не срабатывал. 'D' - указывает на то, что обрабатываются все каталоги или на то что будут обработаны файлы находящиеся в обнаруженных каталогах???
ADIR() выполняется один раз и помещает в laF все файлы и папки (параметр 'D') по заданной маске (addbs(tcPath) + '*.*') и возвращает кол-во записей в созданном массиве.

mpolif 'D' $ laF[i, 5] - условие, если ('D' как я понял, указывает на 'D' в предыдущей команде
Это проверка что указанный элемент массива является каталогом

mpolВ этом месте [i, 5] i- это переменная объявленная ранее, а вот что такое 5 я не смог понять и найти в сети объяснения, поясните если не трудно.
5 это константа, что означает тут почитай

mpolif laF[i, 1] != '.' - снова условие, в котором происходит сравнение найденного, на нахождение в нем точки. Другими словами это выборка на соответствие каталогу, а не файлу. Правильно?
Нет, это особенности файловой системы, есть спец.каталоги "." и ".." которые выбираются при выборе всех подпапок (обозначают родительский диск и родительскую папку), эта проверка для их игнорирования.

mpolБуду очень благодарен, все таки я никогда не программировал...
Советую начинать с более простых вещей, взять книжку, почтитать и повторять все написанные там примеры.

PS Чтоб не гадать - есть хэлп где все расписано, тут по-русски если с английским трудности
...
Рейтинг: 0 / 0
15.12.2010, 08:42
    #37014968
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Dima T,

спасибо, буду разбираться. А с более простых вещей не получится, потому что нужно написать программку, и насколько я понимаю, эта часть кода для нее как раз подходит.
...
Рейтинг: 0 / 0
15.12.2010, 11:55
    #37015444
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Dima Tпросто невозможно объявить массив менее чем из 2-х элементов.
Минимальная размерность массива все-таки 1, а не 2

Код: plaintext
1.
LOCAL ARRAY laDir( 1 )
?alen(laDir)
...
Рейтинг: 0 / 0
15.12.2010, 14:29
    #37015989
XAndy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
ВладимирМ,

т.к. массив любой размерности в фоксе - это просто набор связанных переменных, и минимальное количество переменных - одна ;)
...
Рейтинг: 0 / 0
15.12.2010, 15:29
    #37016215
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Ошибся, пусть будет одна а не две, к сути обсуждаемого вопроса это отношения не имеет.
...
Рейтинг: 0 / 0
16.12.2010, 05:53
    #37017278
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Dima TНет, это особенности файловой системы, есть спец.каталоги "." и ".." которые выбираются при выборе всех подпапок (обозначают родительский диск и родительскую папку), эта проверка для их игнорирования.'.' обозначает не "родительский диск", а текущую папку.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
func ParseFolder
lpara tcPath &&имя директории для разбора
local i
local array laF[ 2 ]
? 'FOLDER: ' + tcPath &&выводим имя дир-и
for i =  1  to adir(laF, addbs(tcPath) + '*.*', 'D') &&перебираем все файлы/д-и в заданной
 if 'D' $ laF[i,  5 ] &&если текущий элемент - д-я
  if laF[i,  1 ] != '.' &&и если это не исходная д-я и не родительская
  ParseFolder(addbs(tcPath) + laF[i,  1 ] + '\') &&то запускаем обработку текущего элемента (см. ЗЫ)
  endif
 else
  ? 'FILE: ' + tcPath + laF[i,  1 ] &&а если тек.элемент - не директория, а файл, то выводим его имя
 endif
endfor
return
ЗЫ. Почитайте про рекурсию ещё.
ЗЗЫ. Кстати, в коде есть ошибка: директории с названием определённого вида не обрабатываются. Впрочем, в винде такие названия и не распространены ;)
...
Рейтинг: 0 / 0
19.12.2010, 02:17
    #37022943
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Снова всем привет.
Пробую разобраться. Пытаюсь выхватить из массива директорию обработки файлов по умолчанию(для каждого параметра свою). И файл (D?????.dbf) как параметр для моей функции, но постоянно что-то получается не так как желаю. )))) Очень интересно. Пробую постоянно все проверить по новому, с новыми операторами. ) Буду бороться с программкой. Всем спасибо!
...
Рейтинг: 0 / 0
23.12.2010, 10:36
    #37031025
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Снова всем привет. Появилось немного времени и я продолжаю разбираться в этой програмке. )) Сразу вопрос. Каким образом можно указать маску файла, что бы имя нужного файла, при обнаружении его в директории, при сканировании функцией ADIR(), передавалось в качестве параметра? А сама директория в которой находится этот файл, становилась директорией по умолчанию.
Например мне нужны все файлы с такой маской X?????.DBF
...
Рейтинг: 0 / 0
23.12.2010, 11:01
    #37031109
Как указать в set path to сотни баз для перебора и сравнения информации?
mpolСнова всем привет. Появилось немного времени и я продолжаю разбираться в этой програмке. )) Сразу вопрос. Каким образом можно указать маску файла, что бы имя нужного файла, при обнаружении его в директории, при сканировании функцией ADIR(), передавалось в качестве параметра?Вы не знаете как работать с тестковыми переменными? А сама директория в которой находится этот файл, становилась директорией по умолчанию.А может еще нос вареньем намазать? И нафига нужны пляски со сменой текущего каталога? Так сильно нравится бегать по граблям?Например мне нужны все файлы с такой маской X?????.DBFЕще раз - ны не умеете занести вот этот набор символов в текстовую переменную? Желательно в сочетании с каталогом, в котором хочется поискать файлы.
...
Рейтинг: 0 / 0
14.01.2011, 14:02
    #37059006
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Всем привет! Получилась у меня такая программка. Если ее запускать в самом VFP9, то все обрабатывается как и было задумано. Только она не завершается как нужно. ) Но с этим я разберусь позже.
Вопрос вот в чем, что нужно написать в этом кусочке кода, что бы информация выводилась не в окно формы, а в Form.Label1.Caption?
?m.kol_ls
Когда я указал Form.Label1.Caption = m.kol_ls, мне постоянно выдавало ошибку, поэтому оставил все как есть. Но всетаки интересно как это сделать?
Код получившейся программки, во вложении. Буду рад адекватной критике и замечаниям. Проходящему, предлагаю не задерживаясь проходить дальше, ненужные советы и язвительность оставьте пожалуйста при себе.
...
Рейтинг: 0 / 0
14.01.2011, 15:37
    #37059278
Как указать в set path to сотни баз для перебора и сравнения информации?
mpolВсем привет! Получилась у меня такая программка. Если ее запускать в самом VFP9, то все обрабатывается как и было задумано. Только она не завершается как нужно. ) Но с этим я разберусь позже.
Вопрос вот в чем, что нужно написать в этом кусочке кода, что бы информация выводилась не в окно формы, а в Form.Label1.Caption?
?m.kol_ls
Когда я указал Form.Label1.Caption = m.kol_ls, мне постоянно выдавало ошибкуКотрую мы должны угадать?, поэтому оставил все как есть. Но всетаки интересно как это сделать?Правильно. В частности, не пытаться число запихать в строковое свойство. Ошибка на несоответствие типа данных была, не так ли? :) Не просто так же там стоИт
Код: plaintext
m.kol_ls= 0 
?Код получившейся программки, во вложении. Буду рад адекватной критике и замечаниям. Проходящему, предлагаю не задерживаясь проходить дальше, ненужные советы и язвительность оставьте пожалуйста при себе.Предложение не принимается. Ненужность советов не с Вашим уровнем знаний предмета оценивать.
1. Набор команд
Код: plaintext
1.
2.
RELEASE all
CLOSE DATABASES all
CLOSE ALTERNATE
в начале ехе-файла очень нужны? Вроде как и так ничего не может быть открытого в этот момент.
2. Рабочий каталог можно и одной командой заменить и не плодить лишние переменные, да еще и глобальные, как и макроподстановку. Да и повторно его устанавливать как-то некомильфо.
3.
Код: plaintext
use &d. ALIAS d_base
заменяется на
Код: plaintext
use (d) ALIAS d_base
4.
Код: plaintext
1.
 index on datl tag datl addit
 set order to tag datl
вторая строка совершенно излишня.
5. устал... И это еще не касаясь самого алгоритма обработки.
...
Рейтинг: 0 / 0
14.01.2011, 15:41
    #37059293
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
В архиве программка и форма.
...
Рейтинг: 0 / 0
14.01.2011, 15:55
    #37059325
mpol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как указать в set path to сотни баз для перебора и сравнения информации?
Спасибо, Проходящий.
Умеете ведь помочь, когда есть желание. )
Буду делать разбор полетов.

Насчет того какую ошибку показывал Фокс, сказать сейчас не могу. Я просто занимаюсь программкой когда есть время.
Да и интернета под рукой нет. Пишу сюда когда получается.

К стати, про ?, насколько я помню, я выводил не только символьную переменную, но и тип дата. Ведь при , ? DataMax, содержание переменной выводилось. И при запросе ? Vartype(DateMax), показывало D, то есть Date. Другими словами ? выводит на экран не только символьные переменные. Или я ошибаюсь?
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как указать в set path to сотни баз для перебора и сравнения информации? / 25 сообщений из 29, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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