I've created a succesfull connection to Caché from SQL Server.
But when I run a SELECT on a table it gives an error on for example PrijsAkCatV.
Probably a datatype-error.
Does someone has a solution for this problem ?
Caché Table :
Property PrijsAkCatVm As Asci.Getal(CAPTION = "Aankoopprijs VM", HINT = "Bruto aankoopprijs in vreemde munt|De bruto aankoopprijs (catalogusprijs) in vreemde munt per eenheid van aankoop.#Prix d'achat brute en devise|Le prix d'achat brute en devise par unité d'achat.", SCALE = 4);
Class Asci.Getal Extends %Library.Numeric
{ Parameter HINT; Parameter VIEW = 1; Parameter VISIBLE = 1; Parameter VOLGORDE; /// Zorgt ervoor dat de output numeriek is.
/// Was een probleem als er getallen in de zone zaten met vooraan een punt vb .23
ClassMethod StorageToLogical(%val As %Library.String) As %Library.Numeric
{
Q +%val
} }
External Table :
CREATE EXTERNAL TABLE Producten(
ID INT NOT NULL,
ProdCode NVARCHAR (255) NULL,
ProdNaam NVARCHAR (255) NULL,
PrijsAkCat NUMERIC (15,4) NULL,
PrijsAkCatVm NUMERIC (15,4) NULL,
PrijsAkNetto NUMERIC (15,4) NULL,
PrijsVkexcl NUMERIC (15,4) NULL,
PrijsVkincl NUMERIC (15,4) NULL
) WITH (
LOCATION='ASCISQL.DkDis.Producten',
DATA_SOURCE=intersystems_source
);
Query :
SELECT TOP (1000) [ID]
,[ProdCode]
,[ProdNaam]
,[PrijsAkCat]
,[PrijsAkCatVm]
,[PrijsAkNetto]
,[PrijsVkexcl]
,[PrijsVkincl]
FROM [ASCISQL].[dbo].[Producten]
Error :
Msg 7320, Level 16, State 110, Line 1
Cannot execute the query "Remote Query" against OLE DB provider "MSOLEDBSQL" for linked server "(null)". 105082;Generic ODBC error: OdbcBufferReader.ReadBuffer, error in OdbcReadBuffer: SqlState: IM001, NativeError: 0, 'Error calling: SQLSetDescField(this->GetHdesc(), (SQLSMALLINT)column->idxServerCol, SQL_DESC_TYPE, (VOID*)column->odbcReadType, 0), SQL return code: -1 | SQL Error Info: Error <1>: ErrorMsg: [Microsoft][ODBC Driver Manager] Driver does not support this function | Error calling: pReadConn->ReadBuffer(pBuffer, bufferOffset, bufferLength, pBytesRead, pRowsRead) | state: FFFF, number: 40, active connections: 1', Connection String: Dsn=ASCISQL;uid=_SYSTEM;server=127.0.0.1;port=1972;database=ASCISQL.