Codeunit 5920 "ServItemManagement"
Base Application · Microsoft.Service.Item
Across versions
- BC23present
- BC243 procedures added, 3 events added
- BC251 procedures added, 1 events added
- BC26-27unchanged
- BC282 events added, 1 procedures changed
- BC29-30unchanged
Neighbourhood 10 connected objects and pages
Base Application · Microsoft.Service.Item · BC23-30 · source at ea08af5e · facts from BC29
Events published
OnAddOrReplaceSIComponentPermanentTemporary(var ServItem: Record "Service Item"; var ServLine: Record "Service Line"; var IsHandled: Boolean)(integration)OnAfterInitNewServItemComponent(var ServItemComponent: Record "Service Item Component"; ServiceLine: Record "Service Line")(integration)OnBeforeCopyReservationEntry(SalesHeader: Record "Sales Header"; var TempReservationEntry: Record "Reservation Entry" temporary)(integration)OnBeforeCreateServItemOnSalesLineShpt(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; SalesShipmentLine: Record "Sales Shipment Line"; var IsHandled: Boolean; var TempReservEntry: Record "Reservation Entry"; var TempServiceItem: Record "Service Item" temporary; var TempServiceItemComponent: Record "Service Item Component" temporary)(integration)OnBeforeCreateServItemOnServItemLine(var ServItemLine: Record "Service Item Line")(integration)OnCreateServItemOnServItemLineOnBeforeConfirmCreateServItem(var ServiceItemLine: Record "Service Item Line"; var IsHandled: Boolean; var SkipConfirm: Boolean)+ BC28 (integration)OnBeforeDeleteServItemOnSaleCreditMemo(SalesHeader: Record "Sales Header"; var IsHandled: Boolean)(integration)OnBeforeInsertServItemComponent(var ServiceItemComponent: Record "Service Item Component"; ServiceItem: Record "Service Item"; SalesHeader: Record "Sales Header"; SalesShipmentLine: Record "Sales Shipment Line"; BOMComponent: Record "BOM Component"; BOMComponent2: Record "BOM Component")(integration)OnBeforeInsertNewServItemComponent(var ServiceItemComponent: Record "Service Item Component"; ServiceLine: Record "Service Line")(integration)OnBeforeReplaceSIComponent(var ServiceLine: Record "Service Line"; ServiceHeader: Record "Service Header"; ServShptDocNo: Code[20]; ServShptLineNo: Integer; var TempTrackingSpecification: Record "Tracking Specification" temporary; var IsHandled: Boolean)(integration)OnAfterModifyServiceItem(var ServiceItem: Record "Service Item"; var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var SalesShipmentLine: Record "Sales Shipment Line")+ BC28 (integration)OnCreateServItemOnSalesLineShpt(var ServiceItem: Record "Service Item"; SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line")(integration)OnCreateServItemOnServItemLine(var ServiceItem: Record "Service Item"; ServiceItemLine: Record "Service Item Line"; var IsHandled: Boolean)(integration)OnCreateServItemOnServItemLineOnBeforeServItemModify(var ServiceItem: Record "Service Item"; ServiceHeader: Record "Service Header"; ServiceItemLine: Record "Service Item Line")(integration)OnCreateServItemOnSalesLineShptOnAfterAddServItemComponents(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var SalesShipmentLine: Record "Sales Shipment Line"; var ServiceItem: Record "Service Item"; var TempServiceItem: Record "Service Item" temporary; var TempServiceItemComp: Record "Service Item Component" temporary)(integration)OnCreateServItemOnSalesLineShptOnAfterCalcShouldCreateServiceItem(SalesLine: Record "Sales Line"; SalesShipmentLine: Record "Sales Shipment Line"; var SerialNo: Code[50]; var ServItem: Record "Service Item"; var ServItemWithSerialNoExist: Boolean; var ShouldCreateServiceItem: Boolean)(integration)CreateServItemOnSalesLineShptOnBeforeInsertServiceItemComponents(var ServItem: Record "Service Item"; var IsHandled: Boolean)(integration)OnCreateServItemOnSalesLineShptOnAfterInsertServiceItem(var ServiceItem: Record "Service Item"; SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; SalesShipmentLine: Record "Sales Shipment Line"; var TempReservEntry: Record "Reservation Entry" temporary; ServItemWithSerialNoExist: Boolean; var IsHandled: Boolean)(integration)OnAfterCreateServItemOnServItemLine(ServiceItemLine: Record "Service Item Line")(integration)OnBeforeCreateServItemOnSalesInvoice(var SalesHeader: Record "Sales Header"; var SalesLine: Record "Sales Line"; var IsHandled: Boolean)(integration)OnCopyReservationEntryLineOnBeforeReservationEntryFindSet(SalesLine: Record "Sales Line"; var ReservationEntry: Record "Reservation Entry")(integration)OnBeforeCopyReservationEntryLine(SalesLine: Record "Sales Line"; var TempReservationEntry: Record "Reservation Entry" temporary; var IsHandled: Boolean)(integration)OnBeforeDoesSalesLineNeedServiceItemCreation(SalesLine: Record "Sales Line"; var SalesLineNeedsServiceItem: Boolean; var Item: Record Item; var ServItemGr: Record "Service Item Group"; var IsHandled: Boolean)+ BC24 (integration)OnBeforeDoesPurchaseLineNeedServiceItemCreation(PurchaseLine: Record "Purchase Line"; var PurchaseLineNeedsServiceItem: Boolean; var IsHandled: Boolean)+ BC24 (integration)OnBeforeCopyReservationEntryLineAfterCheckSalesLineNeedsServiceItemCreation(var SalesLine: Record "Sales Line"; var SalesLineNeedServiceItemCreation: Boolean)+ BC24 (integration)OnCreateServItemOnServItemLineOnBeforeServiceItemInsert(var ServiceItem: Record "Service Item"; ServiceItemLine: Record "Service Item Line")+ BC25 (integration)
Event subscriptions
- ItemVariantOnAfterOnDelete subscribes to Table “Item Variant” OnAfterOnDelete
Procedures
AddOrReplaceSIComponent(var ServLine: Record "Service Line"; ServHeader: Record "Service Header"; ServShptDocNo: Code[20]; ServShptLineNo: Integer; var TempTrackingSpecification: Record "Tracking Specification" temporary)InsertServiceItemComponent(var ServiceItemComponent: Record "Service Item Component"; BOMComponent: Record "BOM Component"; BOMComponent2: Record "BOM Component"; SalesHeader: Record "Sales Header"; SalesShipmentLine: Record "Sales Shipment Line")CreateServItemOnSalesLineShpt(SalesHeader: Record "Sales Header"; SalesLine: Record "Sales Line"; SalesShipmentLine: Record "Sales Shipment Line")CalcServiceWarrantyDates(var ServiceItem: Record "Service Item"; StartingWarrantyDate: Date; ItemTrackingWarrantyDateFormula: DateFormula; ServMgtSetupDefaultWarrantyDuration: DateFormula)CreateServItemOnServItemLine(var ServItemLine: Record "Service Item Line")CalcAmountLCY(FCAmount: Decimal; CurrencyFactor: Decimal; CurrencyCode: Code[10]; CurrencyDate: Date): DecimalCopyReservationEntry(SalesHeader: Record "Sales Header")CopyReservationEntryService(ServHeader: Record "Service Header")CreateServItemOnSalesInvoice(var SalesHeader: Record "Sales Header")ReturnServItemComp(var TempServItem: Record "Service Item" temporary; var TempServItemComp: Record "Service Item Component" temporary)DeleteServItemOnSaleCreditMemo(SalesHeader: Record "Sales Header")CopyReservation(PurchaseHeader: Record "Purchase Header")DoesSalesLineNeedServiceItemCreation(SalesLine: Record "Sales Line"; var Item: Record Item; var ServItemGr: Record "Service Item Group"): Boolean+ BC24DoesPurchaseLineNeedServiceItemCreation(PurchaseLine: Record "Purchase Line"): Boolean+ BC24
Plus 5 local procedures.
Triggers
OnRun
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 5906 “ServLogManagement” (5 calls:
AddOrReplaceSIComponent → ServItemComponentAdded,AddOrReplaceSIComponent → ServItemComponentRemoved,CreateServItemOnSalesLineShpt → ServItemAutoCreated, …) - Codeunit 5931 “Resource Skill Mgt.” (2 calls:
CreateServItemOnSalesLineShpt → AssignServItemResSkills,CreateServItemOnServItemLine → AssignServItemResSkills) - Page 456 “No. Series” (2 calls:
CreateServItemOnSalesLineShpt → (object),CreateServItemOnServItemLine → (object)) - Codeunit 27 “Confirm Management” (1 call:
CreateServItemOnServItemLine → GetResponseOrDefault) - Codeunit 5900 “ServOrderManagement” (1 call:
AddOrReplaceSIComponent → ReplacementCreateServItem)
Called by
- Codeunit 6455 “Serv. Sales-Post” (5 calls:
CreateServItemOnSalesInvoice → CopyReservationEntry,CreateServItemOnSalesInvoice → CreateServItemOnSalesInvoice,OnAfterInsertShipmentLine → CreateServItemOnSalesLineShpt, …) - Codeunit 5988 “Serv-Documents Mgt.” (2 calls:
PostDocumentLines → AddOrReplaceSIComponent,PrepareShipmentHeader → CopyReservationEntryService) - Codeunit 6454 “Serv. Purch.-Post” (2 calls:
OnAfterInsertReceiptHeader → CopyReservation,OnPostCombineSalesOrderShipmentOnAfterUpdateSalesOrderLine → CreateServItemOnSalesLineShpt) - Page 5902 “Service Order Subform” (1 call:
CreateServiceItem → CreateServItemOnServItemLine) - Page 5965 “Service Quote Subform” (1 call:
CreateServItemOnServItemLine → CreateServItemOnServItemLine)
Recent changes
- 2026-08-13 #10126 [Extensibility Request] issue 30389: allow skipping service item confirmation (main, BC30, feature)
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: "ServItemManagement"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.