Codeunit 6926 "Expense Activity Log Mgt."
ExpenseAgent · Microsoft.ExpenseAgent
Across versions
- BC23-28not present
- BC29present
- BC30changed
Neighbourhood 5 connected objects and pages
ExpenseAgent · Microsoft.ExpenseAgent · BC29-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Access | Internal |
| Permissions | tabledata “Expense Activity Log Entry” = rimd, tabledata User = r |
Procedures
LogExpenseReportEvent(ExpenseReportHeader: Record "Expense Report Header"; EventType: Enum "Expense Activity Event Type"; InitiatedBy: Enum "Expense Activity Initiator"; ActorRole: Enum "Expense Activity Actor Role"; ActorExpenseUserNo: Code[20]; EventComment: Text): BigInteger(internal): Appends an activity entry for an in-flight expense report.LogExpenseReportEventByBCUser(ExpenseReportHeader: Record "Expense Report Header"; EventType: Enum "Expense Activity Event Type"; ActorRole: Enum "Expense Activity Actor Role"; EventComment: Text): BigInteger(internal): Appends an activity entry performed directly by a Business Central user.LogExpenseReportCreatedEvent(ExpenseReportHeader: Record "Expense Report Header"): BigInteger(internal): Appends the retrospective creation entry when activity tracking starts at first submission.ReassignExpenseReportEntriesToPosted(ExpenseReportHeader: Record "Expense Report Header"; PostedExpenseReportHeader: Record "Posted Expense Report Header")(internal): Reassigns a report’s entries to the posted report while preserving event and subject identity.DeleteEntriesForSource(SourceTableID: Integer; SourceRecordSystemID: Guid)(internal): Deletes activity entries sourced from the specified record.HasEntriesForSource(SourceTableID: Integer; SourceRecordSystemID: Guid): Boolean(internal)LogPolicyEvaluationIfReady(ExpenseReportHeader: Record "Expense Report Header")(internal)
Plus 8 local procedures.
Called by
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 6901 “Expense Report Approval Mgmt” (7 calls:
LogExpenseReportEvent → LogExpenseReportEvent,LogExpenseReportRecalledByAdministrator → LogExpenseReportEventByBCUser,LogExpenseReportSubmission → HasEntriesForSource, …) - Codeunit 6987 “Expense Report-Post” (3 calls:
CheckAndCreatePostedDocument → HasEntriesForSource,CheckAndCreatePostedDocument → LogExpenseReportEventByBCUser,CheckAndCreatePostedDocument → ReassignExpenseReportEntriesToPosted) - Table 6906 “Expense Report Header” (1 call:
OnDelete → DeleteEntriesForSource) - Table 6907 “Expense Report Line” (1 call:
MarkPoliciesEvaluated → LogPolicyEvaluationIfReady) - Table 6915 “Posted Expense Report Header” (1 call:
OnDelete → DeleteEntriesForSource)
Recent changes
- 2026-10-02 #12074 Expense Agent: travel request expense location, per-traveler reports, activity log and submitter comment (main, BC30, feature)
- 2026-10-01 #11628 Expense Agent: capture submission policy evaluation history (main, BC30, feature)
- 2026-09-03 #10829 [29.x][Expense Agent] Backport approval conversation from #10570 (releases/29.x, BC29, feature)
- 2026-09-02 #10570 Expense Agent: add approval conversation to expense reports (main, BC30, feature)
- 2026-08-17 #10255 Add expense activity history foundation (main, BC30, feature, added)
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: "Expense Activity Log Mgt."), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.