Форум: "Начинающим";
Текущий архив: 2010.12.26;
Скачать: [xml.tar.bz2];
ВнизЭкспортировать отчёт из Delphi в MsWord,дублировать запрос в Lbl Найти похожие ветки
← →
Первокурсница © (2010-10-01 18:40) [0]Добрый день, уважаемые программисты! =)
У меня клиентское приложение "Телефонный справочник". С помощью запросов я должна выводить информацию об абонентах и их номера телефонов на экран с помощью DBGrid (с этим проблем не возникло) и записывать эту же информацию в отчёты (RvProject). На защиту преподаватель дал следующее задание:
1) результат запроса ADOQuery1 (а результатом является номер телефона абонента) должен дублироваться в Label.
2) все отчёты сделанные в среде Delphi нужно импортировать в MSWord, а ещё лучше сделать так чтобы они и открывались сразу же в MSWord.
Никаких указаний и подсказок он не дал!
Помогите пожалуйста!
Вот текст программы:unit LAB5Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, RpCon, RpConDS, RpDefine, RpRave, StdCtrls, RpRender,
RpRenderHTML, Grids, DBGrids, DB, ADODB;
type
TForm1 = class(TForm)
RvProject1: TRvProject;
RvDataSetConnection1: TRvDataSetConnection;
Button1: TButton;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Button2: TButton;
Button3: TButton;
Label3: TLabel;
RvRenderHTML1: TRvRenderHTML;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Button4: TButton;
Button5: TButton;
Label8: TLabel;
Label9: TLabel;
RvProject2: TRvProject;
RvDataSetConnection2: TRvDataSetConnection;
Label10: TLabel;
Label11: TLabel;
Edit5: TEdit;
Label12: TLabel;
Edit6: TEdit;
Label13: TLabel;
Edit7: TEdit;
Button6: TButton;
Button7: TButton;
Label14: TLabel;
Label15: TLabel;
RvProject3: TRvProject;
RvDataSetConnection3: TRvDataSetConnection;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
Edit8: TEdit;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); {Показать все записи}
begin
ADOQuery1.Active:=false;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("SELECT*From Таблица1");
ADOQuery1.Active:=true;
end;
procedure TForm1.Button2Click(Sender: TObject); {Запрос 2}
begin
ADOQuery1.Active:=False;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("SELECT FName,LName,PhName,City,Street,House,Kv,PhoneNum");
ADOQuery1.SQL.Add("FROM Таблица1");
ADOQuery1.SQL.Add("WHERE PhoneNum="+" ""+ Edit8.Text+""");
ADOQuery1.Open;
ADOQuery1.Active:=true;
end;
procedure TForm1.Button4Click(Sender: TObject); {Запрос 3}
begin
ADOQuery1.Active:=False;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("SELECT PhoneNum");
ADOQuery1.SQL.Add("FROM Таблица1");
ADOQuery1.SQL.Add("WHERE City="+" ""+Edit1.Text+""");
ADOQuery1.SQL.Add("AND Street="+" ""+Edit2.Text+""");
ADOQuery1.SQL.Add("AND House="+" ""+Edit3.Text+""");
ADOQuery1.SQL.Add("AND Kv="+" ""+Edit4.Text+""");
ADOQuery1.Open;
ADOQuery1.Active:=true;
//Label9.Caption:=IntToStr
end;
procedure TForm1.Button6Click(Sender: TObject); {Запрос 4}
begin
ADOQuery1.Active:=False;
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add("SELECT PhoneNum");
ADOQuery1.SQL.Add("FROM Таблица1");
ADOQuery1.SQL.Add("WHERE FName="+" ""+Edit5.Text+""");
ADOQuery1.SQL.Add("AND LName="+" ""+Edit6.Text+""");
ADOQuery1.SQL.Add("AND PhName="+" ""+Edit7.Text+""");
ADOQuery1.Open;
ADOQuery1.Active:=true;
//Label15.Caption:=IntToStr
end;
procedure TForm1.Button3Click(Sender: TObject); {Отчёт 2}
begin
RvProject1.Execute;
end;
procedure TForm1.Button5Click(Sender: TObject); {Отчёт 3}
begin
RvProject2.Execute;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
RvProject3.Execute;
end;
end.
← →
И. Павел © (2010-10-01 19:01) [1]Работа с word из delphi:
1. Кратко, основы: http://www.codeguru.com.ua/article/a-177.html
2. Подробнее: http://www.kornjakov.ru/stat.htm#s4
Чтобы отобразить результат запроса в label, пишите так:
label1.caption := ADOQuery1.FieldByName("имя нужного поля").AsString;
Значение будет взято из текущей записи выборки.
В вашем случае "имя нужного поля" = PhoneNum
> На защиту преподаватель дал следующее задание:
Надеюсь, [0] - это не диплом :)
← →
Первокурсница © (2010-10-01 19:14) [2]Большое спасибо =)
Нет, это всего лишь лаба, причем всего лишь 4ая из 8ми, с каждым разом будет все сложнее и сложнее (ну это для меня разумеется сложнее) =(
← →
Anatoly Podgoretsky © (2010-10-01 19:49) [3]> И. Павел (01.10.2010 19:01:01) [1]
Вместо TLabel TDbText и связать с полем, вряд ли предодавателя интересует
вывод из одной записи, произвольной.
← →
Anatoly Podgoretsky © (2010-10-01 19:49) [4]> Первокурсница (01.10.2010 19:14:02) [2]
А мы надеялись, что это уже диплом.
← →
Плохиш © (2010-10-01 20:26) [5]
> procedure TForm1.Button1Click(Sender: TObject); {Показать
> все записи}
> begin
> ADOQuery1.Active:=false;
> ADOQuery1.Close;
> ADOQuery1.SQL.Clear;
> ADOQuery1.SQL.Add("SELECT*From Таблица1");
> ADOQuery1.Active:=true;
> end;
>
Что?!!! Как вы посмели пропустить метод Open? Лаба не принята!
← →
Anatoly Podgoretsky © (2010-10-01 20:31) [6]> Плохиш (01.10.2010 20:26:05) [5]
Асtive за отмазку не тянет?
← →
Anatoly Podgoretsky © (2010-10-01 20:33) [7]> Плохиш (01.10.2010 20:26:05) [5]
То есть обязательно два?
> ADOQuery1.Active := True;
> ADOQuery1.Open;
← →
Плохиш © (2010-10-01 20:38) [8]
> Anatoly Podgoretsky © (01.10.10 20:33) [7]
>
> > Плохиш (01.10.2010 20:26:05) [5]
>
> То есть обязательно два?
Конечно, во всех обработчиках дублирует, а в одном открывалку не продублировала. Непорядок, вдруг не сработает.
← →
Германн © (2010-10-02 02:03) [9]
> Конечно, во всех обработчиках дублирует
Привычка - вторая натура.
← →
Плохиш © (2010-10-02 14:22) [10]
> Германн © (02.10.10 02:03) [9]
>
>
> > Конечно, во всех обработчиках дублирует
>
> Привычка - вторая натура.
Вот это наркотик, с первой понюшки подсела...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.12.26;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.004 c