ilya
Forum Professor / Завсегдатай форума
Участник № / Member № 469
отправлено / posted
Профайлеры входящие в состав среды разработи ТМ6.0 поддерживают обмен с внешними БД?
Попробовал обмен с MS Access и MS SQL Server - ом. Из среды разработки все работает замечательно - запросы выполняются. Из под профайлеров - нет.
В узле RTM создан необходимый канал класса "ВЫЗОВ" и в профайлере ему присваиваю номер необходимого запроса. Никакого обращения к БД не происходит. Это видно и в Profiler MS SQL сервера. Присвоил значение 16#800 переменной @Debug - думал увижу в логе профайлера какую либо информацию по выполнению SQL запросов, но там ничего не фиксируется.
Сообщения / Posts 216 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ilya
Forum Professor / Завсегдатай форума
Участник № / Member № 469
отправлено / posted
1)По поводу @Debug - да действительно. Моя ошибка. Однако выставил @Debug = 16#1000 и ничего не изменилось. 2)Канал у меня действительно был типа Input (таким создался при перетаскивании шаблона из слоя “Шаблоны_связей_с_СУБД”). Поменял на Output – все равно не работает. Расскажу еще раз по порядку: 1).На MS SQL создал базу данных “ТМ6” и таблицу в ней “tab2”. В таблице одно поле: “r_val” типа float. Навставлял от руки 10 записей. 2).Создал новый проект. В слое “Шаблоны_связей_с_СУБД” создал компонент “Связь_с_СУБД”, настроил источник данных, проверил связь ну и т.д. 3). Создал у шаблона два аргумента : IN_BD (Тип: IN, Тип данных: Real) и FROM_BD (Тип: OUT, Тип данных: Real) 4) Создал два запроса: 1й: INSERT INTO tab2 (r_val) VALUES ( '#IN_BD#') 2й: SELECT tab2.r_val #FROM_BD# FROM tab2 Протестировал оба запроса – выполняются: 1й вставляет запись, второй возращает набор записей. 5). Перетащил шаблон “База_данных#1:2”, в узел RTM – создался канал “База_данных#1:2” класса Вызов типа Input. Изменил его тип на Output. 6). Создал два канала: Пила (привязанных к источнику “пила”) и канал FROM_BD (FLOAT Input) 7). Привязал аргументы канала “База_данных#1:2” таким образом: IN_BD к реальному значению канала Пила FROM_BD ко входному значению канала FROM_BD 8) Создал переменную @Debug, привязал к ней канал HEX_16 Output, поставил ему флаг отработать и начальное значение 4096 (DEC) Запустил профайлер без поддержки графических экранов. Теперь, как я понимаю при посылке значения 1 в атрибут In канала “База_данных#1:2” в таблицу “tab2” должна добавиться новая запись, где “r_val” будет равно текущему значению канала “Пила”. При посылке значения 2 в атр. In - канал FROM_BD примет значение равное последней записи выборки. Ничего не происходит. В профайлере MS SQL сервера не видно ни какого коннекта. Вот лог: INF_LOAD:Starting... BD_SQL_LOCKAL_0 INF_RTM:Detected NT5.RTM 5.0 ._.:Base EditionalDebug RTM TM6 IDE ver. 6.0.0.0 INF_LOAD:Channels = 4 INF_LOAD:Templates=1 External=0 INF_LOAD:Objects = 3 INF_RTM:Timer=0.055s CalcLoop=549ms WRN_DDE:wrong NetDDE: Не удается связать службу диспетчера общих баз данных (DSDM) INF_RTM:start time is 0.101 s INF_RTM:mode=1(Start) e15=00 e18=00 e20=c0 INF_RTM:ModeSwitch e15=ffff e18=ffff e20=ffff INF_RTM:mode=2(Work) e15=00 e18=00 e20=00 INF_RTM:stoping... INF_RTM:mode=5(Stop) e15=00 e18=00 e20=00 INF_RTM:stop time is 3.715 s INF_RTM:number of calculation = 19 ._.:END OF WORK В чем я ошибся?
Сообщения / Posts 216 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Вроде ошибок нет, хотя интересно было бы все же на сам проект посмотреть. 1) Для более детальной проверки связи по ODBC рекомендую в настройках системы в "Администраторе ODBC-источников" включить трассировку транзакций в текстовый файл, чтобы можно было посмотреть что конкретно запросил МРВ, и что отвечает СУБД. 2) Кроме того - рекомендую обновить релиз до последнего 6.01.1
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ilya
Forum Professor / Завсегдатай форума
Участник № / Member № 469
solaar
Junior Member / Новичок
Участник № / Member № 1964
отправлено / posted
Возникла такая же проблема. Не выполняются SQL запросы. Лог: INF_LOAD:Starting... test_1 INF_RTM:Detected NT5.RTM 5.1 ._.:Professional TRACE MODE 6 Profiler ver. 6.03.1 INF_LOAD:Load Channels = 14 INF_LOAD:Templates=5 INF_LOAD:Objects = 3 INF_RTM:Timer=0.055s CalcLoop=549ms WRN_DDE:Не удается связать службу диспетчера общих баз данных (DSDM) INF_RTM:start time is 0.788 s INF_RTM:ModeSwitch e15=0000 e18=0000 e20=0000 INF_RTM:mode=2(Work) e15=00 e18=00 e20=c0 INF_RTM:stoping... INF_RTM:mode=5(Stop) e15=00 e18=00 e20=c0 INF_RTM:Max basy count = 0 INF_RTM:stop time is 2.611 s INF_RTM:number of calculation = 254 ._.:END OF WORK
fgyp
Junior Member / Новичок
Участник № / Member № 4377
отправлено / posted
У меня "внезапно" перестала заполняться база данных. В процессе отладки проекта в момент очередного запуска МРВ в логе возникла запись: WRN_DDE:Не удается связать службу диспетчера общих баз данных (DSDM). До этого все писалось замечательно! Заново сделала подключение к базе данных - не помогает! Понимаю, что дело не в проекте, потому что после этого запускала и первоначальный вариант проекта. Подскажите, где можно почитать о данной ошибке, и какие настройки посмотреть.
Сообщения / Posts 5 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Romсheg
unregistered
отправлено / posted
"WRN_DDE:Не удается связать службу диспетчера общих баз данных (DSDM)." - это не про базу сообщение однозначно. Это сообщение про DDE и к СУБД оно отношения никакого не имеет. Ищите другие сообщения об ошибках в логе. Или вспоминайте, что делали в последнее время с СУБД, что привело к потери связи с ней.
IP / IP: IP адрес / IP address |