возможно ли воспользоваться через Галактический интерфейс вьюшкой, созданной в MS SQL? например, через прямой SQL?
пробовал так:
представление vw_table
Помимо вышеописанного способа Атлантис обеспечивает прямой доступ к SQL-серверам (DSQL). При этом текст запроса передается на SQL-сервер с минимальными изменениями:
текст запроса приводится в соответствие с особенностями реализации SQL на данном сервере;
учитываются настройки Protect-а, из SQL запроса отсекаются данные, доступ к которым запрещен.
Галактика корректирует названия таблиц в прямом sql'е. В запросе напишешь "from katmc", сервер получит "from t$katmc". Может тоже самое происходит с 'FROM vw_table'? Можно потрэйсить запросы на сервер - корректно ли текст передается... Правда sqlExecStmt возвращает 0, поэтому вероятность кривого запроса мала..
Алсо, можно попробовать создать вьюшку через тот же директ sql (vipprogr.chm -> ... -> операторы прямого sql -> оператор create view) и работать с ней
создал вьюху S$VW_TABLE - результат тот же.
все же думаю, дело в протекте. вьюшка собирает данные в том числе из таблицы, заведенной в MS SQL. Соответственно в словаре ее нет.
var rec : array[1..1] of variant;
if (sqlNavigateMT(mt, ffGetFirst, rec) = tsOk)
do
{
var i : integer;
var s : string;
s := '';
for (i:=1; i<=Count(rec); i:=i+1)
s := s + ' ' + string(rec);
Message(s);
}
while (sqlNavigateMT( mt, ffGetNext, rec ) = tsOk);
sqlFreeStmt(stmt);
}
}
end;
end.
Вроде работает - т.е. в мессаг выводит нрек и название контр-та из вью.