Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

ODBC Connection to Progress fails to open PROMSGS

Posted on 2004-03-29
11
Medium Priority
?
14,992 Views
Last Modified: 2013-11-23
using a Merant 3.70 32-bit Progress ODBC driver, i can append data to an existing table structure manually through a SQL Server DTS package.  if i try to schedule it as a job within the SQL Server Agent, it fails.  Does anyone know how the ODBC is trying to open PROMSGS and what permissions it needs to have?  Suggestions? ---ssam

following is the actual error message:

DTSRun:  Loading...   DTSRun:  Executing...   DTSRun OnStart:  Copy Data from Results to [SytelineImport].[dbo].[custaddr] Step   DTSRun OnError:  Copy Data from Results to [SytelineImport].[dbo].[custaddr] Step, Error = -2147467259 (80004005)      Error string:  [MERANT][ODBC PROGRESS driver]msgOpen: unable to open message file: PROMSGS      Error source:  Microsoft OLE DB Provider for ODBC Drivers      Help file:        Help context:  0      Error Detail Records:      Error:  -2147467259 (80004005); Provider Error:  0 (0)      Error string:  [MERANT][ODBC PROGRESS driver]msgOpen: unable to open message file: PROMSGS      Error source:  Microsoft OLE DB Provider for ODBC Drivers      Help file:        Help context:  0      DTSRun OnFinish:  Copy Data from Results to [SytelineImport].[dbo].[custaddr] Step   DTSRun:  Package execution complete.  Process Exit Code 1.  The step failed.
0
Comment
Question by:ssam
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
11 Comments
 
LVL 2

Accepted Solution

by:
jgilligan1 earned 2000 total points
ID: 10790997
Well, there are at least a couple of problems.

1. You do not have your environment variables set, depending on how your doing your ODBC connect, you need to specifify at least a couple of variables ahead of your active DB session.

1. DLC=/usr/dlc91x/ (wherever you have progress installed)
2. PROMSG=$DLC/promsgs - this typically is under your DLC directory and points to a storage file which controlls the error messages that progress reports on.

Other than that, as far as permissions are concerned, you don't need to have anything other that read only. But as far as access to the database you may also wish to set that to read only as well.

If that doesn't show you any love, you may consider the PEG (http://www.peg.com) , it may be a faux pas to mention it here but this is a usergroup which is very small but has some excellent progress experts (many of whom work for Progress itself) , You'd be hard pressed to find a more competent group than those guys when it comes to Progress.

Hope that helps,

Joe Gilligan
Perpetual student.
0
 
LVL 4

Expert Comment

by:prairieits
ID: 10791146
I can tell you with 100 percent certainty that jgilligan1's answer is correct, except that you are using a Windows OS, so rather than the /usr reference, your path is going to be c:\progress\something...  Same will hold true for the PROMSGS path.

Good luck,
Jerod
0
 

Expert Comment

by:Varrus
ID: 10800142
Hello:

The only other thing I might add is two more environment variables:

IDLC=c:/dlcxxx
IPROMSGS=$DLC/promsgs

These will be the same values as the DLC and PROMSGS variables.

I have found this has solved my previous Merant 3.7 ODBC connection funnies!

Cheers!

Peter

0
Tech or Treat! - Giveaway

Submit an article about your scariest tech experience—and the solution—and you’ll be automatically entered to win one of 4 fantastic tech gadgets.

 
LVL 2

Expert Comment

by:jgilligan1
ID: 10807052
Geepers, Sorry about the Unix/Dos issue. I work in a bunch of different OS's and forget myself alot.

Hopefully, the environment issues will resolve the problem but it may not completely do so if there are some other issues.

Regards,

Joe G.
0
 
LVL 1

Author Comment

by:ssam
ID: 10807911
jgilligan1 was essentially correct;  the solution was actually, though, an update/upgrade to the client installed on the box where the SQL server resided.
0
 

Expert Comment

by:YelenaC1
ID: 14526647
I have exactly the same problem and all my environment variables are set up correctly. (DLC, IDLC, PROMSGS, IPROMSGS).

What do you mean by "client update/upgrade"?
0
 
LVL 2

Expert Comment

by:jgilligan1
ID: 14526741
It's possible that there is a problem with the ODBC not being completely compatible with the specific version of Progress. What versions/platform of each are you using?

Regards,

Joe G.
0
 

Expert Comment

by:YelenaC1
ID: 14526872
Progress version is 9.1C on unix.
SQL Server instance is installed on Windows Server 2003.
Merant 3.7 is also installed on Windows Server 2003 ( the same server).

If I test the connection manually from ODBC utility, it connects correctly.

If I run DTS package manually, it runs fine. The only time I have a problem if it is run as a job. That's when I get the PROMSGS error.
0
 
LVL 2

Expert Comment

by:jgilligan1
ID: 14526938
When you say a job, do you mean a cron/batch job from Unix?

0
 

Expert Comment

by:YelenaC1
ID: 14527074
No, I mean a Job within SQL Server Agent. If you look at the very first original question on this thread, it explains my problem exactly. I am running a DTS package in SQL Server, moving data from Progress to SQL, using DSN with Merant 3.70 driver.

When I schedule a DTS package to run in SQL Server Agent, it makes it a job. That job fails with  the error described above.
0
 
LVL 2

Expert Comment

by:jgilligan1
ID: 14527649
Ok. So does the promsgs file exist in the proper spot? I have also seen instances where this kind of message crops of when the Progress running on the workstation is not installed properly or rather it is copied rather than installed.

Joe G.
0

Featured Post

Important Lessons on Recovering from Petya

In their most recent webinar, Skyport Systems explores ways to isolate and protect critical databases to keep the core of your company safe from harm.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Supply Chain Event Management Supply chain visibility is the ability of a company to track its products and business processes in supply chain towards building operational excellence. The goal of supply chain visibility is to improve and strength…
Salesforce.com is a cloud-based customer relationship management (CRM) system. In this article, you will learn how to add and map custom lead and contact fields to your Salesforce instance.
In response to a need for security and privacy, and to continue fostering an environment members can turn to for support, solutions, and education, Experts Exchange has created anonymous question capabilities. This new feature is available to our Pr…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question