public virtual ProcessingResult <FABookPeriod> FindMappedFABookPeriodUsingFinPeriod(int?bookID, int?sourceOrganizationID, string sourcefinPeriodID, int?targetOrganizationID) { IFinPeriodRepository finPeriodRepository = Graph.GetService <IFinPeriodRepository>(); string targetFinPeriodID = finPeriodRepository.GetMappedPeriod(sourceOrganizationID, sourcefinPeriodID, targetOrganizationID)?.FinPeriodID; FABookPeriod targetFABookPeriod = FindByKey(bookID, targetOrganizationID, targetFinPeriodID); ProcessingResult <FABookPeriod> result = ProcessingResult <FABookPeriod> .CreateSuccess(targetFABookPeriod); if (targetFABookPeriod == null) { string errorMessage = PXMessages.LocalizeFormat( Messages.PeriodDoesNotExistForBookAndCompany, PeriodIDAttribute.FormatForError(sourcefinPeriodID), FindFABook(bookID).BookCode, PXAccess.GetOrganizationCD(sourceOrganizationID)); result.AddErrorMessage(errorMessage); } return(result); }