Le problème est que la précision de la valeur du résultat est trop élevée pour être convertie en System.Decimal sans perte de données. J'oublie le nombre exact de chiffres autorisés, mais c'est environ 18 ou plus. Est-il acceptable d'arrondir() la valeur du résultat à autant de chiffres ? Dans l'exemple que vous avez donné, un round(MyColumn, 15)
ou alors devrait être suffisant...