---
title: "Codeunit 5343 CRM Sales Order to Sales Order"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/5343-crm-sales-order-to-sales-order/
type: codeunit
id: 5343
name: "CRM Sales Order to Sales Order"
app: "Base Application"
namespace: Microsoft.Integration.D365Sales
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/5343-crm-sales-order-to-sales-order/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 5343 CRM Sales Order to Sales Order

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/5343-crm-sales-order-to-sales-order/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Integration.D365Sales |
| Versions | 17-28 |
| Source file | Integration/D365Sales/CRMSalesOrdertoSalesOrder.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| CreateInNAV | (Record CRM Salesorder, var Record Sales Header) | Boolean | public | 17-28 | - | - |
| RemoveCouplingToCRMSalesOrderOnSalesHeaderDelete | (var Record Sales Header, Boolean) | - | public | 17 | - | - |
| CreateNote | (Record Sales Header, Record CRM Annotation, var Record Record Link) | - | public | 17-28 | - | - |
| CreateExtendedDescriptionOrderLines | (Record Sales Header, Text) | - | public | 17-22 | Pending 18.0 | Replaced with the overload containing SalesLineNo |
| CreateExtendedDescriptionOrderLines | (Record Sales Header, Text, Integer) | - | public | 17-28 | - | - |
| CRMIsCoupledToValidRecord | (Record CRM Salesorder, Integer) | Boolean | public | 17-28 | - | - |
| GetCRMSalesOrder | (var Record CRM Salesorder, Text[35]) | Boolean | public | 17-28 | - | - |
| GetCoupledCRMSalesorder | (Record Sales Header, var Record CRM Salesorder) | - | public | 17-28 | - | - |
| GetCoupledCustomer | (Record CRM Salesorder, var Record Customer) | Boolean | public | 17-28 | - | - |
| GetCoupledSalesHeader | (Record CRM Salesorder, var Record Sales Header) | Boolean | public | 17-28 | - | - |
| GetCRMAccountOfCRMSalesOrder | (Record CRM Salesorder, var Record CRM Account) | Boolean | public | 17-28 | - | - |
| GetCRMContactOfCRMSalesOrder | (Record CRM Salesorder, var Record CRM Contact) | Boolean | public | 17-28 | - | - |
| SetLastBackOfficeSubmit | (var Record CRM Salesorder, Date) | - | public | 17-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnCreateSalesOrderHeaderOnBeforeSalesHeaderInsert | (var Record Sales Header, Record CRM Salesorder) | 17-28 | - | - |
| Integration event | OnCreateSalesOrderLinesOnBeforeSalesLineInsert | (var Record Sales Line, Record CRM Salesorderdetail) | 17-28 | - | - |
| Integration event | OnHideSalesOrderDiscountsDialog | (var Boolean) | 17-28 | - | - |
| Integration event | OnCopyBillToInformationIfNotEmptyOnBeforeValidateBillToCountryRegionCode | (var Record Sales Header, Record CRM Salesorder, var Boolean) | 17-28 | - | - |
| Integration event | OnCopyShipToInformationIfNotEmptyOnBeforeValidateShipToCountryRegionCode | (var Record Sales Header, Record CRM Salesorder, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeGetCoupledCustomer | (Record CRM Salesorder, var Record Customer, var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeSetLineDescription | (Record Sales Header, var Record Sales Line, var Record CRM Salesorderdetail, var Boolean) | 18-28 | - | - |
| Integration event | OnCreateInNAVOnBeforeCheckState | (Record CRM Salesorder, var Boolean) | 18-28 | - | - |
| Integration event | OnCreateNAVSalesOrderOnAfterSetLastBackOfficeSubmit | (var Record Sales Header, Record CRM Salesorder) | 18-28 | - | - |
| Integration event | OnInitializeSalesOrderLineOnBeforeUnexpectedProductTypeErr | (Record CRM Salesorderdetail, Record CRM Product, Record Sales Line, Record Sales Header, var Boolean) | 18-28 | - | - |
| Integration event | OnInitializeSalesOrderLineOnAfterCalcUpdateItemUnitPriceNeeded | (Record CRM Salesorderdetail, Record CRM Product, Record Sales Line, Record Sales Header, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeGetCRMAccountOfCRMSalesOrder | (Record CRM Salesorder, var Record CRM Account, var Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnSetSalesHeaderPaymentDiscountFromCRM | (var Record Sales Header, var Record CRM Salesorder, var Boolean) | 21-28 | - | - |
| Integration event | OnAfterCopyShipToInformationIfNotEmpty | (Record CRM Salesorder, var Record Sales Header) | 22-28 | - | - |
| Integration event | OnBeforeCopyBillToInformationIfNotEmpty | (Record CRM Salesorder, var Record Sales Header, var Boolean) | 22-28 | - | - |
| Integration event | OnInitializeSalesOrderLineOnBeforeInitializeWriteInOrderLine | (var Record Sales Line, var Record CRM Salesorderdetail, var Boolean) | 26-28 | - | - |
| Integration event | OnAfterCreateNAVSalesOrder | (Record CRM Salesorder, var Record Sales Header, var Record Sales Invoice Header) | 26-28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
