Transport Management

Release: Transport Management – 27.0.9785.66297

Description

This release focuses on improving extensibility of the Transport Management application. Event publishers in key codeunits for Sales, Purchase, and Transfer time management have been updated to enable external subscription by partner and customer extensions. Additionally, the Source Entity validation logic has been opened up to allow extended Transport Order Source Types to use the “Source Sub No.” field without triggering false validation errors.

User Stories

Title Description Setup Instructions Impact on previous version
[24520] – TMS: Add Extensibility Events for Departure and Delivery Time Reference Management New IntegrationEvent publishers have been added/updated in codeunits briTMS_SalesTimeManagement (71925941), briTMS_PurchTimeManagement (71925942), and briTMS_TransfTimeManagement (71925943) to allow external extensions to adjust earliest/latest departure and delivery times in Location records depending on document information (purchase, sales, transfer). Events include OnAfterGetDepartureRecRef, OnAfterGetDeliveryRecRef, and 8 location-level events in TransfTimeManagement. No setup required. Event subscribers can be implemented in partner/customer extensions to bind to the newly exposed IntegrationEvent publishers. Breaking change (High risk): Event publishers accessibility changed from internal to local. Existing event subscribers within the same extension that were bound to these events will no longer compile. External extension subscribers are now able to subscribe to these events. Impacted objects: Codeunit 71925941, 71925942, 71925943.
[24523] – Support Source Sub No. for Extended Transport Order Source Types The codeunit briTMS_SourceEntityValidation (71925956) has been updated to remove the Access = Internal restriction, making it publicly accessible. This allows extensions that extend the enum briTMS_TrnsportOrderSourceType to properly use the “Source Sub No.” field on Entity Instructions and Document Instructions without triggering a FieldError on Source Entity validation. The validation events (OnValidateSourceSubNo, OnBeforeValidateEntityInstructionSourceSubNo, OnBeforeValidateDocumentInstructionSourceSubNo) have been changed from internal to local scope. No setup required. Extensions that extend the Transport Order Source Type enum can now assign Source Sub No. values without encountering the previous FieldError. Breaking change (High risk): Event publishers accessibility changed from internal to local in Codeunit 71925956. Existing same-extension event subscribers bound to OnValidateSourceSubNo, OnBeforeValidateEntityInstructionSourceSubNo, or OnBeforeValidateDocumentInstructionSourceSubNo will no longer compile. The codeunit Access modifier was changed from Internal to Public (non-breaking for external consumers).

Bugs

No bug fixed in this release.

Events

Status Type Object Name Event Name Description
Updated IntegrationEvent briTMS_SalesTimeManagement OnAfterGetDepartureRecRef Accessibility changed from internal to local. Signature (var ReferenceTimeRecord: RecordRef; DocVar: Variant) unchanged. Raised at end of GetSalesHeaderDepartureRecordReference and GetSalesLineDepartureRecordReference. Now subscribable by external extensions.
Updated IntegrationEvent briTMS_PurchTimeManagement OnAfterGetDeliveryRecRef Accessibility changed from internal to local. Signature (var ReferenceTimeRecord: RecordRef; DocVar: Variant) unchanged. Raised at end of GetPurchaseHeaderDeliveryRecordReference and GetPurchaseLineDeliveryRecordReference. Now subscribable by external extensions.
Updated IntegrationEvent briTMS_TransfTimeManagement OnGetLocationEarliestDeparture Accessibility changed from internal to local. Signature (var Location: Record Location; TransferHeader: Record “Transfer Header”) unchanged. Raised after Location.Get() in CalculateEarliestTransferDepartureTime.
Updated IntegrationEvent briTMS_TransfTimeManagement OnGetLocationLatestDeparture Accessibility changed from internal to local. Signature (var Location: Record Location; TransferHeader: Record “Transfer Header”) unchanged. Raised after Location.Get() in CalculateLatestTransferDepartureTime.
Updated IntegrationEvent briTMS_TransfTimeManagement OnGetLocationEarliestDelivery Accessibility changed from internal to local. Signature (var Location: Record Location; TransferHeader: Record “Transfer Header”) unchanged. Raised after Location.Get() in CalculateEarliestTransferDeliveryTime.
Updated IntegrationEvent briTMS_TransfTimeManagement OnGetLocationLatestDelivery Accessibility changed from internal to local. Signature (var Location: Record Location; TransferHeader: Record “Transfer Header”) unchanged. Raised after Location.Get() in CalculateLatestTransferDeliveryTime.
Updated IntegrationEvent briTMS_TransfTimeManagement OnAfterGetLocEarliestDeparture Accessibility changed from internal to local. Signature (var Location: Record Location; TransferLine: Record “Transfer Line”) unchanged. Raised after Location.Get() for transfer lines.
Updated IntegrationEvent briTMS_TransfTimeManagement OnAfterGetLocLatestDeparture Accessibility changed from internal to local. Signature (var Location: Record Location; TransferLine: Record “Transfer Line”) unchanged. Raised after Location.Get() for transfer lines.
Updated IntegrationEvent briTMS_TransfTimeManagement OnAfterGetLocEarliestDelivery Accessibility changed from internal to local. Signature (var Location: Record Location; TransferLine: Record “Transfer Line”) unchanged. Raised after Location.Get() for transfer lines.
Updated IntegrationEvent briTMS_TransfTimeManagement OnAfterGetLocLastestDelivery Accessibility changed from internal to local. Signature (var Location: Record Location; TransferLine: Record “Transfer Line”) unchanged. Raised after Location.Get() for transfer lines.
Updated IntegrationEvent briTMS_SourceEntityValidation OnValidateSourceSubNo Accessibility changed from internal to local. Signature (SourceEntity: Enum briTMS_TrnsportOrderSourceType; SourceSubNo: Code[10]; var IsValid: Boolean; var ErrorMessage: Text) unchanged.
Updated IntegrationEvent briTMS_SourceEntityValidation OnBeforeValidateEntityInstructionSourceSubNo Accessibility changed from internal to local. Signature (var EntityInstruction: Record briTMS_EntityInstruction; var IsHandled: Boolean) unchanged.
Updated IntegrationEvent briTMS_SourceEntityValidation OnBeforeValidateDocumentInstructionSourceSubNo Accessibility changed from internal to local. Signature (var DocumentInstruction: Record briTMS_DocumentInstruction; var IsHandled: Boolean) unchanged.
Previous