Codeunit 4037 "Helper Functions"
HybridGP · Microsoft.DataMigration.GP
Across versions
- BC23-28not present
- BC29-30present
Neighbourhood 25 connected objects and pages
HybridGP · Microsoft.DataMigration.GP · BC29-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Permissions | tabledata “Dimension Set Entry” = rimd, tabledata “G/L Account” = rimd, tabledata “G/L Entry” = rimd, tabledata Customer = rimd, tabledata “Cust. Ledger Entry” = rimd, tabledata Dimension = rimd, tabledata “Dimension Value” = rimd, tabledata “Detailed Cust. Ledg. Entry” = rimd, tabledata Vendor = ri… |
Events published
OnSkipPostingGLAccounts(var SkipPosting: Boolean)(integration)OnSkipPostingAccountBatches(var SkipPosting: Boolean)(integration)OnSkipPostingCustomerBatches(var SkipPosting: Boolean)(integration)OnSkipPostingVendorBatches(var SkipPosting: Boolean)(integration)OnSkipPostingBankBatches(var SkipPosting: Boolean)(integration)OnSkipPostingItemBatches(var SkipPosting: Boolean)(integration)OnHandlePaymentTerm(GPPaymentTerms: Record "GP Payment Terms"; var IsPaymentTermHandled: Boolean)(integration)
Procedures
GetTextFromJToken(JToken: JsonToken; Path: Text): TextWriteTextToField(var DestinationFieldRef: FieldRef; TextToWrite: Text)GetFileNameByEntityName(EntityName: Text): TextUpdateFieldValue(var RecordVariant: Variant; FieldNo: Integer; JObject: JsonObject; PropertyName: Text)UpdateFieldWithValue(var RecordVariant: Variant; FieldNo: Integer; Value: Text[30])TrimStringQuotes(Value: Text): TextGetPostingAccountNumber(AccountToGet: Text): Code[20]ConvertAccountCategory(GPAccount: Record "GP Account"): OptionConvertDebitCreditType(GPAccount: Record "GP Account"): OptionConvertIncomeBalanceType(GPAccount: Record "GP Account"): OptionCreateCountryIfNeeded(CountryCode: Code[10]; CountryName: Text[50])AssignSubAccountCategory(GPAccount: Record "GP Account"): IntegerTrimBackslash(Value: Text): TextSetCustomerTransType(var GPCustomerTransactions: Record "GP Customer Transactions")SetVendorTransType(var GPVendorTransactions: Record "GP Vendor Transactions")ResetAdjustforPaymentInGLSetup(var Flag: Boolean)RunPreMigrationChecks(): BooleanCreateDimensions()CreatePaymentTerms()CreateItemTrackingCodes()CreateLocations()CreateCheckbooks()CreateOpenPOs()CreateFiscalPeriods()CreateVendorEFTBankAccounts()CreateVendorClasses()CreateCustomerClasses()CreateSetupRecordsIfNeeded()CalculateDueDateFormula(GPPaymentTerms: Record "GP Payment Terms"; Use_Discount_Calc: Boolean; Discount_Calc: Text[32]): Text[50](internal)CalculateDiscountDateFormula(GPPaymentTerms: Record "GP Payment Terms"): Text[50](internal)GetMigrationTypeTxt(): Text[250]GetTelemetryCategory(): TextCheckDimensionName(Name: Text[50]): Code[20](internal)CreateDimensionValues()AnyCompaniesWithTooManySegments(var CompanyList: List of [Text])SetTransactionProcessedFlag()HaveGLTrxsBeenProcessed(): BooleanSetAccountValidationError()ClearAccountValidationError()GetAccountValidationError(): BooleanGetNumberOfAccounts(): IntegerGetNumberOfItems(): IntegerGetNumberOfCustomers(): IntegerGetNumberOfVendors(): IntegerRemoveEmptyGLTransactions()RaiseNotificationForUnpostedJournals()GetUnpostedBatchCountForCompany(CompanyNameTxt: Text; var TotalGLBatchCount: Integer; var TotalStatisticalBatchCount: Integer; var TotalBankBatchCount: Integer; var TotalCustomerBatchCount: Integer; var TotalItemBatchCount: Integer; var TotalVendorBatchCount: Integer)(internal)PostGLTransactions()LogWarningAndClearLastError(ContextValue: Text[50])(internal)RemoveBatches()SetGlobalDimensions(GlobalDim1: Code[20]; GlobalDim2: Code[20])UpdateGlobalDimensionNo()SetProcessesRunning(IsRunning: Boolean)LocationsCreated(): BooleanGetLastError()CreatePreMigrationData(): BooleanCreatePostMigrationData(): BooleanCheckMigrationStatus()CleanGPPhoneOrFaxNumber(InValue: Text[30]): Text[21]ContainsAlphaChars(InValue: Text[30]): BooleanGetGPAccountNumberByIndex(GPAccountIndex: Integer): Code[20]EnsureAccountHasGenProdPostingAccount(AccountNumber: Code[20])CreateCurrencyIfNeeded(CurrencyCode: Code[10])StringEqualsCaseInsensitive(Text1: Text; Text2: Text): BooleanCheckAndLogErrors()(internal)ShouldMigrateItem(ItemNo: Text): Boolean(internal)RunPreMigrationCleanup()(internal)CreateDimSet(ACTNUMBR_1: Code[20]; ACTNUMBR_2: Code[20]; ACTNUMBR_3: Code[20]; ACTNUMBR_4: Code[20]; ACTNUMBR_5: Code[20]; ACTNUMBR_6: Code[20]; ACTNUMBR_7: Code[20]; ACTNUMBR_8: Code[20]): Integer(internal)GetSegmentValue(ACTNUMBR_1: Code[20]; ACTNUMBR_2: Code[20]; ACTNUMBR_3: Code[20]; ACTNUMBR_4: Code[20]; ACTNUMBR_5: Code[20]; ACTNUMBR_6: Code[20]; ACTNUMBR_7: Code[20]; ACTNUMBR_8: Code[20]; SegmentNumber: Integer): Code[20](internal)GetSegmentNumbersFromGPAccountIndex(GPAccountIndex: Integer; var ACTNUMBR_1: Code[20]; var ACTNUMBR_2: Code[20]; var ACTNUMBR_3: Code[20]; var ACTNUMBR_4: Code[20]; var ACTNUMBR_5: Code[20]; var ACTNUMBR_6: Code[20]; var ACTNUMBR_7: Code[20]; var ACTNUMBR_8: Code[20]): Code[20](internal)AreAllSegmentNumbersEmpty(ACTNUMBR_1: Code[20]; ACTNUMBR_2: Code[20]; ACTNUMBR_3: Code[20]; ACTNUMBR_4: Code[20]; ACTNUMBR_5: Code[20]; ACTNUMBR_6: Code[20]; ACTNUMBR_7: Code[20]; ACTNUMBR_8: Code[20]): Boolean(internal)CodeIsEmpty(TheCode: Code[20]): Boolean(internal)GenerateStandardCodeDescriptionFromAccount(var GPAccount: Record "GP Account"): Text(internal)
Plus 54 local procedures.
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 1796 “Data Migration Error Logging” (7 calls:
CreateDimensionsImp → SetLastRecordUnderProcessing,CreateLocationsImp → SetLastRecordUnderProcessing,CreatePaymentTermsImp → SetLastRecordUnderProcessing, …) - Codeunit 4019 “GP Item Migrator” (2 calls:
CreateItemCategories → CreateItemCategories,CreateKitItems → MigrateKitItems) - Codeunit 4022 “GP Vendor Migrator” (2 calls:
CreateVendorEFTBankAccountsImp → MigrateVendorEFTBankAccounts,GetNumberOfVendors → ShouldMigrateVendor) - Codeunit 4100 “Temp Blob” (2 calls:
WriteTextToField → CreateOutStream,WriteTextToField → ToRecordRef) - Codeunit 570 “G/L Account Category Mgt.” (2 calls:
GetAcctCategoryEntryNo → GetAccountCategory,GetAcctSubCategoryEntryNo → GetAccountSubcategory) - Codeunit 10 “Type Helper” (1 call:
WriteTextToField → Evaluate) - Codeunit 13 “Gen. Jnl.-Post Batch” (1 call:
SafePostGLBatch → (object)) - Codeunit 23 “Item Jnl.-Post Batch” (1 call:
SafePostItemBatch → (object)) - Codeunit 2626 “Stat. Acc. Post. Batch” (1 call:
SafePostStatisticalAccBatch → (object)) - Codeunit 4001 “Hybrid Cloud Management” (1 call:
RaiseNotificationForUnpostedJournals → GetLastReplicationSummary) - Codeunit 40025 “GP Checkbook Migrator” (1 call:
CreateCheckBooksImp → MoveCheckbookStagingData) - Codeunit 40107 “FiscalPeriods” (1 call:
CreateFiscalPeriodsImp → MoveStagingData) - Codeunit 40108 “GP PO Migrator” (1 call:
CreateOpenPOsImp → MigratePOStagingData) - Codeunit 4017 “GP Account Migrator” (1 call:
CreateAllocationAccounts → CreateAllocationAccounts) - Codeunit 408 “DimensionManagement” (1 call:
CreateDimSet → GetDimensionSetID) - Codeunit 6112 “Customer Data Migration Facade” (1 call:
CreateCountryIfNeeded → CreateCountryIfNeeded)
Called by
- Codeunit 4022 “GP Vendor Migrator” (24 calls:
CreateOrUpdateOrderAddress → CleanGPPhoneOrFaxNumber,CreateOrUpdateRemitAddress → CleanGPPhoneOrFaxNumber,CreateRecurringPurchaseLineImp → CreateDimSet, …) - Codeunit 4018 “GP Customer Migrator” (19 calls:
CreateCustomerPostingGroupIfNeeded → EnsureAccountHasGenProdPostingAccount,CreateCustomerPostingGroupIfNeeded → GetGPAccountNumberByIndex,CreateCustomerPostingGroupIfNeeded → GetPostingAccountNumber, …) - Codeunit 4025 “GP Cloud Migration” (17 calls:
CreateDataMigrationStatusRecords → GetMigrationTypeTxt,InitiateGPMigration → CreatePreMigrationData,InitiateGPMigration → CreateSetupRecordsIfNeeded, …) - Codeunit 4017 “GP Account Migrator” (15 calls:
CreateFixedAllocationAccountDistribution → CreateDimSet,CreateGLAccountBeginningBalanceImp → AreAllSegmentNumbersEmpty,CreateGLAccountBeginningBalanceImp → CreateDimSet, …) - Codeunit 4035 “Wizard Integration” (14 calls:
OnAfterMigrationFinishedSubscriber → SetProcessesRunning,OnCreatePostMigrationDataSubscriber → CheckAndLogErrors,OnCreatePostMigrationDataSubscriber → CreatePostMigrationData, …) - Codeunit 40903 “GP Migration Validator” (11 calls:
GetUnpostedBatchCounts → GetUnpostedBatchCountForCompany,RunCustomerValidation → CleanGPPhoneOrFaxNumber,RunCustomerValidation → ContainsAlphaChars, …) - Codeunit 4019 “GP Item Migrator” (7 calls:
ApplyGenPostingSetupCommonAccounts → GetPostingAccountNumber,CanAddGenProductPostingAccount → GetGPAccountNumberByIndex,CreateDefaultInventoryPostingGroup → GetPostingAccountNumber, …) - Codeunit 4016 “Hybrid GP Management” (3 calls:
HandleInitializationOfGPSynchronization → GetTelemetryCategory,TriggerUpgradeIfOneStepEnabled → GetTelemetryCategory,UpdateStatusOnHybridReplicationCompleted → GetTelemetryCategory) - Table 4026 “GP Payment Terms” (2 calls:
GetCalculatedDateForumla → CalculateDiscountDateFormula,GetCalculatedDateForumla → CalculateDueDateFormula) - Codeunit 40025 “GP Checkbook Migrator” (1 call:
GetBankAccPostingAccountNumber → GetTelemetryCategory) - Codeunit 40108 “GP PO Migrator” (1 call:
CreateLines → ShouldMigrateItem) - Codeunit 4015 “Hybrid GP Wizard” (1 call:
BeforeShowProductSpecificSettingsPageStep → AnyCompaniesWithTooManySegments) - Codeunit 4033 “Install GP SmartLists” (1 call:
InstallGPSmartListsExtension → GetTelemetryCategory) - Page 40125 “Hybrid GP Overview Fb” (1 call:
OnAfterGetCurrRecord → GetUnpostedBatchCountForCompany)
Recent changes
- 2026-09-11 #9363 GP - Updates 202607 (main, BC30, fix)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Helper Functions"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.