What about the result that is used for datacopy. A quick Analysis can be done aß following. Change the result Datatype to object. Remove CopyToDataTable and corresponding paranthesis and Check If the result ist empty or Not.
Maybe you can Post the Statement throwing the erreor Message