Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 5 6 7 8 9 [10] 11 12 13 14 .. 45   вперед  Ctrl
 Re: FireDAC  [new]
CDex
Member

Откуда: Жуковский
Сообщений: 99
Задам возможно глупый вопрос: сейчас все еще можно купить отдельно FireDAC и есть ли версия для Delphi7?
25 июн 14, 17:20    [16218852]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
tb3
Member

Откуда:
Сообщений: 164
vavan
tb3
Каким образом можно получить исходное сообщение (без квадратных скобок FireDAC)
лепить свой обработчик ошибок где избавляться от них или хачить например uADStanError.ADExceptionLayers
фича-реквест по избавлению от этого ужаса дима загасил

Очень бы хотелось узнать о причинах закрытия фич-реквеста, в поддержку которого скажу, что мы используем
RAISERROR 50000 'ошибка'
в триггере, чтобы передать осмысленный текст ошибки из триггера пользователю. А код ошибки нужен, чтобы программно обработать ошибки в остальных случаях. Например, запись нельзя удалить, т.к. на нее есть ссылки, или дублирование значения уникального индекса, причем с описанием таблиц и полей из MS_Description.
25 июн 14, 17:33    [16218952]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
vavan
Member

Откуда: Казань
Сообщений: 3366
tb3
код ошибки нужен
с сиквелом вообще (тем паче его триггерами) я либу никогда не юзал, исключительно с ораклом так что не в курсе как там с возвратом кодов ошибок обстоит, хотя полагаю должны честно вертаться
25 июн 14, 18:04    [16219180]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 60157
vavan> фича-реквест по избавлению от этого ужаса дима загасил

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

Posted via ActualForum NNTP Server 1.5

25 июн 14, 19:18    [16219527]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
vavan
Member

Откуда: Казань
Сообщений: 3366
Гаджимурадов Рустам
где там можно увидеть статус, комментарии
прям по ссылке же, declined, без комментов
Гаджимурадов Рустам
непонятен отказ, если дополнительное
свойство ничему и никому не мешает
т.к. уважаемый автор здесь регулярно появляется позволю себе не высказывать свои предположения
26 июн 14, 08:57    [16221041]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 60157
vavan> прям по ссылке же, declined, без комментов

Тьфу, теперь вижу. Ну и интерфейс.

Posted via ActualForum NNTP Server 1.5

26 июн 14, 10:59    [16221821]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Dmitry Arefiev
Member

Откуда:
Сообщений: 9744
tb3
Каким образом можно получить исходное сообщение (без квадратных скобок FireDAC) и код ошибки, которая произошла в триггере представления в SQL Server?

http://docwiki.embarcadero.com/RADStudio/XE6/en/Handling_Errors_(FireDAC)
http://docwiki.embarcadero.com/Libraries/XE6/en/FireDAC.Phys.MSSQL.EMSSQLNativeException
http://docwiki.embarcadero.com/Libraries/XE6/en/FireDAC.Phys.MSSQL.TFDMSSQLError
26 июн 14, 20:20    [16225825]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
white_nigger
Member

Откуда: Тула
Сообщений: 2160
Дима, я тебе письмецо отправил по четвертой бете. Здесь просто напоминаю, а то судя по количеству изменений у тебя опять запара и ты о нём можешь забыть :)
5 авг 14, 22:46    [16403746]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
АнатоЛой
Member

Откуда: Киев, Украина
Сообщений: 2897
Блог
Дмитрий небось в отпуске :)
6 авг 14, 15:28    [16407203]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
white_nigger
Member

Откуда: Тула
Сообщений: 2160
АнатоЛой
Дмитрий небось в отпуске :)
Он уже отгулял, а сейчас, скорее, вкалывает как прОклятый...
6 авг 14, 19:42    [16408515]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
tb3
Member

Откуда:
Сообщений: 164
При вызове TFDJSONDataSetsWriter.ListAdd возникает ошибка нехватки памяти.
Можно как-то передавать огромные наборы данных в TFDJSONDataSets между DataSnap REST сервером и клиентом?
Кроме того в Data.FireDACJSONReflect.DataSetToString в строке LMemTable.Active := True; происходит повторное открытие набора данных независимо от того открыт ли он, и несмотря на то, что разницы в результате между TFDAdaptedDataSet.SaveToStream и TFDCustomMemTable.SaveToStream нет.
Delphi XE5 Update2
12 авг 14, 15:48    [16431912]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
rgreat
Member

Откуда:
Сообщений: 5216
Попробуй собрать под 64 бита.
12 авг 14, 15:56    [16431988]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
tb3
Member

Откуда:
Сообщений: 164
rgreat,
Этот способ решения хотелось бы пока не применять из-за дополнительного ограничения серверной части - 64-бит ОС. Не такое уж и большая претензия к серверу, но все же.

Может быть удастся применить листание данных в FireDac http://webcache.googleusercontent.com/search?q=cache:3Lq8gaTB8YsJ:https://forums.embarcadero.com/thread.jspa?threadID=105156 (их форум уж часто лежит) с перевыборкой запроса у SQL-сервера или кэширования результата запроса в файле и передачей его клиенту частями. Есть способ получше?
12 авг 14, 16:36    [16432347]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Michael Longneck
Member

Откуда: Москва
Сообщений: 2298
Бида.

Есть TАDQuery, в нём InternalCalc поля. При попытке присваивать им значения в OnCalcFields и при выставленном Filtered и OnFilterRecord у TADQuery наблюдаю stack overflow. Потому как привоение значения поля по цепочке приводит к новому вызову OnCalcFields. Как это обойти или починить?
12 авг 14, 19:41    [16433404]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Dmitry Arefiev
Member

Откуда:
Сообщений: 9744
white_nigger
АнатоЛой
Дмитрий небось в отпуске :)
Он уже отгулял, а сейчас, скорее, вкалывает как прОклятый...

Почти отвкалывался ... :)
12 авг 14, 19:43    [16433406]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Dmitry Arefiev
Member

Откуда:
Сообщений: 9744
Michael Longneck
Как это обойти или починить?

Шли пример.
12 авг 14, 19:44    [16433414]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Michael Longneck
Member

Откуда: Москва
Сообщений: 2298
Не вопрос. Упадёт по кнопке.

К сообщению приложен файл (Project3.zip - 59Kb) cкачать
12 авг 14, 21:16    [16433676]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Dmitry Arefiev
Member

Откуда:
Сообщений: 9744
Поправил. Патч присоединил. Попробуй и скажи как работает.

К сообщению приложен файл (filter.patch - 11Kb) cкачать
12 авг 14, 22:32    [16433932]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
TMemTable
Guest
Можно ли, в текущей версии FireDAC, использовать в полном объеме TMemTable в трехзвенке DataSnap или лучше использовать TClientDataSet?
Спасибо.
13 авг 14, 10:28    [16435016]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
tb3
Member

Откуда:
Сообщений: 164
Дмитрий, пожалуйста, посмотрите тестовый проект DataSnap REST Application.
1) При передаче 600,000 записей запроса на базе fddemo.sdb
select o1.* from orders o1 cross join orders o2 limit 600000
происходит Out of memory на сервере (1ГБ Peak Working Set в диспетчере задач).
2) при 500,000 Out of memory на клиенте или сервере (860МБ PWS сервера)
3) при 400,000 проходит, но с огромным потреблением памяти как сервера (1,128МБ), так и клиента (1,550МБ) причем затраченное процессорное время CPU Time на клиенте примерно в 2 раза выше, чем на сервере.
Оба процесса 32-бит и выполняются на одной машине.
Delphi XE5 Update2, Windows 7 x86 SP1

К сообщению приложен файл (FDLargeDS_src.7z - 86Kb) cкачать
13 авг 14, 12:56    [16436022]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Michael Longneck
Member

Откуда: Москва
Сообщений: 2298
Dmitry Arefiev
Поправил. Патч присоединил. Попробуй и скажи как работает.


Вроде работает. Накатывать руками патч, даже маленький - мука. Но спасибо большое, это был show stopper для нас.
13 авг 14, 13:32    [16436275]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Марат Сафин
Member

Откуда:
Сообщений: 619
tb3,
FireDAC тут скорей всего не причём, это особенность работы TClientDataSet. У TClientDataSet есть возможность загружать данные не все сразу, а подгружать порциями свойство PacketRecords, но не уверен что это решит проблему.
Лучшее решение будет разбивать большой набор данных на порции.
13 авг 14, 14:09    [16436620]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
Марат Сафин
Member

Откуда:
Сообщений: 619
Упс, там оказывается вообще нету ClientDataSet :)
13 авг 14, 14:14    [16436666]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
vavan
Member

Откуда: Казань
Сообщений: 3366
подобные объемы таскать уметь надо мне чтоб это работало с cds не только сам мидас расколбасить пришлось но и транспорт городить взамен dcom...
13 авг 14, 14:24    [16436720]     Ответить | Цитировать Сообщить модератору
 Re: FireDAC  [new]
tb3
Member

Откуда:
Сообщений: 164
Много памяти употребляется в Data.FireDACJSONReflect.DataSetToJSONValue
S := DataSetToString(ADataSet); //запрашивается память около 200МБ памяти, хотя Length(S)=46,433,680 символов, затем около 100МБ возвращается
Result := TJSONString.Create(S); //запрашивается еще 180МБ, хотя строка по сути копируется, Length(TJSONString(Result).Value)=46,433,680
Быть может, обращение с памятью можно сделать эффективнее.
13 авг 14, 15:19    [16437042]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 5 6 7 8 9 [10] 11 12 13 14 .. 45   вперед  Ctrl
Все форумы / Delphi Ответить