protected override void BeforeChange(DataColumn dc, DataRow row) { SST.ADMSLookupRow dr = (SST.ADMSLookupRow)row; switch (dc.ColumnName) { case "SIN": if (!dr.IsSINNull()) { if (dr.SIN.Length != 9 || !ContactBE.IsValidSIN(dr.SIN)) { throw new AtriumException(atriumBE.Properties.Resources.BadSIN, dr.SIN); } } break; case "BusinessNumber": if (!dr.IsBusinessNumberNull()) { //if (dr.BusinessNumber.Length >= 9 || !ContactBE.IsValidSIN(dr.BusinessNumber.Substring(0,9))) //{ // throw new AtriumException(atriumBE.Properties.Resources.BadBN, dr.BusinessNumber); //} } break; } }
protected override void BeforeChange(DataColumn dc, DataRow ddr) { string ObjectName = "Contact"; //atriumDB.ContactRow dr = (atriumDB.ContactRow)ddr; //LanguageCode; //dr.SexCode switch (dc.ColumnName) { case "FirstName": case "LastName": if (ddr["ContactClass"].ToString() != "P" && ddr["ContactClass"].ToString() != "B" && (ddr.IsNull(dc) || ddr[dc].ToString() == "")) { throw new RequiredException(Resources.ResourceManager.GetString(dc.ColumnName)); } if (ddr["ContactClass"].ToString() == "P") { if ((!ddr.IsNull("LastName") | !ddr.IsNull("FirstName") | !ddr.IsNull("SIN")) & (!ddr.IsNull("LegalName") | !ddr.IsNull("BusinessNumber") | !ddr.IsNull("OperatingAs"))) { throw new AtriumException("A party cannot be a person and an entity"); } } if (ddr["ContactClass"].ToString() == "B") //CLAS { if ((!ddr.IsNull("LastName") | !ddr.IsNull("FirstName") | !ddr.IsNull("SIN")) & (!ddr.IsNull("LegalName") | !ddr.IsNull("BusinessNumber") | !ddr.IsNull("OperatingAs"))) { throw new AtriumException("A business cannot be a person. Use the To The Attention Of field to capture someone's name at the business level"); } } break; case "LegalName": case "BusinessNumber": case "OperatingAs": if (ddr["ContactClass"].ToString() == "P") { if ((!ddr.IsNull("LastName") | !ddr.IsNull("FirstName") | !ddr.IsNull("SIN")) & (!ddr.IsNull("LegalName") | !ddr.IsNull("BusinessNumber") | !ddr.IsNull("OperatingAs"))) { throw new AtriumException("A party cannot be a person and an entity"); } } if (ddr["ContactClass"].ToString() == "B") //CLAS { if ((!ddr.IsNull("LastName") | !ddr.IsNull("FirstName") | !ddr.IsNull("SIN")) & (!ddr.IsNull("LegalName") | !ddr.IsNull("BusinessNumber") | !ddr.IsNull("OperatingAs"))) { throw new AtriumException("A party cannot be a person and an entity"); } } if (dc.ColumnName == "BusinessNumber" && !ddr.IsNull(dc)) { ddr[dc] = ddr[dc].ToString().ToUpper(); } break; case "SIN": if (!ddr.IsNull(dc)) { int dupCount = Convert.ToInt32(myA.AppMan.ExecuteScalar("ContactDuplicateSIN", new object[] { ddr[dc].ToString() })); if (ddr[dc].ToString().Length != 9 || !ContactBE.IsValidSIN(ddr[dc].ToString())) { throw new AtriumException(Resources.BadSIN, ddr[dc].ToString()); } if (dupCount > 0 && ddr.RowState == DataRowState.Added) { throw new AtriumException(Resources.DebtDuplicateSIN); } if (dupCount > 1) { throw new AtriumException(Resources.DebtDuplicateSIN); } } if (ddr["ContactClass"].ToString() == "P") { if ((!ddr.IsNull("LastName") | !ddr.IsNull("FirstName") | !ddr.IsNull("SIN")) & (!ddr.IsNull("LegalName") | !ddr.IsNull("BusinessNumber") | !ddr.IsNull("OperatingAs"))) { throw new AtriumException("A party cannot be a person and an entity"); } } break; case "LanguageCode": if (!ddr.IsNull(dc)) { //if (!myA.CheckDomain(ddr["LanguageCode"], myA.Codes("LanguageCode"))) // throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Language Code"); } break; case "SexCode": if (!ddr.IsNull(dc)) { //if (!myA.CheckDomain(ddr["SexCode"], myA.Codes("Sex"))) // throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Gender Code"); } break; default: break; } }
protected override void BeforeChange(DataColumn dc, DataRow ddr) { string ObjectName = this.myCBDetailDT.TableName; CLAS.CBDetailRow dr = (CLAS.CBDetailRow)ddr; switch (dc.ColumnName) { case "ValuableAmount": if (dr.IsValuableAmountNull()) { throw new RequiredException(Resources.CBDetailValuableAmount); } if (dr.ValuableAmount < 0) { throw new AtriumException(Resources.MustBeGreaterThanZero, Resources.CBDetailValuableAmount); } break; case "ValuableType": if (dr.IsValuableTypeNull()) { throw new RequiredException(Resources.CBDetailValuableType); } else if (!myA.CheckDomain(dr.ValuableType, myA.FM.Codes("CBInstrumentType"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Instrument Type"); } break; case "OfficeID": if (dr.IsOfficeIDNull()) { throw new RequiredException(Resources.CBDetailOfficeID); } else if (!myA.CheckDomain(dr.OfficeID, myA.FM.Codes("OfficeList"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Office List"); } break; case "CurrencyCode": if (dr.IsCurrencyCodeNull()) { throw new RequiredException(Resources.CBDetailCurrencyCode); } else if (!myA.CheckDomain(dr.CurrencyCode, myA.FM.Codes("currencycode"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Currency Code"); } break; case "StatusCode": if (dr.IsStatusCodeNull()) { throw new RequiredException(Resources.CBDetailStatusCode); } else if (!myA.CheckDomain(dr.StatusCode, myA.FM.Codes("CBStatus"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Payment Status Code"); } break; case "PaymentSource": if (dr.IsPaymentSourceNull()) { throw new RequiredException(Resources.CBDetailPaymentSource); } else if (!myA.CheckDomain(dr.PaymentSource, myA.FM.Codes("CBPaymentSource"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Payment Source Code"); } break; case "NatureOfPayment": if (dr.IsNatureOfPaymentNull()) { throw new RequiredException(Resources.CBDetailNatureOfPayment); } else if (!myA.CheckDomain(dr.NatureOfPayment, myA.FM.Codes("CBNatureOfPayment"))) { throw new AtriumException(atriumBE.Properties.Resources.BadDomainValue, dc.ColumnName, dr.Table.TableName, "Nature of Payment Code"); } break; // case "NumberInSeries": // if (dr.IsNull(dc,DataRowVersion.Current)) // myA.RaiseError((int)AtriumEnum.AppErrorCodes.CannotBeBlank, myA.GetLabelLeft(ObjectName, dc.ColumnName)); // break; case "ValuableDate": if (dr.IsValuableDateNull()) { throw new RequiredException(Resources.CBDetailValuableDate); } myA.IsValidDate(Resources.CBDetailValuableDate, dr.ValuableDate, false, DateTime.Today.AddMonths(-6), DateTime.Today.AddYears(3), Resources.ValidationSixMonthsAgo, Resources.Validation3YearsLater); if (!dr.IsLastDayOfMonthNull() && dr.LastDayOfMonth && dr.ValuableDate.AddDays(1).Month == dr.ValuableDate.Month) { RaiseWarning(WarningLevel.Display, Resources.CBDetailValuableNotEOM); } break; case "ReceivedDate": if (dr.IsReceivedDateNull()) { throw new RequiredException(Resources.CBDetailReceivedDate); } myA.IsValidDate(Resources.CBDetailReceivedDate, dr.ReceivedDate, false, DateTime.Today.AddMonths(-6), DateTime.Today, Resources.ValidationSixMonthsAgo, Resources.ValidationToday); break; case "SIN": if (!dr.IsSINNull()) { if (dr.SIN.Length != 9) { throw new AtriumException(Resources.BadSIN, dr.SIN); } else if (!ContactBE.IsValidSIN(dr.SIN)) { throw new AtriumException(Resources.BadSIN, dr.SIN); } } break; default: break; } }