Icon View Thread

The following is the text of the current message along with any replies.
Messages 11 to 20 of 36 total
Thread Problem with UPPER()
Thu, Aug 28 2014 2:43 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Mark


Possibly crazy questions but what are you displaying the output in? are there any OnGetText handlers defined? have you any user defined functions that could be overriding UPPER? what happens if you revert to an earlier verion of DBISAM? can you produce a small test app (code & data) to post to the binaries?

DBSys produces the correct result, Raul in a VM produces the right result so I'm still betting on something in your code.

I have had problems (not the same as this) where I've had to go through deleting / replacing components until I found the problem.

Roy Lambert
Thu, Aug 28 2014 4:18 AMPermanent Link

Matthew Jones

My only thought is to look at the release notes for this version, to
see if anything was changed in the area. What might have caused this to
fail?

I also note that the full code has that ORDER BY which might do
something different. I think the idea of executing the *exact* SQL in
DbSys is a very good one.

--

Matthew Jones
Thu, Aug 28 2014 4:24 PMPermanent Link

Mark Shapiro

Thank you everyone for your suggestions. I provide tech support to folks all day long, and your questions are exactly what I would have asked them if they came to me with the same problem. I would not have believed in a thousand years that any problem they were seeing could have anything to do with the UPPER() function.

The lack of capitalization occurs with any kind of viewer. I've tried Evaluate/Modify in Delphi, a ShowMessage loop, and a text file export directly from the created table. It occurs regardless of the code that is used, simple or complex, that includes an UPPER() function. The query component is completely stripped down and has no attached events. I have also copied the exact code into DBSYS where it runs properly

As an experiment, I just copied the codebase from my primary Windows 8.1 machine to a Windows XP machine with DBISAM version 4.33 Build 1 installed and ran it there. The UPPER() function worked as expected in every instance. What do you make of that?

Mark Shapiro
infocus@swbell.net
Thu, Aug 28 2014 6:39 PMPermanent Link

Raul

Team Elevate Team Elevate

On 8/28/2014 4:24 PM, Mark Shapiro wrote:

Mark,

> It occurs regardless of the code that is used, simple or complex, that includes an UPPER() function.

As i mentioned i cannot duplicate it with D7 and 4.39 B2 so there must
be something else still that's different.

Have you tried to re-download and reinstall 4.39 b2 on your Win 8 machine?

The only other suggestion is try my test app and see what happens.

Zip of project is here: http://ge.tt/4KJAmas1/v/0


> As an experiment, I just copied the codebase from my primary Windows 8.1 machine to a Windows XP machine with DBISAM version 4.33 Build 1 installed and ran it there. The UPPER() function worked as expected in every instance. What do you make of that?

Mystery for sure.

Can i assume your primary Win 8.1 was running an older DBISAM version
before?

The only reason i'm asking is that at this point (unless i missed a
post) the issue is still specific to your Win8 + dbisam 4.39 b2.

So my only other suggestion is try either 4.39b2 with the XP or revert
the win 8.1 back to 4.33 b1 and see what happens.

In order to not rule our anything else what's the dbisam edition you're
using ? in my case it's DBISAM VCL-CS-SRC.

Raul
Mon, Sep 1 2014 4:28 AMPermanent Link

Matthew Jones

Mark Shapiro wrote:

> The UPPER() function worked as expected in every instance. What do
> you make of that?

I'd be looking at the code that implements UPPER, and specifically the
operating system function. It may be that there is some codepage or
some such thing that means that the character set doesn't have upper
case conversions or something.

--

Matthew Jones
Tue, Sep 2 2014 4:09 PMPermanent Link

Mark Shapiro

I removed DBISAM 4.39 build 2 and replaced it with version 4.33 build 4. Neither UPPER() nor LOWER() worked. So this would appear to be an operating system issue rather than a DBISAM issue.

I'm showing a locale of 1033, a locale_idefaultcodepage of 11, and a locale_idefaultansicodepage of 4100. The locale in the Windows 8.1 control panel is United States.

I'm completely stumped and would welcome any suggestions about what to try next to get this code working properly.

Mark Shapiro
infocus@swbell.net
Wed, Sep 3 2014 3:38 AMPermanent Link

Matthew Jones

Mark Shapiro wrote:

>  The locale in the Windows 8.1 control panel is United States.

I suggested this about another issue recently, and was wrong, but it's
worth a try... Windows has a problem with the locales and the first
set-up sometimes. The solution is to set the locale to somewhere like
Spain, then reboot, then set it back to where you really want it, then
reboot, and it should have stuck. I don't know if it applies in Windows
8.x, but it has to be worth a try. Beyond that, I'd say only a look at
the source would answer...

--

Matthew Jones
Wed, Sep 3 2014 4:04 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Mark


Can you create a small test case and post that (exe, source and table(s)) to the binaries so that others can try running it. At least that way we can identify if its just your machines or if there's a wider problem.

I won't be able to test here since I'm all W7.

Roy Lambert
Wed, Sep 3 2014 8:01 AMPermanent Link

Mark Shapiro

Here is a sample project with code and executable. Again this was developed with Delphi 7 on a Windows 8.1 machine.

Mark Shapiro
infocus@swbell.net



Attachments: UpperTest.zip
Wed, Sep 3 2014 8:38 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Mark


Now we just need a few people with W8.1 machines to try it out

Its not helpful but just to let you know it works here on all my W7 machines.

Roy Lambert
« Previous PagePage 2 of 4Next Page »
Jump to Page:  1 2 3 4
Image