0

I have written a program in vb.net for in house use that connects to a Progress OpenEdge database. Now I'm having a really weird runtime problem.

I have a .exe file that runs on my local C: drive, the C: drive of the servers, from a certain network Location (but not other places on the network) just fine on at least two regular users. The problem is that when I submit it to my IT manager for review she gives it back and says it wont even run; on looking at the error, it seems to fail on the very first select query (which happens before the form finishes loading) Specifically, it ultimately boils down to the error below:

System.Data.Odbc.OdbcException: ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver]Number contains an invalid character: ?

ERROR [HY000] [DataDirect][ODBC Progress OpenEdge Wire Protocol driver]Number contains an invalid character: ?

now, certainly, I'm using data sources in visual studio and parameterized queries. So, yes, if it's trying to run it as straight SQL and not filling the parameters like it's supposed to, then there is a question mark in a number field. My question is: why does the same .exe, in the same place, run by a user with HIGHER privileges throw errors?

PsychoData
  • 1,198
  • 16
  • 32
  • Is this perhaps helpful? http://knowledgebase.progress.com/articles/Article/000037530 – Jensd May 02 '14 at 10:13
  • @Jensd Not really - My ODBC.ini only contains `Driver32=C:\Progress\OpenEdge\bin\pgoe1023.dll`. None of the other lines, yet when I test connect everything goes fine and viewing the system DSN, I do see a port listed. I'm not sure why an administrator would have different results versus a regular user. – PsychoData May 02 '14 at 12:30

2 Answers2

0

If you are still running into a problem or haven't verified a solution yet, maybe check this KnowledgeBase article on SQL tracking out to make sure that the interpretation/execution of these statements is correct.

Providing that everything is the same with the SQL statements, the problem is most likely with the way the .exe is being run. There may be filling with an alpha character rather than numeric input depending on how the .exe is being run.

double-beep
  • 5,031
  • 17
  • 33
  • 41
MikePRGS
  • 26
  • 1
0

Are you initializing the integer variable with zero (0). The question mark in progress means unknown value.