Bonjour,
je cherche Ã* intégrer une requête Ã* un script Batigest connect v6
je suis débutante sur le sujet, en tous cas je bidouille pour m'en sortir
j'ai une table contrat comprenant une colonne reparttva formatée de la manière suivante 1@20@2@30@3@50
1@ correspond au taux de tva et le 20 qui suit au % qui correspond
@2@ au taux 2 (Ã* 30%) et @3@ au taux 3 (Ã* 50%)
je veux obtenir 3 colonnes, 'tva1', 'tva2', 'tva3' avec le % pour chaque taux (puis reprendre chaque champ dans une édition) en gros calculer la part de tva pour chaque taux
En SQL, cela fonctionne dans ssms, mais pas dans le script batigest :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 select contrat.code, reparttva,len(reparttva) as LONGUEUR, charindex ('2@', reparttva)+2 as NumDeb, patindex ('%@3@%', reparttva) as NumFin, iif(charindex ('@2@', reparttva)='0',iif(charindex ('@3@', reparttva)=0,5,charindex ('@3@', reparttva)),charindex ('@2@', reparttva)) - (charindex ('1@', reparttva)+2), iif(charindex ('1@', reparttva)='0','0', substring (reparttva,charindex ('1@', reparttva)+2, iif(charindex ('@2@', reparttva)='0', len(reparttva)-(charindex('1@', reparttva)+2), charindex ('@2@', reparttva) - (charindex ('1@', reparttva)+2)))) as tva1, iif(charindex ('2@', reparttva)='0','0', substring (reparttva,charindex ('2@', reparttva)+2, iif(charindex ('@3@', reparttva)='0',len(reparttva)-(charindex('2@', reparttva)+2),charindex ('@3@', reparttva) - (charindex ('2@', reparttva)+2)))) as tva2, iif(charindex ('3@', reparttva)='0','0', substring (reparttva,charindex ('3@', reparttva)+2, iif(charindex ('3@', reparttva)='0','0',len(reparttva)- (charindex ('3@', reparttva)+2)))) as tva3 from contrat
En 'access', cela fonctionne (2003), mais pas dans le script batigest :
Qu'est ce que je rate ? une erreur dans la requête, un problème de compatibilité de fonction? j'ai fait trop compliqué?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT contrat.code, reparttva, len(reparttva) AS LONGUEUR, InStr(reparttva,'2@')+2 AS NumDeb, InStr(reparttva,'*@3@*') AS NumFin, IIf(InStr(reparttva,'@2@')='0',IIf(InStr(reparttva,'@3@')=0,5,InStr(reparttva,'@3@')),InStr(reparttva,'@2@'))-(InStr(reparttva,'1@')+2), IIf(InStr(reparttva,'1@')='0','0',mid(reparttva,InStr(reparttva,'1@')+2,IIf(InStr(reparttva,'@2@')='0',len(reparttva)-(InStr(reparttva,'1@')+2),InStr(reparttva,'@2@')-(InStr(reparttva,'1@')+2)))) AS tva1, IIf(InStr(reparttva,'2@')='0','0',mid(reparttva,InStr(reparttva,'2@')+2,IIf(InStr(reparttva,'@3@')='0',len(reparttva)-(InStr(reparttva,'2@')+2),InStr(reparttva,'@3@')-(InStr(reparttva,'2@')+2)))) AS tva2, IIf(InStr(reparttva,'3@')='0','0',mid(reparttva,InStr(reparttva,'3@')+2,IIf(InStr(reparttva,'3@')='0','0',len(reparttva)-(InStr(reparttva,'3@')+2)))) AS tva3 FROM contrat;
Le message d'erreur : "propriété commandText n'a pas pu être initialisée"
D'avance merci Ã* ceux ou celles qui se pencheront sur mon truc indigeste, je n'ai plus d'idées et j'en ai ras le bol !!
Partager