Programm-Doku Man,Reg
Inhaltsverzeichnis
Programm-Dokumentation ProMan / ProReg
An dieser Stelle wird bei Gelegenheit beschrieben, wie Teile der Programme konstruiert wurden
Word-Aufgaben
Word-Aufgaben sind Leistungen, die in Word von ProMan/ProReg.dot auf Anforderung von ProMan/ProReg.mde (also aus Access) erbracht werden.
Dies sind die Erstellung von Dokumenten, die mit Daten aus der DB versorgt werden wie Pendenzlisten, Geschäftssammlungen und Vergabelisten
Pendenzlisten
Im Code der Formulare fPendenzen und fAktPendenzen werden in der Prozedur cmdPendListe_Click bzw. cmdWord_Click die gefragen Pendenzen in die DB-Tabelle tPendListe gespeichert. Mit Call WordAufgabe("Pendenzliste") wird die Erstellung der Liste angefordert.
Geschäftssammlung
Im Code des Formulars fGeschSammlung werden in der Prozedur cmdWordListe_Click die ausgewählten Geschäfte in die DB-Tabelle tGeschSammlung2 gespeichert. Mit Call WordAufgabe("Geschäftssammlung") wird die Erstellung der Liste angefordert.
Die Prozedur WordAufgabe
Sub WordAufgabe(sAufgabe As String) im Modul Aufrufe richtet Word ein und erstellt auf der Basis der Standardvorlage ProMan/ProReg.dot ein neues Dokument und ruft im mit diesem Dokument verbundenen ProMan/ProReg.dot über Run Prozedurname die der Aufgabe entsprechende Prozedur auf.
Wichtig ist, dass dabei keine speziellen Dokumentvorlagen mehr nötig sind.
Event-Handler beim Aktivieren des Protokolls (damit immer die Kdo-Zeile "isys" erscheint)
Neuer Klassenmodul clsWordApp mit Inhalt:
Public WithEvents appWord As Word.Application
Private Sub appWord_WindowActivate(ByVal Doc As Document, ByVal Wn As Window)
Call Aktiviert
End Sub
Im Modul Funktionen:
Dim objClass As New clsWordApp
Sub Register_EventHandler()
Set objClass.appWord = Word.Application
End Sub Sub Aktiviert()
If ActiveDocument.Name Like fProt("") & "*" Then
Call Kommandozeile("isys")
End If
End Sub
In der Open-Prozedur
Private Sub Document_New()
Application.CommandBars("isys").Enabled = True
Register_EventHandler
Call Aufgabe
ActiveDocument.ActiveWindow.View.Type = wdPageView
End Sub
Private Sub Document_Open()
Register_EventHandler
Call Kommandozeile("isys")
End Sub