PDA

Vollständige Version anzeigen : Exportdatei für mehrere Benutzer, mit verschieden Inhalten


Micberlin
02.10.2001, 08:33
Hallo !

Ich habe eine Datenbank erstellt die eine "Verknüpfung" zu Word hat. Es werden daten in eine Export-Tabelle kopiert, Word ausgeführt und ein Makro gestartet das auf die Exporttabelle zúgreift! Soweit sogut das klappt auch prima! Nun das Problem es kann immer nur einer einen Brief schreiben da die Tabelle nur einmal existiert ! Wie kann man das erreichen das mehrer einen Brief schreiben können ohne für jeden eine einzelne Exporttabelle anlegen zu müssen? (es sind z.Z. schon 6 Benutzert, steigend!)

Als Anlage die Ereignisprozedur aus meinem Formular :

Private Sub S_Brief_Click()

Dim ab1 As Workspace
Dim db1 As Database
Dim adde_ds As Recordset
Dim x As Variant


On Error GoTo Err_Brief_Click


Rem 1. Tabelle Adressen_Export öffnen.
Set ab1 = DBEngine.Workspaces(0)
Set db1 = ab1.Databases(0)
Set adde_ds = db1.OpenRecordset("Adress_Export", DB_OPEN_TABLE, DB_DENYREAD)

Rem 2. alle Datensätze darin löschen (wahrsch. per Loop)
While Not adde_ds.EOF
adde_ds.Delete
adde_ds.MoveNext
Wend

Rem 3. aktuellen DS hineinkopieren
adde_ds.AddNew
adde_ds("Adreßkartei-Nr") = [Adreßkartei-Nr]
adde_ds("Name der Firma") = [Name der Firma]
adde_ds("Straße") = [Straße]
adde_ds("Postleitzahl") = [Postleitzahl]
adde_ds("Ort") = [Ort]
adde_ds("Telefon") = [Telefon]
adde_ds("Telefax") = [Telefax]
adde_ds("Anrede") = [U-Partner].Form![Anrede]
adde_ds("Name") = [U-Partner].Form![Name]
adde_ds("Tel-Durch") = [U-Partner].Form![Tel-Durch]
adde_ds.Update

Rem 4. Word starten mit Makro zum Serienbrief drucken
x = Shell("c:\MS Office97\Office\WINWORD.EXE /mSBrief", 1)

Exit_Brief_Click:
Exit Sub

Err_Brief_Click:
MsgBox Error$
Resume Exit_Brief_Click

End Sub

Micberlin
04.10.2001, 08:20
Kann mir keiner helfen ?? schnief

Anne Berg
04.10.2001, 08:59
Hallo schnief,

ich nehme mal an, du hast die Anwendung für den gemeinsamen Zugriff auf den Server gelegt...
Das Word-Dokument ebenfalls???

Ich schlage vor, die Datenbank zu trennen: in Daten (=Tabellen) und Funktionen (=Formulare, Module, etc. und temp. Objekte) ==> Frontend/Backend.
Das Frontend lokal installieren (+ Zubehör wie Word-Docs, etc.), das Backend auf dem Server. Dann hat jeder Benutzer seine eigenen (temp.) Datenauszüge.

Ich fürchte, anders geht es nicht.

hth

Micberlin
05.10.2001, 09:58
Hallo Anne!

Ja die Datenbank liegt auf dem Server ! Word sowie das Makro und die Dokuvorlage liegen lokal!

Die sache mit dem Trennen hört sich gut an ! Wie geht das genau und muß ich dann immer bei einer Änderung alle Formulare ändern ?? auf allen 6 Arbeitsplätzen ?? Das wäre noch gut zu wissen!

Danke schonmal

MicBerlin

Anne Berg
05.10.2001, 12:55
Hallo MicBerlin,

so weit ich weiß gibt es dafür sogar einen Assistenten (unter AddIns), habe das aber bislang immer selbst gemacht, bzw. von vornherein so angelegt.

Der Vorteil ist, daß du unabhängig von den Daten - könnte ja auch jeder Benutzer seine eigene Tabellen-Datenbank haben - die eigentliche Anwendung bei Erweiterung/Änderung problemlos austauschen kannst.
Um dies auf jedem Arbeitsplatz 'telepathisch' durchführen zu können, kann man die Update-mdb auf den Server packen und eine Routine schreiben, die den Versionsvergleich und das Austauschen übernimmt.

Bei Bedarf kann ich dir dazu Beispiele liefern, aber erst nach den Ferien. :(
(Kannst dich auch per email melden.)

hth