Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Paradox Таблицы из массива / 4 сообщений из 4, страница 1 из 1
19.04.2004, 11:01
    #32485959
Jen
Jen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Paradox Таблицы из массива
Можно ли создать таблицу беря из массивоы названия полей и их тип. Или из одного динаического массива?
...
Рейтинг: 0 / 0
27.04.2004, 14:57
    #32498831
Igor Istratenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Paradox Таблицы из массива
Пример создания таблицы "field_struct.db" с полями из массива:

var
tbl Table
tcFlds TCursor
NewStru Array[] String
pole, tempTbl, newTbl String
pozPole smallInt
endVar

NewStru.setSize(4)
NewStru[1]="Фамилия:A50"
NewStru[2]="Имя:A30"
NewStru[3]="Отчество:A40"
NewStru[4]="Количество:S"
newTbl="test_create_db.db"

tempTbl="field_struct.db"
tbl = create tempTbl
WITH
"Field Name":"A31",
"Type":"A31",
"Size":"S",
"Dec":"S",
"Key":"A1",
"_Required Value":"A1",
"_Min Value":"A255",
"_Max Value":"A255",
"_Default Value":"A255",
"_Picture Value":"A175",
"_Table Lookup":"A255",
"_Table Lookup Type":"A1",
"_Invariant Field ID":"S"
languageDriver "ANCYRR"
endCreate
tcFlds.open(tempTbl)
tcFlds.edit()
for i from 1 to NewStru.size()
tcFlds.insertAfterRecord()
pole=NewStru
pozPole=pole.search(":")
tcFlds."Field Name" =pole.substr(1,pozPole-1)
tcFlds."Type" = pole.substr(pozPole+1)
if pole.size()>pozPole+1 then tcFlds."Size" = pole.substr(pozPole+2,pole.size()-pozPole-1) endIf
endFor
tcFlds.endEdit()
tbl = create newTbl
STRUCT tcFlds
languageDriver "ANCYRR"
endCreate
tcFlds.close()
delete(tempTbl)
...
Рейтинг: 0 / 0
27.04.2004, 15:01
    #32498848
Igor Istratenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Paradox Таблицы из массива
Повторяю еще раз, т.к. пропало
----

var
tbl Table
tcFlds TCursor
NewStru Array[] String
pole, tempTbl, newTbl String
pozPole smallInt
endVar

NewStru.setSize(4)
NewStru[1]="Фамилия:A50"
NewStru[2]="Имя:A30"
NewStru[3]="Отчество:A40"
NewStru[4]="Количество:S"
newTbl="test_create_db.db"

tempTbl="field_struct.db"
tbl = create tempTbl
WITH
"Field Name":"A31",
"Type":"A31",
"Size":"S",
"Dec":"S",
"Key":"A1",
"_Required Value":"A1",
"_Min Value":"A255",
"_Max Value":"A255",
"_Default Value":"A255",
"_Picture Value":"A175",
"_Table Lookup":"A255",
"_Table Lookup Type":"A1",
"_Invariant Field ID":"S"
languageDriver "ANCYRR"
endCreate
tcFlds.open(tempTbl)
tcFlds.edit()
for i from 1 to NewStru.size()
tcFlds.insertAfterRecord()
pole=NewStru
pozPole=pole.search(":")
tcFlds."Field Name" =pole.substr(1,pozPole-1)
tcFlds."Type" = pole.substr(pozPole+1)
if pole.size()>pozPole+1 then tcFlds."Size" = pole.substr(pozPole+2,pole.size()-pozPole-1) endIf
endFor
tcFlds.endEdit()
tbl = create newTbl
STRUCT tcFlds
languageDriver "ANCYRR"
endCreate
tcFlds.close()
delete(tempTbl)
...
Рейтинг: 0 / 0
27.04.2004, 15:06
    #32498864
Igor Istratenkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Paradox Таблицы из массива
Еще разок, пропадает понимаешь [ i ], без пробелов... форум эти три знака "скушивает"
----

var
tbl Table
tcFlds TCursor
NewStru Array[] String
pole, tempTbl, newTbl String
i, pozPole smallInt
endVar

NewStru.setSize(4)
NewStru[1]="Фамилия:A50"
NewStru[2]="Имя:A30"
NewStru[3]="Отчество:A40"
NewStru[4]="Количество:S"
newTbl="test_create_db.db"

tempTbl="field_struct.db"
tbl = create tempTbl
WITH
"Field Name":"A31",
"Type":"A31",
"Size":"S",
"Dec":"S",
"Key":"A1",
"_Required Value":"A1",
"_Min Value":"A255",
"_Max Value":"A255",
"_Default Value":"A255",
"_Picture Value":"A175",
"_Table Lookup":"A255",
"_Table Lookup Type":"A1",
"_Invariant Field ID":"S"
languageDriver "ANCYRR"
endCreate
tcFlds.open(tempTbl)
tcFlds.edit()
for i from 1 to NewStru.size()
tcFlds.insertAfterRecord()
pole=NewStru[ i ]
pozPole=pole.search(":")
tcFlds."Field Name" =pole.substr(1,pozPole-1)
tcFlds."Type" = pole.substr(pozPole+1)
if pole.size()>pozPole+1 then tcFlds."Size" = pole.substr(pozPole+2,pole.size()-pozPole-1) endIf
endFor
tcFlds.endEdit()
tbl = create newTbl
STRUCT tcFlds
languageDriver "ANCYRR"
endCreate
tcFlds.close()
delete(tempTbl)
...
Рейтинг: 0 / 0
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / Paradox Таблицы из массива / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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