-
oracle, ODAC, компонента TSmartQuery
В таблице сказано CREATE TABLE "ISS"."PRICE" ( "ID_PRICE" NUMBER NOT NULL ENABLE, "ID_CONTRACT" NUMBER NOT NULL ENABLE, "DATE_RELEVANCE" DATE NOT NULL ENABLE, ...
CONSTRAINT "PK_ID_PRICE" PRIMARY KEY ("ID_PRICE")
Когда я KeyFields в объект инспекторе (ОИ) раскрываю, он мне здоровско предлагает ID_PRICE.
Как он это узнал?
Задача позиционировать курсор. после удаления. Хочу получить KeyFields, до записи, запомнить его значение и locate делать после переоткрытия
-
procedure TForm1.RefreshWithKeepPos(Q: TSmartQuery); var V: Variant; begin Q.DisableControls; Q.Prior; V := Q.Fields[0].Value; Q.EnableControls; Q.Refresh; Q.Locate(Q.Fields[0].FullName, V, [loCaseInsensitive] ); end;
так тоже работает, т.к. Id всегда первым в запросе делаю но так не нравится что-то
-
А при чем тут удаление? И если надо удалять при чем тут переоткрытие? Короче как связаны удаление и переоткрытие? Обычно после удаления указатель встает на следущую запись. Достаточно сделать Prior и желаемое достигнуто.
-
Как связаны удаление и переоткрытие
DS в состоянии CashedUpdates После всех манипуляция с ним, в том числе и если был delete, после commita надо переоткрыть, вдруг там еще что добавилось. все хорошо, если запомнить текущую запись. ------------- Вопрос не в этом, поздно подумал / рано написал Вопрос как O узнал, какое поле у меня PK
-
> вдруг там еще что добавилось.
ИМХО порочная практика. На 100% актуальность данных все равно не достижима долее чем на мгновение.
> Вопрос как O узнал, какое поле у меня PK
Может просто первое показал? 8-) В принципе несложно пошуршать по системным таблицам user_XXX и узнать.
-
> Может просто первое показал? 8-) да нет, легко узнается по INFORMATION_SCHEMA (и/или, то же самое использует OpenSchema в ADO) т.что показывает, что есть.
-
> Как он это узнал?
спросил у user_constraints
-
> После всех манипуляция с ним, в том числе и если был delete, > после commita надо переоткрыть, вдруг там еще что добавилось. >
а почему после коммита? когда добавляют, твоего коммита не спрашивают, раз, видно добавленное после ИХ коммита, два. > Вопрос как O узнал, какое поле у меня PK >
по словарю http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/statviews_part.htm#i125539там букаф дофига, но оно увлекательно, интересное/неинтересное сам отфильтруешь.
-
>OW © (17.03.11 15:29) прошу прощения за оффтоп, но уже в нескольких Ваших топиках заметил, что имена объектов задаются строго в uppercase - чем обусловлено? корп. стиль или?...
-
Sergey13 © (17.03.11 16:16) [4] sniknik © (17.03.11 17:32) [5] Игорь Шевченко © (17.03.11 20:13) [6] Спасибо.
> а почему после коммита? когда добавляют, твоего коммита > не спрашивают, раз, видно добавленное после ИХ коммита, > два.
не понял как это видно? вот отурылся набор, похимичили с ним, закоммитили. С чего там появится то, что добавил другой юзер, и подходящие по условию начальной выборки первым юзером?
> Кщд (18.03.11 07:45) [8]
да, он, наверное. У нас не программерская контора. Как сказал начальник, "мы не программисты, мы инженеры и предоставляем сервис. Как мы это будем делать - никого не волнует. Хочешь - вручную делай все, круглосуточно, но лучше написать софт, чтоб юзеры сами редактировали".
Мне ничего не сообщалось персонально, но все что открываю написано так. Просто пишу так же и все
-
> [9] OW © (18.03.11 09:03) > вот отурылся набор, похимичили с ним, закоммитили. С чего > там появится то, что добавил другой юзер, и подходящие по > условию начальной выборки первым юзером?
Ну так если ты его [пере]открыл - почему не появятся то?
-
если переоткрыть, то да, видятся
вопрос был >> видно добавленное после ИХ коммита, два. если не переоткрыть - не видятся
-
> [11] OW © (18.03.11 10:16)
Ну так а кто про "переоткрытия DS" начал? 8-)
|