Форум: "Начинающим";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
ВнизНеработает ApplyUpdates(-1); Найти похожие ветки
← →
ROOT © (2006-01-11 17:58) [0]Господа почему неработае метод ApplyUpdates(-1);
в TClientDataSet.
← →
Desdechado © (2006-01-11 18:20) [1]работает
← →
Nikolay M. © (2006-01-11 20:10) [2]Сначала встречный вопрос в твоем же стиле: а ты перестал пить водку по утрам?
По сабжу согласен с [1]. У всех работает.
Кстати: почему работает метод ApplyUpdates(-1) в TClientDataSet?
:)))
← →
аматор © (2006-01-11 23:37) [3]Привет...
Попробуйте
DataSetProvider*.ResolveToDataSet := True
может поможет :)
← →
Альф (2006-01-12 09:04) [4]У меня тоже когда-то не работало... старый глюк тянущийся еще с Delphi 3.Обновите midas.dll
Nikolay M. © (11.01.06 20:10) [2]
Хамить нехорошо....
← →
Nikolay M. © (2006-01-12 10:40) [5]
> Альф (12.01.06 09:04) [4]
Никто не хамит. Какой вопрос - такой ответ.
"У меня в подвале который год слышен странный стук, уважаемые ученые, объясните, почему он происходит" (с).
А как я объясню, что там у автора "не работает", если у всех "работает", а у него - "не работает"? Особенно в формулировке, аналогичной вопросу о водке.
← →
root © (2006-01-12 11:11) [6]raised exception class EOleException with message "Ошибка синтаксиса (пропущен оператор) в выражении запроса"
key=?
Номер точки=?
Наименование=?
...........
далее следует список всех полей таблицы к которой выполнялось ApplyUpdates
Ошибка генерируется на стороне сервера
тип базы Access-ODBC-ADO-Provider-Remote datamodul(DCOM)
← →
Nikolay M. © (2006-01-12 11:42) [7]В своем RDM перекрой метод AS_Execute, посмотри, что за CommandText генерируется.
← →
root © (2006-01-12 11:44) [8]раньше я работал с данной структурой БД но вместо ODBC использовал BDE и метод ApplyUpdates работал нормально!
как то наталкивался на данную проблему(другого человека) ее решили следующим способом: написали метод на стороне сервера который коректировал ApplyUpdates для всех таблиц но как это делалось непомню подскажите!!!!
← →
root © (2006-01-12 11:48) [9]Nikolay M. © (12.01.06 11:42) [7]
procedure AS_Execute(const ProviderName: WideString; const CommandText: WideString;
var Params: OleVariant; var OwnerData: OleVariant); dispid 20000006;
Как его перекрыть????
Кокретнее....
← →
Nikolay M. © (2006-01-12 11:53) [10]
> Как его перекрыть????
Может, тебе рано пока с трехзвенкой ковыряться, да еще по ДКОМ-у?type
TMyRDM = class(TRemoteDataModule, IMyRDM)
private
...
protected
...
class procedure UpdateRegistry(Register: Boolean; const ClassID, ProgID: string); override;
procedure AS_Execute(const ProviderName: WideString;
const CommandText: WideString; var Params, OwnerData: OleVariant); safecall;
public
...
end;
← →
root © (2006-01-12 12:05) [11]Не учиться никогда нерано
т.е. надо в заголовке процедуры поменять dispid 20000006;
на safecall???
← →
sniknik © (2006-01-12 12:07) [12]> раньше я работал с данной структурой БД
т.е. структура не поменялась? просто как есть перенесена с BDE(например dBаse) в Access (ADO). так?
тогда есть одно отличие, для BDE(dBаse) значимым является порядковый номер (по нему можно однозначно идентифицировать запись. т.е. использовать вместо ключа) в Access (ADO) уже не локальная а клиент серверная архитектура (хотя он(Access) и локальный) и порядковый номер уже ничего не значит... а ключа (возможно, т.к. структура говориш не менялась) нет... вот и ошибка. (одна из...)
← →
root © (2006-01-12 12:11) [13]в таблицах указанны все ключевые поля итд...
ну чтоб выйти из данной ситуации укажите путь в где копать????
← →
Nikolay M. © (2006-01-12 13:19) [14]
> т.е. надо в заголовке процедуры поменять dispid 20000006;
> на safecall???
Ууу... Извини, я умываю руки.
Тебе точно рано еще лезть в трехзвенку, а читать лекции у меня нет времени :(
Читай статьи, разбирайся с примерами, с конкретными вопросами - welcome.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.01.29;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.044 c