Most of the Pro2 source files contain a preprocessor definition for INSTALL_DIR that needs to be set to the directory path, fully qualified in Universal Naming Convention format that contains the bprepl installation directory. This needs to occur before any compile process.

Table 1. Primary programs
Folder Description
GenReplTrigs.p Generates the replication triggers. Trigger procedures are created for REPLICATION-WRITE and REPLICATION-DELETE for all mapped tables according to the current database map.
GenReplProc.p Generates a set of procedures consisting of an individual procedure for each of the tables mapped according to the current database map. Each procedure contains the logic necessary to properly replicate a single record from a single table in a single Source database to a single table in the corresponding target database.
ReplProc.p Replication Processor – Loads all Replication Processor Libraries into persistent memory and handles the physical replication of data from source to target. The processor program periodically cycles through pending replication records and calls the appropriate procedure from the procedure library. The cycle period is controlled by the current value of the ReplControl sequence in the Replication database. The value is an integer representing the number of seconds to pause between processing cycles.
RunReplProc.p Initializes the routines for ReplProc.p
bpAdmin.w The administration and monitoring program for the replication functionality. Replication processing can be monitored from this program. Cycle period setting can be modified, all configuration parameters can be set, certain options can be set, and the GenReplTrigs.p, GenReplProc.p, GenSQLSchema.p and UpdSrcSchema.p programs can be run.
bpadmin.wrx COM Object support file for bpAdmin.w
ReplAbout.w Displays version information.
About.txt Includes the versioning text.
GenBulkCopy.p Generates a procedure library consisting of an individual procedure for each of the tables mapped in the current database map. Each procedure contains the logic to mass-copy all records in the appropriate table from the source database over to the target database via the DataServer.
CompReplTrig.p Compiles the procedure files generated with the GenReplTrigs.p and GenReplProc.p programs.
CompReplProc.p
UpdSrcSchema.p Updates the Source database listed in the current database map by creating REPLICATION-WRITE and REPLICATION-DELETE triggers within the meta-schema and then pointing to the appropriate trigger procedure files.
GenSQLSchema.p Using the current database map, builds a SQL Create Table file in Microsoft SQL format which is used to construct a schema in Microsoft SQL Server that matches the schema of the Progress source database Generates a .sql file consisting of CREATE TABLE and CREATE [UNIQUE] INDEX statements to properly develop an exact copy of the Source schema on a Microsoft SQL Server database. This procedure also adds a “prrowid” field in varchar format that holds the ROWID of the source record.
GenSQLDiff.p Using the current database map, builds a SQL file in Microsoft SQL format that is used to upgrade the target schema to match the source schema. Generates a .sql file consisting of the necessary SQL commands needed to bring the schema of target database in sync with the schema of source db. Typically used after a schema upgrade to the source db.
LoadFields.p Used to populate the Mapping screen with Fields, corresponding to the selected Table Map, that are not already mapped for replication.
LoadTables.p Used to populate the Mapping screen with Tables, corresponding to the selected Database Map, that are not already mapped for replication.
MapAllFields.p Used to map all fields associated with a Table that has just been auto-mapped.
MapFields.p Used to cross-reference a single field in the Source table to a single field in the target table.
SetAlias.p Creates Database Alias Names (SourceDB, SchemaDB, and TargetDB) and/or points them to appropriate Source, Schema and Target Databases according to the current map in use.
repl_tmpl\tmpl_replproc.p Template File used by GenReplProc.p to create the processor library.
repl_tmpl\tmpl_mreplproc.p Template File used by GenMassRepl.p to create the bulk copy library.
repl_tmpl\tplt_replTrig.p Template File used by GenReplTrigs.p to create the Replication Triggers.
SetAlias.p Creates Database Alias Names (SourceDB, SchemaDB, and TargetDB) and/or points them to appropriate Source, Schema and Target Databases according to the current map in use.
SQLGenMassRepl.p Used to generate bulk load procedures for Send-SQL.
SQLGenMSSAssign.p Used to generate include files for field assignments for Send-SQL procedures.
SQLGenReplProc.p Used to generate replication procedures for Send-SQL.
SQLReplProc.p Used to run Send-SQL replication procedures.
SQLRunReplProc.p Initializes the routines for SQLReplProc.p
Table 2. Secondary programs and files
Program Name Program Description
ReplLib.i Contains forward prototype declarations for member functions contained in the replication utility procedure library.
ReplLib.p A procedure library containing internal procedures and functions used to interface with the tables of the Replication Database and with appropriate configuration and map files.
Table 3. Generated programs
File Name Function

<ddir>/d<dbName>_<tableName>.p

where ddir = Delete trigger directory

Ex: bprepl\repl_d\dsports_customer.p

One procedure for each replicating table containing the logic to create a replication record for deletion. Each procedure is created in the delete trigger directory specified in the properties table.

wdir/w dbName_tableName.p

where wdir= Write trigger directory

Ex: bprepl\repl_w\wsports_customer.p

One procedure for each replicating table containing the logic to create a replication record for creation or write. Each procedure is created in the write trigger directory specified in the properties table.

pdir/dbName_replproc.p pdir/dbName_tableName_replProc.p pdir/rp_dbName_tableName.i

where pdir = Procedure Library directory

Ex: bprepl\repl_proc\rpsports_customer.p

A control procedure containing an individual procedure for each replicating table to handle all basic replication functionality between the source and target databases. These procedures are placed in the processor directory specified in the properties table. There is a replproc.p control program for each database.