error with sqlite in direct mode and x64

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
nicola.nicoletti
Posts: 3
Joined: Wed 06 Nov 2019 09:58

error with sqlite in direct mode and x64

Post by nicola.nicoletti » Wed 06 Nov 2019 10:03

hi
i have a problem using unidac with sqlite provider in direct mode.
if i run this sqlite query

SELECT strftime('%m', DATA_ESI) as mese,
SUM(CASE WHEN TIPO_RIL LIKE 'A' THEN PREMIO ELSE 0 END)*1.0 AS PREMIANNUI,
SUM(CASE WHEN TIPO_RIL LIKE 'A' AND TARV_TIPO_PREMIO LIKE 'PA' AND (TARV_TIPO1A LIKE 'IND%TCM' OR TARV_TIPO1A LIKE 'IND%LTC') THEN PREMIO ELSE 0 END)*1.0 AS PREMIANNUIPATCM,
SUM(CASE WHEN TIPO_RIL LIKE 'A' AND TARV_TIPO_PREMIO LIKE 'PR' AND TARV_TIPO1A LIKE 'IND%FIP' THEN PREMIO ELSE 0 END)*1.0 AS PREMIANNUIPRFIP,
SUM(CASE WHEN TIPO_RIL LIKE 'A' AND TARV_TIPO_PREMIO LIKE 'PR' AND ( TARV_TIPO1A LIKE 'IND%UNIT' OR (TARV_TIPO1A LIKE 'IND%TRAD' AND RAM_POL IN (315,515,615,715) ) ) THEN PREMIO ELSE 0 END)*1.0 AS PREMIANNUIPRUNIT,
SUM(CASE WHEN TIPO_RIL LIKE 'A' AND TARV_TIPO_PREMIO LIKE 'PR' AND RAM_POL IN (89) AND TARV_TIPO1A LIKE 'IND%TRAD' THEN PREMIO ELSE 0 END)*1.0 AS PREMIANNUIPRALTRI,
SUM(CASE WHEN TIPO_RIL LIKE 'U' THEN PREMIO ELSE 0 END)*1.0 AS PREMIUNICI,
SUM(CASE WHEN TIPO_RIL LIKE 'U' AND TARV_TIPO_PREMIO LIKE 'PR' AND TARV_TIPO1A LIKE 'IND%FIP' THEN PREMIO ELSE 0 END)*1.0 AS PREMIUNICIPRFIP,
SUM(CASE WHEN TIPO_RIL LIKE 'U' AND TARV_TIPO_PREMIO LIKE 'PR' AND ( TARV_TIPO1A LIKE 'IND%UNIT' OR (TARV_TIPO1A LIKE 'IND%TRAD' AND RAM_POL IN (315,515,615,715) ) ) THEN PREMIO ELSE 0 END)*1.0 AS PREMIUNICIPRUNIT,
SUM(CASE WHEN TIPO_RIL LIKE 'U' AND TARV_TIPO_PREMIO LIKE 'PU' AND TARV_TIPO1A LIKE 'IND%TCM' THEN PREMIO ELSE 0 END)*1.0 AS PREMIUNICIPUTCM,
SUM(CASE WHEN TIPO_RIL LIKE 'U' AND TARV_TIPO_PREMIO LIKE 'PU' AND ( TARV_TIPO1A LIKE 'IND%UNIT' OR (TARV_TIPO1A LIKE 'IND%TRAD' AND RAM_POL IN (315,515,615,715) ) ) THEN PREMIO ELSE 0 END)*1.0 AS PREMIUNICIPUUNIT
FROM PROD_VITA
group by mese

when i'm using inside uniquery editor sql query in direct i receive a result.
When i'm using without direct mode i receive a different result that is the same with a sqlite browser
when i compile in x64 receive a access violation.

I'm using delphi rio on Windows 10 with unidac 7.4.12.
same problem there is on 7.5

i have shared a link for download source and db test in delphi

https://1drv.ms/u/s!AuFvPxVTqLnJgfV6k53 ... Q?e=NQpFnF
Last edited by nicola.nicoletti on Wed 06 Nov 2019 10:26, edited 2 times in total.

nicola.nicoletti
Posts: 3
Joined: Wed 06 Nov 2019 09:58

Re: error with sqlite in direct mode and x64

Post by nicola.nicoletti » Wed 06 Nov 2019 10:07

i have shared a link for download source and db test in delphi

https://1drv.ms/u/s!AuFvPxVTqLnJgfV6k53 ... Q?e=NQpFnF

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: error with sqlite in direct mode and x64

Post by MaximG » Thu 07 Nov 2019 14:22

The error you described was corrected. Test your project with the latest version of UniDAC 8.0.1

nicola.nicoletti
Posts: 3
Joined: Wed 06 Nov 2019 09:58

Re: error with sqlite in direct mode and x64

Post by nicola.nicoletti » Thu 07 Nov 2019 16:27

I can't upgrade to 8.01 because i can't install rio update 2.
I have compatibility problems with third-party products

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

Re: error with sqlite in direct mode and x64

Post by MaximG » Mon 11 Nov 2019 11:58

UniDAC 8.0.1 requires Embarcadero RAD Studio 10.3 Rio Update 2 (Build 26.0.34749.6593) :
https://www.devart.com/unidac/compatibility.html
This requirement is due to the new capability introduced in the lastest UniDAC version, namely support for the macOS 64-bit platform. Only RAD Studio 10.3 Rio Update 2 allows to develop applications for macOS 64-bit. If you want to install UniDAC for any other version of Embarcadero RAD Studio 10.3 Rio, you need to use UniDAC Professional Edition with source code.

Post Reply