Avatar billede snowball Novice
04. april 2000 - 11:11 Der er 11 kommentarer og
2 løsninger

Brug af TWordDocument og TWordApplication

Hejsa !

Jeg sidder og skal til at lave et program som skal sammekæde flere Word docs. til ét. Jeg har tænkt mig at bruge de oventstående komponenter, og vil derfor gerne høre lidt om dem (synes der står ALT for lidt om dem i hjælpen!)

Ting som hvordan de bruges (lidt source code ville være fjong), erfaringer, om der findes noget bedrer og den slags !

Jeg bruger Delphi 5 Enterprise !

Snowball
Avatar billede sjensen Nybegynder
04. april 2000 - 12:12 #1
snowball,

De omtalte komponenter er udmærkede. De virker fint nok, og hvis jeg ikke husker galt er der nogle eksempler på hvordan de virker og kan bruges installeret sammen med Delphi (../samples/..).

Det vil dog være en fordel at kende lidt til WordMacroer når du bruger dem. Opdelingen af et dokument i Word er som collections, d.v.s. noget a la:

document[1].paragraph[1].text := 'bla bla'; og når du bruger delphi kan du for hvert led i collectionen se den indbyggede popup-hjælp der viser hvilke muligheder du har efter hvert punktum. Det er meget fint.

Vedr. andre muligheder:

Jeg har lige prøvet nogle andre komponenter der er noget lettere at bruge og de er lavet af Steve Texiara (der bl.a har skrevet en del bøger om Delphi) og jeg mener du kan se og evt. downloade eks. på http://www.devries.com men jeg er ikke helt sikker på denne url.

Tilgengæld vil jeg sige at de komponenter Steve laver er gode og meget lette at bruge.

Jeg ved godt det ikke er meget, men jeg håber det kan hjælpe dig lidt på vej.
Avatar billede sjensen Nybegynder
04. april 2000 - 12:15 #2
Snowball,

urllen er ikke korrekt. Jeg finder lige den rigtige og vender tilbage
Avatar billede snowball Novice
04. april 2000 - 14:14 #3
Kender du et sted hvor jeg kan se et eksempel på brugen af disse komponenter, for jeg kan ikke finde noget i det der er med D5 !!!

Snowball
Avatar billede snowball Novice
04. april 2000 - 14:25 #4
Jeg tror jeg har fundet den side som du troede du henviste til !

http://www.dvdata.com/dvnew/pages/Officepartner_solutions.asp

Men den koster jo 399$ og det synes jeg ikke lige jeg har lyst til at gi' ;)

Så hvis du kunne finde et eksempel eller 2 på brugen af dem som er i D5, så ville det bare være fjong ;)

Snowball
Avatar billede sjensen Nybegynder
04. april 2000 - 14:30 #5
Ok, jeg skal se hvad jeg kan komme frem med. Du skal nok regne med at det først bliver i løbet af aftenen.

Jeg har dog en kopi af de komponenter hos dvdata du kan "snuse" til inden du beslutter dig til at købe eller ej, hvis du har lyst. Jeg skal dog lige læse betingelserne igennem før jeg ved om jeg må sende dig en "evalueringskopi"
Avatar billede snowball Novice
04. april 2000 - 14:36 #6
Har lige fundet et eksempel på nettet som jeg lige skal ha' kigget lidt nærmere på, men stadig, hvis du har et eksempel må du gerne poste det også !

http://www.marcocantu.com/code/md5/DBOffice.htm

Snowball
Avatar billede pellelil Nybegynder
04. april 2000 - 15:14 #7
Deborah Pate har nogle gode eksempler der viser hvordan du tager fat i MS Office applicationerne fra Delphi (via COM): http://www.djpate.freeserve.co.uk/Automation.htm
Avatar billede snowball Novice
04. april 2000 - 15:28 #8
Det eksempel jeg selv fandt fik jeg nu ikke ret meget ud af, men det som pellelil fandt ser ganske godt ud. Kigger lige lidt nærmere på det ;)

sjensen: Programmet skal bruges "kommercielt" (ikke privat, men heller ikke tilgængeligt for alle) så jeg tror bare jeg holder mig til dem der er i D5 (hvis jeg finder ud af hvordan de bruges og kan få det til at virke ;) )

Snowball
Avatar billede pellelil Nybegynder
04. april 2000 - 15:33 #9
Jeg vil netop mene at hvis du vil bruge dit produkt "kommercielt" (dine kunder kan "være med til at betale") at du kigger på OfficePartner (OP) som SJensen forslår. Dem der er i din Delphi er gratis, men OP vil give dig en række fordele da du kan lave meget af arbejdet allerede mens du udvikler applikationen. Netop fordi OP, via IDE'en kan "opbygge" eksempelvis word-documentet.
Avatar billede sjensen Nybegynder
04. april 2000 - 16:57 #10
Snowball,

Vedr. eksempler på hvordan man gør i Delphi, så prøv at kigge på nogle af de artikler der er på

http://www.delphi3000.com

under kategorien "OLE".

Bl.a. er der et fint kodeeksempel på hvordan man kan bruge word som "report-engine".

Den ligger i denne link (hvis den virker):

http://www.delphi3000.com/category.asp?ID=24&CatName=OLE
Avatar billede snowball Novice
05. april 2000 - 12:39 #11
Fint nok !

Er der en af jer som lige huritgt kan lave et lille eksempel på hvordan man:

1: åbner et tomt dokument
2: åbner et andet dokument, vælger al teksten og kopierer det over i det første dokument
3: lukker det andet dokument, og gemmer det første

Flere point kan sagtens komme på tale hvis det skulle være !!!

Snowball
Avatar billede snowball Novice
06. april 2000 - 09:34 #12
Så har jeg selv fundet ud af det ;)

var
  FileName1: OleVariant;
  FileName2: OleVariant;
  FileName3: OleVariant;
  SaveChanges: OleVariant;

begin
  FileName1 := 'C:\upload\1.doc';
  SaveChanges := wdDoNotSaveChanges;
  WA1.Connect;
  WA1.Visible := True;
  WDoc.ConnectTo(WA1.Documents.Add(EmptyParam, EmptyParam));

  //1.doc
  WA1.Documents.Open(FileName1, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  WA1.Selection.WholeStory;
  WA1.Selection.Copy;
  WA1.ActiveDocument.Close(SaveChanges, EmptyParam, EmptyParam);
  WA1.Selection.Paste;
  WA1.Selection.TypeParagraph; //Tom linie
  WA1.Selection.TypeParagraph; //Tom linie


Snowball
Avatar billede snowball Novice
06. april 2000 - 09:35 #13
Whoops...FileName2 og FileName3 skal ikke lige bruges i det kode jeg har postet ;)

Snowball
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester