Setup a Subscription

Learn how to setup Subscriptions, used for receiving data from other Business Central companies.

After setting up the Topic, create a Subscription for each Party that should pull data from the Topic.

Watch our video how to setup a Subscription.

Masterdata

The subscriptions are setup a bit different depending on if the companies are in the same environment or not.

Same environment

  1. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  2. Select New to create a new Subscription.
  3. General fast tab:
    Party code – Select the code for the sending company.
    Topic – Select the Topic.
  4. Subscription Tables
    The tables that are included in the Topic message.
  5. Use Subscription Fields to modify field-level data processing, mapping, and rules.

Multiple environments using Azure Service Bus

  1. Run the Topic in the sending company.
  2. Go to the receiving company.
  3. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  4. Enter the Party code for the sending company and select the related Topic.
  5. Run the Subscription.
  6. Add the tables under Subscription Tables.
  7. Use Subscription Fields to modify field-level data processing, mapping, and rules.

Subscription tables

When the Subscription header is filled in, the tables from the Topic are automatically populated in the Subscription tables. It’s possible to delete a table you don’t want to import.

Subscription Fields

Subscription fields is the definition of which fields are imported, and it controls how the data is processed. Note that you can’t add a filed in the Subscription that doesn’t exist in the Topic. Some of the most important fields are as follows:

FieldComment
Target field No./NameThe number and name of the field that should be updated in your company. It’s not always one-to-one with the Source No/Name in the Topic.
The fields are colour coded:
Green – The field is imported, no action needed.
Red – The field is imported, an action is needed (check the comment field).
Black – The field is not imported.
Source field No./NameThe number and name of the table in the sending company.
Include fieldThis field is selected if the field is included when running the subscription. This value can be changed.
Skip validationIf this field is selected, the data will not be validated. This means that any data can be imported, even if the field has a related table.
Mapping typeWhen importing a table, it’s possible to change a value in a field on an entry using the Mapping functionality. Mapping must be done if the values in the sending and receiving company are not the same. You can map a field four different ways:
Value – One-to-one mapping.
Filter – Conditional updates based on filters.
Fixed – Assigns a fixed value to all imported transactions.
Currency – Manages local currency conversions. Read more about currencies.
Has mappingIf you have selected a Mapping type, you must add the Mapping parameters. Click on Yes/No to update the parameters.
ValueFrom value -> To value
Add one or several one-to-one mappings. This is useful if you want to update the project managers to different values.
FilterConditional updates based on filters.
FixedAssigns a fixed value on all imported entries. Useful when you map the Bill-to customer to the sending company’s customer number in your company.
CurrencyNo mapping needs to be done.
CommentWhen changing or mapping a field, add a comment to document the changes.

Templates

The subscriptions are setup a bit different depending on if the companies are in the same environment or not. The Subscription looks the same and the example below shows the Project template.

Same environment

  1. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  2. Select New to create a new Subscription.
  3. General fast tab
    Party code – Select the code for the sending company.
    Topic – Select the Topic.
  4. Options fast tab (only visible for the Project template):
    Inv. Setup Template – Select if you want to add an invoice template when creating the project.
    Res. price Template – Select if you want to add a pricing list when creating the project.
  5. Subscription Tables.
    The tables that are included in the Topic message.
  6. Use Subscription Fields to modify field-level data processing, mapping, and rules.

Multiple environment using Azure Service Bus

  1. Run the Topic in the sending company.
  2. Go to the receiving company.
  3. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  4. Enter the Party code for the sending company and select the related Topic.
  5. Run the Subscription.
  6. Options fast tab (only visible for the Project template):
    Inv. Setup template – Defines if you want to add an invoice template on intercompany projects.
    Res. price template - Defines if you want to add a pricing list on intercompany projects
  7. Add the tables under Subscription Tables.
  8. Use Subscription Fields to modify field-level data processing, mapping, and rules.

Subscription tables

When the Subscription header is filled in, the tables from the Topic are automatically populated in the Subscription tables. It’s possible to delete a table you don’t want to import.

Subscription Fields

Subscription fields is the definition of which fields are imported, and it controls how the data is processed. Note that you can’t add a filed in the Subscription that doesn’t exist in the Topic.

Some of the most important fields are as follows:

FieldComment
Target field No./NameThe number and name of the field that should be updated in your company. It’s not always one-to-one with the Source No/Name in the Topic.
The fields are colour coded:
Green – The field is imported, no action needed.
Red – The field is imported, an action is needed (check the comment field).
Black – The field is not imported.
Source field No./NameThe number and name of the table in the sending company.
Include fieldThis field is selected if the field is included when running the subscription. This value can be changed.
Skip validationIf this field is selected, the data will not be validated. This means that any data can be imported, even if the field has a related table.
Mapping typeWhen importing a table, it’s possible to change a value in a field on an entry using the Mapping functionality. Mapping must be done if the values in the sending and receiving company are not the same. You can map a field four different ways:
Value – One-to-one mapping.
Filter – Conditional updates based on filters.
Fixed – Assigns a fixed value to all imported transactions.
Currency – Manages local currency conversions. Read more about currencies.
Has mappingIf you have selected a Mapping type, you must add the Mapping parameters. Click on Yes/No to update the parameters.
ValueFrom value -> To value
Add one or several one-to-one mappings. This is useful if you want to update the project managers to different values.
FilterConditional updates based on filters.
FixedAssigns a fixed value on all imported entries. Useful when you map the Bill-to customer to the sending company’s customer number in your company.
CurrencyNo mapping needs to be done.
CommentWhen changing or mapping a field, add a comment to document the changes.

Review and update table definitions

In Pryme Intercompany Project templates there are fields that needs to be mapped project to ensure correct values in the receiving company’s projects.

Project (Table 167 – Job)

Target Field NoTarget Field NameMapping ValueComment
5Bill-to Customer No.FixedAlways map to the sending company’s customer number in the receiving company.
20Person ResponsibleVerify if it matches the sending company.
23Job Posting GroupVerify if it matches the sending company.
1011Invoice Currency CodeCurrencyUse Currency if the companies have different local currencies. Read more about currencies.
2000Sell-to Customer No.FixedIf the customer table is not part of master data, map to the sending company’s customer number.
14045651Resource Invoice TypeValueIf there is a fixed price agreement with the end-customer, but the intercompany agreement is not fixed price you should map to T&M.
14045655Item Invoice TypeValueIf there is a fixed price agreement with the end-customer, but the intercompany agreement is not fixed price you should map to T&M.
14045656Expense Invoice TypeValueIf there is a fixed price agreement with the end-customer, but the intercompany agreement is not fixed price you should map to T&M.
14045674Project Manager PGSVerify if the resource matches the sending company.
14045753Timesheet Currency CodeCurrencyUse Currency if the companies have different local currencies. Read more about currencies.

Job Task (Table 1001 – Job Task)

Target Field NoTarget Field NameMapping ValueComment
14045764Contract Type PGSValueIf there is a fixed price agreement with the end-customer, but the intercompany agreement is not fixed price you should map to T&M.
14045709Project Manager PGSVerify if the resource matches the sending company.

Permissions (Table 14045676 - Permissions PM)

This table is not mandatory. If permission from the sending company is unnecessary, delete the table.

Target Field NoTarget Field NameMapping ValueComment
1NoVerify if the resource matches the sending company.

Time (Table 156 – Resource)

Target Field NoTarget Field NameMapping ValueComment
51Gen Prod Posting GrpVerify if it matches the sending company.
58VAT Prod Posting GrpVerify if it matches the sending company.

Job Journal Line (Table 210)

Target Field NoTarget Field NameMapping ValueComment
1008Currency CodeCurrencySee Currency Mapping.
14045810Expense Payment TypeValueMap expense payment types for intercompany transactions.

Test the Setup

After creating the topic and corresponding subscription, test the setup:

  1. Send one entry from the sending company.
  2. Run the subscription manually in the receiving company using Run Subscription.
  3. When successful, configure a Job Queue for automated subscription processing.

For details on job queue setup, see Set Up Job Queues.

Update a Subscription After Changing the Topic

If changes are made to the Topic field definitions, update the subscription manually:

  1. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  2. Choose the Update Source Fields action under the Actions action group.
  3. Open the Subscription Card.
  4. Select Subscription Fields under Subscription Tables tab.
  5. Locate the field to add.
  6. In Source Field No, add the Table No (same as Target Field No).

Update Subscription Fields after changing the target table

If field is added to or removed from target table listed under Subscription Tables, you can update the Subscription Fields manually.

  1. Select the 🔎 icon, enter Subscriptions (IDM), and select the related link.
  2. Select the subscription which subscription fields you want to update.
  3. Choose the Update Subscription Fields action.
  4. Open the Subscription Card.
  5. Select Subscription Fields under Subscription Tables tab.
  6. Field is added to or removed from Subscription Fields based on whether it was added to or removed from related target table.