Oracle
 sql >> Database >  >> RDS >> Oracle

Eccezione formato Oracle Date in SQL Server Reporting Services

SSRS 2008 utilizzava il vecchio System.Data.OracleClient. In SSRS 2016 e versioni successive è necessario installare il provider Oracle ODP.NET, creato e supportato da Oracle. Quindi probabilmente solo una differenza nel modo in cui il parametro di sessione NLS_DATE_FORMAT è impostato dai due driver.

Puoi vedere la tua impostazione se aggiungi un set di dati al tuo rapporto con questa query:

select parameter, value 
from nls_session_parameters 
where parameter like 'NLS%'
order by parameter

Sfortunatamente non sembra esserci un modo per modificare globalmente il formato della data del client in Oracle.ManagedDataAccess, quindi dovrai apportare tutte le modifiche nelle query del set di dati del report.

In alternativa, puoi provare ad assicurarti di passare i parametri Date e non i parametri stringa. Se passi una data alla funzione to_date() di Oracle, non è necessario specificare un formato.

I documenti per SSRS 2014 "Questo tipo di origine dati integrato si basa sul provider gestito .NET Framework per Oracle e richiede un componente software client Oracle."

E per SSRS 2016 "Questo tipo di origine dati integrato utilizza direttamente Oracle Data Provider e richiede un componente software client Oracle."