//Item - tpointer["Идентификатор плательщика"] public static bool Item(TablePointer tpointer, ref Exception ex) { //проверка страны tpointer["Страна"] = tpointer["Страна"].Replace(" ", ""); tpointer["СНИЛС плательщика"] = tpointer["СНИЛС плательщика"].Replace(" ", "").Replace("-", ""); tpointer["ИНН плательщика"] = tpointer["ИНН плательщика"].Replace(" ", ""); tpointer["Серия паспорта РФ плательщика"] = tpointer["Серия паспорта РФ плательщика"].Replace(" ", ""); tpointer["Номер паспорта РФ плательщика"] = tpointer["Номер паспорта РФ плательщика"].Replace(" ", ""); if (!Regex.IsMatch(tpointer["Страна"], "^[0-9]{3}$")) { ex = new Exception(String.Format("Значение \"Страна\" \"{0}\" не проходит по формату: ^[0-9]{{3}}$", tpointer["Страна"])); return(false); } if (Regex.IsMatch(tpointer["СНИЛС плательщика"], "^[0-9]{11}$") && ValidSNILS(Convert.ToUInt64(tpointer["СНИЛС плательщика"]))) { tpointer["Идентификатор плательщика"] = "14" + tpointer["СНИЛС плательщика"].PadLeft(20, '0') + tpointer["Страна"]; return(true); } else { tpointer["СНИЛС плательщика"] = ""; } if (Regex.IsMatch(tpointer["ИНН плательщика"], "^[0-9]{12}$") && ValidINN(Convert.ToUInt64(tpointer["ИНН плательщика"]), false)) { tpointer["Идентификатор плательщика"] = "21" + tpointer["ИНН плательщика"].PadLeft(20, '0') + tpointer["Страна"]; return(true); } else { tpointer["ИНН плательщика"] = ""; } if (Regex.IsMatch(tpointer["Серия паспорта РФ плательщика"], "^[0-9]{4}$") && Regex.IsMatch(tpointer["Номер паспорта РФ плательщика"], "^[0-9]{6}$")) { tpointer["Идентификатор плательщика"] = "01" + (tpointer["Серия паспорта РФ плательщика"] + tpointer["Номер паспорта РФ плательщика"]).PadLeft(20, '0') + tpointer["Страна"]; return(true); } tpointer["Идентификатор плательщика"] = ""; ex = new Exception(String.Format("Неверно указаны СНИЛС ИНН серия и номер паспорта РФ")); return(false); }
public ImportedTable(string[,] table) { m_table = table; currentPointer = new TablePointer(); }