Page 1 of 1

error with sqlite in direct mode and x64

Posted: Wed 06 Nov 2019 10:03
by nicola.nicoletti
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

Re: error with sqlite in direct mode and x64

Posted: Wed 06 Nov 2019 10:07
by nicola.nicoletti
i have shared a link for download source and db test in delphi

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

Re: error with sqlite in direct mode and x64

Posted: Thu 07 Nov 2019 14:22
by MaximG
The error you described was corrected. Test your project with the latest version of UniDAC 8.0.1

Re: error with sqlite in direct mode and x64

Posted: Thu 07 Nov 2019 16:27
by nicola.nicoletti
I can't upgrade to 8.01 because i can't install rio update 2.
I have compatibility problems with third-party products

Re: error with sqlite in direct mode and x64

Posted: Mon 11 Nov 2019 11:58
by MaximG
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.