18
Wydawnictwo Helion ul. Koœciuszki 1c 44-100 Gliwice tel. 032 230 98 63 e-mail: [email protected] PRZYK£ADOWY ROZDZIA£ PRZYK£ADOWY ROZDZIA£ IDZ DO IDZ DO ZAMÓW DRUKOWANY KATALOG ZAMÓW DRUKOWANY KATALOG KATALOG KSI¥¯EK KATALOG KSI¥¯EK TWÓJ KOSZYK TWÓJ KOSZYK CENNIK I INFORMACJE CENNIK I INFORMACJE ZAMÓW INFORMACJE O NOWOœCIACH ZAMÓW INFORMACJE O NOWOœCIACH ZAMÓW CENNIK ZAMÓW CENNIK CZYTELNIA CZYTELNIA FRAGMENTY KSI¥¯EK ONLINE FRAGMENTY KSI¥¯EK ONLINE SPIS TREœCI SPIS TREœCI DODAJ DO KOSZYKA DODAJ DO KOSZYKA KATALOG ONLINE KATALOG ONLINE Office 2003. Programowanie Zaprojektuj i napisz w³asne aplikacje dla MS Office 2003 • Wykorzystaj mo¿liwoœci jêzyka VB.NET. • Po³¹cz aplikacje z baz¹ danych. • Zintegruj sk³adniki pakietu Office. Pakiet MS Office ju¿ od pierwszych wersji umo¿liwia³ automatyzowanie pracy — najpierw narzêdziem wykorzystywanym w tym celu by³y makra, potem jêzyk VBA. Nowa wersja Microsoft Office, oznaczona symbolem 2003, pozwala na tworzenie aplikacji za pomoc¹ jêzyka Visual Basic. Dziêki temu twórcy aplikacji dla pakietu Office mog¹ korzystaæ z mo¿liwoœci oferowanych przez platformê .NET i narzêdzia, takie jak Visual Studio Tools for Office oraz Information Bridge Framework. Dodatkow¹ zalet¹ jest pe³na obs³uga standardu XML, co pozwala na korzystanie z technologii Web Services. Wykorzystuj¹c tê technologiê, programiœci mog¹ tworzyæ bardzo rozbudowane i wydajne aplikacje. Czytaj¹c ksi¹¿kê „Office 2003. Programowanie”, nauczysz siê pisaæ w³asne programy dla MS Office 2003. W ka¿dym z jej rozdzia³ów znajdziesz przyk³adowy projekt aplikacji. Dowiesz siê, w jaki sposób do budowania programów u¿ywanych w pojedynczym dziale firmy, a nawet w ca³ej korporacji, wykorzystywaæ nowe mo¿liwoœci, udostêpniane przez Visual Studio .NET oraz .NET Framework,. Zapoznasz siê z zasadami tworzenia praktycznych rozwi¹zañ biznesowych dla pakietu Office. Poznasz sposoby wykorzystywania us³ug sieciowych i baz danych, napiszesz w³asne dodatki COM oraz zastosujesz w aplikacjach znaczniki Smart Tag. • Architektura aplikacji dla pakietu Office • Generator prezentacji Power Point • Obs³uga dokumentów Worda • Wysy³anie wiadomoœci e-mail w oparciu o wyra¿enia regularne • Praca z Visual Studio Tools for Office • Zastosowanie dokumentów inteligentnych oraz us³ug sieciowych • Tworzenie znaczników Smart Tag Zastosuj praktyczne aplikacje w firmie Autor: Ty Anderson T³umaczenie: Grzegorz Kowalczyk ISBN: 83-246-0171-6 Tytu³ orygina³u: Office 2003 Programming: Real World Applications Format: B5, stron: 512

Office 2003. Programowanie

Embed Size (px)

DESCRIPTION

Zaprojektuj i napisz własne aplikacje dla MS Office 2003 * Wykorzystaj możliwości języka VB.NET. * Połącz aplikacje z bazą danych. * Zintegruj składniki pakietu Office. Pakiet MS Office już od pierwszych wersji umożliwiał automatyzowanie pracy -- najpierw narzędziem wykorzystywanym w tym celu były makra, potem język VBA. Nowa wersja Microsoft Office, oznaczona symbolem 2003, pozwala na tworzenie aplikacji za pomocą języka Visual Basic. Dzięki temu twórcy aplikacji dla pakietu Office mogą korzystać z możliwości oferowanych przez platformę .NET i narzędzia, takie jak Visual Studio Tools for Office oraz Information Bridge Framework. Dodatkową zaletą jest pełna obsługa standardu XML, co pozwala na korzystanie z technologii Web Services. Wykorzystując tę technologię, programiści mogą tworzyć bardzo rozbudowane i wydajne aplikacje. Czytając książkę "Office 2003. Programowanie", nauczysz się pisać własne programy dla MS Office 2003. W każdym z jej rozdziałów znajdziesz przykładowy projekt aplikacji. Dowiesz się, w jaki sposób do budowania programów używanych w pojedynczym dziale firmy, a nawet w całej korporacji, wykorzystywać nowe możliwości, udostępniane przez Visual Studio .NET oraz .NET Framework,. Zapoznasz się z zasadami tworzenia praktycznych rozwiązań biznesowych dla pakietu Office. Poznasz sposoby wykorzystywania usług sieciowych i baz danych, napiszesz własne dodatki COM oraz zastosujesz w aplikacjach znaczniki Smart Tag. * Architektura aplikacji dla pakietu Office * Generator prezentacji Power Point * Obsługa dokumentów Worda * Wysyłanie wiadomości e-mail w oparciu o wyrażenia regularne * Praca z Visual Studio Tools for Office * Zastosowanie dokumentów inteligentnych oraz usług sieciowych * Tworzenie znaczników Smart Tag Zastosuj praktyczne aplikacje w firmie i dopasuj je do swoich specyficznych wymagań.

Citation preview

Page 1: Office 2003. Programowanie

Wydawnictwo Helionul. Koœciuszki 1c44-100 Gliwicetel. 032 230 98 63e-mail: [email protected]

PRZYK£ADOWY ROZDZIA£PRZYK£ADOWY ROZDZIA£

IDZ DOIDZ DO

ZAMÓW DRUKOWANY KATALOGZAMÓW DRUKOWANY KATALOG

KATALOG KSI¥¯EKKATALOG KSI¥¯EK

TWÓJ KOSZYKTWÓJ KOSZYK

CENNIK I INFORMACJECENNIK I INFORMACJE

ZAMÓW INFORMACJEO NOWOœCIACH

ZAMÓW INFORMACJEO NOWOœCIACH

ZAMÓW CENNIKZAMÓW CENNIK

CZYTELNIACZYTELNIAFRAGMENTY KSI¥¯EK ONLINEFRAGMENTY KSI¥¯EK ONLINE

SPIS TREœCISPIS TREœCI

DODAJ DO KOSZYKADODAJ DO KOSZYKA

KATALOG ONLINEKATALOG ONLINE

Office 2003.Programowanie

Zaprojektuj i napisz w³asne aplikacje dla MS Office 2003

• Wykorzystaj mo¿liwoœci jêzyka VB.NET.• Po³¹cz aplikacje z baz¹ danych.• Zintegruj sk³adniki pakietu Office.

Pakiet MS Office ju¿ od pierwszych wersji umo¿liwia³ automatyzowanie pracy — najpierw narzêdziem wykorzystywanym w tym celu by³y makra, potem jêzyk VBA. Nowa wersja Microsoft Office, oznaczona symbolem 2003, pozwala na tworzenie aplikacji za pomoc¹ jêzyka Visual Basic. Dziêki temu twórcy aplikacji dla pakietu Office mog¹ korzystaæ z mo¿liwoœci oferowanych przez platformê .NET i narzêdzia, takie jak Visual Studio Tools for Office oraz Information Bridge Framework. Dodatkow¹ zalet¹jest pe³na obs³uga standardu XML, co pozwala na korzystanie z technologii Web Services. Wykorzystuj¹c tê technologiê, programiœci mog¹ tworzyæ bardzo rozbudowane i wydajne aplikacje.

Czytaj¹c ksi¹¿kê „Office 2003. Programowanie”, nauczysz siê pisaæ w³asne programy dla MS Office 2003. W ka¿dym z jej rozdzia³ów znajdziesz przyk³adowy projekt aplikacji. Dowiesz siê, w jaki sposób do budowania programów u¿ywanychw pojedynczym dziale firmy, a nawet w ca³ej korporacji, wykorzystywaæ nowe mo¿liwoœci, udostêpniane przez Visual Studio .NET oraz .NET Framework,.Zapoznasz siê z zasadami tworzenia praktycznych rozwi¹zañ biznesowych dla pakietu Office. Poznasz sposoby wykorzystywania us³ug sieciowych i baz danych, napiszesz w³asne dodatki COM oraz zastosujesz w aplikacjach znaczniki Smart Tag.

• Architektura aplikacji dla pakietu Office• Generator prezentacji Power Point• Obs³uga dokumentów Worda• Wysy³anie wiadomoœci e-mail w oparciu o wyra¿enia regularne• Praca z Visual Studio Tools for Office• Zastosowanie dokumentów inteligentnych oraz us³ug sieciowych• Tworzenie znaczników Smart Tag

Zastosuj praktyczne aplikacje w firmie

Autor: Ty AndersonT³umaczenie: Grzegorz KowalczykISBN: 83-246-0171-6Tytu³ orygina³u: Office 2003 Programming:Real World ApplicationsFormat: B5, stron: 512

Page 2: Office 2003. Programowanie

S:\ Sylwia\pdf\Office 2003. Programowanie\!!Spis.doc 5

Spis treści O autorze ......................................................................................... 9

Wprowadzenie ................................................................................ 11

Rozdział 1. Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET ..... 19Architektura aplikacji .....................................................................................................20

Warstwa bazy danych ...............................................................................................20Warstwa logiki biznesowej .......................................................................................21Warstwa prezentacji: Microsoft Office .....................................................................23

Scenariusz przykładowy: Bravo Corp .............................................................................25Strategia biznesowa Bravo Corp ...............................................................................26Strategia rozwoju Bravo Corp ..................................................................................27Zalety biznesu ...........................................................................................................27

Podsumowanie ................................................................................................................31

Rozdział 2. Generator prezentacji ...................................................................... 33Projektowanie Generatora prezentacji ............................................................................34Scenariusz biznesowy .....................................................................................................37Tworzenie bazy danych ..................................................................................................37Tworzenie szablonów PowerPoint ..................................................................................39Tworzenie dodatku add-in — Generator prezentacji ......................................................40

Interfejs IDTExtensibility2 .......................................................................................42Tworzenie projektu dodatku add-in ..........................................................................43Wymagane komponenty dodatku Generator prezentacji ..........................................48Tworzenie klasy appPPT ..........................................................................................49Tworzenie formularza Settings oraz klasy UserSettings ...........................................52Tworzenie formularza GetUpdates ...........................................................................64Tworzenie formularza ListPresentations ..................................................................68Tworzenie klasy Connect .........................................................................................71Kompilacja dodatku Generator prezentacji ...............................................................78

Tworzenie kreatora dopasowania prezentacji .................................................................78Tworzenie klasy WizardInfo ....................................................................................79Tworzenie formularza PPTWizard ...........................................................................88Tworzenie modułu Main ..........................................................................................94

Składanie wszystkich klocków w jedną całość ...............................................................94Uruchamianie Kreatora z poziomu dodatku add-in ..................................................94

Podsumowanie ................................................................................................................96

Page 3: Office 2003. Programowanie

6 Office 2003. Programowanie

6 S:\ Sylwia\pdf\Office 2003. Programowanie\!!Spis.doc

Rozdział 3. Generator dokumentów ................................................................... 97Przebieg procesu tworzenia dokumentów .......................................................................98Projektowanie Generatora dokumentów .......................................................................100Scenariusz biznesowy ...................................................................................................102Modyfikacja bazy danych Bravo Corp .........................................................................103Tworzenie szablonów dokumentów Word ....................................................................103Konfiguracja pliku danych programu Outlook .............................................................105Tworzenie dodatku add-in ............................................................................................108

Klasa appOutlook ...................................................................................................110Klasa formularza Documents .................................................................................124Klasa formularza DocumentProcessor ....................................................................133Formularz Settings ..................................................................................................148Klasa UserSettings ..................................................................................................150Klasa formularza GetUpdates .................................................................................154Klasa Connect .........................................................................................................155

Podsumowanie ..............................................................................................................156

Rozdział 4. Generator wiadomości email ......................................................... 157Projektowanie Generatora wiadomości email ...............................................................158Scenariusz biznesowy ...................................................................................................161Zastosowanie wyrażeń regularnych ..............................................................................162Tworzenie Generatora wiadomości email .....................................................................165

Tworzenie folderu szablonów wiadomości email ...................................................165Tworzenie bazy kontaktów (obiekty ContactItem) .................................................165Tworzenie przykładowych szablonów wiadomości email ......................................166Budowanie dodatku COM add-in ...........................................................................169Klasa BravoMenu ...................................................................................................189Formularz Settings ..................................................................................................201Klasa UserSettings ..................................................................................................204

Podsumowanie ..............................................................................................................208

Rozdział 5. Aplikacja do obsługi zgłoszeń serwisowych .................................... 209InfoPath i usługi sieci Web ...........................................................................................210Projektowanie aplikacji do obsługi zgłoszeń serwisowych ...........................................212Scenariusz biznesowy Bravo Corp ...............................................................................216Tworzenie tablic bazy danych .......................................................................................217Tworzenie usługi sieci Web aplikacji do obsługi zgłoszeń serwisowych .....................218

Projekt usługi sieci Web .........................................................................................219Plik web.config .......................................................................................................220Klasa EventIssues.asmx ..........................................................................................221Klasa Config.vb ......................................................................................................236Moduł Globals.vb ...................................................................................................238Klasa EventIssue.vb ................................................................................................241Klasa EventIssueTask.vb ........................................................................................244Testowanie usługi sieci Web do obsługi zgłoszeń serwisowych ............................249

Tworzenie formularzy InfoPath aplikacji do obsługi zgłoszeń serwisowych ...............250Formularz EventIssuesForm ...................................................................................251Formularz Task .......................................................................................................260

Tworzenie strony WWW — EventIssueTracking.aspx ................................................262Projektowanie strony WWW — EventIssueTracking ............................................263Zdarzenia ................................................................................................................265Metody właściwości ...............................................................................................269

Podsumowanie ..............................................................................................................269

Page 4: Office 2003. Programowanie

Spis treści 7

S:\ Sylwia\pdf\Office 2003. Programowanie\!!Spis.doc 7

Rozdział 6. Konsolidator wydatków budżetowych ............................................ 271Projektowanie Konsolidatora budżetu ..........................................................................273Scenariusz biznesowy ...................................................................................................280Tworzenie pliku szablonu budżetu oraz pliku podsumowania ......................................281

Tworzenie pliku BudgetTemplate.xls .....................................................................282Dodawanie zabezpieczeń arkusza ...........................................................................284Tworzenie pliku BudgetSummary.xls ....................................................................285Formularz frmLineItems .........................................................................................286Moduł basSecurity ..................................................................................................292Moduł basToolbar ..................................................................................................296Moduł basMain .......................................................................................................299Moduł ThisWorkbook ............................................................................................301Testowanie szablonu budżetu .................................................................................302

Tworzenie silnika Konsolidatora budżetu .....................................................................302Formularz frmSettings ............................................................................................304Moduł basConfig ....................................................................................................307Moduł basMain .......................................................................................................310Moduł ThisWorkbook ............................................................................................322Moduł basSecurity ..................................................................................................323Moduł basToolbar ..................................................................................................324

Dystrybucja dodatku .....................................................................................................326Podsumowanie ..............................................................................................................326

Rozdział 7. System rejestracji czasu pracy ...................................................... 327Projektowanie systemu Karta pracy ..............................................................................329Scenariusz biznesowy ...................................................................................................333Tworzenie centralnej bazy danych ................................................................................334Konfiguracja ustawień bezpieczeństwa .NET ...............................................................335Tworzenie usługi sieciowej systemu Karta pracy .........................................................337

Plik web.config .......................................................................................................339Klasa TimeManagerWeb.asmx ...............................................................................340Klasa Config.vb ......................................................................................................348Klasa Globals.vb .....................................................................................................349Klasa Hours.vb .......................................................................................................350Klasa Project.vb ......................................................................................................352Klasa User.vb .........................................................................................................353Testowanie usługi sieci Web ..................................................................................354

Tworzenie aplikacji Karta pracy: Wprowadzanie .........................................................355Tworzenie projektu aplikacji Karta pracy:

Wprowadzanie przy użyciu pakietu Visual Studio Tools for Office ....................356Formularz TimeManagerLogin ...............................................................................368Formularz SaveDialog.vb .......................................................................................371

Tworzenie aplikacji Karta pracy: Raporty ....................................................................375Plik app.config ........................................................................................................375Klasa OfficeCodeBehind (ThisWorkbook.vb) .......................................................376Formularz TimeManagerLogin.vb ..........................................................................381

Podsumowanie ..............................................................................................................383

Rozdział 8. Znacznik Account Details Smart Tag ............................................. 385Information Bridge Framework ....................................................................................386

Usługi sieciowe IBF ...............................................................................................388Metadane IBF .........................................................................................................388Kontrolki interfejsu użytkownika IBF ....................................................................389Znaczniki Smart Tag współpracujące z IBF ...........................................................390

Page 5: Office 2003. Programowanie

8 Office 2003. Programowanie

8 S:\ Sylwia\pdf\Office 2003. Programowanie\!!Spis.doc

Projektowanie znacznika Account Details Smart Tag ..................................................394Scenariusz biznesowy ...................................................................................................399Instalacja i konfiguracja przykładowego systemu Information Bridge Framework ......400Tworzenie pliku XML z informacją o klientach ...........................................................402Tworzenie znacznika Account Details Smart Tag ........................................................402

Odwołania ..............................................................................................................403Klasa Recognizer.vb ...............................................................................................404Rejestrowanie znacznika Account Details Smart Tag ............................................410Konfiguracja ustawień bezpieczeństwa ..................................................................411Testowanie znacznika Account Details Smart Tag .................................................411

Podsumowanie ..............................................................................................................414

Rozdział 9. System obsługi zamówień na imprezach targowych ........................ 415Praca z dokumentami inteligentnymi ............................................................................417

Komponenty dokumentów inteligentnych ..............................................................420Projektowanie systemu obsługi zamówień ...................................................................422Scenariusz biznesowy ...................................................................................................424Tworzenie pliku schematu XML — Order.xsd .............................................................424Tworzenie dokumentu zamówienia (plik OrderForm.doc) ...........................................426Przygotowywanie bazy danych .....................................................................................430Tworzenie usługi sieciowej SubmitOrder .....................................................................432

Klasa OrderWS.asmx .............................................................................................434Testowanie usługi sieciowej ...................................................................................443

Tworzenie frontonu dokumentu inteligentnego ............................................................444Tworzenie podzespołu action handler (klasa DocActions) .....................................445Konfiguracja ustawień bezpieczeństwa ..................................................................472Tworzenie Manifestu oraz pakietu rozszerzającego ...............................................473Dołączanie Manifestu oraz pakietu rozszerzającego ..............................................475

Podsumowanie ..............................................................................................................476

Dodatek A Instalacja i dystrybucja zarządzanych dodatków add-in ................... 477Problemy z kodem zarządzanym ..................................................................................478

Mechanizmy bezpieczeństwa pakietu Office 2003 .................................................478Shim — niezarządzany dodatek COM add-in ...............................................................481

Tworzenie niezarządzanego dodatku COM add-in shim przy użyciu VB 6 ...........482Testowanie dodatku shim .......................................................................................483Podpisywanie cyfrowe dodatku shim .....................................................................484Testowanie podpisanego dodatku shim ..................................................................487Instalacja dodatku shim oraz zarządzanego dodatku COM add-in .........................488

Podsumowanie ..............................................................................................................489

Skorowidz...................................................................................... 491

Page 6: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 19

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 19

Rozdział 1.

Tworzenie aplikacjidla pakietu Officeprzy użyciu języka VB .NET

Nasza książka poświęcona jest zagadnieniom związanym z tworzeniem uniwersalnychaplikacji biznesowych przy użyciu języka Visual Basic oraz pakietu Microsoft Office.Każdy rozdział wyjaśnia, w jaki sposób utworzyć inną, w pełni funkcjonalną aplikacjębiznesową. Kiedy zbierzesz je razem, przekonasz się, że:

1. Stanowią doskonałą ilustrację tego, w jaki sposób możesz utworzyć bardzoużyteczne aplikacje dla pakietu Office, których funkcjonalność częstonie jest ograniczona tylko do zasobów Twojego komputera osobistego.

2. Dostarczają przykładów, w jaki sposób można wykorzystać nowe możliwościrozbudowy pakietu Office, dostarczane przez Visual Studio .NET oraz .NETFramework.

3. Dostarczają przykładów metod tworzenia rozwiązań dla pakietu Office,które są gotowe do zastosowania w rzeczywistych, praktycznych aplikacjachbiznesowych (nasze przykłady być może nie zawsze są najpiękniejszei najbardziej efektywne, niemniej jednak w pełni funkcjonalne i użyteczne).

4. Są dla Ciebie znakomitym punktem odniesienia oraz źródłem inspiracji przytworzeniu własnych aplikacji dla pakietu Office.

Dzięki poszczególnym aplikacjom zapoznasz się z wieloma kluczowymi zagadnie-niami i tajemnicami języka VB .NET oraz zagadnieniami związanymi z programowa-niem pakietu Office. Oczywiście w łatwy sposób będziesz mógł również rozbudowy-wać poszczególne aplikacje i dopasowywać je do własnych, specyficznych wymagań.

Page 7: Office 2003. Programowanie

20 Office 2003. Programowanie

20 S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc

Aby ułatwić Ci skoncentrowanie się na zagadnieniach związanych z biznesowąstroną funkcjonalności omawianych aplikacji, w zdecydowanej większości kodówźródłowych nie umieszczaliśmy kodu przeznaczonego do obsługi błędów, który z pew-nością będzie wymagany w gotowych aplikacjach produkcyjnych.

Architektura aplikacjiAby zapewnić optymalną wydajność działania dla wszystkich użytkowników (zarównowewnętrznych, jak i zewnętrznych), wszystkie omawiane tutaj aplikacje posiadają ar-chitekturę n-warstwową (ang. n-tier architecture) — patrz rysunek 1.1. W zdecydo-wanej większości przypadków został zachowany tradycyjny podział na warstwęprezentacji, warstwę logiki biznesowej oraz warstwę bazodanową. Takie podejście dozagadnienia architektury zapewnia aplikacji wymaganą elastyczność, ponieważ logikabiznesowa jest odseparowana i niezależna od ogólnego projektu aplikacji oraz zasadrządzących jej funkcjonowaniem.

Rysunek 1.1.Podstawowaarchitektura aplikacji

Warstwa bazy danych

W niniejszej książce nie kładliśmy zbyt dużego nacisku na szczegółowe omawianiezagadnień związanych z warstwą danych poszczególnych aplikacji. Zazwyczaj zaple-czem aplikacji (ang. backend) jest baza SQL Server (lub Access), która spełnia funkcjęcentralnego repozytorium dla zasobów aplikacji (przykładowo przechowywane są w niejzatwierdzone szablony prezentacji dla programu PowerPoint — patrz rozdział 2.).

Page 8: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 21

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 21

Warstwa logiki biznesowejZ punktu widzenia projektowania aplikacji można bez wahania stwierdzić, że to wła-śnie w tej warstwie zawsze jest najwięcej pracy do wykonania. To właśnie w niej im-plementujemy reguły logiki biznesowej, których zadaniem jest zwiększenie funkcjo-nalności danej aplikacji pakietu Office. Aby osiągnąć nasz cel, będziemy korzystaćz wielu różnych technik, począwszy od technik tradycyjnych (takich jak zastosowanieVBA oraz dodatków COM add-ins do automatyzacji procesu tworzenia dokumentówprogramu Word; patrz rozdział 3.) aż do najnowocześniejszych, zaawansowanych roz-wiązań, takich jak tworzenie usług XMLWeb Service, które będą przechowywały i udo-stępniały podstawowe mechanizmy sterujące przepływem informacji (ang. workflowengine), jak to zostało opisane w rozdziale 5.

Omówimy teraz w skrócie niektóre z wykorzystywanych technologii, sposoby ich uży-wania oraz demonstrowane przez nie kluczowe techniki i rozwiązania programistyczne.

Dopasowywanie aplikacji pakietu Office przy użyciu Visual Basic .NET

Cały pakiet aplikacji Office posiada o wiele większe możliwości niż pojedynczy,przeciętny użytkownik będzie w stanie kiedykolwiek wykorzystać, a pomimo to nadalnie jest w stanie sprostać wszystkim bez wyjątku wymaganiom biznesowym. Naszczęście nie stanowi to jakiegoś większego problemu, ponieważ rozszerzenie funk-cjonalności aplikacji pakietu Office tak, aby spełniały jakieś określone, specyficznewymagania danego biznesu jest równie proste, jak napisanie odpowiedniego progra-mu w języku Visual Basic .NET. W książce będziemy bardzo intensywnie korzystaliz Visual Basic .NET do tworzenia własnych rozszerzeń aplikacji Office, dopasowanychdo naszych indywidualnych potrzeb. Przykładowo VB .NET będzie wykorzystywanymiędzy innymi do:

Tworzenia zarządzalnych dodatków COM add-ins (takich jak na przykładgenerator prezentacji PowerPoint, opisywany w rozdziale 2.).

W połączeniu z Visual Studio Tools for Office do dołączania kodu do skoroszytówExcela (takiego jak System rozliczania czasu pracy, omawiany w rozdziale 7.).

Do tworzenia nowych tagów inteligentnych (ang. smart tags), takich jaknp. tag o nazwie Account Details, o którym będzie mowa w rozdziale 8.,oraz do tworzenia inteligentnych dokumentów, takich jak System zamówieńtargowych, opisywany w rozdziale 9.

W połączeniu z VBA do automatyzacji często wykonywanych, powtarzalnychzadań pakietu Office, takich jak tworzenie szablonów dokumentów programówWord czy Excel (patrz rozdziały 2. i 6.).

XML i usługi Web Services

Transakcje w biznesie są nieodłącznie powiązane z przetwarzaniem dużych ilościróżnego rodzaju informacji. Oferty, broszury marketingowe, zamówienia, faktury czywiadomości poczty elektronicznej — to zaledwie niektóre z wielu różnych rodzajówinformacji generowanych i przetwarzanych każdego dnia.

Page 9: Office 2003. Programowanie

22 Office 2003. Programowanie

22 S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc

Wraz z rosnącą popularnością języka XML (ang. eXtensible Markup Language) i po-jawieniem się jego implementacji w wielu aplikacjach wykorzystywanych w zasto-sowaniach biznesowych, takich jak pakiet Office i baza danych SQL Server, informa-cja stała się o wiele bardziej „mobilna” niż kiedykolwiek wcześniej. Dzieje się tak,ponieważ dokumenty XML zawierają nie tylko dane, ale również strukturę danych.Oznacza to, że niezależnie od tego, gdzie znajdzie się dany dokument XML, odpo-wiednia aplikacja zawsze będzie w stanie właściwie zinterpretować przechowywanew nim informacje.

Nasza książka nie jest podręcznikiem języka XML. Zakładamy po prostu, że dyspo-nujesz odpowiednią wiedzą i posiadasz praktyczne umiejętności korzystania z XML-aoraz powiązanych z nim składników. Więcej dodatkowych informacji na temat XML-amożesz znaleźć na witrynie internetowej http://www.xml.org.

Z punktu widzenia zagadnień biznesowych kluczowym elementem całego procesujest założenie, że aplikacje, które służą do generowania i przetwarzania danych, sąmniej krytyczne niż same dane. Główny nacisk jest położony na dane oraz sposób ich„konsumowania”. Poprzez implementację XML-a różne źródła danych mogą bezwiększego wysiłku zostać połączone w jedną, spójną całość. XML pozwala dużymśrodowiskom korporacyjnym na szybką zmianę wymagań dotyczących danych i dzię-ki temu na niemal natychmiastowe nadążanie za zmieniającymi się w czasie wyma-ganiami klienta. Na przykład nowe aplikacje mogą być tworzone tak, aby spełniałyspecyficzne wymagania klienta, bez konieczności zwracania szczególnej uwagi nanaturę zaplecza biurowych systemów komputerowych klienta. Przy wykorzystaniuXML-a dane z aplikacji mogą być szybko i łatwo przekształcone do formatu wyma-ganego przez architekturę docelowych systemów biurowych klienta. XML oraz usługiWeb Services zostaną bardziej szczegółowo omówione w rozdziałach 5., 8. i 9.

W kilku rozdziałach niniejszej książki skorzystaliśmy z implementacji naszych wła-snych schematów XML, będących integralnymi częściami rozwiązań przedstawianychw danych rozdziałach. W naszej książce nie używaliśmy żadnych komercyjnychschematów XML firmy Microsoft, takich jak np. WordML.

Usługi Web Services są wykorzystywane w trzech przykładowych aplikacjach. UsługiWeb Services to inaczej zestaw metod, z których poprzez sieć mogą korzystać różneaplikacje. W naszej książce usługi Web Services dostarczają dodatkowej logiki bizne-sowej dla rozwiązań zbudowanych w oparciu o aplikacje pakietu Office. Usługi WebServices wykorzystują język XML oraz protokół HTTP, co powoduje, że dostarczaneprzez nie zcentralizowane zasoby logiki biznesowej mogą być wykorzystywane przezwiele różnych aplikacji. Dobrym przykładem takiego zastosowania jest system reje-stracji czasu pracy opisywany w rozdziale 7. System ten zawiera między innymi dwaoddzielne skoroszyty Excela, które korzystają ze zdalnej logiki biznesowej zapew-niającej mechanizmy uwierzytelniania użytkownika.

Korzystając z usług Web Services utworzymy odpowiednie metody, których zada-niem będzie dostarczanie odpowiednich danych dla aplikacji (np. pobieranie z bazydanych i przekazywanie aplikacji listy aktywnych użytkowników systemu) oraz

Page 10: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 23

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 23

umożliwianie dostępu do danych takim aplikacjom pakietu Office jak np. InfoPath(patrz rozdział 5.). Przekonasz się również, w jaki sposób usługa Web Services możewspółpracować z nową platformą Microsoft Office Information Bridge Framework1

(patrz rozdział 8.).

Inne techniki kodowania

Oprócz technologii, o których wspominaliśmy, omówimy również następujące klu-czowe zagadnienia związane z tworzeniem kodu aplikacji:

Zastosowanie wyrażeń regularnych do tworzenia własnych tagów(ang. InfoTags) w celu opisywania miejsc wstawiania danych w szablonachwiadomości pocztowych, a następnie do zamiany tagów na odpowiedniedane (patrz rozdział 4.).

Wykorzystywanie i modyfikacja pasków poleceń menu pakietu Office w celuzapewnienia użytkownikom szybkiego dostępu do kluczowych mechanizmówwłasnych aplikacji (patrz rozdziały 2., 3., 4. i 6.). Dodatkowo omówimyrównież sposoby dynamicznego tworzenia przycisków sterujących na paskupoleceń, dostosowujących się do typów poszczególnych elementówodnajdywanych w folderze pakietu Outlook (patrz rozdział 4.).

Tworzenie formularzy kreatorów, które prowadzą użytkownika poprzezproces tworzenia własnych prezentacji (patrz rozdział 2.).

Tworzenie oraz instalacja zarządzalnych dodatków COM add-in, które będątraktowane przez pakiet Office 2003 jako zaufane.

Warstwa prezentacji: Microsoft Office

W epoce „dot-com” narodził się silny trend do tworzenia nowych, webowych wersjiistniejących aplikacji o krytycznym znaczeniu dla prowadzenia interesów firmy. W re-zultacie projektanci i programiści zwrócili się w stronę sieci Internet i zaczęli tworzyćaplikacje wykorzystujące mechanizmy standardowych przeglądarek sieciowych, któredawały użytkownikowi możliwości podobne jak ich pełne, instalowane na każdymkomputerze odpowiedniki. Pomimo że taka strategia osiągnęła jeden ze swoich ce-lów, jakim była „zawsze dostępna” informacja, to jednak użytkownicy takich aplika-cji musieli ponieść stosunkowo wysokie koszty wdrożenia takiego rozwiązania. Naprzykład wiele mechanizmów i rozwiązań aplikacji „biurkowych”, które sprzyjałozwiększaniu produktywności pracowników, zostało utraconych, a użytkownicy mu-sieli się borykać z niezbyt satysfakcjonującymi doświadczeniami z pracy z aplikacjamiwebowymi. To wszystko było jednak tylko dodatkiem do drastycznego zwiększeniailości czasu, jaki deweloperzy i programiści musieli poświęcać na tworzenie aplikacjiwebowych i dodawanie po stronie klienta odpowiednich skryptów zwiększającychfunkcjonalność programów wykorzystujących przeglądarki sieciowe.

1 Więcej szczegółowych informacji na ten temat znajdziesz na stronie:

http://msdn.microsoft.com/office/understanding/ibframework/default.aspx — przyp. tłum.

Page 11: Office 2003. Programowanie

24 Office 2003. Programowanie

24 S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc

Po pojawieniu się na rynku w roku 2001 platformy .NET Framework i gwałtownie ro-snącej, powszechnej akceptacji usług Web Services pojawił się kolejny, nowy trend.Chodziło o umożliwianie standardowym aplikacjom klienckim wykorzystywania in-terfejsów webowych. Bez żadnej przesady możemy jednak powiedzieć, że do poja-wienia się takiej tendencji w ogromnym stopniu przyczyniły się możliwości łatwegoprzenoszenia informacji, jakie dają ML oraz usługi Web Services.

Wspaniałą zaletą aplikacji omawianych w naszej książce jest to, że z perspektywyużytkownika wykorzystują one w znacznej mierze „normalny”, dobrze znany każde-mu interfejs pakietu Office. Pakiet Microsoft Office był i jest najbardziej udanymi najbardziej rozpowszechnionym zestawem aplikacji biurowych w historii kompute-ryzacji. Nikt przecież chyba nie zaprzeczy, że posiadając ponad 90% udział w rynkupakietów biurowych, Office jest de facto standardem w dziedzinie tworzenia i prze-twarzania dokumentów biurowych.

Oprócz działania z podstawowymi szablonami PowerPointa, arkuszami kalkulacyj-nymi Excela i dokumentami Worda, aplikacje opisywane w naszej książce mogą byćwykorzystywane również w niektórych nowych technologiach wprowadzonych w pa-kiecie Office 2003.

XML a pakiet Office 2003

Obsługa XML jest prawdopodobnie jedną z najważniejszych i najbardziej znaczącychnowości, jakie zostały zaimplementowane w pakiecie Office 2003. Mechanizm ob-sługi XML pozwala deweloperom na wykorzystywanie w aplikacjach Office takichjak Excel, InfoPath, Word czy Access danych, które pochodzą z wielu innych źródeł.Dzięki zastosowaniu XML-a możliwa staje się pełna integracja danych biznesowychw poszczególnych aplikacjach.

Warto zauważyć, że dzięki zastosowaniu XML-a poszczególne aplikacje pakietu Officemogą być wykorzystywane jako inteligentne klienty korporacyjnych systemów biu-rowych. Przykładowo, w takim scenariuszu, Word mógłby być używany do tworzeniadokumentów zamówień zgodnych z określonym schematem XML. Po utworzeniu ta-kiego zamówienia dane XML byłyby przekazywane do firmowego systemu księgowego.W rozdziale 9. omawiamy nieco uproszczoną wersję systemu wprowadzania zamówień,utworzonego na bazie inteligentnych dokumentów Worda.

Dokumenty inteligentne

Dokumenty inteligentne wykorzystują kod .NET do aktualizacji panelu zadań pakietuOffice tak, aby zawierał on odpowiednie elementy sterujące oraz informacje zależne odkontekstu bieżącego dokumentu. Mechanizm taki wykorzystuje odpowiednie sche-maty XML dołączone do dokumentów Worda czy też Excela, poprzez które .NET jestw stanie zebrać odpowiednie informacje o kontekście bieżącego dokumentu.

Dokumenty takie dostarczają deweloperom potężną strukturę do tworzenia doku-mentów zawierających pewne elementy inteligencji. Patrząc z perspektywy użyt-kownika, dokumenty inteligentne to nic innego jak „podrasowane” dokumenty Excela,

Page 12: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 25

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 25

Worda czy też programy InfoPath, które „wiedzą”, jakie informacje powinny zostaćdo nich wprowadzone oraz które zapewniają odpowiednie narzędzia (dostępne za-zwyczaj w postaci specjalnie przygotowanych formularzy, informacji pobranych z in-nych systemów zewnętrznych itp.) pozwalające na szybszy i łatwiejszy proces przy-gotowania ostatecznych, finalnych wersji dokumentów.

Formularze InfoPath

InfoPath jest nową aplikacją pakietu Office 2003 Professional. Jest to program ukie-runkowany na tworzenie rozbudowanych, dynamicznych formularzy, z których danesą zapisywane bezpośrednio do bazy danych lub też innego systemu zaplecza korpo-racyjnego (takich jak korporacyjne systemy finansowe, systemy CRM, systemy ob-sługi sprzedaży i marketingu itp.). InfoPath jest oparty całkowicie na XML, a jegoprzeznaczeniem jest tworzenie odpowiednich struktur XML z danymi; są one następ-nie przekazywane do usług Web Services, baz danych, serwerów SharePoint lub do-wolnych innych aplikacji, które potrafią obsługiwać dane XML. Jedną z najciekaw-szych cech programu InfoPath jest to, że aby mieć możliwość współpracy z usługamiWeb Services, bazami danych czy też serwerami SharePoint, użytkownik nie musitworzyć żadnego kodu. Wszystkie tego typu połączenia są obsługiwane poprzez od-powiednie okna dialogowe, które powodują, że przekazywanie dokumentów XMLutworzonych przez InfoPath do danej usługi Web Services nie stanowi już dłużej żad-nego problemu (patrz rozdział 5.).

Scenariusz przykładowy: Bravo CorpAplikacje opisywane w naszej książce są bardzo uniwersalne; postaramy się zilustrowaćich użyteczność i elastyczność pokazując, w jaki sposób mogą one pomóc fikcyjnejfirmie Bravo Corp w prowadzeniu działalności biznesowej, uproszczeniu procesówbiznesowych oraz zwiększeniu produktywności i efektywności jej pracowników.

Bravo Corp specjalizuje się w dostarczaniu towarów i usług związanych z organizacjąi zarządzaniem targów, wystaw i innych imprez masowych. Zdecydowana większośćzysków firmy jest generowana poprzez zarządzanie takimi imprezami w imieniu klien-tów (zazwyczaj są nimi duże organizacje branżowe i firmy, których nazwy możnaznaleźć w rankingu Fortune 500) oraz dostarczanie różnego rodzaju usług pomocni-czych dla wystawców. Zazwyczaj odbywa się to tak, że dana firma lub organizacjapodpisuje z Bravo Corp odpowiednią umowę o przygotowanie i prowadzenie danejimprezy, ponieważ sama nie posiada ani umiejętności, ani możliwości ani zasobów,niezbędnych do podjęcia próby samodzielnego poprowadzenia takiego przedsięwzięcia.Bravo Corp zajmuje się wszystkimi aspektami danego wydarzenia, włączając w toopracowanie spraw związanych z jego logistycznym zabezpieczeniem, przygotowy-waniem pokazów i innych materiałów, urządzeniem stoiska przed rozpoczęciem im-prezy, usunięciem stoiska po jej zakończeniu itd. Oczywiście lista świadczonych usługna tym się nie kończy, ale nawet taki niewielki jej fragment może nieco przybliżyćobraz dynamicznej natury biznesu prowadzonego przez Bravo Corp.

Page 13: Office 2003. Programowanie

26 Office 2003. Programowanie

26 S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc

W ciągu ostatnich dziesięciu lat firma Bravo Corp gwałtownie się rozwijała, ciąglerozszerzając zakres swojej działalności, co spowodowało ogromny wzrost zapotrze-bowania na nowe narzędzia informatyczne, które pozwoliłyby pracownikom firmy nalepszą komunikację z klientami oraz ogólny wzrost efektywności, zwłaszcza w zakre-sie codziennych obowiązków. W naszej książce opisujemy całą serię aplikacji zbu-dowanych na bazie pakietu Microsoft Office, które doskonale spełniają rosnące po-trzeby i wymagania firmy Bravo Corp.

Strategia biznesowa Bravo Corp

Zarząd firmy Bravo Corp postanowił utworzyć nowy zespół pracowników, PIE (ang.Productivity Improvement and Efficency). Zespół PIE celowo nie był zbyt liczny, copozwalało i nadal pozwala na podejmowanie decyzji bez konieczności angażowaniaczegoś w rodzaju komitetu zarządzającego. W PIE pracują ludzie z różnych działówfirmy. Zespół był odpowiedzialny za tworzenie strategii poszczególnych wydarzeńoraz projektowanie narzędzi niezbędnych do spełnienia najważniejszych wymagańposzczególnych działów. Właśnie takie plany były zawsze traktowane priorytetowo,co zresztą było wymuszone przez wzrost wartości świadczonych usług (a tak naprawdęstopę zwrotu z inwestycji).

Działając w duchu rozpoczęcia nowego projektu, zespół PIE postanowił przyjąćtakie podejście do opracowywania strategii biznesowych, które podkreślałoby i nieja-ko uwypuklało wymagania użytkowników biznesowych we wszystkich oddzia-łach firmy. Podstawowe założenia nowych strategii były następujące: do tej poryto użytkownicy biznesowi musieli się dostosowywać do wymagań i rozwiązań pro-ponowanych przez dział IT, a zatem tym razem zamiast kontynuować taki modeldziałania zadecydowano, że to kierownicy poszczególnych działów oraz personelusługowy będą mogli formułować wymagania i określać cele nowych strategii.Celem takiego postępowania było utworzenie optymalnego zestawu mechani-zmów i funkcjonalności, które będą w jak najlepszym stopniu spełniały wymaga-nia i oczekiwania klientów. Najlepszym sposobem na osiągnięcie założonego celubyło zezwolenie na podejmowanie najważniejszych decyzji tym, którzy najlepiejrozumieją strategie biznesowe firmy Bravo Corp. Dział IT oczywiście nadal od-grywał bardzo istotną rolę w dyskusjach nad określaniem priorytetów poszcze-gólnych wymagań, aczkolwiek teraz głównymi jego zadaniami jest dostarczaniewymaganych rozwiązań.

W skład zespołu wchodzi jeden, bardzo doświadczony menedżer z branży IT, któregozadaniem jest doradzanie członkom zespołu oraz wprowadzanie ich w meandry i za-wiłości bieżącej architektury systemów informatycznych Bravo Corp. Takie podejścieznacznie zredukowało nieco irytującą tendencję działu IT do torpedowania wielu do-brych rozwiązań, nawet zanim zostaną one dobrze, w pełni zrozumiane.

Page 14: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 27

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 27

Strategia rozwoju Bravo Corp

Jak zapewne zauważyłeś, Bravo Corp intensywnie wykorzystuje oprogramowanieMicrosoft Office, instalując wszystkie aplikacje wchodzące w skład pakietu MicrosoftOffice Professional Edition 2003 na laptopach wszystkich użytkowników (Outlook,Excel, Word, Access, InfoPath itd.).

Zespół zadecydował, że pakiet Office nadal będzie wykorzystywany jako interfejsużytkownika, czyli inaczej mówiąc, warstwa prezentacji. Jest to w pełni zrozumiaływybór, gdyż użytkownicy doskonale znają już ten pakiet i czują się pewnie, pracującz poszczególnymi aplikacjami wchodzącymi w skład pakietu Office. Zespół PIEskoncentrował swoje techniczne wysiłki na tym, aby w maksymalnym stopniu wyko-rzystywać poszczególne aplikacje pakietu Office. Zważywszy na doskonałe wsparcie,jakie daje pakiet Office dla języka XML, jak również możliwości wykorzystywaniaróżnych źródeł danych (bezpośrednio, poprzez usługi Web Services i inne), zespółPIE doszedł do wniosku, że pakiet Office doskonale będzie się nadawał do tego celu,dostarczając użytkownikowi wygodnego, znanego i bogatego interfejsu, który dodat-kowo będzie się charakteryzował odpowiednią elastycznością, umożliwiającą w raziepotrzeby łatwą rozbudowę i zmianę jego funkcjonalności.

A zatem na przykładzie firmy Bravo Corp postaramy się przedstawić Ci, w sposóbmaksymalnie praktyczny, sposoby implementacji odpowiednich technologii, wdraża-nia technik programowania oraz architektury systemowej. Pozwolą Ci one na sku-teczne rozwiązywanie problemów, na jakie możesz się natknąć, prowadząc rzeczywi-stą działalność biznesową.

Zalety biznesu

Jak to ma zazwyczaj miejsce w gwałtownie rozwijających się firmach, portfel za-mówień Bravo Corp stał się bardzo zróżnicowany. Przez długie lata Bravo Corpskupiała swoje wysiłki na realizacji zamówień od dużych klientów prowadzącychduże imprezy masowe (targi, wystawy itp.). Obecnie pod uwagę brane są równieżzamówienia od mniejszych klientów, którzy często chcą na danej wystawie miećstoisko prezentujące osiągnięcia swojej firmy i reklamujące dostarczane przez niątowary. Takie zróżnicowanie wielkości zamówień, jak również ogromna dywersy-fikacja klientów firmy ujawniła zapotrzebowanie na zestaw narzędzi informatycz-nych, które będą w stanie poprawić metody, jakimi Bravo Corp spełnia wymaganiaswoich klientów. W tabeli 1.1 przedstawiamy listę problemów, z jakimi Bravo Corpmusi się borykać, a także krótkie opisy aplikacji z naszej książki, które są w stanierozwiązać takie problemy.

Page 15: Office 2003. Programowanie

Roz

dział 1. ♦

Tw

orze

nie

aplik

acji

dla

paki

etu

Offi

ce p

rzy

użyc

iu ję

zyka

VB .NET

28

S:\

Syl

wia

\pd

f\O

ffic

e 2

003. P

rogr

amow

anie

\r0

1-0

6.d

oc

28

Tabe

la 1

.1.

Prob

lem

y fir

my

Brav

o C

orp

oraz

apl

ikac

je, j

akic

h m

ożna

użyć

w c

elu

ich

rozw

iąza

nia

Pro

blem

Opi

s pr

oble

mu

Opi

s ro

zwią

zani

aUży

te n

arzę

dzia

Roz

dział

Bra

k sp

ójne

go fo

rmat

upr

ezen

tacj

i uży

wan

ych

w d

zial

e sp

rzed

aży.

Zesp

oły

sprz

edaż

y i m

arke

tingu

twor

ząc

kole

jne

prez

enta

cje

dla

klie

ntów

mus

zą z

a każd

ym ra

zem

wyn

ajdy

wać

koł

o i t

wor

zyć

prez

enta

cję

od p

odst

aw.

Gen

erat

or p

reze

ntac

ji zo

stał

zbud

owan

y ta

k, a

by k

orzy

stać

z ze

staw

u za

twie

rdzo

nych

,st

anda

rdow

ych

szab

lonó

wpr

ezen

tacj

i, co

poz

wal

a na

auto

mat

yzac

ję p

roce

su tw

orze

nia

prez

enta

cji p

oprz

ez z

asto

sow

ania

łatw

ych

w uży

ciu

krea

toró

wpr

ezen

tacj

i.

Pow

erPo

int,

zarząd

zaln

e do

datk

iC

OM

add

-ins,

szab

lony

doku

men

tów

Pow

erPo

int o

parte

na V

BA

, SQ

L Se

rver

Roz

dział 2

.

Zby

t wie

le c

zasu

trze

bapośw

ięcać

na tw

orze

nie

częs

to uży

wan

ych

doku

men

tów

.

Prac

owni

cy d

ział

u sp

rzed

aży

i mar

ketin

gu sp

ędza

ją z

byt w

iele

czas

u na

twor

zeni

u do

kum

entó

wdl

a klie

ntów

(kon

trakt

y, o

ferty

itp.

),a

zbyt

mał

o cz

asu

— b

ezpośr

edni

oz k

lient

em. C

o go

rsza

, wie

le ta

kich

doku

men

tów

jest

pod

atny

chna

błę

dy p

opeł

nian

e po

dcza

sw

prow

adza

nia

dany

ch.

Gen

erat

or d

okum

entó

w z

ostał

zbud

owan

y ta

k, a

by n

a po

dsta

wie

stan

dard

owyc

h, z

atw

ierd

zony

chw

zorc

ów a

utom

atyc

znie

twor

zyć

odpo

wie

dnie

dok

umen

tyi w

staw

iać

do n

ich

w o

dpow

iedn

iem

iejs

ca d

ane

klie

nta.

Wor

d, O

utlo

ok, z

arzą

dzal

nedo

datk

i CO

M a

dd-in

s, SQ

L Se

rver

Roz

dział 3

.

Odp

owie

dzi n

a pr

ośby

klie

ntów

o in

form

acje

zajm

ują

zbyt

wie

le c

zasu

.

Wie

le p

ytań

zad

awan

ych

prze

zkl

ient

ów m

ożna

zak

wal

ifiko

wać

do k

ateg

orii

„naj

częś

ciej

zada

wan

epy

tani

a”. W

prz

eszł

ości

prac

owni

cy B

ravo

Cor

p m

usie

liza

każ

dym

raze

m in

dyw

idua

lnie

odpo

wia

dać

każd

emu

klie

ntow

ina

taki

e py

tani

a.

Gen

erat

or sz

ablo

nów

wia

dom

ości

pocz

tow

ych

jest

nar

zędz

iem

opar

tym

o a

plik

ację

Out

look

,kt

óra

pozw

ala

prac

owni

kom

Bra

vo C

orp

na tw

orze

nie

szab

lonó

w w

iado

mo ś

cipo

czto

wyc

h z

odpo

wie

dnią

,pr

edef

inio

waną

zaw

artośc

ią.

Szab

lony

taki

e m

ogą

być

następ

nie

wyk

orzy

styw

ane

do sz

ybki

ego

twor

zeni

a„g

otow

ych”

wia

dom

ości

.

Out

look

, wyr

ażen

ia re

gula

rne,

zarząd

zaln

e do

datk

i CO

M a

dd-in

sR

ozdz

iał 4

.

28 Office 2003. Programowanie

Page 16: Office 2003. Programowanie

Roz

dział 1. ♦

Tw

orze

nie

aplik

acji

dla

paki

etu

Offi

ce p

rzy

użyc

iu ję

zyka

VB .NET

29

S:\

Syl

wia

\pd

f\O

ffic

e 2

003. P

rogr

amow

anie

\r0

1-0

6.d

oc

29

Tabe

la 1

.1.

Prob

lem

y fir

my

Brav

o C

orp

oraz

apl

ikac

je, j

akic

h m

ożna

użyć

w c

elu

ich

rozw

iąza

nia

— c

iąg

dals

zy

Pro

blem

Opi

s pr

oble

mu

Opi

s ro

zwią

zani

aUży

te n

arzę

dzia

Roz

dział

Słab

e m

etod

yro

zwią

zyw

ania

pro

blem

ówz

dostęp

nośc

ią u

sług

.

Prob

lem

y w

dzi

ale

obsł

ugi k

lient

asą

zm

orą

każd

ej fi

rmy.

W B

ravo

Cor

p br

akow

ało

do te

j por

yna

rzęd

zia,

któ

re p

ozw

alał

oby

na k

oord

ynac

ję w

ysiłk

ówpr

acow

nikó

w d

ział

u ob

sług

ikl

ient

a w

cel

u ba

rdzi

ej sp

raw

nego

rozw

iązy

wan

ia p

robl

emów

z do

stęp

nośc

ią u

sług

.

Wdr

ożon

e na

rzęd

zie

pozw

ala

na le

psze

śled

zeni

e w

szys

tkic

hzd

arzeń

zwią

zany

ch z

iden

tyfik

acją

i roz

wią

zyw

anie

m p

robl

emów

.

Info

Path

, usł

ugi W

eb S

ervi

ces,

Acc

ess

Roz

dział 5

.

Bra

k st

anda

rdow

ego

proc

esu

opra

cow

ywan

iabu

dżet

u.

Proc

es o

prac

owyw

ania

budże

tuw

pos

zcze

góln

ych

działa

chfir

my

jest

nie

spój

ny i

twor

zydo

datk

owe

prob

lem

y po

dcza

stw

orze

nia

skon

solid

owan

ego

budż

etu

całe

j firm

y.

Kon

solid

ator

budże

tu je

stna

rzęd

ziem

poz

wal

ając

ym n

atw

orze

nie

spój

nych

budże

tów

w p

oszc

zegó

lnyc

h dz

iała

ch c

ałej

firm

y. D

odat

kow

o na

rzęd

zie

topo

zwal

a na

łatw

e w

ygen

erow

anie

skon

solid

owan

ego

budż

etu

całe

jfir

my,

opa

rtego

na

odpo

wie

dnic

hda

nych

z p

oszc

zegó

lnyc

h dz

iałó

w.

Exce

l, V

BA

Roz

dział 6

.

Bra

k sz

czeg

ółow

ych

rapo

rtów

cza

su p

racy

.B

ravo

Cor

p ni

e po

siad

a ża

dnyc

hna

rzęd

zi, k

tóre

poz

wal

ałyb

y na

śled

zeni

e i a

nalizę

dany

chzw

iąza

nych

z c

zase

m, j

aki

prac

owni

cy p

ośw

ięca

ją n

aw

ykon

anie

pos

zcze

góln

ych

zadań.

W re

zulta

cie

firm

a bo

ryka

się

z pr

oble

mam

i z e

fekt

ywny

mza

rząd

zani

em k

oszt

ami p

racy

.

Syst

em K

arta

Pra

cy to

nar

zędz

ieza

pew

niając

e uż

ytko

wni

kom

Bra

vo C

orp ła

twy

w uży

ciu

inte

rfej

s um

o żliw

iają

cy sz

ybki

ei s

praw

ne w

prow

adze

nie

do sy

stem

u ro

zlic

zeń

odpo

wie

dnic

h in

form

acji

o cz

asie

pra

cy.

Exce

l, V

isua

l Stu

dio

Tool

s for

Off

ice,

usł

ugi W

eb S

ervi

ces,

Acc

ess

Roz

dział 7

.

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 29

Page 17: Office 2003. Programowanie

30

Offic

e 2003. Pro

gra

mow

anie

30

S:\

Syl

wia

\pd

f\O

ffic

e 2

003. P

rogr

amow

anie

\r0

1-0

6.d

oc

Tabe

la 1

.1.

Prob

lem

y fir

my

Brav

o C

orp

oraz

apl

ikac

je, j

akic

h m

ożna

użyć

w c

elu

ich

rozw

iąza

nia

— c

iąg

dals

zy

Pro

blem

Opi

s pr

oble

mu

Opi

s ro

zwią

zani

aUży

te n

arzę

dzia

Roz

dział

Bra

k do

stęp

u do

dan

ych

na te

mat

klie

ntów

,pr

zech

owyw

anyc

hw

inny

ch sy

stem

ach

biur

owyc

h.

Bra

vo C

orp

posi

ada

kilk

asy

stem

ów o

zas

ięgu

korp

orac

yjny

m (E

RP,

CR

M it

p.),

w k

tóry

ch p

rzec

how

ywan

e są

różn

ego

rodz

aju

info

rmac

jeo

klie

ntac

h. D

ane

taki

e ni

eza

wsz

e są

bez

pośr

edni

o do

stępn

edl

a uż

ytko

wni

ka; n

ierz

adko

wym

agan

e je

st u

ruch

omie

nie

doda

tkow

ych

aplik

acji.

Tag

inte

ligen

tny

Acco

unt D

etai

lsje

st n

arzę

dzie

m, k

tóre

pob

iera

info

rmac

je o

dan

ym k

lienc

iez

inny

ch sy

stem

ów b

iuro

wyc

hi u

dostęp

nia

je uży

tkow

niko

wi

w d

okum

enci

e pr

ogra

mu

Wor

d(d

zięk

i tem

u uż

ytko

wni

k m

ana

tych

mia

stow

y do

stęp

do

taki

chda

nych

bez

pośr

edni

o po

dcza

sed

ytow

ania

dok

umen

tu).

Tagi

inte

ligen

tne,

Wor

d,In

form

atio

n B

ridge

Fra

mew

ork

Roz

dział 8

.

Bra

k w

ydaj

nego

syst

emu

zam

ówień

targ

owyc

hi z

arzą

dzan

ia n

imi

Bra

vo C

orp

ofer

uje

podc

zas

targ

ów, w

ysta

w it

p. sw

oim

klie

ntom

szer

oki z

akre

s róż

nego

rodz

aju

prod

uktó

w, o

d bi

urek

i krz

eseł

pop

rzez

lam

py, d

ywan

yaż

do

elem

entó

w o

kabl

owan

iasi

ecio

weg

o i k

ompu

teró

w.

Bra

vo C

orp

używ

ało

do te

j por

ypa

pier

owyc

h fo

rmul

arzy

, na

któr

ych

klie

nci u

mie

szcz

ali s

woj

eza

mów

ieni

a, a

le z

e w

zglę

du n

asz

erok

i zak

res p

rodu

któw

taki

spos

ób sk

łada

nia

zam

ówień

był

częs

to p

owod

em ir

ytując

ych

błęd

ów i

pom

yłek

.

Syst

em z

amów

ień

targ

owyc

hzo

stał

tak

zapr

ojek

tow

any,

aby

popr

awić

i za

utom

atyz

ować

proc

es sk

łada

nia

zam

ówień.

Dok

umen

ty in

telig

entn

e, W

ord,

XM

L, u

sług

i Web

Ser

vice

s, SQ

LSe

rver

Roz

dział 9

.

30 Office 2003. Programowanie

Page 18: Office 2003. Programowanie

Rozdział 1. ♦ Tworzenie aplikacji dla pakietu Office przy użyciu języka VB .NET 31

S:\ Sylwia\pdf\Office 2003. Programowanie\r01-06.doc 31

PodsumowanieOffice 2003 jest czymś więcej niż tylko pakietem aplikacji rezydującym na komputerzetego czy innego użytkownika. W rzeczywistości od wielu lat projektanci i programi-ści zajmują się tworzeniem aplikacji na platformę Office, zwiększających produktyw-ność użytkowników poprzez uproszczenie procesów biznesowych, szybkie dostarczaniedanych z systemów zewnętrznych i wiele innych. Począwszy od wersji 2003, pakietOffice, dzięki swoim nowym mechanizmom i zaimplementowanym technologiom, jestw stanie lepiej niż kiedykolwiek obsługiwać aplikacje dedykowane różnego rodzajuprocesom biznesowym.

Zapoznając się z kolejnymi rozdziałami nauczysz się, w jaki sposób w firmie BravoCorp zostały zaimplementowane nowe strategie biznesowe poprzez samodzielne bu-dowanie omawianych przez nas aplikacji. W każdym rozdziale znajdziesz szczegółoweomówienie danej aplikacji — od etapu projektowania aż do wdrożenia.