Форум: "Corba";
Текущий архив: 2010.03.07;
Скачать: [xml.tar.bz2];
ВнизПолучить конект через IDispatch ! Найти похожие ветки
← →
312kbps (2006-11-15 13:55) [0]Есть некая программа которая при запуске конектится к MSSQL и процессе работы через этот конект работает с базой данных.
У меня есть IDispatch это программы, как я могу получить этот конект и через него делать запросы к той же базе данных ?
← →
Сергей М. © (2006-11-15 13:59) [1]
> 312kbps (15.11.06 13:55)
Ты все про 1С Add-In"s долдонишь ?)
← →
312kbps (2006-11-15 14:02) [2]ага, уже кучу работы сделал (((
а вот с некоторыми вещами ни как не могу справиться !
← →
Сергей М. © (2006-11-15 14:06) [3]
> У меня есть IDispatch это программы
Начнем с того, что У программы нет IDispatch - оной есть у объекта автоматизации.
Теперь разберись, что это за объект и какие методы/свойства он предоставляет для обращения к ним посредством диспинтерфейса, который ты имеешь.
← →
312kbps (2006-11-15 14:54) [4]я терминах не очень (
программа создает соединение с сервером и через него работает , пока её не закроют, могу ли я получить это соединение чтоб использовать в своих целях ?
← →
Сергей М. © (2006-11-15 15:00) [5]
> 312kbps (15.11.06 14:54) [4]
Разве на ITS-ресурсах нет на эту тему инф-ции ?
Хоть убей - не поверю.
← →
312kbps (2006-11-15 15:18) [6]где искать покажи, плиззз
все просматрю !
← →
Сергей М. © (2006-11-15 15:19) [7]
> где искать покажи, плиззз
> все просматрю !
>
На дисках ITS (информационно-технологическим сопровождением), которые ты получаешь при подписке на них при офиц.приобретении 1C-продуктов
← →
312kbps (2006-11-15 15:31) [8]да на этом ИТС по данной теме нет ни чего (((
← →
Сергей М. © (2006-11-15 15:34) [9]
> 312kbps (15.11.06 15:31) [8]
Ой не ври
← →
Сергей М. © (2006-11-15 15:35) [10]В конце-концов на офиц.инет-ресурсах одноэсины есть ссылки на соотв.док-цию, которая стоит терпимо мало
← →
312kbps (2006-11-15 15:39) [11]дело в том что я весь инет перерыл и ни какой инфы не нашел (
вот поэтому и обратился за помощью сюда !
← →
312kbps (2006-11-15 16:40) [12]нашел как обращаться к методам )
var rtm: OleVariant;
............
rtm:=OLEVariant(AddInFPList.pConnection).AppDispatch;
IDispatch(rtm)._addref;
str:=rtm.EvalExpr("ИмяКомпьютера()");
а вот самое соединение ни как (
← →
Сергей М. © (2006-11-16 09:41) [13]
> а вот самое соединение ни как
Но ведь у объекта rtm есть методы, позволяющие выполнять запросы к текущей активной БД на встроенном "SQL-подобном" языке, разве этого не достаточно ?
← →
312kbps (2006-11-16 10:25) [14]нет не достаточно, нужен доступ к самим таблицам в сиквеле (при чем не новым соединением, а существующем)
← →
Сергей М. © (2006-11-17 12:36) [15]
> нужен доступ к самим таблицам в сиквеле
А зачем ?
Каковы аргументы в пользу "тарабарщины" вида
select SomeField from SomeTable
против ее "осмысленного" эквивалента вида
ВЫБРАТЬ Дата ИЗ ЖУРНАЛ_ТАКОЙ_ТО
?
← →
312kbps (2006-11-17 15:44) [16]пошутил что ли )))))))))))))
эта тарабарщина выполняется раз в 100 быстрее чем тотже запрос, только исковерканый 1С"ом
← →
Сергей М. © (2006-11-17 16:24) [17]
> 312kbps (17.11.06 15:44) [16]
Про скорость ты ничего не говорил до сего момента.
А не пугает тебя заведомая неизвестность механизма доступа к объектам БД, используемая одноэсиной ?
А геморрой с именами таблиц тебя не пугает ?
← →
312kbps (2006-11-17 17:23) [18]да блин, прошу помощи !!!
я уже давно так работаю, оптимизирую запросы в 1С , прямой доступ к 1С
это все гораздо удобнее и быстрее, все крупные предприятия у которых есть 1С, так работают, через прямой доступ к 1С, только работают через аналайзер сиквела.
а я хочу сделать встренный механизм запросов, чтоб сесия всего одна была !!!
вот и спрашиваю , КАК ПОЛУЧИТЬ САМО СОЕДИНЕНИЕ 1С для своих нужд !!!
← →
Сергей М. © (2006-11-20 08:38) [19]
> КАК ПОЛУЧИТЬ САМО СОЕДИНЕНИЕ 1С
В каком виде ты предполагаешь получить это соединение ?
p.s.
И незачем так орать.
← →
312kbps (2006-11-21 09:47) [20]там соединение проиходит к MS SQL Server, вот я и хочу получить это сиквел соединение
← →
Сергей М. © (2006-11-22 09:02) [21]
> там соединение проиходит к MS SQL Server
Понятно что не к господу богу)
Ну, предположим, получил ты некий хэндл - что дальше ? Что с ним делать-то будешь ?
Продемонстрируй в коде или псевдокоде последующее использование тобой этого хэндла ..
← →
312kbps (2006-11-22 10:08) [22]Получить некое соединение к серверу и делать запросы , типа
"select * from ....."
типа ADO соединения или как то по другому ( !?!?!
← →
Сергей М. © (2006-11-22 10:24) [23]
> типа ADO соединения или как то по другому ( !?
Откуда там взялось ADO ?) .. В sql-версии 1Сv7 используется допотопная ODBC. Когда эта беда разрабатывалась, не было еще ни OLEDB ни тем более ADO.
А даже если бы там и использовалась ADO, в каком виде ты ожидаешь получить это соединение ?
← →
312kbps (2006-11-22 11:46) [24]а тоже соединение ODBC получить можно ?
и через него делать запросы ?
← →
Сергей М. © (2006-11-22 11:58) [25]
> соединение ODBC получить можно ?
Нельзя.
И вообще - ерундой ты занялся.
Открой свое собственное соединение и делай там все что тебе заблагорассудится.
Если платформа не предоставляет интерфейс непосредственного доступа к соединению, значит на это у разработчиков есть веские основания.
← →
312kbps (2006-11-22 13:23) [26]а получить, хотя бы, куда конектится, название сервера, базы - это возможно ?
просто бывают такие варианты когда база запускается в монопольном режиме, для этого и требовалось использовать тот же конект что и база !
← →
Сергей М. © (2006-11-23 10:32) [27]
> получить, хотя бы, куда конектится, название сервера, базы
> - это возможно ?
Наверно, возможно. Ведь 1С-приложение откуда-то таки берет эти данные для своей работы .. Спроси в службе поддержки разработчика платформы ..
И пойми ты, наконец, что если разработчик не предоставил тебе доступ к интересующему тебя интерфейсу, значит это имеет под собой веские основания.
Хотя бы потому что обращение к этому интерфейсу может не быть потокобезопасным.
Страницы: 1 вся ветка
Форум: "Corba";
Текущий архив: 2010.03.07;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.005 c