Notes |
(0015687)
ZENsan (reporter)
2009-06-16 14:49
|
Forgot to say... It is in Delphi 2009 :) |
|
(0015688)
ZENsan (reporter)
2009-06-16 15:13
|
Also affected Filtering.. Every place where is staement = ftString, but not in [ftString, ftWideString]. affect delphi 2009.. |
|
(0015689)
ZENsan (reporter)
2009-06-16 15:38
|
JvMemoryDataset.pas:
procedure TJvMemoryData.SetFiltered(Value: Boolean);
begin
if Active then
begin
CheckBrowseMode;
if Filtered <> Value then
begin
inherited SetFiltered(Value);
First;
end;
end
else
inherited SetFiltered(Value);
end;
But MUST be (like in TBDETable) this way:
procedure TJvMemoryData.SetFiltered(Value: Boolean);
begin
if Active then
begin
CheckBrowseMode;
if Filtered <> Value then
inherited SetFiltered(Value);
First;
end
else
inherited SetFiltered(Value);
end;
The original CodeGear code is:
procedure TBDEDataSet.SetFiltered(Value: Boolean);
begin
if Active then
begin
CheckBrowseMode;
if Filtered <> Value then
begin
DestroyLookupCursor;
DbiSetToBegin(FHandle);
if Value then ActivateFilters else DeactivateFilters;
inherited SetFiltered(Value);
end;
First;
end else
inherited SetFiltered(Value);
end;
There you see that "First;" goes after "end;". |
|
(0015691)
AHUser (developer)
2009-06-16 19:16
|
Why is AnsiLowerCase wrong? For AnsiSameText/AnsiSameStr it is the missing SORT_STRINGSORT flag, but what's wrong with AnsiLowerCase? |
|
(0015693)
ZENsan (reporter)
2009-06-16 19:57
|
Maybe I am wrong.. As I remember AnsiSameStr get parameters AnsiString, not unicode string like field value can return in Delphi 2009. |
|
(0015694)
AHUser (developer)
2009-06-16 20:11
|
The "Ansi" prefix was kept for compatibility reasons in Delphi 2009. The functions accept "UnicodeString" instead of "AnsiString". |
|
(0015698)
ZENsan (reporter)
2009-06-17 08:04
|
The main problem that (1) Filtering and (2) Locate do not work with ftWideString, because this type is just not included in comparision as I described in Description.
(3) And Filter := True must refilter data (like in all TTable components which I know), but JvMemoryData do not do this because of - my comment above.
So 3 problems which are easy to fix. |
|
(0015772)
ZENsan (reporter)
2009-07-07 12:35
|
Still doesnt work with ftWideString...
Just need to add ftWideString in comparisions. |
|
(0015773)
ZENsan (reporter)
2009-07-07 12:36
|
at least for Delphi 2009... |
|
(0015803)
obones (administrator)
2009-07-09 13:41
|
So, where does it need to be added? |
|
(0015861)
ZENsan (reporter)
2009-07-17 17:02
|
JvDBUtils.pas:
if Field.DataType = ftString then
These lines for D2009 must be
if Field.DataType in [ftString, ftWideString] then
And also read 3rd comment |
|
(0015862)
ZENsan (reporter)
2009-07-17 17:02
|
If we upgrde that
if Field.DataType = ftString then
for all version of delphi, then we need to handle there ftWideString separately |
|
(0015868)
obones (administrator)
2009-07-21 11:15
|
I would really appreciate a patch file in TortoiseSVN format against the latest sources |
|
(0015874)
ZENsan (reporter)
2009-07-22 14:09
|
I uploaded patch diff files for latest revision 12405 |
|
(0015875)
ZENsan (reporter)
2009-07-22 14:14
|
Please do not apply JvDBUtils.diff, but apply JvDBUtils-last.diff.
I mixed up COMPILER12_UP with COMPILER12_UP, COMPILER12_UP is the right |
|
(0015877)
ZENsan (reporter)
2009-07-22 14:28
|
...
I mixed up COMPILER11_UP with COMPILER12_UP, COMPILER12_UP is the right
...
:) |
|
(0015895)
ZENsan (reporter)
2009-07-30 08:20
|
Diff files still will work with latest revision from SVN... |
|
(0015897)
ZENsan (reporter)
2009-08-03 08:24
|
Can someone check this patch?
JvMemoryDataset.diff
JvDBUtils - last.diff |
|
(0015900)
obones (administrator)
2009-08-04 09:35
|
JvMemoryDataset is in.
But JvDBUtils got me thinking: ftWideString is not a new value in D2009, it existed long before. So why limit it to D2009+ ? |
|
(0015914)
ZENsan (reporter)
2009-08-04 15:01
|
Because only in Delphi 2009 working with ftWideString is acceptable. because functions uses method AsString, and this method in Delphi prior to Delphi 2009 for field ftWideString will return ??? marks for unicode symbols.
I think it is not so good...
Maybe I am wrong. |
|
(0015916)
ZENsan (reporter)
2009-08-04 15:06
|
And there is too much work for updating all the functions from string parameter...
I think it is the correct way to change this. |
|
(0015990)
ZENsan (reporter)
2009-08-13 13:22
|
So? |
|
(0015992)
obones (administrator)
2009-08-13 14:21
|
This is now in SVN |
|