How to handle CodeUnit 1 Logic in Business Central upgrade

15

As you all are aware that Codeunit 1 (Application Management) has been removed and it is replace with new system codeunits. By moving this there is no functionality changes but this process will affect upgrade process for NAV.

All these functions has been changed  to different event including publishers and subscribers that means instead of calling Codeunit 1 functions business central will use system codeunits.

Following tables will illustrate mapping between codeunit 1 triggers and event publishers.

Codeunit 1 trigger
New Codeunit ID
New method
CompanyClose
LogInManagement
CompanyClose
CompanyOpen
LogInManagement
CompanyOpen
GetSystemIndicator
LogInManagement
GetSystemIndicator
OnAfterCompanyClose
LogInManagement
OnAfterCompanyClose
OnAfterCompanyOpen
LogInManagement
OnAfterCompanyOpen
OnBeforeCompanyClose
LogInManagement
OnBeforeCompanyClose
OnBeforeCompanyOpen
LogInManagement
OnBeforeCompanyOpen
FindPrinter
ReportManagement
GetPrinterName
ApplicationVersion
Application System Constants
ApplicationVersion
CustomApplicationVersion
N/A
N/A
ReleaseVersion
Application System Constants
ReleaseVersion
ApplicationBuild
Application System Constants
ApplicationBuild
CustomApplicationBuild
N/A
N/A
ApplicationLanguage
LanguageManagement
ApplicationLanguage
DefaultRoleCenter
Conf./Personalization Mgt.
DefaultRoleCenterID
MakeDateTimeText
TextManagement
MakeDateTimeText
GetSeparateDateTime
TextManagement
GetSeparateDateTime
MakeDateText
TextManagement
MakeDateText
MakeTimeText
TextManagement
MakeTimeText
MakeText
TextManagement
MakeText
MakeDateTimeFilter
TextManagement
MakeDateTimeFilter
MakeDateFilter
TextManagement
MakeDateFilter
MakeTextFilter
TextManagement
MakeTextFilter
MakeCodeFilter
TextManagement
MakeTextFilter
MakeTimeFilter
TextManagement
MakeTimeFilter
AutoFormatTranslate
AutoFormatManagement
AutoFormatTranslate
ReadRounding
AutoFormatManagement
ReadRounding
CaptionClassTranslate
CaptionManagement
CaptionClassTranslate
GetCueStyle
Cue Setup
GetCueStyle
SetGlobalLanguage
LanguageManagement
SetGlobalLanguage
ValidateApplicationlLanguage
LanguageManagement
ValidateApplicationLanguage
LookupApplicationlLanguage
LanguageManagement
LookupApplicationLanguage
GetGlobalTableTriggerMask
GlobalTriggerManagement
GetGlobalTableTriggerMask
OnGlobalInsert
GlobalTriggerManagement
OnGlobalInsert
OnGlobalModify
GlobalTriggerManagement
OnGlobalModify
OnGlobalDelete
GlobalTriggerManagement
OnGlobalDelete
OnGlobalRename
GlobalTriggerManagement
OnGlobalRename
GetDatabaseTableTriggerSetup
GlobalTriggerManagement
GetDatabaseTableTriggerSetup
OnDatabaseInsert
GlobalTriggerManagement
OnDatabaseInsert
OnDatabaseModify
GlobalTriggerManagement
OnDatabaseModify
OnDatabaseDelete
GlobalTriggerManagement
OnDatabaseDelete
OnDatabaseRename
GlobalTriggerManagement
OnDatabaseRename
OnDebuggerBreak
Debugger Management
ProcessOnDebuggerBreak
LaunchDebugger
Debugger Management
OpenDebugger
OpenSettings
Conf./Personalization Mgt.
OpenSettings
OpenContactMSSales
SaaS Log In Management
OpenContactMSSales
InvokeExtensionInstallation
ExtensionMarketplaceMgmt
InvokeExtensionInstallation
CustomizeChart
Generic Chart Mgt
CustomizeChart
HasCustomLayout
ReportManagement
HasCustomLayout
MergeDocument
ReportManagement
MergeDocument
ReportGetCustomRdlc
ReportManagement
ReportGetCustomRdlc
ReportScheduler
ReportManagement
ScheduleReport
OnBeforeOpenSettings
Conf./Personalization Mgt.
OnBeforeOpenSettings
OnAfterGetApplicationVersion
Application System Constants
OnAfterGetApplicationVersion
OnRoleCenterOpen
Conf./Personalization Mgt.
OnRoleCenterOpen
OnAfterGetSystemIndicator
Sales-Post and Send
OnAfterGetSystemIndicator
OnAfterFindPrinter
ReportManagement
OnAfterGetPrinterName
OnAfterGetDefaultRoleCenter
Conf./Personalization Mgt.
OnAfterGetDefaultRoleCenter
OnAfterMakeDateText
N/A
N/A
OnAfterMakeTimeText
N/A
N/A
OnAfterMakeText
N/A
N/A
OnAfterMakeDateTimeFilter
TextManagement
OnAfterMakeDateTimeFilter
OnAfterMakeDateFilter
TextManagement
OnAfterMakeDateFilter
OnAfterMakeTextFilter
TextManagement
OnAfterMakeTextFilter
OnAfterMakeCodeFilter
N/A
N/A
OnAfterMakeTimeFilter
TextManagement
OnAfterMakeTimeFilter
OnAfterAutoFormatTranslate
AutoFormatManagement
OnAfterAutoFormatTranslate
OnAfterCaptionClassTranslate
CaptionManagement
OnAfterCaptionClassTranslate
OnAfterGetGlobalTableTriggerMask
GlobalTriggerManagement
OnAfterGetGlobalTableTriggerMask
OnAfterOnGlobalInsert
GlobalTriggerManagement
OnAfterOnGlobalInsert
OnAfterOnGlobalModify
GlobalTriggerManagement
OnAfterOnGlobalModify
OnAfterOnGlobalDelete
GlobalTriggerManagement
OnAfterOnGlobalDelete
OnAfterOnGlobalRename
GlobalTriggerManagement
OnAfterOnGlobalRename
OnAfterGetDatabaseTableTriggerSetup
GlobalTriggerManagement
OnAfterGetDatabaseTableTriggerSetup
OnAfterOnDatabaseInsert
GlobalTriggerManagement
OnAfterOnDatabaseInsert
OnAfterOnDatabaseModify
GlobalTriggerManagement
OnAfterOnDatabaseModify
OnAfterOnDatabaseDelete
GlobalTriggerManagement
OnAfterOnDatabaseDelete
OnAfterOnDatabaseRename
GlobalTriggerManagement
OnAfterOnDatabaseRename
OnAfterHasCustomLayout
ReportManagement
OnAfterHasCustomLayout
OnAfterReportGetCustomRdlc
Edit MS Word Report Layout
OnAfterReportGetCustomRdlc
OnBeforeOnDatabaseInsert
GlobalTriggerManagement
OnBeforeOnDatabaseInsert
OnBeforeOnDatabaseModify
GlobalTriggerManagement
OnBeforeOnDatabaseModify
OnBeforeOnDatabaseDelete
GlobalTriggerManagement
OnBeforeOnDatabaseDelete
OnBeforeOnDatabaseRename
GlobalTriggerManagement
OnBeforeOnDatabaseRename
OnEditInExcel
ODataUtility
OnEditInExcel
OnInstallAppPerDatabase
N/A
N/A
OnInstallAppPerCompany
N/A
N/A
OnCheckPreconditionsPerDatabase
Data Upgrade Mgt.
OnCheckPreconditionsPerDatabase
OnCheckPreconditionsPerCompany
Data Upgrade Mgt.
RaiseOnCheckPreconditionsPerCompany
OnUpgradePerDatabase
Data Upgrade Mgt.
OnUpgradePerDatabase
OnUpgradePerCompany
Data Upgrade Mgt.
OnUpgradePerCompany
OnValidateUpgradePerDatabase
Data Upgrade Mgt.
OnValidateUpgradePerDatabase
OnValidateUpgradePerCompany
Data Upgrade Mgt.
OnValidateUpgradePerCompany

Hope this helps you