powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вызов пользовательской функции Access
1 сообщений из 1, страница 1 из 1
Вызов пользовательской функции Access
    #39521032
Здравствуйте!
Помогите, пожалуйста, вызвать некую пользовательскую функцию, хранящуюся в модуле базы Access.
Напрямую Access не даст обратиться к функции, поэтому вызываю через запрос в базе: 'Запрос1'.
Из самого Access запрос выполняется нормально, но если вызывать из кода ниже выбивает "Неопределенная функция "ИмяМоейФункции" в выражении".
Чего только не перепробовал уже делать. Есть ли какие то варианты решения?

Код: pascal
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.
procedure TMainForm.AccessExec(sql: string);
const
  acViewNormal   = $00000000;
  acQuitSaveAll  = $00000001;
var
  Access: Variant;
  AccessEnabled: boolean;
  ClassId: TCLSID;
begin
  AccessEnabled := CLSIDFromProgID(PWideChar(WideString('Access.Application')),ClassId) = S_OK;
  if not AccessEnabled
     then begin
            ShowMessage('Access не установлен');
            exit;
          end;

  try
     Access := GetActiveOleObject('Access.Application');
     except
	  Access := CreateOleObject('Access.Application');
  end;
  Access.Visible := True;
  Access.OpenCurrentDatabase('путь к файлу.mdb', False);
  // Access.Currentdb.OpenRecordset(sql);
  // Access.Currentdb.OpenRecordset('Запрос1');
  Access.DoCmd.OpenQuery('Запрос1', acViewNormal);
  Access.Disconnect;
  Access.Quit(acQuitSaveAll);
end;
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Вызов пользовательской функции Access
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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