Delphi + Korespondencja seryjna w Wordzie

0

Potrzebuję zrobić prostą aplikację, któa zapina się do bazy PostgreSQL i po wybraniu odpowiedniej pozycji z dataseta napełnia pola formularza w Wordzie.

Generalnie nie ma problemu zrobić coś takiego w samym Wordzie, ale sposób wyszukiwania właściwego rekordu nie bardzo mi pasuje. Poza tym próbowałem złapać rejestracją Makra w jaki sposób Word wyszukuje rekord w swoim datasetcie, ale pojawia się tam tylko wywołanie okienka do wyszukiwania, bez jakichkolwiek parametrów.

Możnaby oczywiście zrobić to jakimś klasycznym raportem, ale chciałbym, żeby użytkownik końcowy miał możliwość swobodnego modyfikowania większości elementów formularza w miarę konieczności

Generalnie ma to być patencik na jeden wieczór. Proste zapięcie do bazy, prosta tabelka do wyszukiwania, jeden-dwa guziory do wydruków - wszystko spoko - znalazłem w googlach jak otworzyć nowy dokument Worda z poziomu Delphi, ale nie umiem znaleźć jak uzupełnić Formularz programowo danym z zwenątrz.

Ćwiczył ktoś taki patent ?

0

Symuluj klawiaturę i wpisuj dane w pola.
Warunkiem jest pobranie pozycji okna i dokładne ułożenie kursora.

Ogólnie to za dużo roboty :P

0

W wordzie włącz zapisywanie makra.
Potem rób sobie przykładzik z taką korespondencja.
Zatrzymaj zapisywanie.
Robić w Delphi dokładnie wg tego makra, które ci wyszło.

0
Opi napisał(a)

Symuluj klawiaturę i wpisuj dane w pola.
Warunkiem jest pobranie pozycji okna i dokładne ułożenie kursora.

Ogólnie to za dużo roboty :P
Symulacja klawiatury ? O czym ty opowiadasz ??? Wordem można sterować z poziomu Delphi i nie ma potrzeby uciekać się do jakiś niskopoziomowych wymyków. Muszę tylko wiedzieć jak się nazywa kolekcja, która przechowuje informacje nt. pól DataSeta Korespondencji seryjnej w Wordzie.

_13th_Dragon napisał(a)

W wordzie włącz zapisywanie makra.
Potem rób sobie przykładzik z taką korespondencja.
Zatrzymaj zapisywanie.
Robić w Delphi dokładnie wg tego makra, które ci wyszło.
Widzisz - właśnie nie wszystkie metody są rejestrowane przez rejestrator makr. Próbowałem tego, ale okazuje się, że czasem rejestrowane jest tylko uruchomienie wywołania okna, ale co się dzieje w tym oknie już nie jest rejestrowane.

Ogólnie to znalazłem coś, co jest blisko moich potrzeb:
http://support.microsoft.com/kb/229310

ale liczyłem, że ktoś mi pojaśni co gdzie napełnić, żeby banglało. Ten przykład niestety nie działa poprawnie w Office 2007 - detale tak na prawde, bo można przygotować ręcznie plik doc z DataSetem, ale później wywala się na "wrdMailMerge.Destination := wdSendToNewDocument;" i tutaj już poległem.

1 użytkowników online, w tym zalogowanych: 0, gości: 1