Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Программное создание Local View / 5 сообщений из 5, страница 1 из 1
21.04.2006, 08:45
    #33681145
Maltsev Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное создание Local View
Из-за частого падения DBC решил написать процедурку, которая будет ее заново генерить. Таблиц нам нет, только локальные вьюшки.

Для создания вьюшки использую
Код: plaintext
1.
CREATE SQL VIEW MyView as select * from Dogovor
Для простого отображения данных она подходит.

А как указать Ключевое поле, обновляемые поля, правила обновления не понимаю ..
Подскажите, пжалста !! :-))
...
Рейтинг: 0 / 0
21.04.2006, 08:55
    #33681161
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное создание Local View
Maltsev MaxИз-за частого падения DBC решил написать процедурку, которая будет ее заново генерить. Таблиц нам нет, только локальные вьюшки.

Для создания вьюшки использую
Код: plaintext
1.
CREATE SQL VIEW MyView as select * from Dogovor
Для простого отображения данных она подходит.

А как указать Ключевое поле, обновляемые поля, правила обновления не понимаю ..
Подскажите, пжалста !! :-))
Фокс какой?
...
Рейтинг: 0 / 0
21.04.2006, 09:11
    #33681184
DmGr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное создание Local View
Код: 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.
	LOCAL ThisView

	ThisView = "viewSellerList"

	CREATE VIEW viewSellerList AS ;
		SELECT Contractor.recordid, Contractor.companyid, Contractor.peopleid, Contractor.comment,;
			IIF(Contractor.peopleid= 0 ,PADR(Company.name, 150 ),PADR(ALLTRIM(People.family)+" "+ALLTRIM(People.name)+" "+ALLTRIM(People.name2), 150 )) AS name;
		FROM contractor ;
	    LEFT OUTER JOIN people ON Contractor.peopleid = People.recordid ;
	    LEFT OUTER JOIN company ON Contractor.companyid = Company.recordid;
	 WHERE  Contractor.seller = ( .T. )

	DBSetProp(ThisView,"View","SendUpdates",.T.)
	DBSetProp(ThisView,"View","BatchUpdateCount", 1 )
	DBSetProp(ThisView,"View","CompareMemo",.T.)
	DBSetProp(ThisView,"View","FetchAsNeeded",.F.)
	DBSetProp(ThisView,"View","FetchMemo",.T.)
	DBSetProp(ThisView,"View","FetchSize", 100 )
	DBSetProp(ThisView,"View","MaxRecords",- 1 )
	DBSetProp(ThisView,"View","Prepared",.F.)
	DBSetProp(ThisView,"View","UpdateType", 1 )
	DBSetProp(ThisView,"View","UseMemoSize", 255 )
	DBSetProp(ThisView,"View","Tables","contractor")
	DBSetProp(ThisView,"View","WhereType", 1 )

	DBSetProp(ThisView+".recordid","Field","DataType","I")
	DBSetProp(ThisView+".recordid","Field","UpdateName","contractor.recordid")
	DBSetProp(ThisView+".recordid","Field","KeyField",.T.)
	DBSetProp(ThisView+".recordid","Field","Updatable",.F.)

	DBSetProp(ThisView+".companyid","Field","DataType","I")
	DBSetProp(ThisView+".companyid","Field","UpdateName","contractor.companyid")
	DBSetProp(ThisView+".companyid","Field","KeyField",.F.)
	DBSetProp(ThisView+".companyid","Field","Updatable",.T.)

	DBSetProp(ThisView+".peopleid","Field","DataType","I")
	DBSetProp(ThisView+".peopleid","Field","UpdateName","contractor.peopleid")
	DBSetProp(ThisView+".peopleid","Field","KeyField",.F.)
	DBSetProp(ThisView+".peopleid","Field","Updatable",.T.)

	DBSetProp(ThisView+".comment","Field","DataType","C(30)")
	DBSetProp(ThisView+".comment","Field","UpdateName","contractor.comment")
	DBSetProp(ThisView+".comment","Field","KeyField",.F.)
	DBSetProp(ThisView+".comment","Field","Updatable",.T.)

	DBSetProp(ThisView+".name","Field","DataType","C(150)")
	DBSetProp(ThisView+".name","Field","KeyField",.F.)
	DBSetProp(ThisView+".name","Field","Updatable",.F.)
...
Рейтинг: 0 / 0
21.04.2006, 11:44
    #33681865
Maltsev Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное создание Local View
Спасибо ...
...
Рейтинг: 0 / 0
22.04.2006, 22:50
    #33684612
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Программное создание Local View
Hi Maltsev Max!

> Из-за частого падения DBC

Очень странно - поскольку в Production Environment практически НИКОГДА не
происходит модификация dbc (даже есть смысл открывать базу с модификатором
NOUPDATE), то её "падение" - это что-то исключительное.

> решил написать процедурку, которая будет ее заново генерить.

А не проще ли из архива извлечь "правильную" копию и всё?

P.S. Но вообще держать программу способную пересоздать dbc с нуля полезно -
в частности чтобы можно было вносить изменения в представления... Вообще
советую обратить внимание на поставляемую с фоксом утилиту GenDBC.prg а
также на имеющиеся в Инете её вариации.

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Программное создание Local View / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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