public static void InsertCurrentService <ServiceDetType>( PXSelectBase <InventoryItem> inventoryView, PXSelectBase <ServiceDetType> serviceDetView) where ServiceDetType : class, IBqlTable, IFSSODetBase, new() { if (inventoryView.Current == null) { return; } InventoryItem inventoryItemRow = SharedFunctions.GetInventoryItemRow(serviceDetView.Cache.Graph, inventoryView.Current.InventoryID); SharedFunctions.ShowServiceOrderNote(PXDBOperation.Insert, serviceDetView.View, inventoryItemRow); serviceDetView.ClearDialog(); var newRow = new ServiceDetType(); newRow.LineType = ID.LineType_All.SERVICE; newRow = serviceDetView.Insert(newRow); serviceDetView.SetValueExt <FSSODetService.inventoryID>(newRow, inventoryItemRow.InventoryID); serviceDetView.Update(newRow); }