PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

Home | Sign in | English US
  • Overview
  • Required configuration
  • Conditions for using Native Progress Access
  • The necessary files
  • Connection to a Progress database
  • Use
  • Using the Native Progress Access in your WINDEV applications or WEBDEV sites
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Overview
WINDEV and WEBDEV propose an optional module for Native Access to Progress. This Native Access allows you to access a Progress database from a program in WLanguage.
Caution: This version of Native Progress Access operates with WINDEV 23 or WEBDEV 23. This native access is available in 32 bits only.
Required configuration

Conditions for using Native Progress Access

  • Progress Version 7.3 C (or later) on the server (tests have been run with Progress version 9.1D)
  • The Progress client on each computer that access Progress (minimum version: 8.2A).
    Versions 19 and later
    The Progress client version 11 is supported.
    New in version 19
    The Progress client version 11 is supported.
    The Progress client version 11 is supported.

The necessary files

The following files are required to use Native Progress Access:
  • the Progress client DLL. This DLL is installed by the client layer of Progress. See the license agreement of Progress for more details about the distribution conditions of this DLL.
  • wdxxxprgs.dll: Required for Native Access to a Progress database. This file is supplied with Native Progress Access.

Connection to a Progress database

The Native Access is using the Progress client layer to connect to the server.
The DLL used by the Native Access can correspond to the ODBC driver used to access Progress. The name of this DLL can change according to the Progress versions. The following checks must be performed in order to define the DLL to load:
Versions 17 and later
1. Checking the extended information of the connection.
If the name of the DLL is specified in the extended information of the connection (WD CLIENT LIBRARY parameter), this DLL is loaded.
Example: "WD CLIENT LIBRARY= C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
Example: Connecting to a Progress database while specifying the client layer to use and the port:
// Define a Connection variable
// At best: use the name of the connection defined in the analysis
// (in this case, don't declare the variable here)
ctProgress is Connection

// Name of Progress server
ctProgress..Server = "NameProgressServer"
// Name of the database
ctProgress..Database = "Database"
// User of the database
ctProgress..User = "user"
// Password of the database
ctProgress..Password = "PWD"
// Native Progress access
ctProgress..Provider = hNativeAccessProgress
// Extended information to specify the port and location of the Progress client layer
cntProgress..ExtendedInfo = "PORT=25000;WD CLIENT LIBRARY=" + ...
"C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
// Test of the connection to the database
IF NOT HOpenConnection(ctProgress) THEN
Error("Failure connecting to the database", HErrorInfo())
EndProgram()
END
New in version 17
1. Checking the extended information of the connection.
If the name of the DLL is specified in the extended information of the connection (WD CLIENT LIBRARY parameter), this DLL is loaded.
Example: "WD CLIENT LIBRARY= C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
Example: Connecting to a Progress database while specifying the client layer to use and the port:
// Define a Connection variable
// At best: use the name of the connection defined in the analysis
// (in this case, don't declare the variable here)
ctProgress is Connection

// Name of Progress server
ctProgress..Server = "NameProgressServer"
// Name of the database
ctProgress..Database = "Database"
// User of the database
ctProgress..User = "user"
// Password of the database
ctProgress..Password = "PWD"
// Native Progress access
ctProgress..Provider = hNativeAccessProgress
// Extended information to specify the port and location of the Progress client layer
cntProgress..ExtendedInfo = "PORT=25000;WD CLIENT LIBRARY=" + ...
"C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
// Test of the connection to the database
IF NOT HOpenConnection(ctProgress) THEN
Error("Failure connecting to the database", HErrorInfo())
EndProgram()
END
1. Checking the extended information of the connection.
If the name of the DLL is specified in the extended information of the connection (WD CLIENT LIBRARY parameter), this DLL is loaded.
Example: "WD CLIENT LIBRARY= C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
Example: Connecting to a Progress database while specifying the client layer to use and the port:
// Define a Connection variable
// At best: use the name of the connection defined in the analysis
// (in this case, don't declare the variable here)
ctProgress is Connection

// Name of Progress server
ctProgress..Server = "NameProgressServer"
// Name of the database
ctProgress..Database = "Database"
// User of the database
ctProgress..User = "user"
// Password of the database
ctProgress..Password = "PWD"
// Native Progress access
ctProgress..Provider = hNativeAccessProgress
// Extended information to specify the port and location of the Progress client layer
cntProgress..ExtendedInfo = "PORT=25000;WD CLIENT LIBRARY=" + ...
"C:\Program Files (x86)\Progress\OpenEdge\bin\pgoe1023.dll"
// Test of the connection to the database
IF NOT HOpenConnection(ctProgress) THEN
Error("Failure connecting to the database", HErrorInfo())
EndProgram()
END
2. Checking the ODBC data source.
The name of the data source corresponds to an ODBC data source defined on the runtime computer. In this case, the Native Access uses the ODBC driver of the ODBC data source.
3. Solution kepr for backward compatibility with the earlier versions: searching for the "WDPRGS.INI" file
The Windows directory contains a "WDPRGS.INI" file that includes the following information :
[CLIENT]
DRIVER = <DLL Name>
where <DLL Name> corresponds to the full path of the Progress DLL. This DLL can also correspond to the ODBC driver used to access Progress.
Example of WDPRGS.INI file:
[CLIENT]
DRIVER = C:\program Files\PROGRESS\bin\pgpro915.dll
4. If no DLL was loaded during the previous steps, the Native Access tries to load the PGPRO915.DLL DLL.
Note: In most cases, the directory of the Progress client layer must be added into the PATH of the computer (for example: C:\Program Files\PROGRESS\bin).
Use

Using the Native Progress Access in your WINDEV applications or WEBDEV sites

To use the Native Progress Access, you must program:
Minimum required version
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment