Bonjour je travail sous access en sql direct afin d'aller chercher des infos sur des tables situé dans Oracle!
je souhaite faire un case when (equivalent au IIF) sur un certain type de donnée, generalement tout mes case when fonctionne parfaitement bien mais celui ci ne veut pas fonctionner!
Voici le code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
SELECT
CASE
WHEN LGR_M.LOHNSATZ_23 <> 0 AND PLG_D.PERSZAHL = 1 THEN LGR_M.LOHNSATZ_23 / 3600
WHEN LGR_M.LOHNSATZ_23 <> 0 AND PLG_D.PERSZAHL = 2 THEN LGR_M.LOHNSATZ_23 / 60
WHEN LGR_M.LOHNSATZ_23 <> 0 AND PLG_D.PERSZAHL > 2 THEN LGR_M.LOHNSATZ_23
WHEN LGR_M.LOHNSATZ_12 <> 0 AND PLG_D.PERSZAHL = 1 THEN LGR_M.LOHNSATZ_12 / 3600
WHEN LGR_M.LOHNSATZ_12 <> 0 AND PLG_D.PERSZAHL = 2 THEN LGR_M.LOHNSATZ_12 / 60
WHEN LGR_M.LOHNSATZ_12 <> 0 AND PLG_D.PERSZAHL > 2 THEN LGR_M.LOHNSATZ_12 
WHEN LGR_M.LOHNSATZ_1 <> 0 AND PLG_D.PERSZAHL = 1 THEN LGR_M.LOHNSATZ_1 / 3600
WHEN LGR_M.LOHNSATZ_1 <> 0 AND PLG_D.PERSZAHL = 2 THEN LGR_M.LOHNSATZ_1 / 60
WHEN LGR_M.LOHNSATZ_1 <> 0 AND PLG_D.PERSZAHL > 2 THEN LGR_M.LOHNSATZ_1
END
 
FROM (((DBFEAL.BAP_D INNER JOIN DBUSAL.ZKZ_M ON BAP_D.TEB_TE_ZEITSCHL = ZKZ_M.ZEITKZ) INNER JOIN DBFEAL.BTA_D  ON BAP_D.BANR = BTA_D.BANR) INNER JOIN DBFEAL.LGR_M ON BAP_D.LOHNGRUPPE = LGR_M.LOHNGRUPPE) INNER JOIN DBFEAL.PLG_D ON BAP_D.LOHNGRUPPE = PLG_D.LOHNGRUPPE
;

Voici le message d'erreur:
"Précision non valide pour le type de données décimal"

Est ce que quelqu'un connaitrai la solution a ce probleme!
de plus lorsque je tente de nommer ce champs As "cout" j'ai message d'erreur
ORA00911:invalid character(#911)


MERCI BEAUCOUP!!!