Bonjour à tous,
J'ai un problème de somme avec SQL Server Management Studio 2008.
J'ai une requête de la forme :
Je ne vous ai pas mis toute la requête car il n'y en a besoin ici. Juste la table #ZBALANCE est une table temporaire créée au début du script.
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
17
18
19
20
21
22
23
24
25
26 INSERT INTO #ZBALANCE SELECT 'D' AS COL1, '' AS COL2, '1' AS COL3, '' AS COL4, '019A' AS COL5, '' AS COL6, EG.CG_NUM AS COL7, '' AS COL8, EG.EC_INTITULE AS COL9, CAST(EG.EC_Sens AS nvarchar(50)) AS COL10, CAST((CASE WHEN EG.EC_SENS=0 THEN EG.EC_MONTANT ELSE EG.EC_MONTANT*-1 END) AS nvarchar(50)) AS COL11, '' AS COL12, ... 0 AS COL26, CAST(EG.EC_Sens AS decimal(1)) * CAST(EG.EC_Montant AS decimal(20,6)) AS COL27 FROM dbo.F_ECRITUREC EG INNER JOIN dbo.F_COMPTEG CG on CG.CG_NUM=EG.CG_NUM WHERE YEAR(EG.JM_DATE)=2009 AND EG.EC_POINT = 0 AND EG.JO_NUM!='IFRS' AND CG.N_Nature='4' AND EG.EC_Lettrage = '' ORDER BY COL24, COL25;
Je récupère bien les bonnes données, mais, pour une raison que j'ignore, ma colonne COL27 ne se calcule pas bien pour certaines données.
En effet, j'obtiens ceci :
Vous l'aurez compris, la colonne COL27 (dernière en rouge) est normalement égale au produit de la colonne COL10 et la colonne COL11 (signe -> -1 négatif et 1 positif, et montant)....
29;D;29;1;29;019A;;4011000;test;Design;1;1092.910000;;;A;FR1;//REF PIECE L100 : FC091203 - LETTRAGE : A;;;;;;;;401198;test;29;1092.910000
30;D;30;1;30;019A;;4011000;test;Design;1;362.390000;;;A;FR1;//REF PIECE L100 : 30/11/09 - LETTRAGE : A;;;;;;;;401198;test;30;0.000000
31;D;31;1;31;019A;;4011000;test;Design;1;2687.030000;;;A;FR1;//REF PIECE L100 : 31/10/09 - LETTRAGE : A;;;;;;;;401198;test;31;0.000000
32;D;32;1;32;019A;;4011000;test;Design;1;299.000000;;;;FR1;//REF PIECE L100 : FF071452;;;;;;;;401198;test;32;299.000000
33;D;33;1;33;019A;;4011000;test;Design;1;418.600000;;;;FR1;//REF PIECE L100 : FF072035;;;;;;;;401198;test;33;418.600000
34;D;34;1;34;019A;;4011000;test;Design;1;1255.800000;;;;FR1;//REF PIECE L100 : FF072673;;;;;;;;401198;test;34;1255.800000
35;D;35;1;35;019A;;4011000;test;Design;1;14.870000;;;C;FR1;//REF PIECE L100 : VIRT EMIS CB - LETTRAGE : C;;;;;;;;401198;test;35;0.000000
...
SQL Server a t-il des problèmes pour calculer dans un insert/select ?
PS : la première colonne est un id généré automatiquement.
Merci de m'aider.
Cordialement.
Partager