Como criar um arquivo do word igual a uma nota de pedido?
09/08/2004
0
Caros amigos,
Estou precisando criar, com urgência, um arquivo do word que receba informações do banco de dados e que possua a estrutura de uma nota de pedido. Alguem pode me ajudar nesta questão?
Desde já agradeço
Estou precisando criar, com urgência, um arquivo do word que receba informações do banco de dados e que possua a estrutura de uma nota de pedido. Alguem pode me ajudar nesta questão?
Desde já agradeço
Alex Maia
Curtir tópico
+ 0
Responder
Posts
09/08/2004
Reginaldo174
uses
ComObj, ActiveX;
var
OldWord, NewWord: Variant;
function GetOrCreateObject (const ClassName: string): IDispatch;
var
ClassID: TGUID;
Unknown: IUnknown;
begin
ClassID := ProgIDToClassID (ClassName);
if Succeeded (GetActiveObject (ClassID, nil, Unknown)) then OleCheck(Unknown.QueryInterface (IDispatch, Result)) else Result := CreateOleObject (ClassName);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
OldWord := GetOrCreateObject (´Word.Basic´);
NewWord := GetOrCreateObject (´Word.Application´);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
OldWord.FileNew; //criar um arquivo novo
OldWord.AppShow; //chamar a aplicação
OldWord.Insert (´Mastering Delphi by Pacal Votan´); //inserir o texto
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Document, Range: Variant;
begin
NewWord.Visible := True;
NewWord.Documents.Add;
// inserir texto
NewWord.Documents.Item(1).Range.Text := ´Mastering Delphi by Pacal Votan´;
// get document and add paragraph
Document := NewWord.Documents.Item(1);
Document.Paragraphs.Add;
Document.Paragraphs.Add;
// selecionar o terceiro paragrafo
Range := Document.Paragraphs.Item(3).Range;
Range.Text := ´Hello, Delphi´;
Range.Bold := 1;
Range.Font.Size := 30;
// salvar o arquivo gerado
if SaveDialog1.Execute then Document.SaveAs (WideString(SaveDialog1.Filename), 0);
Document.SaveAs (FileName := WideString (SaveDialog1.Filename), FileFormat := 0, //formato nativo do word
SaveNativePictureFormat := 1); // true
end;
ComObj, ActiveX;
var
OldWord, NewWord: Variant;
function GetOrCreateObject (const ClassName: string): IDispatch;
var
ClassID: TGUID;
Unknown: IUnknown;
begin
ClassID := ProgIDToClassID (ClassName);
if Succeeded (GetActiveObject (ClassID, nil, Unknown)) then OleCheck(Unknown.QueryInterface (IDispatch, Result)) else Result := CreateOleObject (ClassName);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
OldWord := GetOrCreateObject (´Word.Basic´);
NewWord := GetOrCreateObject (´Word.Application´);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
OldWord.FileNew; //criar um arquivo novo
OldWord.AppShow; //chamar a aplicação
OldWord.Insert (´Mastering Delphi by Pacal Votan´); //inserir o texto
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Document, Range: Variant;
begin
NewWord.Visible := True;
NewWord.Documents.Add;
// inserir texto
NewWord.Documents.Item(1).Range.Text := ´Mastering Delphi by Pacal Votan´;
// get document and add paragraph
Document := NewWord.Documents.Item(1);
Document.Paragraphs.Add;
Document.Paragraphs.Add;
// selecionar o terceiro paragrafo
Range := Document.Paragraphs.Item(3).Range;
Range.Text := ´Hello, Delphi´;
Range.Bold := 1;
Range.Font.Size := 30;
// salvar o arquivo gerado
if SaveDialog1.Execute then Document.SaveAs (WideString(SaveDialog1.Filename), 0);
Document.SaveAs (FileName := WideString (SaveDialog1.Filename), FileFormat := 0, //formato nativo do word
SaveNativePictureFormat := 1); // true
end;
Responder
Clique aqui para fazer login e interagir na Comunidade :)