Source ERP · 74 of 105

CRMPro → Salesforce — Sage 100 2017: what the shipped templates set up

This is the capability summary the dlake CLI repository publishes; whitelisted customers fetch the operational skill with "dlake admin get_skill dlake-crmpro-salesforce/erps/sage-100-2017". It extends the dlake-crmpro-salesforce skill, which holds what is true whatever the source ERP. Both directions for this pair are summarised at /integrations/sage-100-2017-salesforce/.

CRMPro → Salesforce — Sage 100 2017: what the shipped templates set up

This is a capability summary, not an operating guide. To receive the operational skill you must be a registered, whitelisted Commercient customer. Whitelisted customers fetch it with dlake admin get_skill dlake-crmpro-salesforce/erps/sage-100-2017 (or list_skills) against the Commercient admin plane. Existing customers who need access or help: contact support@commercient.com. New customers: contact sales@commercient.com to become a customer and be whitelisted.

dlake-crmpro is the parent skill and the authority for everything general: the CRMPro tools, process configuration and field list, the sync history, how source data is selected, and what a run that finds nothing does. Read it first; this page does not repeat it. dlake-crmpro-salesforce is the destination skill this page is a child of, and the authority for the Salesforce conventions that hold across every ERP: read it first, then come back here for what this source’s own templates set. This page grows as the catalogue does.

1. What the templates deliver

GroupBusiness outcomeObjectsSource tables and views
GET USERThe templates push users to Salesforce. New records are created, existing ones updated, and records removed in the ERP are deleted.users—
AccountIn addition to creating the Account record from your ERP customer records, Commercient syncs over the entire Accounting AR Customer record into a Commercient AR Customer object which is a Managed Custom Object (MCO). A lookup field is provided to lookup to the default AR Customer record MCO from the Account record. New records are created and existing ones updated; none are deleted.Account, Contact, Commercient AR Customer Managed Custom Object, Commercient Salesperson Managed Custom Objectcustomers, shipping addresses, customer contacts, salespeople
AR Invoice PaymentsCommercient Syncs the payment details that are held in the receivables file and held against an invoice in the ERP. The amount received from a customer, the date of payment, the method of payment, whether partial or full payment, etc New records are created and existing ones updated; none are deleted.Commercient Payment History Managed Custom Objectpayment history
CRM Opportunity and LineERP sales order header, sales order detail data becomes Opportunity, Opportunity line item in Salesforce. New records are created and existing ones updated; none are deleted.Opportunity, Opportunity line itemsales order headers, sales order lines
CRM Quote and LineThe templates push Quote, Quote line item to Salesforce. New records are created and existing ones updated; none are deleted.Quote, Quote line itemsales order headers, sales order lines, extended item descriptions
CRM VendorThe templates push Account to Salesforce. New records are created and existing ones updated; none are deleted.AccountSalesforce (records read back), vendors
Customer Multi Ship AddressesIf you are using multiple ship to addresses for a given AR Customer in your ERP system then you will be able to see all the addresses inside the CRM Account screen in a Commercient Multi Ship To Address MCO related list. New records are created and existing ones updated; none are deleted.Commercient Ship-To Address Managed Custom Objectshipping addresses
ProductThe templates push Commercient Inventory Item Managed Custom Object, Commercient Item Warehouse Managed Custom Object, Product to Salesforce. New records are created and existing ones updated; none are deleted.Commercient Inventory Item Managed Custom Object, Commercient Item Warehouse Managed Custom Object, Productitems, item warehouse quantities
Invoice History HeadersInvoice line item details are synced in their entirety to the Commercient Invoice Details MCO or the Invoice History Details MCO based on your ERP system functionality. New records are created and existing ones updated; none are deleted.Commercient Invoice History Detail Managed Custom Object, Commercient Invoice History Header Managed Custom Objectinvoice history lines, invoice history headers, customers, open invoices, salespeople
Open AR Invoice HeaderBoth Open and Historical invoices are synchronized. Open invoice changes, such as a balance change, or a terms change are reflected in the CRM as they sync based on the frequency of the sync you have chosen (every hour, for example). New records are created and existing ones updated; none are deleted.Commercient Open Invoice Managed Custom Objectopen invoices
PricebookThe templates push Price book entry to Salesforce. New records are created and existing ones updated; none are deleted.Price book entryitems
Purchase Invoice and AP Invoice DetailsThe templates push Commercient AP Invoice History Detail Managed Custom Object to Salesforce. New records are created and existing ones updated; none are deleted.Commercient AP Invoice History Detail Managed Custom ObjectAP invoice history lines
Purchase Invoice and AP Invoice HeaderThe templates push Commercient AP Invoice History Header Managed Custom Object to Salesforce. New records are created and existing ones updated; none are deleted.Commercient AP Invoice History Header Managed Custom ObjectAP invoice history headers
Purchase OrderThe templates push Commercient Purchase Order Header Managed Custom Object, Commercient Purchase Order Line Managed Custom Object, Purchase Order History Header (custom object) to Salesforce. New records are created and existing ones updated; none are deleted.Commercient Purchase Order Header Managed Custom Object, Commercient Purchase Order Line Managed Custom Object, Purchase Order History Header (custom object)purchase order headers, purchase order lines, purchase order history headers
Purchase Order LineThe templates push Purchase Order History Line (custom object) to Salesforce. New records are created and existing ones updated; none are deleted.Purchase Order History Line (custom object)purchase order history lines
Sales orderThe templates push Commercient Sales Order Line Managed Custom Object, Commercient Sales Order History Line Managed Custom Object, Commercient Sales Order Header Managed Custom Object to Salesforce. New records are created and existing ones updated; none are deleted.Commercient Sales Order Line Managed Custom Object, Commercient Sales Order History Line Managed Custom Object, Commercient Sales Order Header Managed Custom Object, Commercient Sales Order History Header Managed Custom Objectsales order lines, sales order headers, sales order history lines, sales order history headers, customers
VendorThe templates push Commercient Vendor Managed Custom Object to Salesforce. New records are created and existing ones updated; none are deleted.Commercient Vendor Managed Custom Objectvendors

2. The process rows the templates create

Each template’s setup writes one process configuration row. These are the values it sets; a column the inserts never set is not listed.

Display nameDestination objectMatching keyRun sequence
GET USERusers—0
Sales PersonCommercient Salesperson Managed Custom ObjectCommercient external key1
AccountAccountCommercient AR customer code2
CustomerCommercient AR Customer Managed Custom ObjectCommercient external key3
AddressCommercient Ship-To Address Managed Custom ObjectCommercient external key4
Account customer lookupAccountCommercient AR customer code5
ProductProductCommercient external key (earlier package)6
Inventory itemCommercient Inventory Item Managed Custom ObjectCommercient external keys7
Sales orderCommercient Sales Order Header Managed Custom ObjectCommercient sales order number8
Sales order lineCommercient Sales Order Line Managed Custom ObjectCommercient external key9
Sales order History HeaderCommercient Sales Order History Header Managed Custom ObjectCommercient external key10
Sales order History LineCommercient Sales Order History Line Managed Custom ObjectCommercient external key11
Invoice HeaderCommercient Invoice History Header Managed Custom ObjectCommercient external key12
Invoice DetailsCommercient Invoice History Detail Managed Custom ObjectCommercient external key13
Item WarehouseCommercient Item Warehouse Managed Custom ObjectCommercient external key14
Transcation Payment HistoryCommercient Payment History Managed Custom ObjectCommercient external key18
Create Standard Price BookPrice book entryExternal key (custom field)19
Update Standard Price BookPrice book entryExternal key (custom field)20
Opportunity HeaderOpportunityExternal key (custom field)21
Opportunity LineOpportunity line itemExternal key (custom field)22
Sage 100 Ar Open InvoiceCommercient Open Invoice Managed Custom ObjectCommercient external key22
ContactContactCommercient external key23
Quote headerQuoteExternal key (custom field)23
Quote lineQuote line itemExternal key (custom field)24
Vendor AccountAccountCommercient AR customer code25
Vendor SyncCommercient Vendor Managed Custom ObjectCommercient external key26
PO HeaderCommercient Purchase Order Header Managed Custom ObjectCommercient external key27
PO LineCommercient Purchase Order Line Managed Custom ObjectCommercient external key28
Sage 100 Purchase History HeaderPurchase Order History Header (custom object)External key (custom field)29
Sage 100 Purchase History DetailPurchase Order History Line (custom object)External key (custom field)30
Sage AP Invoice History HeaderCommercient AP Invoice History Header Managed Custom ObjectCommercient external key31
Sage AP Invoice History LineCommercient AP Invoice History Detail Managed Custom ObjectCommercient external key32

Every one of these inserts the active setting as 0, so an imported process is inactive until an operator activates it.

3. The views

“Change detection” names which of the three kinds dlake-crmpro defines the view’s own filter makes it; where a view’s shape is not one of those three the column is left empty and the view’s own filter is the authority.

ViewChange detectionSource tables
salesperson feedinsert + updatesalespeople
account feedinsert + updatecustomers, shipping addresses
customer feedinsert + updatecustomers
shipping address feedinsert + updateshipping addresses
customer account lookup feedinsert + updatecustomers
product feedinsert + updateitems
inventory item feedinsert + updateitems
sales order feedinsert + updatesales order headers
sales order line feedinsert + updatesales order lines, sales order headers
sales order history feedinsert + updatesales order history headers, customers
sales order history line feedinsert + updatesales order history lines, sales order history headers
invoice feedinsert + updateinvoice history headers, customers, open invoices, salespeople
invoice line feedinsert + updateinvoice history lines
item warehouse feedinsert + updateitem warehouse quantities
payment history feedinsert + updatepayment history
price book feed (new entries)insert onlyitems
price book feed (changes)insert + updateitems
opportunity feedinsert + updatesales order headers
opportunity line feedinsert onlysales order lines
open invoice feedinsert + updateopen invoices
contact feedinsert + updatecustomer contacts
quote feedinsert + updatesales order headers
quote line feedinsert onlysales order lines, extended item descriptions, sales order headers
vendor account feedinsert + updateSalesforce (records read back), vendors
vendor feedinsert + updatevendors
purchase order feedinsert + updatepurchase order headers
purchase order line feedinsert + updatepurchase order lines
purchase history feedinsert + updatepurchase order history headers
purchase history line feedinsert + updatepurchase order history lines
AP invoice history feedinsert + updateAP invoice history headers
AP invoice history line feedinsert + updateAP invoice history lines

4. Order of work

The templates set run sequence from 0 to 32. A run processes active rows in ascending run sequence, which is the order the templates put them in:

  • 0 — GET USER
  • 1 — Sales Person
  • 2 — Account
  • 3 — Customer
  • 4 — Address
  • 5 — Account customer lookup
  • 6 — Product
  • 7 — Inventory item
  • 8 — Sales order
  • 9 — Sales order line
  • 10 — Sales order History Header
  • 11 — Sales order History Line
  • 12 — Invoice Header
  • 13 — Invoice Details
  • 14 — Item Warehouse
  • 18 — Transcation Payment History
  • 19 — Create Standard Price Book
  • 20 — Update Standard Price Book
  • 21 — Opportunity Header
  • 22 — Opportunity Line, Sage 100 Ar Open Invoice
  • 23 — Contact, Quote header
  • 24 — Quote line
  • 25 — Vendor Account
  • 26 — Vendor Sync
  • 27 — PO Header
  • 28 — PO Line
  • 29 — Sage 100 Purchase History Header
  • 30 — Sage 100 Purchase History Detail
  • 31 — Sage AP Invoice History Header
  • 32 — Sage AP Invoice History Line

Several of these rows share a run sequence value: each template group carries its own numbering, so give the imported processes an order across the whole set rather than taking the template values as one.

These views read another process’s sync output, which is what makes the order a dependency order: the row appears in the view only once the process that writes that sync output has run, so a parent flows on one run and its children on the next.

  • account feed reads user sync output
  • customer account lookup feed reads customer sync output
  • payment history feed reads customer sync output (generic name), account sync output (generic name), invoice sync output (generic name); no template in this set writes customer sync output (generic name), account sync output (generic name), invoice sync output (generic name)
  • contact feed reads account sync output
  • opportunity feed reads customer sync output, account sync output, sales order sync output (generic name), salesperson sync output (generic name); no template in this set writes sales order sync output (generic name)
  • opportunity line feed reads opportunity sync output (generic name), product sync output, price book sync output
  • quote feed reads customer sync output, account sync output, opportunity sync output (generic name), terms sync output, salesperson sync output (generic name); no template in this set writes terms sync output
  • quote line feed reads quote sync output (generic name), product sync output, price book sync output
  • customer feed reads account sync output, salesperson sync output (generic name)
  • shipping address feed reads account sync output, customer sync output
  • inventory item feed reads product sync output, inventory item sync output; no template in this set writes inventory item sync output
  • item warehouse feed reads inventory item sync output, product sync output; no template in this set writes inventory item sync output
  • invoice line feed reads invoice sync output, inventory item sync output; no template in this set writes inventory item sync output
  • invoice feed reads customer sync output, account sync output, salesperson sync output (generic name)
  • open invoice feed reads account sync output, customer sync output, salesperson sync output (generic name)
  • price book feed (new entries) reads product sync output
  • price book feed (changes) reads product sync output
  • AP invoice history line feed reads AP invoice history sync output
  • AP invoice history feed reads vendor sync output, vendor account sync output
  • purchase order feed reads vendor sync output, vendor account sync output, shipping address sync output
  • purchase order line feed reads purchase order sync output, inventory item sync output; no template in this set writes inventory item sync output
  • purchase history feed reads vendor account sync output, vendor sync output
  • purchase history line feed reads inventory item sync output, purchase history sync output; no template in this set writes inventory item sync output
  • sales order line feed reads inventory item sync output, sales order sync output; no template in this set writes inventory item sync output
  • sales order history line feed reads inventory item sync output, sales order history sync output; no template in this set writes inventory item sync output
  • sales order feed reads customer sync output, account sync output, salesperson sync output (generic name)
  • sales order history feed reads customer sync output, account sync output
  • vendor feed reads vendor account sync output

5. Field mapping

Each template carries its intended mapping in field mapping.

TemplateObjectMapped fieldsFirst ERP → Salesforce pairs
Sales PersonCommercient Salesperson Managed Custom Object25Salesperson division,Salesperson number → Commercient external key, Salesperson name,Salesperson division,Salesperson number → Name, Salesperson division → Commercient salesperson division, Salesperson number → Commercient salesperson number, Salesperson name → Commercient salesperson name
AccountAccount13AR division number, Customer number → Commercient AR customer code, Customer name, AR division number, Customer number → Name, Telephone → Phone, Address line 1, Address line 2, Address line 3 → Billing street, City → Billing city
AddressCommercient Ship-To Address Managed Custom Object33AR division number, Customer number, Ship-to code → Commercient external key, AR division number, Customer number, Ship-to code → Commercient name, AR division number, Customer number → Account, AR division number, Customer number → Commercient Sage 100 customer records, AR division number → AR division number
Account customer lookupAccount2AR division number,Customer number → Commercient AR customer code, the linked Salesforce record → Commercient Sage customer record
ProductProduct5Item code → Commercient external key (earlier package), Item code → Name, Item description → Description, Item code → Product code, Inactive item → Active
Inventory itemCommercient Inventory Item Managed Custom Object85Item code → Commercient external keys, Item code → Commercient name, Item type → Commercient item type, Item description → Commercient item description, Extended description → Commercient extended description
Sales order lineCommercient Sales Order Line Managed Custom Object63Sales order number,Line key → Commercient external key, Sales order number,Line key → Commercient name, Sales order number → Commercient sales order number, Line key → Commercient line key, Line sequence number → Commercient line sequence number
Sales order History HeaderCommercient Sales Order History Header Managed Custom Object66Sales order number → Commercient external key, Sales order number → Name, the linked Salesforce record → Account, the linked Salesforce record → Customer, Order status → Order status
Sales order History LineCommercient Sales Order History Line Managed Custom Object50Sales order number, Sequence number → Commercient external key, Sales order number, Sequence number → Commercient name, the linked Salesforce record → Commercient sales order history header, Sequence number → Commercient sequence number, Line key → Commercient line key
Invoice HeaderCommercient Invoice History Header Managed Custom Object86Invoice number,Header sequence number → Commercient external key, Invoice number,Header sequence number → Commercient name, AR division number,Customer number → Commercient account, AR division number,Customer number → Commercient sage 100 customer record, Salesperson division,Salesperson number → Commercient salesperson
Invoice DetailsCommercient Invoice History Detail Managed Custom Object60Invoice number, Header sequence number, Detail sequence number → Commercient external key, Invoice number, Header sequence number, Detail sequence number → Commercient name, the linked Salesforce record → Invoice, the linked Salesforce record → Item, Invoice number → Commercient invoice number
Item WarehouseCommercient Item Warehouse Managed Custom Object28Item code → Commercient inventory item, Item code → Commercient product, Item code, Warehouse code → Commercient external key, Item code, Warehouse code → Name, Item code → Commercient item code
Transcation Payment HistoryCommercient Payment History Managed Custom Object38AR division number, Customer number → Account, AR division number, Customer number → Sage 100 customer record (custom field), Invoice number, Invoice header sequence number → Invoice, AR division number → AR division number, Customer number → Customer number
Create Standard Price BookPrice book entry5Item code → External key (custom field), Active → Active, Standard unit price → Unit price, the linked Salesforce record → price book lookup, the linked Salesforce record → product lookup
Update Standard Price BookPrice book entry3Item code → External key (custom field), Active → Active, Standard unit price → Unit price
Opportunity HeaderOpportunity9Sales order number → External key (custom field), Sales order number → Name, the linked Salesforce record → account lookup, Taxable amount → Amount, the linked Salesforce record → price book lookup
Opportunity LineOpportunity line item6Sales order number, Line key → External key (custom field), Quantity → Quantity, Unit price → Unit price, Item description → Description, the linked Salesforce record → Opportunity
Sage 100 Ar Open InvoiceCommercient Open Invoice Managed Custom Object46AR division number, Customer number, Invoice number, Invoice type → Commercient external key, Invoice number, Invoice type → Name, Salesperson division, Salesperson number → Sage 100 salesperson (custom field), AR division number, Customer number → Account, AR division number, Customer number → Sage 100 customer records (custom field)
ContactContact14AR division number, Customer number, Contact code → Commercient external key, Contact name → First name, Contact name → Last name, Address line 1, Address line 2, Address line 3 → Mailing street, City → Mailing city
Quote headerQuote23Sales order number → External key (custom field), Sales order number → Name, Sales order number → Opportunity, Salesperson division,Salesperson number → Sage 100 salesperson object (custom), Terms code → Terms
Quote lineQuote line item8Sales order number, Line key → External key (custom field), Sales order number → Quote, Item code → product lookup, Item code → price book entry lookup, Promise date → Service date
Vendor SyncCommercient Vendor Managed Custom Object50AP division number, Vendor number → Commercient external key, Vendor name → Name, the linked account → Commercient account, AP division number → Commercient AP division number, Vendor number → Commercient vendor number
PO LineCommercient Purchase Order Line Managed Custom Object23Purchase order number, Line key → Commercient external key, Purchase order number, Line key → Commercient name, Purchase order number → Commercient purchase order number, Line key → Commercient line key, Line sequence number → Commercient line sequence number
Sage 100 Purchase History DetailPurchase Order History Line (custom object)55Purchase order number, Sequence number → External key (custom field), Purchase order number, Sequence number → Name, Purchase order number → Purchase order number, Sequence number → Sequence number, Line key → Line key
Sage AP Invoice History HeaderCommercient AP Invoice History Header Managed Custom Object81Invoice number, Header sequence number → Commercient external key, Invoice number, Header sequence number → Commercient name, AP division number → AP division number, AP division number, Vendor number → Account (custom field), AP division number, Vendor number → Vendor
Sage AP Invoice History LineCommercient AP Invoice History Detail Managed Custom Object46Invoice number, Header sequence number, Detail sequence number → Commercient external key, Invoice number, Header sequence number, Detail sequence number → Commercient name, the linked Salesforce record → Commercient AP invoice history header, Asset template → Commercient asset template, Comment → Commercient comment

6. Community templates

The catalogue carries 493 community templates for this pair. A community template is authored in a tenant rather than shipped with the product, and it imports the same way as any other. Its own names, notes, field mapping and SQL are tenant content, so what this section states is what the set amounts to: how many templates there are, what they default to doing, which destination objects they write and which groups they fall in. They are not part of the shipped set described above.

  • Templates: 493
  • Default operations: insert on 493, update on 493, delete on 493
  • Marked as circular sync: 8
  • Licence groups they span: 17
  • Destination objects: Account, Commercient AR Customer Managed Custom Object, Commercient Invoice History Header Managed Custom Object, Commercient Invoice History Detail Managed Custom Object, Commercient Sales Order Line Managed Custom Object, Commercient Sales Order Header Managed Custom Object, Commercient Salesperson Managed Custom Object, Commercient Ship-To Address Managed Custom Object, Product, Price book entry, Commercient Inventory Item Managed Custom Object, Commercient Payment History Managed Custom Object, Commercient Sales Order History Line Managed Custom Object, Commercient Sales Order History Header Managed Custom Object, Contact, Commercient Open Invoice Managed Custom Object, Commercient Terms Code Managed Custom Object, Commercient Item Warehouse Managed Custom Object, Opportunity, 33 more and 6 custom objects
  • Object display names: Account, Customer, Invoice Header, Invoice Details, Account customer lookup, Sales Person, Sales order line, Address, Sales order, Product, Sales order History Header, Sales order History Line, 133 more and 12 further templates
  • Template groups: Account, Sales order, Product, Invoice, Customer Multi Ship Addresses, Invoice History Headers, CRM Quote and Line, CRM Opportunity and Line, Purchase Order, Pricebook, CRM Order and Line

7. Verifying

The detail of this section is part of the operational skill. Whitelisted customers fetch it with dlake admin get_skill dlake-crmpro-salesforce/erps/sage-100-2017.

8. Where this sits

dlake-crmpro is the general operating surface — the CRMPro tools, the setup and transaction tables, field mapping, and the source view contract that applies to every destination. This page adds what the shipped Sage 100 2017 → Salesforce templates set up. dlake-crmpro-salesforce is the destination skill this page sits under: its own text is the authority for the Salesforce conventions that hold across every ERP, and its ERP table lists this page alongside every sibling ERP page for this destination. For the extract leg that fills the source data, see dlake-normalsync; for the on-premises agent that runs it, dlake-syncagent; for the writeback leg, dlake-txdownloaderpro; for standing an integration up, dlake-integration-setup.

How to get started

  • Already a customer: the operational skill tells you how to connect, choose what to sync and run it. Fetch it with dlake admin get_skill dlake-crmpro-salesforce/erps/sage-100-2017, or ask support@commercient.com.
  • New to Commercient: contact sales@commercient.com. Becoming a customer includes registration and whitelisting, after which the operational skills and tools are available to you.