private Dictionary <Guid, WZScenario> GetWizardScenarios() { Dictionary <Guid, WZScenario> result = new Dictionary <Guid, WZScenario>(); foreach (PXDataRecord record in PXDatabase.SelectMulti(typeof(WZScenario), new PXDataField <WZScenario.scenarioID>(), new PXDataField <WZScenario.nodeID>(), new PXDataField <WZScenario.name>(), new PXDataField <WZScenario.rolename>(), new PXDataField <WZScenario.status>(), new PXDataField <WZScenario.scenarioOrder>())) { WZScenario row = new WZScenario { ScenarioID = (Guid)record.GetGuid(0), NodeID = (Guid)record.GetGuid(1), Name = record.GetString(2), Rolename = record.GetString(3), Status = record.GetString(4), ScenarioOrder = record.GetInt32(5) }; result.Add((Guid)row.ScenarioID, row); } result = result.OrderBy(x => x.Value.ScenarioOrder).ToDictionary(x => x.Key, x => x.Value); return(result); }
protected virtual void WZScenario_RowUpdated(PXCache cache, PXRowUpdatedEventArgs e) { WZScenario scenario = e.Row as WZScenario; if (scenario != null && scenario.Scheduled != false) { if (scenario.ScheduleID == null) { scenario.ScheduleID = Schedule_Header.Current.ScheduleID; scenario.Scheduled = true; } else { WZScenario dbScenario = PXSelectReadonly <WZScenario, Where <WZScenario.scenarioID, Equal <Required <WZScenario.scenarioID> > > > .Select(this, scenario.ScenarioID); if (dbScenario.ScheduleID != null && dbScenario.ScheduleID != scenario.ScheduleID) { cache.RaiseExceptionHandling <WZScenario.scenarioID>(scenario, scenario.Name, new PXSetPropertyException(Messages.ScenarioAlreadyUsed, dbScenario.ScheduleID)); } } } }
protected virtual void WZScenario_RowInserted(PXCache cache, PXRowInsertedEventArgs e) { WZScenario row = (WZScenario)e.Row; if (row != null && row.ScenarioID != null) { row = PXSelectReadonly <WZScenario, Where <WZScenario.scenarioID, Equal <Required <WZScenario.scenarioID> > > > .Select(this, row.ScenarioID); if (row != null) { if (row.ScheduleID != null) { cache.RaiseExceptionHandling <WZScenario.scenarioID>(row, row.ScenarioID, new PXSetPropertyException(Messages.ScenarioAlreadyUsed, row.ScheduleID)); } Scenarios.Delete(row); Scenarios.Update(row); } else { row = (WZScenario)e.Row; Scenarios.Delete(row); cache.RaiseExceptionHandling <WZScenario.scenarioID>(row, row.ScenarioID, new PXSetPropertyException(Messages.ScenarioReferenceIsNotValid)); } } }
public virtual IEnumerable CompleteScenario(PXAdapter adapter) { WZTaskEntry graph = PXGraph.CreateInstance <WZTaskEntry>(); WZScenario scenario = Scenario.Current; if (scenario != null && scenario.Status == WizardScenarioStatusesAttribute._ACTIVE) { graph.Scenario.Current = scenario; graph.completeScenarioWithoutRefresh.Press(); PXSiteMapNode node = PXSiteMap.Provider.FindSiteMapNode(typeof(WizardNotActiveScenario)); throw new PXRedirectToUrlException(@"~\Main.aspx?ScreenId=" + node.ScreenID + "&ScenarioID=" + scenario.ScenarioID + "$target=_top", PXBaseRedirectException.WindowMode.Same, node.Title); } return(adapter.Get()); }
public virtual IEnumerable CompleteScenario(PXAdapter adapter) { WZTaskEntry graph = PXGraph.CreateInstance <WZTaskEntry>(); WZScenario scenario = Scenario.Current; if (scenario != null && scenario.Status == WizardScenarioStatusesAttribute._ACTIVE) { graph.Scenario.Current = scenario; graph.completeScenarioWithoutRefresh.Press(); PXSiteMapNode node = PXSiteMap.Provider.FindSiteMapNode(typeof(WizardNotActiveScenario)); throw new PXRedirectByScreenIDException(node.ScreenID, PXBaseRedirectException.WindowMode.Same, PXRedirectByScreenIDException.FramesetBehavior.Refresh, new { ScenarioID = scenario.ScenarioID }); } return(adapter.Get()); }