private void ValidateDataDetailsManual(PtPositionRow ARow) { TVerificationResultCollection VerificationResultCollection = FPetraUtilsObject.VerificationResultCollection; TSharedValidation_CacheableDataTables.ValidatePositions(this, ARow, ref VerificationResultCollection, FPetraUtilsObject.ValidationControlsDict); }
private void NewRowManual(ref PtPositionRow ARow) { string newName = Catalog.GetString("NEWCODE"); Int32 countNewDetail = 0; // Note from AlanP on 8 March 2014: // The PK needs to include a Unit Type Code but we do not have an interface for that (yet?). // Multiple codes exist in the standard database. // But all positions use the 'O' code, which means 'Other' // (see Mantis case 2793) string positionScope = "O"; if (FMainDS.PtPosition.Rows.Find(new object[] { newName, positionScope }) != null) { while (FMainDS.PtPosition.Rows.Find(new object[] { newName + countNewDetail.ToString(), positionScope }) != null) { countNewDetail++; } newName += countNewDetail.ToString(); } ARow.PositionName = newName; ARow.PositionScope = positionScope; }
/// <summary> /// Validates the MPersonnel Positions screen data. /// </summary> /// <param name="AContext">Context that describes where the data validation failed.</param> /// <param name="ARow">The <see cref="DataRow" /> which holds the the data against which the validation is run.</param> /// <param name="AVerificationResultCollection">Will be filled with any <see cref="TVerificationResult" /> items if /// data validation errors occur.</param> /// <param name="AValidationControlsDict">A <see cref="TValidationControlsDict" /> containing the Controls that /// display data that is about to be validated.</param> public static void ValidatePositions(object AContext, PtPositionRow ARow, ref TVerificationResultCollection AVerificationResultCollection, TValidationControlsDict AValidationControlsDict) { DataColumn ValidationColumn; TValidationControlsData ValidationControlsData; TVerificationResult VerificationResult = null; // Don't validate deleted DataRows if (ARow.RowState == DataRowState.Deleted) { return; } // 'AssignableDate' must not be empty if the flag is set ValidationColumn = ARow.Table.Columns[PtPositionTable.ColumnUnassignableDateId]; if (AValidationControlsDict.TryGetValue(ValidationColumn, out ValidationControlsData)) { if (ARow.UnassignableFlag) { VerificationResult = TSharedValidationControlHelper.IsNotInvalidDate(ARow.UnassignableDate, ValidationControlsData.ValidationControlLabel, AVerificationResultCollection, true, AContext, ValidationColumn, ValidationControlsData.ValidationControl); } // Handle addition to/removal from TVerificationResultCollection AVerificationResultCollection.Auto_Add_Or_AddOrRemove(AContext, VerificationResult, ValidationColumn); } }