Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как получить объекты БД, подключенной через References / 9 сообщений из 9, страница 1 из 1
15.07.2004, 17:23:06
    #32606685
AlTis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
Уважаемые.

Есть БД MyInterfeice.mdb, в которой лежат формы.
Есть MyReports.mdb, в которой находятся отчёты.
Подключаю MyReports.mdb через References.
Из MyInterfeice.mdb использую функцию dhOpenReport, которая открывает отчёт, находящийся в MyReports.mdb. Здесь всё хорошо.

Но хочу возвратить список доступных отчётов для конкретного интерфейса.
Для этого есть несколько таблиц, находящиеся в MyReports.mdb
Никак не могу построить запрос.
Всё время ошибка «Ядро базы данных Microsoft Jet не может найти входную таблицу или запрос 'UserReport'. Проверьте существование таблицы или запроса и правильность имени.»
То есть CurrentDb постоянно ссылается на текущее приложение, из которого вызывалась функция.

Как получить из MyReports.mdb ссылку на саму себя.
О, как завернулось :)

код в MyReports.mdb
В нем я уже начал эксперименты с передачей полного пути к мдб.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
'Возвращает список отчётов, доступный данному интерфейсу
Public Function dhGetListReport(UserInt As Long) As String
Dim rs As DAO.Recordset
Dim strSQL As String
Dim strPrjName As String


On Error GoTo  999 

strPrjName = CurrentDb.Name & "."

strSQL = " SELECT UserReportName FROM " & strPrjName & "UserReport UR " & _
        " INNER JOIN " & strPrjName & "UserIntReport UIR" & _
        " ON UR.UserReportID=UIR.UserReportID" & _
        " WHERE UIR.UserIntID=" & UserInt

Set rs = CurrentDb.OpenRecordset(strSQL, , dbReadOnly)


Do While Not rs.EOF

    dhGetListReport = dhGetListReport & rs( 0 ) & ";"

rs.MoveNext
Loop

Exit Function
 999 :

Err.Raise Err.Number, "Reports.dhGetListReport", Err.Description

End Function

...
Рейтинг: 0 / 0
15.07.2004, 17:33:36
    #32606719
ищ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
а чо тебе мешаит
вот так сделать запрос
SELECT t.* from t in 'C:\Сумма по выделенному.mdb';
...
Рейтинг: 0 / 0
15.07.2004, 17:36:10
    #32606725
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
AlTisSet rs = CurrentDb.OpenRecordset(strSQL, , dbReadOnly)
Вот этот CurrentDb как-то странно смотрится. Если речь идет о другой базе.
...
Рейтинг: 0 / 0
15.07.2004, 19:47:05
    #32607024
AlTis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
ища чо тебе мешаит
вот так сделать запрос
SELECT t.* from t in 'C:\Сумма по выделенному.mdb';

Я не знаю где будет находится MyReports.mdb.
Передавать строку - тоже не очень удобно.

2 Владимир Саныч

А какая есть альтернатива?

CurrentProject, CurrentDB
дают одно и тоже - ссылку на MyInterfeice.mdb.

Может кто писал mda?
там точно должна решаться эта проблема.
Где-то я читал... но не помню где.
...
Рейтинг: 0 / 0
15.07.2004, 19:50:31
    #32607029
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
По-моему, не CurrentDb, а CodeDb
А вообще, странно так работать. Делить необходимо на собственно дату и программу, но какой смысл выносить отчеты?
...
Рейтинг: 0 / 0
15.07.2004, 19:57:31
    #32607040
AlTis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
2 Rivkin Dmitry
Спасибо. То что надо.

Rivkin Dmitry
Делить необходимо на собственно дату и программу, но какой смысл выносить отчеты?

У меня так организованны интерфейсы.
Есть несколько групп пользователей, для каждой группы свой интерфейс (.mdb)
В один файл положить все формы не оч. хорошее решение.
только для одного интерфейса порядка 150 форм.
А отчёты есть дублирующие. Вот и хочу вынести отчёты в отдельный mdb,
что бы править в одном месте.
...
Рейтинг: 0 / 0
15.07.2004, 20:09:22
    #32607055
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
В этом что-то есть, но тянуть несколько ДБ, с одной датой, но разными интерфейсами мне кажется не очень. Выиграешь в одном месте - потеряешь в другом. Без дубляжа процедур не обойдешься. А вести все это в разных программах - мама родная! Я бы предпочел все-же все в одном месте. А интерфейсы можно нарисовать. Для разных групп пользователей - разные главные формы, а дальше пляши как хочешь. А то что форм и отчетов много, так это не беда, главное, дать им имена понятные. И места они много не держат. Впрочем, можно пообсуждать это. Но, думаю, не только дело вкуса.
Я в прошлом, часть часто используемых и редко правящихся функций, в том числе и формы, выносил в mde file. Что-то мне не понравилось. Вернул все в одно место.
...
Рейтинг: 0 / 0
15.07.2004, 23:24:50
    #32607148
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
Умные люди давно придумали меню - и не над разных главных форм. А отображать контролы на формах в зависимости от групп пользователей - решается по-другому. Не надо рисовать несколько разных форм:)
...
Рейтинг: 0 / 0
16.07.2004, 08:22:13
    #32607246
AlTis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить объекты БД, подключенной через References
HummerУмные люди давно придумали меню - и не над разных главных форм. А отображать контролы на формах в зависимости от групп пользователей - решается по-другому. Не надо рисовать несколько разных форм:)

Можно пример, как это решается?
Или хотя бы общие принципы.
спасибо.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как получить объекты БД, подключенной через References / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]