Проверка доступности таблицы
При старте робота обычно требуется убедиться в наличии экспорта из QUIK в Amisharp необходимых таблиц посредством протокола DDE, а также в правильном составе колонок экспортируемой таблицы. Вот функция, которая это делает:
// Проверяет наличие таблицы TableName и проверяет, чтобы все имена столбцов, перечисленные в списке List, в таблице присутствовали
// Возвращает: -1, если таблица не экспортируется, 0 - если все в порядке, 1 и далее - номер столбца в списке List, которого в таблице нет (нумерация с 1)
function Check_Table_Exists(TableName,List)
{ local Header,i,result;
if (amisharp.IsTableExists(TableName) == "0")
result = -1;
else
{ result = 0;
for (i = StrCount(List,",") ; i >= 0 ; i--)
{ Header = StrExtract(List,i);
if (amisharp.GetCellName(TableName,Header,0) != Header)
{ result = i+1;
break;
}
}
}
return result;
}