- Регистрация
- 12.05.2013
- Сообщения
- 104
- Благодарностей
- 31
- Баллы
- 28
Ребят - вот код, который по значению в переменной ищет совпадение в таблице и определяет номер строки, если совпадение найдено.
Код отлично работает, но почему-то только 1 раз =)
Т.е. берется артикул из списка - находится в таблице, определяется номер строки.
Затем берется следующий артикул, который тоже присутствует в таблице.
Но проблема в том, что данный код возвращает уже нуль "0" в переменную RowNumber.
Почему он не определяет номер строки?
Заранее благодарен за любые подсказки!
Код:
// берем из переменной текст, который надо искать
var textContains = project.Variables["artikyl_rapid"].Value;
// получаем таблицу, в которой будем искать
var sourceTable = project.Tables["Артикул Цена Наличие"];
// ищем в каждой строчке в таблице
lock(SyncObjects.TableSyncer)
{
for(int i=0; i < sourceTable.RowCount; i++)
{
// читаем строку из таблицы (это будет массив ячеек)
var cells = sourceTable.GetRow(i).ToArray();
// пройдем в цикле по всем ячейкам
for (int j=0; j < cells.Length; j++)
{
// проверяем содержание текста в ячейке, если есть совпадение возвращаем
// номер ячейки
if (cells[j].Contains(textContains))
{
project.Variables["RowNumber"].Value = Convert.ToString(i);
return j;
}
}
}
}
// если ничего не нашли возвращаем "no"
return "no";
Т.е. берется артикул из списка - находится в таблице, определяется номер строки.
Затем берется следующий артикул, который тоже присутствует в таблице.
Но проблема в том, что данный код возвращает уже нуль "0" в переменную RowNumber.
Почему он не определяет номер строки?
Заранее благодарен за любые подсказки!