Configuring the Sync Environment for P6 EPPM Cloud to On-Premises for Primavera Data Warehouse

To receive P6 EPPM cloud data: :

  1. Contact Oracle Support with a service request to enable Primavera Analytics Cloud Sync.

    Note: To use Primavera Analytics Cloud Sync, you must have a license for Primavera Analytics on-premises or Primavera Data Warehouse on-premises software.

  2. When the service request is completed, download sync-client.zip from the Primavera Portal landing page.
  3. Extract sync-client.zip.
  4. (Initial sync only) From the sync-client directory run the clear_all_p6.sql script against the target P6 admuser schema.
  5. For Unix or Linux systems, update permissions on .sh files using the following command.

    $ chmod u+x *.sh

  6. To receive data from the cloud, edit client_receive.properties in the sync-client directory with the following information:
    • sync mode = CLIENT This information is pre-populated.
    • sync type = RECEIVER This information is pre-populated.
    • sync.name=<Name of the sync> A unique sync name pre-populated to identify the sync configuration. For example, p6clouddata_receiver.
    • sync.number=This number is pre-populated.
    • target.db.host=The host name (or IP) of the machine on which the P6 target database is hosted. For example, localhost.
    • target.db.port=The port number for the Oracle instance on which P6 target database is created. For example, 1521.
    • target.db.service=The service name of the Oracle instance on which P6 target database is created. For example, pdborcl.
    • target.db.type=P6. .
    • target.db.schema=Database username of the admin user (admuser) of P6 target database.
    • target.db.syncuser=The username of sync-client database schema that will be created on same Oracle instance as the P6 target database. It should not be the name of an existing schema, as this schema will be created during setup. This schema user must contain an underscore ("_") character. For example, t_syncuser.
    • target.db.sysuser=The name of the sysdba user. For example, sys.
    • server.base_url=The URL of the WebLogic server sync rest service received from Cloud support. This URL is pre-populated. For example, http://<hostname>:<port#>/sync/rest.
    • server.connectuser= The username of a user who has permissions to create sync configurations. For example, weblogic or admin. This user is pre-populated.
  7. Save client_receive.properties.
  8. Run syncsetup.cmd or syncsetup.sh to create and configure the database schema for the sync process.

    $ ./syncsetup.sh client_receive.properties

    1. Enter passwords for the following users:
      • syncuser (target.db.syncuser
      • The sysdba user on that same Oracle instance (target.db.sysuser)
      • The admin user for the P6 target database schema (target.db.schema)
      • The web user who will insert the configuration into the sync configuration (server.connectuser)

      The process creates the t_syncuser database schema (target.db.syncuser).

    2. After the process completes, enter the password of syncadmin user. This is the user credential for local Jetty server. Subsequent processes will use this credential to communicate with the server.
  9. Start the sync client server.

    $ . /startserver .sh

    Server startup will take up to a minute. If you load the configuration without starting the server, you will get an error.

  10. Load the sync and receive the configuration into the sync client server:

    $ . /commander .sh LOAD client_receive.properties

  11. Re-enter the passwords for P6 database admin user (source.db.schema) and server connection user (server.connectuser).

    The sync client should now start syncing with the sync microservice.

  12. To check if the sync process is running, use any of the following options:
    • See server.log in the sync-client/log folder.
    • Connect as T_SYNCUSER, and check the sync progress from the database. Run the following scripts:
      • To see details of the file posted successfully to the database, run:

        select * from sync_config;

      • To get an update of the global tables being synced and the status of the sync process for each specific table, run:

        select * from sync_control;

        The entry_value column status changes from New to Complete. No records are present in this table as the target schema details are on the client side.

      • To display all the projects registered to be synced, run:

        select * from sync_whitelist;

        Synced projects will have a Status of Sent and projects waiting to be synced will have a Status of New. No records are present in this table as the target schema details are on the client side.

      • To view the blob records corresponding to source admuser schema:

        select * from sync_transfer_data;

        The status of the record changes from Receiving, Received, Applying, and finally to Applied. After the record status is Applied, check the corresponding data in target admuser schema.

  13. To load cloud sync data to Primavera Data Warehouse on-premises database:
    1. Publish the data into P6 tables by Configuring and Running P6 EPPM Publication Services from P6
    2. Run the ETL to load the data into your on-premises Primavera Data Warehouse database.

Related Topics

Syncing P6 EPPM Data from Cloud to On-Premises

Prerequisites to Sync P6 Cloud and On-Premises Data

Publishing P6 Data to Extended Schema



Last Published Friday, July 5, 2024