Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.14;
Скачать: CL | DM;

Вниз

Отмена выполнения запроса   Найти похожие ветки 

 
ANB   (2008-03-13 13:31) [40]


> Правильный_Вася   (13.03.08 13:10) [38]

Скорее всего не будет работать.
Во время выполнения запроса сессия/коннект заняты и вызвать что то (чтобы установить сессионную переменную, про которые я в мс скл не слышал) именно для этой сессии не получится.
Плюс не факт, что исполнитель запросов отработает в таком режиме, даже если флаг останова подсунуть глобально через закомиченное изменение обычной таблицы. Плюс использование такой функции сильно тормознет выполнение запроса.


 
ANB   (2008-03-13 13:35) [41]


> Sergey13 ©   (13.03.08 13:29) [39]

Не наю. Но посмотри список сессий для девелопера. Видно, что на кажное окно - одна сессия. И при выполнении запросов тока статус меняется.
Впрочем, мона сделать и несколько сессий, если врубить распараллеливание, но это уже оракл сам делает, девелопер ни при чем.
Самое простое - посмотреть ОДАК. При наличии одной сессии, можно без проблем асинхронно выполнять запрос/блок (ожидая в цикле или модальной формой), и, если не подвесил интерфейс, без проблем срубить выполнение.
Правда, иногда бывают проблемы, т.е. не все запросы/блоки срубаются.


 
sniknik ©   (2008-03-13 13:38) [42]

> Кстати, в мс скл, если лезть через DBLib, тоже аккуратно все срубается.
у меня почемуто чувство, что ты опять о чемто не о том...

какая разница DBLib или ADO? и то и то внешние для сервера mssql обьекты, а запрос выполняется внутри... единственный возможный вариант снимать извне, это если реализовать внутри по ходу выполнения постоянный опрос внешних обьектов и реагировать на них... только подобная схема, добавит тормозов (существенных тормозов) к выполнению, и гораздо больших по сумме, чем изредка в исключительных ситуациях доделать ненужную уже работу...
mssql по твоему тормозной? отвлекается по ходу запроса на разные непонятные действия? если нет, то можеш это считать примером и доказательством... и перестать искать различные "волшебные" компоненты.

вот если бы, ты говорил не о запросе, а о процессе, то да чтото подобное можно (но не нужно. равнозначно "насильному" терминированию потока в программе), смутно припоминаю, это даже обсуждалось как то.
и гарантирую, от того что используется на клиенте (ADO/DBLib/...), эта возможность не исчезнет или добавится "волшебным" образом.


 
sniknik ©   (2008-03-13 13:43) [43]

> Тогда почему кнопочка убийства запроса доступна только при многосессионной настройке?
да, имхо, потому что там тоже самое что у mssql, просто процессы названы сессиями. разницы то. и "срубается" не запрос, а именно сессия/процес/поток (если "аналогиловать" с программой, поток извне "убить", процедуру/функцию в нем выполняющуюся отдельно нет (а вот по проверке внутри ее легко можно выйти).).


 
sniknik ©   (2008-03-13 13:45) [44]

sniknik ©   (13.03.08 13:43) [43]
> извне "убить"
... извне "убить" можно, ...


 
sniknik ©   (2008-03-13 13:55) [45]

вот, даже залез в хелп...
"убийство" потока ->
KILL SPID
если найдешь SPID запроса, то снимешь...


 
DmitriyG. ©   (2008-03-13 16:44) [46]

В том то и дело что
ADODataSet1.Close не закрывает асинхронным запрос, равно как и Cancel  не помогает :-(


 
sniknik ©   (2008-03-13 17:36) [47]

> ADODataSet1.Close не закрывает асинхронным запрос
наверное у тебя ошибка в программе...

у меня вот все работает замечательно, хоть и на скорую руку (см. видео, в архиве rar - 36 кб. exe с базой посылать рука не подымается. за код стыдно (помойка от разных тестов))
http://webfile.ru/1801097
"твой" код из кнопки
procedure TForm2.Button1Click(Sender: TObject);
begin
 with Form1 do begin
   ADODataSet1.Close;
   Label1.Caption:= "0";
   ProgressBar1.Position:= 0;
 end;
 Close;
end;


> равно как и Cancel  не помогает :-(
сделай более глобально, Close всему коннекту...


 
ANB   (2008-03-13 17:49) [48]


> а именно сессия/процес/поток

да не срубается сессия ! посылается спец. команда "юзер запросил отмену текущей операции". Большей частью, если не сильно задумался, оракл на нее реагирует и генерит исключение (оно потом приезжает обратно на клиента).

>  Close всему коннекту...

1. Скорее всего, пока коннект не закончит работу (выполнение запроса), коннект не будет выполнять эту команду
2. Это извращение - отконнекчиваться, теряя текущий контекст, для срубания запроса.
В QA все нормально и так работает. Жмешь кнопку и запрос снимается. Правда, не всегда.


 
sniknik ©   (2008-03-13 18:04) [49]

> 2. Это извращение - отконнекчиваться, теряя текущий контекст, для срубания запроса.
ну раз нормально "не помогает :-(", надо же чтото делать, пусть хоть так попробует, поучиться. глядиш и нормального способа "дорастет".

> Жмешь кнопку и запрос снимается.
аналогично. см. тест выше.

> Правда, не всегда.
всегда. (хотя... сколько раз "рубил" для статистики? сотню, две, ...? а я до пары десятков не дотянул... может все еще впереди)


 
ANB   (2008-03-14 11:31) [50]


> (хотя... сколько раз "рубил" для статистики? сотню, две,
>  ...?

Сотен пять точно. Не для статистики - отлаживались. Иногда кнопку жмешь, а QA не сразу запрос рубит. Самая беда - выполнение сложной хранимки.
Впрочем, это года 2 назад было. Статистику точную - на каких именно операциях подвисает, не собирали. Возможно, сервер что то подчищал.


 
ANB   (2008-03-14 13:54) [51]

Короче, провел эксперимент.
Условия :
коннечусь через АДО к ораклу (МС СКЛ нету, да и может и правда, не поддерживает он отмену запроса).
Запускаю асинхронно длительный запрос, возвращающий одну строку (коунт по большой таблице).
Делаю тоже самое в девелопере.
Запросу дал доработать и снимал его.
Результат :
1. Спец.команды снятия запроса в АДО нету.
2. Close датасету - не помогает. Т.е. отрубается фактически тока фетч. Запрос висит пока не выполнится, тока результата нету.
3. Пока запрос не выполнится, close коннекту делать низзя - ругается.
4. Девелопер снимает запрос практически мгновенно. Аналогично ведут себя ОДАК и ДОА. Генерится ошибка ОРА-01013.
Вывод, не удививший меня : АДО - гадость, лучше пользоваться родными компонентами под используемую СУБД.


 
DmitriyG. ©   (2008-03-14 17:15) [52]

To sniknik: можно посмотреть исходники для демо программы? У меня пока складывается тоже впечатление, что сделать отмену для MSSQL сервера не получится через ADO... (как у ANB не получается пока для Oracle).

ЗЫ А есть ли специальные компоненты для доступа к MSSQL?


 
ANB   (2008-03-14 18:17) [53]


> ЗЫ А есть ли специальные компоненты для доступа к MSSQL?

Я видел, но они кривоватые. Самое гибкое - через DBLib ломится. Но там библиотека, никаких компонентов. Короче, сильно непросто. Зато все работает асинхронно, срубается, ошибки ловятся ВСЕ и прочие полезности. Короче, один одному как QA пашет.

> (как у ANB не получается пока для Oracle).
а мне и не надо - я одаком и доа пользуюсь. там все и так получается без лишних проблем.


 
sniknik ©   (2008-03-14 20:09) [54]

> можно посмотреть исходники для демо программы?
ты его уже видел в [47]... если выкинуть весь мусор от других тестов, то это все что есть, ну вернее закрытие, а открытие это Open и ShowModal после него, как уже говорил (прогресс бар и остальное что там было, это артефакты от других проб, и к обсуждаемому не относятся)
а вообще нет, нельзя. и не потому, что на работе остался... даже в понедельник не дам, из принципа. ты вот не привел ни единой строчки своего кода, не проверил ни одного моего утверждения, не сказал ничего конкретного и т.д. поэтому для меня ветка из разряда "потрепательских" - т.е. треплемся, развлекаемся и никакого кода... (а то все веселье кончится)
сделай чтонибудь сам. докажи. тогда возможно и помогу.

> Зато все работает асинхронно, срубается, ошибки ловятся ВСЕ и прочие полезности.
т.е. ничего нового? и стоит парится и весь механизм работы с базами на функциях переписывать...
кстати, много кода с использованием DBLib написал?


 
DmitriyG. ©   (2008-03-15 17:05) [55]

Ну боюсь, то что приведено в [47] не будет работать для MSSQL сервера... В этом случае исходники не нужны....
Буду смотреть DBLib


 
MsGuns ©   (2008-03-15 20:45) [56]

>ANB   (14.03.08 13:54) [51]
>1. Спец.команды снятия запроса в АДО нету.

Есть.

>2. Close датасету - не помогает. Т.е. отрубается фактически тока фетч.

Close исп-ся для открытого датасета, у нас же он еще как бы не открылся (запрос не выполнен)

>Запрос висит пока не выполнится, тока результата нету.

Уже писано было про синхрон/асинхрон - может стОит почитать хэлпы по ADO ?

>3. Пока запрос не выполнится, close коннекту делать низзя - ругается.

Разумеется. см. п.2 Close для коннекта аналогичен Close для запроса по смыслу. Для "снятия" используются в зависимости от контекста Cancel или RollBackTrans

>Вывод, не удививший меня : АДО - гадость, лучше пользоваться родными компонентами под используемую СУБД.

И что же мешает выкинуть "гадость" и пользоваться "родными" компонентами ?


 
ANB   (2008-03-17 09:29) [57]


> И что же мешает выкинуть "гадость" и пользоваться "родными"
> компонентами ?

Я так и сделал.


 
ANB   (2008-03-17 09:36) [58]


> Есть.

Какая ?


> Для "снятия" используются в зависимости от контекста Cancel
> или RollBackTrans

Тоже не ботает.
Cancel - игнорит
RollBackTrans - ругается, что транзакция не открыта


> кстати, много кода с использованием DBLib написал?

Не. Не особо надо было - я практически с мс скл не работаю, для минимальных потребностей АДО хватало.
Нужно было как то написать надежный исполнитель скриптов - пришлось после кучи экспериментов с АДО использовать DBLib. Примеры работы содрал у ребят из Нижегородского РНИВЦ (вот там зубры так зубры в мс скл, респект им большой)


 
ANB   (2008-03-17 09:40) [59]


> и весь механизм работы с базами на функциях переписывать.
> ..

Зачем ? У меня есть библиотека компонентов для работы с мс скл, основанная на DBLib. Правда, кривоватая. Если сильно надо будет - починю и буду юзать. Или найду свежую прямую версию и куплю.
Если сильно сильно припрет - напишу свою. Не так уж и сложно.


 
sniknik ©   (2008-03-17 10:40) [60]

> Тоже не ботает.
> Cancel - игнорит
если говоришь "не работает" приводи доказательства. у меня работает.

> пришлось после кучи экспериментов с АДО использовать DBLib
пока что, все "зубры" что мне встречались, те что "уходят" от ADO ищя "волшебных" возможностей в других технологиях, все попросту "не разобрались с управлением". ну а так как сам я считаю ADO простым, логичным и понятным... в общем мнение о таких специалистах у меня не очень.
(не путать с теми кого жизнь вынудила писать на чемто конкретном, у кого есть разумные причины, начал с другого. имеются ввиду только "поисковики" метающиеся от технологии к технологии только изза того что "чтото не получается", и виноватыми считают именно технологию/компоненты)

> RollBackTrans - ругается, что транзакция не открыта
ну так. если делаешь откат транзакции ее как минимум открыть надо... а вот как ты отреагируешь на совет уничтожить обьект(транзакцию) в дельфи? скажешь что ругается что обьект не существует?
не понимаю правда как он этим хотел решить вопрос, и проверять неохота, но раз уж делать то правильно. не так ли?

вообще это уже немного достает. вот пример (убрал лишнее и немного переделал и отмену и старт т.е. там теперь чуть больше кода чем приводил, но вы же и тот не осилили, куда вам дальше то. пишите свою, может разберетесь получше... )
http://webfile.ru/1807960 (exe в rar архиве, 340кб)

у меня естественно там свое, поменяйте строку коннекта и вносите свой запрос (не управляющую команду, а именно запрос), если ошибок нет должно выполнится.
строка коннекта ставится по кнопке run так
 with ADOCon do
   if ConnectionString <> EdComText.Text then begin
     Close;
     ConnectionString:= EdComText.Text;
   end;
 
т.е. если изменений в строке нет то остается старый коннект, есть то переконектится даже если там пробел незначащий добавили.


 
sniknik ©   (2008-03-17 11:08) [61]

сорри, в прошлом примере глюк, не учел что прогресс в другом потоке, а я там "красоту навел" счетчик фетча обновляю и кнопки интерфейса дизейблю (т.е. фактически к VCL из потока пусть и неявного обращаюсь)... AV может быть.
замена
http://webfile.ru/1808019


 
ANB   (2008-03-17 11:50) [62]


> пока что, все "зубры" что мне встречались, те что "уходят"
> от ADO ищя "волшебных" возможностей в других технологиях,
>  все попросту "не разобрались с управлением".

1. Думаю, не будете спорить, что работать с ораклом через АДО (при наличии нормальных библиотек) - извращение.
2. Немного тяжелее с мс скл. Другой технологии, кроме АДО, мс и не предоставляет (DBLib - слишком низкоуровневая). Кстати, в АДО.НЕТ проблем НИКАКИХ не возникает. Он даже с ораклом работает более менее корректно. А вот нативный АДО вызывает проблемы. Мелкие, но противные.
Кстати, вместо того чтобы публиковать многокилобайтные исходники, может просто по русски написать, КАК прервать таки асинхронный запрос ?
Идея с переконнектом, имхо, ОЧЕНЬ плоха.
ЗЫ. Я бы очень постеснялся наезжать на ребят из РНИВЦ. Они ПЕРВЫМИ внедряли мс скл, причем под непосредственным руководством спецов из мс.
А уж сертификатов у них - все стены увешены.


 
sniknik ©   (2008-03-17 12:20) [63]

> 1. Думаю, не будете спорить, что работать с ораклом через АДО (при наличии нормальных библиотек) - извращение.
не работал с ораклом, сталкивался, но не работал, но если бы пришлось, первым бы, что попробовал было бы ADO.
а насчет "нормальных", кто сказал что они нормальные? не верю тем кто говорит что ADO "ненормально", это против моего опыта.

> Кстати, вместо того чтобы публиковать многокилобайтные исходники
я не даю/публикую исходников в ветках типа этой, в которой кроме трепа ничего не представлено. (причем инициатор трепа не я)

> может просто по русски написать, КАК прервать таки асинхронный запрос ?
я писал. но все напрочь проигнорировано... мне вот например наоборот очень интересно как можно не сделать такой простой веши. что можно сделать чтобы не работало...

> Идея с переконнектом, имхо, ОЧЕНЬ плоха.
где переконнект? приведен и код и обьяснение, и тем не менее вы делаете вывод "со своей колокольни", неадекватный.
(как мне кажется аналогично и по всему остальному)

> ЗЫ. Я бы очень постеснялся наезжать на ребят из РНИВЦ.
а кто на них наезжает? читай тщательнее. если уж к ним сами спецы из мс приходили и сказали "работайте через DBLib!", ктоб смог отказаться?... вынуждены.
или там была ситуация типа описанной? начали с ADO не справились, перекинулись на DBLib... и начали долго долго писать свою обертку... (ну хоть какаято польза, поневоле спецом станешь)


 
ANB   (2008-03-17 12:54) [64]


> если уж к ним сами спецы из мс приходили и сказали "работайте
> через DBLib!", ктоб смог отказаться?...

Основное приложение у них на АДО. Думаете, кому то сильно хотелось изучать DBLib, для написания утилит ?

Основная грабля АДО, как универсального средства - он плохо понимает уровень серьезности ошибки. Т.е. в хранимке произошла ошибка, ошибка кидается в лог, хранимка идет дальше. АДО же считает, что хранимка прервалась и выдает исключение. DBLib же работает аккуратно. Кстати, и GO понимает без предварительной распилки скрипта.


> как можно не сделать такой простой веши

Какой ? Я добился асинхронности, но запрос к ораклу НЕ СНИМАЕТСЯ ни одним из предложенных способов (Cancel, Close, Close коннекту, RollBack). Может, конечно, при работе с мс скл ситуация лучше, но с ораклом асинхронка не доделана.


 
sniknik ©   (2008-03-17 13:25) [65]

> Кстати, и GO понимает без предварительной распилки скрипта.
GO это не команда SQL, это команда "исполнителя скриптов" типа QA и его консольного аналога... она в скрипте не может не давать ошибки. что наводит на мысль, что чтото там у вас не так и с предыдущей ошибкой, может вся "аккуратность" DBLib просто в том, что написали вы с его использованием так, что ошибки попросту игнорирует? (там же надо весь механизм в том числе и с ошибками переписывать)

> но запрос к ораклу НЕ СНИМАЕТСЯ ... но с ораклом асинхронка не доделана.
это можно поверить -> [61], нужно только желание... сделать строку коннекта и выполнить запрос в примере это 2 минуты. (имхо 98,8% за то что работает)


 
ANB   (2008-03-17 13:37) [66]


> GO это не команда SQL, это команда "исполнителя скриптов"
> типа QA и его консольного аналога... она в скрипте не может
> не давать ошибки. что наводит на мысль, что чтото там у
> вас не так и с предыдущей ошибкой, может вся "аккуратность"
> DBLib просто в том, что написали вы с его использованием
> так, что ошибки попросту игнорирует? (там же надо весь механизм
> в том числе и с ошибками переписывать)

Аккуратность заключается в том, что работает со скриптом ОДИН к ОДНОМУ, как QA. А с АДО такого не получается.

Чесно говоря, лениво вытаскивать целый пример, тем более у вас с мс скл он, а у меня оракл. нельзя ли опубликовать только кусочек под кнопкой "отменить запрос" чтобы проверить саму методу ?


 
Petr V. Abramov ©   (2008-03-17 13:39) [67]


> ANB   (17.03.08 12:54) [64]
.
> но запрос к ораклу НЕ СНИМАЕТСЯ ни одним из предложенных
> способов


там не асинхронка не доделана, а вообще прерывание выполнения запроса любым способом. Даже если снимать сессию через alter system kill session, часто можно получить "session marked for kill" и висеть marked она будет вечно


 
ANB   (2008-03-17 14:07) [68]


> там не асинхронка не доделана, а вообще прерывание выполнения
> запроса любым способом

из девелопера, тоада, через ДОА и ОДАК - без проблем все нормально снимается. Я ж корректный случай взял. Да, иногда подвисает и не снимается ничем, даже сессия не убивается. Но не для этого запроса, на котором я экспериментировал.

> висеть marked она будет вечно
- ну не вечно. Обычно часа через 2 отваливается. А уж на следующий день ее по любому обычно уже нету.


 
Petr V. Abramov ©   (2008-03-17 14:19) [69]


> ANB   (17.03.08 14:07) [68]


> из девелопера, тоада, через ДОА и ОДАК - без проблем все
> нормально снимается.

ну волшебства тут никакого
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14250/oci16msc007.htm#sthref3500
как ее там ADO использует - другой вопрос.

> Да, иногда подвисает и не снимается ничем, даже сессия не
> убивается.

так тоже часа через 2 снимется :)


>  А уж на следующий день ее по любому обычно уже нету.

было дело и неделю висела, пока не orakill`ом не застрелил.


 
ANB   (2008-03-17 14:55) [70]


> было дело и неделю висела, пока не orakill`ом не застрелил.

Не, у нас админы че то настроили - больше суток сессия не висит.


> так тоже часа через 2 снимется :)

Там - это в АДО ? Ни фига. Мой запрос отрабатывает 2 мин. В девелопере - снимается менее чем через секунду.
Похоже, АДО не знает про OCIBreak() (да и откуда ? универсал же).


 
Petr V. Abramov ©   (2008-03-17 15:04) [71]


> ANB   (17.03.08 14:55) [70]


> Не, у нас админы че то настроили - больше суток сессия не
> висит.

да нет такого параметра "сколько висеть" :)
тут все на везении.

> Похоже, АДО не знает про OCIBreak() (да и откуда ? универсал
> же).

да такой же это универсал, как BDE, все равно в конце концов на OCI основано, прекрасно трассируется любым OCI-трассировщиком.
Кстати, ради интерса посмотри, что оно пытается делать при Cancel, мне самому интересно стало, а дельфу подымать лень, в VS разбираться с ADO - тем более :)


 
ANB   (2008-03-17 15:22) [72]


> а дельфу подымать лень

У меня отчет уже третий час колбасит - не могу в делфу залезть.


 
ANB   (2008-03-17 17:50) [73]


procedure TDataSet.Cancel;

 procedure CancelNestedDataSets;
 var
   I: Integer;
 begin
   if Assigned(FNestedDataSets) then
     for I := 0 to FNestedDataSets.Count - 1 do
       with TDataSet(FNestedDataSets[I]) do
         if Active then Cancel;
 end;

var
 DoScrollEvents: Boolean;
begin
 case State of
   dsEdit, dsInsert:
     begin
       CancelNestedDataSets;
       DataEvent(deCheckBrowseMode, 0);
       DoBeforeCancel;
       DoScrollEvents := (State = dsInsert);
       if DoScrollEvents then DoBeforeScroll;
       UpdateCursorPos;
       InternalCancel;
       FreeFieldBuffers;
       SetState(dsBrowse);
       Resync([]);
       DoAfterCancel;
       if DoScrollEvents then DoAfterScroll;
     end;
 end;
end;

Думал, что то попутал, но все верно. Cancel набору данных - тупо отмена редактирования/вставки.
Cancel коннекту уходит в вызов метода АДО, но никакого эффекта не дает - запрос висит.


 
ANB   (2008-03-17 17:56) [74]

Во. Нашел. Cancel коннекту согласно доке должен помочь. Но не помогает.


 
Petr V. Abramov ©   (2008-03-17 18:01) [75]


> ANB   (17.03.08 17:56) [74]

OCI-трассировщиком глянь, че он пытается делать


 
MsGuns ©   (2008-03-17 21:02) [76]

С ураклом не работал, но, думаю, что он тут не при чем - вся закавыка в неправильном (некорректном) использовании ADO.
У меня с мсскл все весело снимается. Правда, это "весело" не распространяется на хранимки, в которых рекурсия - там надо трохе обождать, пока сервер "выйдет из транса" ;)

Для того, чтобы это проверить, достаточно побаловаться с QA - там есть кнопка останова. Он же как-то это делает, а ? Или он не джетом пользуется ?


 
sniknik ©   (2008-03-17 22:36) [77]

> Правда, это "весело" не распространяется на хранимки, в которых рекурсия - там надо трохе обождать, пока сервер "выйдет из транса" ;)
проверь в тесте [61], не должен ждать. ждешь ты, имхо, потому, что cancel "оберточный" используешь, а там вроде сделано с ожиданием ответа, специально, типа гарантировано. а QA бросает все на "произвол судьбы" не ожидая подтверждений.

> Или он не джетом пользуется ?
естественно не jet-ом, jet это access, а не mssql. но вообще чем бы он там не пользовался, все это можно повторить чисто на ADO (может им и пользуется, хотя он и ODBC*-шную dll подключает... может и его тоже, вперемешку). ну, более менее повторить, трудности наверняка будут, но пока я их не вижу (и они будут не там где могут подумать... а например в отсутствии грида для отображения, т.к. он явно работает с датасетами с серверным курсором, дельфишный такое отображать не может. и т.д. и т.п. неясно пока не столкнешся).


 
DmitriyG. ©   (2008-03-18 00:16) [78]

Сегодня поздно завтра проверю, отмену на большой базы для MSSQL


 
Anatoly Podgoretsky ©   (2008-03-18 04:37) [79]


> Для того, чтобы это проверить, достаточно побаловаться с
> QA - там есть кнопка останова. Он же как-то это делает,
> а ? Или он не джетом пользуется ?

Он пользуется ODBC


 
DmitriyG. ©   (2008-03-18 11:11) [80]

Посмотрел. Впринципе работает также как и у меня, только у Вас после снятия некоторых запросов выдается
"Cannot perform this operation on a closed dataset"
И проблема не решена: при выборке большого кол-ва записей и отмене запроса данные по сети передаются (30% загрузки)!!!! Причем при повторном выполнении запроса сеть становится занятой на 60%. При отмене из QA все нормально.



Страницы: 1 2 вся ветка

Текущий архив: 2008.09.14;
Скачать: CL | DM;

Наверх




Память: 0.68 MB
Время: 0.031 c
2-1217453505
Alex_Storm
2008-07-31 01:31
2008.09.14
Добавить строки в ListViev


4-1196190355
DevilDevil
2007-11-27 22:05
2008.09.14
Схватить форму/отпустить форму. Помогите, пожалуйста.


15-1216391681
shlst
2008-07-18 18:34
2008.09.14
Вирус напал необычный или что это вообще?


3-1205563988
Виталий Панасенко(дом)
2008-03-15 09:53
2008.09.14
FR 3.2/End-User отчет/передача параметра подключения


3-1205489996
Павел Калугин
2008-03-14 13:19
2008.09.14
Грабли с MySql