Форум: "Основная";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];
ВнизMS Access Найти похожие ветки
← →
npr2 (2005-09-26 10:33) [0]Здравствуйте, мастера! Как через компоненты или иначе подключить отчет, созданный в MS Accss/
← →
Digitman © (2005-09-26 13:35) [1]что значит
> подключить отчет
?
куда или к чему его подключить ?
← →
Федор (2005-09-26 13:48) [2]Я так думаю, что необхоимо в программе выводить отчет из MS Access
← →
npr2 (2005-09-27 05:26) [3]Да нужно в программе вывести отчет, созданный средствами MS Access. Я пробовала через OLE, но не получилось. А как сделать не знаю.
← →
Digitman © (2005-09-27 08:27) [4]
> пробовала через OLE, но не получилось
что конкретно не получилось ?
← →
npr2 (2005-09-27 08:59) [5]Если делаю так, то запускается только сам Access, а подключить нужные БД и отчет из нее не могу, т.к. методов ac.OpenCurrentDataBase(), ac.DoCmd.OpenReport() нет, аналогов найти не могу.
procedure TForm1.Button1Click(Sender: TObject);
var ac:OleVariant;
begin
ac:=CreateOleObject("Access.Application");
ac.Visible:=true;
end;
Если Делаю с помощью компонента с закладки Server, то при запуске программы выдает сообщение "Класс не зарегистрирован", хотя в системе MS Access установлен.
← →
Digitman © (2005-09-27 09:17) [6]
> методов ac.OpenCurrentDataBase(), (), ac.DoCmd.OpenReport() нет
как это нет ?
есть !
← →
npr2 (2005-09-27 11:12) [7]unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComObj, StdCtrls, OleServer, Access2000;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
ac:OleVariant;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var ac:OleVariant;
begin
ac:=CreateOleObject("Access.Application");
ac.OpenCurrentDatabaze("auto.mdb",False);
ac.Visible:=true;
ac.DoCmd.openReport("swor",acviewPreview,EmptyParam,EmptyParam);
end;
end.
Вот полностью процедура, компиляция прошла без ошибок, но при запуске на выполнениевыдается ошибка "Metod "OpenCurrentDataBase" not supported by automation object". Что это значит. Я еще с OLE не работала.
← →
Digitman © (2005-09-27 11:19) [8]ac.OpenCurrentDatabaSe("auto.mdb",False);
← →
Digitman © (2005-09-27 11:22) [9]
> npr2 (27.09.05 11:12) [7]
ведь врешь и не моргаешь !)
действительно, у объекта Access.Application нет метода OpenCurrentDatabaZe()
но !
при этом д.б. ошибка
> "Metod "OpenCurrentDataBaze" not supported by automation object"
а не
> "Metod "OpenCurrentDataBase" not supported by automation object"
отсебячина ?)
← →
npr2 (2005-09-27 11:32) [10]Ну прости! Все получилось. Но открывается сначала MS Access, потом отчеты, а потом только сам нужный отчет. Можно ли все это не открывать, а сразу только отчет.
← →
Digitman © (2005-09-27 12:09) [11]
> npr2 (27.09.05 11:32) [10]
> Ну прости!
низафто !)
> открывается сначала MS Access, потом отчеты, а потом только
> сам нужный отчет. Можно ли все это не открывать, а сразу
> только отчет
просто поставь ac.Visible = True последней строчкой во всей этой петрушке)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.10.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.044 c