Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [VFoxPro]Ввод данных в поле типа General


Автор: PatriotRus 1.4.2008, 10:56
Подскажите пожалуйста как программно ввести данные в поле типа GENERAL в VFoxPro!!!
Спасибо!!!

Автор: Cashey 1.4.2008, 11:13
взято из хелпа
Код

CREATE TABLE MyGenTbl (mygenfield G)

APPEND BLANK  && Add a blank record

APPEND GENERAL mygenfield FROM C:\EXCEL\BOOK1.XLS CLASS EXCELCHART

Автор: PatriotRus 1.4.2008, 15:52
спасибо!
А как можно путь к файлу не заводить, как написано в коде: 

Код

C:\EXCEL\BOOK1.XLS CLASS EXCELCHART


а сделать так чтобы по нажатию клавиши выбирался файл из окна диалога открытия файла???

Автор: Cashey 2.4.2008, 10:52
через макроподстановку
Код
 cFile = getfile()
CFile = cFile + ' CLASS EXCELCHART'
APPEND GENERAL mygenfield FROM &cFile

ну это если класс заранее известен

Автор: PatriotRus 2.4.2008, 21:23
большое спасибо!!! smile 

Автор: PatriotRus 3.4.2008, 07:46
Я конечно извиняюсь, и мне очень стыдно, но у меня ещё вопросик!!!
Вот как мне добавив запись в поле (как написано выше) перейти на следующую пустую запись чтобы добавить туда!!!
Заранее спасибо!!!

Добавлено через 3 минуты и 20 секунд
Цитата

ну это если класс заранее известен 

А если не известен???

Автор: Cashey 3.4.2008, 07:50
если это следующая по порядку запись то SKIP 1, если порядковое место не известно тогда LOCATE FOR EMPTY(<поле general>)

Автор: PatriotRus 3.4.2008, 07:59
большое спасибо!!!
а если класс открываемого файла не известен?

Автор: Cashey 3.4.2008, 08:25
тогда хз

Автор: PatriotRus 3.4.2008, 08:38
а какие вообще бывают классы?
мне нужно загонять только файлы типов:
EXEL
WORD
*.PRG
TXT

Автор: Cashey 3.4.2008, 09:03
это не классы в понимании FoxPro это OLE-объекты. Соответсвенно какие зарегестрированны в виндах, такие и будут

Автор: PatriotRus 3.4.2008, 10:58
У меня следующая проблема!!!
В таблице нет записей (где есть поле General) я в ручную добавляю первую запись,а дальше хочу что бы программа сама переходила на следующую запись и записывала туда,но если делать так как говорите вы (через skip 1), то прога ругается на то что достигнут конец таблицы,и не переходит,и не записывает!!!
Что можно сделать?
Может нужно как нибудь сначала создать новую запись,а потом уже перейти на нее и записать?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)