What is the DataServer?

BCM

Member
We have a business application written in Progress 4GL that uses a Progress Database (9.1D). Every night we copy data from the Progress database to MS SQL Server for use in reports. Frequently the nightly jobs fail because the size of columns exceeds the SQL length definition. To resolve the issue we run a utility called dbtools which takes several hours to complete. We want to use the option -Dsrv skip_schema_check. We have tried this option when starting the database from the command prompt and from the Progress Explorer, but the option is not set. I have, also, tried to set this option on my home system running a local copy of Progress 9.1C. All attempts fail to work.

What exactly is the DataServer? How and when do we use the -Dsrv parameter?
 

jongpau

Member
If memory serves me well, there are several dataservers available which allow you to access a non Progress database (for instance Oracle) from within your Progress application. These dataservers "sit" between your application and the non Progress database.

Are you using such a dataserver or are you using an ODBC connection to pull the data from your Progress db and store it in the SQL Server db (for instance with some program written in VB or whatever)??
 

vinod_home

Member
Every night we copy data from the Progress database to MS SQL Server for use in reports.

If your using this only for reports, take a look at corvu from progress.
If you dont want to do that, I would guess you know what data you are pushing into your sql database. Just go thru all the fields and set the fields to a logical high. If you have any text/notes kinda fields just put it something very high.

hope that helps.
 

BCM

Member
We do not use Progress 4GL for anything of our own. We have licensed a single application that just happens to be written in Progress for a Progress database. We would rather not license another Progress product for reporting.

My experience is that all users must be logged-off the Progress database to make an adjustment to the SQL Length in the SQL properties. I guess I've been spoiled by relational database engines like Oracle and SQL Server that allow me to modify the schema while users remain logged-in. Our users are in various locations across the U.S. I need a strong reason to kick them out of the application.
 

jongpau

Member
But if you have to keep re-adjusting to the actual size of the data in your Progress database there must be something wrong...

The formats in the Progress database are display formats. This meansthat Progress allows you to store longer values in a database fieldthan the format allows (except that a Progress application thatuses the actual database formats cannot display the values correctly).

However, if your application is designed correctly, data in your database should not continuallyexceed the size of that display format. And, if it does once (and youre-adjust your sql length) why does it do it again and again after that?

This to me indicates that something is not right. Either your sqllengths are not set correctly at all from the start, your Progressdatabase design is not up-to-date with the reality of how it is used,or your Progress application is doing things it should not do.

Which of these will be the case I wonder?
 

BCM

Member
Paul.

You are correct. However, what Progress people often fail to recognize is that applications written for other databases would have the field length enforced by the database. Therefore, the condition would not be allowed to occur. The database error would take place at insert/update, and the programmer would be promptly notified.

What I would like to do is disable the checking of the SQL field length by the ODBC driver.
 

vinod_home

Member
I don't have to convince my employer. He already hates it. We'll be rewriting the app using .NET and SQL Server. The database will have well-defined structure, enforced constraints and table relationships, column size/precision rules, internal triggers, etc. The database will enforce those rules regardless of how the user attempts to alter data content - even through a backdoor.

oh i forgot your the guy who hates progress but still wants help. I guess you will find a way out of your problem using sql .
 
Top