public object GetOrganizationIDByCD(object organizationCD) { return(PXAccess.GetOrganizationID((string)organizationCD)); }
protected virtual IEnumerable Cancel(PXAdapter a) { string organizationCD; string yearNumber; if (NewCalendarParams.View.Answer == WebDialogResult.None) // First outer call { FinYearKey storedYearKey = new FinYearKey { OrganizationID = OrgFinYear.Current?.OrganizationID, Year = OrgFinYear.Current?.Year }; #region Deliberate Technomagic. Copy-pasted fron base PXCancel instead invocation Clear(); SelectTimeStamp(); #endregion StoredYearKey.Cache.Clear(); StoredYearKey.Insert(storedYearKey); StoredYearKey.Cache.IsDirty = false; organizationCD = (string)a.Searches.GetSearchValueByPosition(0); if (organizationCD == null) { yield break; } yearNumber = (string)a.Searches.GetSearchValueByPosition(1); } else // Second call after SmartPanel closing { object extValue = NewCalendarParams.Cache.GetValueExt <NewOrganizationCalendarParameters.organizationID>(NewCalendarParams.Current); PXFieldState state = extValue as PXFieldState; organizationCD = state != null ? (string)state.Value : (string)extValue; yearNumber = NewCalendarParams.Current.StartYear; } OrganizationFinYear targetYear = PXSelectJoin < OrganizationFinYear, InnerJoin <Organization, On <OrganizationFinYear.organizationID, Equal <Organization.organizationID> > >, Where <Organization.organizationCD, Equal <Required <Organization.organizationCD> >, And <OrganizationFinYear.year, Equal <Required <OrganizationFinYear.year> > > > > .SelectSingleBound(this, new object[] { }, organizationCD, yearNumber); OrganizationFinYear returnYear = null; if (targetYear == null) { OrganizationFinYear lastYear = LastOrganizationYear.SelectSingle(organizationCD); if (lastYear == null) { if (NewCalendarParams.AskExtFullyValid((graph, viewName) => { NewCalendarParams.Current.OrganizationID = PXAccess.GetOrganizationID(organizationCD); }, DialogAnswerType.Positive)) { OrganizationFinYear generatedFinYear; using (PXTransactionScope ts = new PXTransactionScope()) { generatedFinYear = GenerateSingleOrganizationFinYear( (int)NewCalendarParams.Current.OrganizationID, NewCalendarParams.Current.StartYear, NewCalendarParams.Current.StartMasterFinPeriodID); Actions.PressSave(); ts.Complete(); } returnYear = generatedFinYear; } else { OrganizationFinYear storedYear = FinPeriodRepository.FindOrganizationFinYearByID(StoredYearKey.Current?.OrganizationID, StoredYearKey.Current?.Year); returnYear = storedYear; } } else { returnYear = lastYear; } } else { returnYear = targetYear; } if (returnYear != null) { yield return(returnYear); } yield break; }