Scribe Package Deep Dive: Publishers & Connections¶
This document analyzes the publishers-bridges-connections.spkg package. The package captures the Scribe Insight publishers that feed the DTS integrations documented elsewhere in this project. It includes two SQL "update source" query publishers for Dynamics GP history tables and two real-time publishers that listen to Dynamics CRM and Dynamics GP change tracking.
1. Package Snapshot¶
- File:
publishers-bridges-connections.spkg - Created For: Dynamics GP to Dynamics CRM 2011 template (v5.1 lineage)
- Components: 4 publishers, shared connection profiles, and adapter prerequisites
- Primary Objective: Surface business events (CRM account/address updates, GP master data changes) as queues that downstream DTS jobs subscribe to.
2. Query Publishers (Update Source Pattern)¶
This section previously documented query publishers for Invoice Posted and Sales Order Transferred, which have been removed from scope.
3. Dynamics CRM Real-Time Publisher¶
MSCRM Publisher¶
- Adapter:
Scribe.DynamicsCrm5.Adapter.DynamicsCrmDatabase - Frequency/Timeout: polls every 1 second with a 25 second processing timeout.
- Authentication: Active Directory against
http://crm15/for organizationBioCat, running as domain userkeel. - Ignore User: Rows created or updated by the CRM integration user
INTEGRATIONare suppressed to avoid infinite sync loops. - Published Entities:
account→ Message labelFromCRM_Customer; only records withcustomertypecode = 3are included. The publisher retrieves the full entity to enrich downstream processing.customeraddress→ Message labelFromCRM_Addresswith full entity payload.- Queues: Rejected queue is enabled, providing operational visibility into failures.
- Downstream Consumers:
CustomerToERP.dtsandAddressToERP.dtssubscribe to these message labels.
4. Dynamics GP Real-Time Publisher¶
MSGP Publisher¶
- Adapter:
OpenAdapter.Databaseagainst SQL Serverdynamics15, databaseBIO, userScribeGP. - Ignore User:
ScribeGPis listed in bothIgnoreUserIdandIgnoreUserName, aligning with the SCRIBESHADOW triggers that skip integration changes. - Published Entities and Labels:
Customer→FromERP_CustomerCustomer Address→FromERP_Address- Logging-only entities (
Internet Information, Item price list header/line, Item currency, SOP line) emit messages that flag parent updates without their own labels. - Data Enrichment: Several entities use custom SQL queries to include CRM-required columns (email/web site from
SY01200, pricing data fromIV00105/IV00108, and SOP detail repeats). These enrichments prevent extra lookups inside the DTS jobs. - Downstream Consumers:
CustomerToCRM.dtsandAddressToCRM.dtsrely on these message feeds.
5. Connection Profiles¶
| Connection ID | Adapter | Target | Notes |
|---|---|---|---|
| 24 | OpenAdapter.Database |
SQL Server dynamics15 / BIO |
Used by both GP update-source publishers. Credentials align with the GP service account ScribeGP. |
| 25 | Scribe.DynamicsCrm5.Adapter.DynamicsCrmDatabase |
http://crm15/ |
CRM real-time publisher connection, flagged for Active Directory auth and organization BioCat. |
| 26 | OpenAdapter.Database (Unicode off) |
SQL Server dynamics15 / BIO |
Dedicated to the GP real-time publisher (MSGP Publisher) to separate polling settings from the update-source jobs. |
6. Prerequisites and Operational Notes¶
- Required Versions:
- Scribe Insight
7.8.0.46558 - Dynamics CRM Adapter
5.5.0.40736 - Open Database Adapter
4.3.2.38801 - Retry Strategy: Rejected queues are enabled for the CRM and GP publishers, providing a place to reprocess failures after issues are resolved.
- Scheduling: The real-time publishers poll every second. These intervals should be mirrored in any replacement tooling to maintain near-real-time behavior.
- Change Tracking Dependency: All GP-facing publishers assume the
SCRIBESHADOWtrigger infrastructure described inDocsAndScripts/CRMGP_TemplateConfig.sqlis active, becauseSYNCSTATUS1drives the polling logic.