0

Can we have better formatted emails for the Business Central extension update / upgrade notification emails? Currently Microsoft sends emails with an unformatted JSON body containing all of the extension issues found trying to upgrade. Our customers receive these emails and disregard them because they can't read them. It would be nice if the emails first processed the JSON structure through a formatter so they are readable. It would also help our support staff so they don't have to always have to format each email manually. For example, our customer received this:


[ { "ExtensionId": "3f1e76e6-34f1-4764-9c82-85e9ea48f1b4", "ExtensionName": "Tipalti Import Export", "ExtensionPublisher": "Velosio", "ExtensionVersion": "1.0.3.97", "PublishedAs": "Tenant", "Messages": [ "src/Pages/PayeeSyncErrorListVEL.Page.al (154,48) - Error AL0433: Table 'IRS 1099 Form-Box' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0.", "src/Reports/PayeesImportVEL.Report.al (529,32) - Error AL0433: Table 'IRS 1099 Form-Box' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0.", "src/Pages/PayeeSyncErrorListVEL.Page.al (156,48) - Error AL0118: The name '\"IRS 1099 Form-Box\"' does not exist in the current context.", "src/Reports/PayeesImportVEL.Report.al (478,29) - Error AL0433: Field 'IRS 1099 Code' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0." ] }, { "ExtensionId": "c80efcbf-e23f-4862-b291-0ddd348a40f7", "ExtensionName": "Vendor Misc Customizations", "ExtensionPublisher": "Velosio", "ExtensionVersion": "23.0.0.0", "PublishedAs": "Tenant", "Messages": [ "Source/PageExt 60520 Vendor Ledger Entries.al (5,18) - Error AL0270: The control '\"IRS 1099 Amount\"' is not found in the target 'Vendor Ledger Entries'" ] }, { "ExtensionId": "2aaf1ebc-3e54-4144-9744-aaf06cdad23c", "ExtensionName": "Item Ledger Attachments Ext", "ExtensionPublisher": "Velosio", "ExtensionVersion": "23.0.0.0", "PublishedAs": "Tenant", "Messages": [ "Source/CodeUnit 60500 Document Attachment Subscriber.al (3,46) - Error AL0118: The name '\"Document Attachment Factbox\"' does not exist in the current context.", "Source/PageExt 60500 Item Ledger Entries.al (7,40) - Error AL0185: Page 'Document Attachment Factbox' is missing", "Source/PageExt 60500 Item Ledger Entries.al (11,31) - Error AL0171: The property value '\"Table ID\" = const(Database::\"Item Ledger Entry\"), \"No.\" = field(\"Document No.\")' on property 'SubPageLink' is not valid." ] }, { "ExtensionId": "28147d06-0a3b-4116-ac5b-4940eb992950", "ExtensionName": "ALProject1", "ExtensionPublisher": "Default Publisher", "ExtensionVersion": "1.2.0.0", "PublishedAs": "Tenant", "Messages": [ "initial_setup_periodic_reimport.al (24021,47) - Error AL0433: Field 'Coupled to Dataverse' is removed. Reason: Field Service is moved to Field Service Integration app.. Tag: 28.0." ] } ]


If would be nice if it was formatted like this:


============================================================

BUSINESS CENTRAL v28 – EXTENSION COMPATIBILITY ERRORS

============================================================


------------------------------------------------------------

1. Tipalti Import Export

------------------------------------------------------------

  Publisher:   Velosio

  Version:    1.0.3.97

  Published As: Tenant

  Extension ID: 3f1e76e6-34f1-4764-9c82-85e9ea48f1b4


  Errors (4):

  [1] src/Pages/PayeeSyncErrorListVEL.Page.al (154,48)

    AL0433: Table 'IRS 1099 Form-Box' is removed.

    Reason: Moved to IRS Forms App. (Tag: 28.0)


  [2] src/Reports/PayeesImportVEL.Report.al (529,32)

    AL0433: Table 'IRS 1099 Form-Box' is removed.

    Reason: Moved to IRS Forms App. (Tag: 28.0)


  [3] src/Pages/PayeeSyncErrorListVEL.Page.al (156,48)

    AL0118: The name '"IRS 1099 Form-Box"' does not exist

    in the current context.


  [4] src/Reports/PayeesImportVEL.Report.al (478,29)

    AL0433: Field 'IRS 1099 Code' is removed.

    Reason: Moved to IRS Forms App. (Tag: 28.0)


------------------------------------------------------------

2. Vendor Misc Customizations

------------------------------------------------------------

  Publisher:   Velosio

  Version:    23.0.0.0

  Published As: Tenant

  Extension ID: c80efcbf-e23f-4862-b291-0ddd348a40f7


  Errors (1):

  [1] Source/PageExt 60520 Vendor Ledger Entries.al (5,18)

    AL0270: The control '"IRS 1099 Amount"' is not found

    in the target 'Vendor Ledger Entries'.


------------------------------------------------------------

3. Item Ledger Attachments Ext

------------------------------------------------------------

  Publisher:   Velosio

  Version:    23.0.0.0

  Published As: Tenant

  Extension ID: 2aaf1ebc-3e54-4144-9744-aaf06cdad23c


  Errors (3):

  [1] Source/CodeUnit 60500 Document Attachment Subscriber.al (3,46)

    AL0118: The name '"Document Attachment Factbox"' does not

    exist in the current context.


  [2] Source/PageExt 60500 Item Ledger Entries.al (7,40)

    AL0185: Page 'Document Attachment Factbox' is missing.


  [3] Source/PageExt 60500 Item Ledger Entries.al (11,31)

    AL0171: The property value '"Table ID" = const(Database::

    "Item Ledger Entry"), "No." = field("Document No.")' on

    property 'SubPageLink' is not valid.


------------------------------------------------------------

4. ALProject1

------------------------------------------------------------

  Publisher:   Default Publisher

  Version:    1.2.0.0

  Published As: Tenant

  Extension ID: 28147d06-0a3b-4116-ac5b-4940eb992950


  Errors (1):

  [1] initial_setup_periodic_reimport.al (24021,47)

    AL0433: Field 'Coupled to Dataverse' is removed.

    Reason: Field Service moved to Field Service Integration

    app. (Tag: 28.0)


============================================================

SUMMARY: 4 extensions | 9 total errors

============================================================



Or even something like this:



[

 {

  "ExtensionId": "3f1e76e6-34f1-4764-9c82-85e9ea48f1b4",

  "ExtensionName": "Tipalti Import Export",

  "ExtensionPublisher": "Velosio",

  "ExtensionVersion": "1.0.3.97",

  "PublishedAs": "Tenant",

  "Messages": [

   "src/Pages/PayeeSyncErrorListVEL.Page.al (154,48) - Error AL0433: Table 'IRS 1099 Form-Box' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0.",

   "src/Reports/PayeesImportVEL.Report.al (529,32) - Error AL0433: Table 'IRS 1099 Form-Box' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0.",

   "src/Pages/PayeeSyncErrorListVEL.Page.al (156,48) - Error AL0118: The name '\"IRS 1099 Form-Box\"' does not exist in the current context.",

   "src/Reports/PayeesImportVEL.Report.al (478,29) - Error AL0433: Field 'IRS 1099 Code' is removed. Reason: Moved to IRS Forms App.. Tag: 28.0."

  ]

 },

 {

  "ExtensionId": "c80efcbf-e23f-4862-b291-0ddd348a40f7",

  "ExtensionName": "Vendor Misc Customizations",

  "ExtensionPublisher": "Velosio",

  "ExtensionVersion": "23.0.0.0",

  "PublishedAs": "Tenant",

  "Messages": [

   "Source/PageExt 60520 Vendor Ledger Entries.al (5,18) - Error AL0270: The control '\"IRS 1099 Amount\"' is not found in the target 'Vendor Ledger Entries'"

  ]

 },

 {

  "ExtensionId": "2aaf1ebc-3e54-4144-9744-aaf06cdad23c",

  "ExtensionName": "Item Ledger Attachments Ext",

  "ExtensionPublisher": "Velosio",

  "ExtensionVersion": "23.0.0.0",

  "PublishedAs": "Tenant",

  "Messages": [

   "Source/CodeUnit 60500 Document Attachment Subscriber.al (3,46) - Error AL0118: The name '\"Document Attachment Factbox\"' does not exist in the current context.",

   "Source/PageExt 60500 Item Ledger Entries.al (7,40) - Error AL0185: Page 'Document Attachment Factbox' is missing",

   "Source/PageExt 60500 Item Ledger Entries.al (11,31) - Error AL0171: The property value '\"Table ID\" = const(Database::\"Item Ledger Entry\"), \"No.\" = field(\"Document No.\")' on property 'SubPageLink' is not valid."

  ]

 },

 {

  "ExtensionId": "28147d06-0a3b-4116-ac5b-4940eb992950",

  "ExtensionName": "ALProject1",

  "ExtensionPublisher": "Default Publisher",

  "ExtensionVersion": "1.2.0.0",

  "PublishedAs": "Tenant",

  "Messages": [

   "initial_setup_periodic_reimport.al (24021,47) - Error AL0433: Field 'Coupled to Dataverse' is removed. Reason: Field Service is moved to Field Service Integration app.. Tag: 28.0."

  ]

 }

]


Just so it's somewhat readable.

STATUS DETAILS
New