Hi,
The Service Management module in BC has long lagged behind Sales and Purchasing in terms of document flexibility and UI completeness. The absence of a built-in corrective credit memo action for posted service invoices is a known limitation. Unlike posted sales invoices, service invoices involve service items, contracts, warranties, and resource allocations, which makes reversal logic more complex and less standardized.
That said, if your business requires this functionality, it can be added through a targeted customization. A developer can create an extension that replicates the behavior of corrective credit memos for service invoices, ensuring that service ledger entries are reversed properly and dimensions are preserved. This would involve:
- Creating a custom action on the posted service invoice page
- Generating a service credit memo document with mirrored lines
- Reversing service ledger entries and updating contract billing logic
As for the Copy Document feature you're right again. Service Quotes, Orders, and Contracts do not support copy actions out-of-the-box. This can be added via AL by mimicking the logic used in SalesHeader.CopyDocument(...) and adapting it for service documents. You’ll need to handle service item lines, resource allocations, and contract references carefully to avoid data integrity issues.
Finally, the lack of order totals on service documents is a UI gap that many teams have flagged. You can add calculated fields to the page extensions for:
- Subtotal excluding tax
- Tax amount
- Total including tax
These can be derived from the service lines and VAT setup, similar to how totals are shown on sales orders. It’s a clean enhancement that improves user experience without disrupting core posting logic.
Helpful references:
Credit memos and cancellation – BC
Service Management Overview – Microsoft Learn
Copy Document logic in Sales – AL Developer Docs
GitHub source for credit memo cancellation
If you find this helpful, feel free to mark this as the suggested or verified answer.
Cheers
Jeffrey