Datacolumn.Expression et les ^

surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010 - 12 sept. 2007 à 09:41
surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010 - 12 sept. 2007 à 09:43
Bonjour
j'utilise la propriété expression d'une colonne d'agrega que je construi donc a la "volée"
J'ai tout un tas de fonction qui sont ok, sauf pour un cas particulier ou je souhaite utilisé une valeur exponentielle, quand je regarde la doc, le signe ^ (exp) fait bien parti des operateur gérer mais voila au runtime j'ai une erreur me disant que : " L'expression contient un opérateur '^' non pris en charge."

Voici la partie de code que j'utilise :
                        Case "32 bits non signé(format T5 MiCom M230) MFo/Mfa/OFo/OFa"
                            Try
                                Dim ColExp As New DataColumn("Exposant")
                                Me.DsV.Tables(0).Columns.Add(ColExp)
                                Dim Exposant As String = "(Convert(" & FiDcName & _
                                "_1,'System.Int32'))"

                                ColExp.Expression = "IIF(" & _
                                Exposant & ">= 128," & Exposant & " - 256," & Exposant & ")"

                                '(MotFo_OctFa * 65536 + MotFa_OctFo * 256 + MotFa_OctFa) * 10 ^ Exposant
                                ColTmp.Expression = "(Convert(" & FiDcName & _
                                "_2,'System.Int64') * 65536 + Convert(" & FiDcName32B & _
                                "_1,'System.Int64') * 256 + Convert(" & FiDcName32B & _
                                "_2,'System.Int64')) * 10 ^ (Convert(Exposant,'System.Int32'))"
                                Console.WriteLine(Math.Exp(2))

FiDcName et FiDcName32B sont des noms de colonne de ma table.
J'ai le sentiment que l'on ne peut pas travailler avec des double ou single dans les expression de colone, quel qu'un as une Idée ?

1 réponse

surfzoid Messages postés 463 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 21 avril 2010
12 sept. 2007 à 09:43
Petite précision, j'ai essayer avec different format dans la fonction convert (le premier decide du format du résultat) et aussi quelque syntaxe avec les caractaire d'échapement comme par exemple \^ ou '^'
0
Rejoignez-nous