PDA

Vollständige Version anzeigen : Jean Pierres Access Text Manager


Sascha Trowitzsch
25.03.2006, 12:42
<table width="95%" border="0" cellpadding="4" cellspacing="1" class="tabletext"> <tr> <td width="13%" valign=top class="tablehead2"> <p class="tabletext">Name des Produkts:</p> </td> <td width="30%" valign=top class="tablehead3"> <p class="tabletext"><strong>Access Text Manager</strong></p> </td> </tr> <tr> <td valign=top class="tabletext2">(Evtl. Kommerzielle) Beta-Version?</td> <td valign=top class="tabletext3">Nein</td> </tr> <tr> <td valign=top class="tabletext2">Art des Produkts:<br> (Anwendung, AddIn, Tool o.&auml;.)</td> <td valign=top class="tabletext3">Entwickler-Add-In</td> </tr> <tr> <td valign=top class="tabletext2">Programmautor:</td> <td valign=top class="tabletext3">Jean Pierre (JPA) (http://ms-office-forum.net/forum/member.php?u=16889) </td> </tr> <tr> <td valign=top class="tabletext2">Aktueller Versionsstand:</td> <td valign=top class="tabletext3">1.50</td> </tr> <tr> <td valign=top class="tabletext2">Downloadgr&ouml;&szlig;e:</td> <td valign=top class="tabletext3">ca. 850 KByte</td> </tr> <tr> <td valign=top class="tabletext2">Vorgesehen(e) Betriebssystem(e):</td> <td valign=top class="tabletext3">Ab Windows NT</td> </tr> <tr> <td valign=top class="tabletext2">Vorgesehene Office-Version(en):</td> <td valign=top class="tabletext3">Access2000 und h&ouml;her</td> </tr> <tr> <td valign=top class="tabletext2">Andere Systemvoraussetzungen:</td> <td valign=top class="tabletext3">Keine</td> </tr> <tr> <td valign=top class="tabletext2">Installationshinweise:<br> (Art des Setups etc.)</td> <td valign=top class="tabletext3">Setup nicht n&ouml;tig: Kopieren der Add-In-Datei acwzDUP.mda in ein Verzeichnis beliebiger Wahl (oder auch in das Standard-AddIn-Verzeichnis der jeweiligen Office-Installation). Oder einfach mit Doppelklick starten und Anweisungen folgen. </td> </tr> <tr> <td valign=top class="tabletext2">Zielgruppe:</td> <td valign=top class="tabletext3">Access-Datenbankentwickler</td> </tr> <tr> <td valign=top class="tabletext2">Enth&auml;lt das Produkt den Quellcode?</td> <td valign=top class="tabletext3">Nein (MDE);</td> </tr> <tr> <td valign=top class="tabletext2">Mit welchem Entwicklungswerkzeug wurde es genau erstellt?<br> (Mit Versionsangabe)</td> <td valign=top class="tabletext3">MS Access 2000</td> </tr> <tr> <td valign=top class="tabletext2">Webseite:</td> <td valign=top class="tabletext3">-</td> </tr> <tr> <td valign=top class="tabletext2">Download unter:</td> <td valign=top class="tabletext3"><a href="http://www.abiss.de/downloads/public/atm.zip">http://www.abiss.de/downloads/public/atm.zip</a></td> </tr> <tr> <td valign=top class="tabletext2">Bisher getestete Konfigurationen:</td> <td valign=top class="tabletext3">- Access 2000, 2002 (XP)</td> </tr> <tr> <td valign=top class="tabletext2">Kurzbeschreibung:</td> <td valign=top class="tabletext3"><p>Tool zum <strong>Verwalten von Textausgaben</strong> in/aus VBA (Access) und Formularen/Berichten. Mehrsprachig. (Siehe readme.txt im Zip-Archiv)</p> </td> </tr> <tr> <td valign=top class="tabletext2">Testziel: <br> In welcher Hinsicht und unter welchen Bedingungen soll das Produkt getestet werden?</td> <td valign=top class="tabletext3">Bitte auf Qualit&auml;t beurteilen.<br> Auf Bugs testen.<br> Weitere Anregungen erw&uuml;nscht.</td> </tr></table>

Sascha Trowitzsch
25.03.2006, 12:48
Hinweis: Demo-Datenbank im Download ist enthalten.
(Jetzt weiß ich, wozu du die mso-Konstanten in Tabellenform benötigt hast... ;) )

Gruß, Sascha

J_Eilers
27.03.2006, 11:50
Hi,

gäbe es vielleicht die Möglichkeit das Tool auch für A2K zur Verfügung zu stellen?

JPA
27.03.2006, 13:08
Ja, kann gerne auch das Tool für die Verionen:
A2000
A2003
A97
zur Verfügungstellen, wenn interesse besteht!

Die example.mdb (enthalten in der zip-Datei) ist übrigens in Access 2000 Format.

Gruß
JPA

J_Eilers
27.03.2006, 13:10
Nur die MDE leider nicht ;) Und da ich hier nur A2K habe, kann ich es dann schlecht auf Bugs hin testen. Wenn es in 97 geht, dann sollte man doch damit anfangen, denn das sollten ja alle nutzen können.

Papillon00
27.03.2006, 20:51
Hallo Jean-Pierre

Sehr rafinierte Lösung - mir gefällt vor allem die Tatsache wonach ein Sprachwechsel aus einem beliebigen Formular möglich ist. Als Laier muss ich es jedoch zugestanden, aber die Tabelle mit allen Text-Bausteine habe ich nicht gefunden.... ;-(

Gruss

Papillon00

JPA
28.03.2006, 01:32
Auf vielfachen Wunsch habe ich nun mich dafür entschieden das Tool auch im Format Access 2000 zur Verfügung zu stellen.
Also ab sofort liegt im Testzentrum der Access Text manager im Format Access 2000 vor.
Das Tool läuft also jetzt unter 2000 und 2002.
Unter 2003 habe ich es noch nicht getestet (habe 2003 auf meinen Rechner noch nicht drauf bekommen:-)

Die Konvertierung in Access 97 würde viel Arbeit mit sich bringe, warte von daher noch ab, ob wirklich Bedarf besteht.

@Sascha
Wie kann ich die Rubrik "Mit welchem Entwicklungswerkzeug wurde es genau erstellt?" ändern?

Gruß
JPA

J_Eilers
28.03.2006, 11:35
Also mein System W2K, A2K, ich habe erstmal nur deine Example.mdb ausprobiert:

1) Ich muss den Verweis neu setzen.
2) Ich bekam andauernd den Hinweis, dass das Formular frmOptions nicht gefunden werden kann.

Public Function actLanguage() As Long
actLanguage = 1
On Error Resume Next
actLanguage = Forms![frmOptions]![Language]
End Function

Nun gut dacht ich mir, wenns nicht geöffnet ist, kanns auch nicht gefunden werden. Also einfach mal eine 1 reingeschrieben. Dann gehts und jetzt kann ich auch wieder den Originalcode verwenden. Vielleicht wäre es hier sinnvoller zu schauen, ob das Formular geöffnet ist und der Wert nicht Null ist und es entsprechend zu handhaben (so wie du es dir vorstellst).

3) Wenn ich nun aber die Sprache ändern will und auf Ok oder Übernehmen gehe, kommt Fehler 2455 (Unzulässiger Verweis auf Eigenschaft eines Forms/Reports) in dieser Funktion:

Private Sub Labeling(obj As Object, Language As Byte, Optional subForm As Boolean)
Dim rs As Recordset, tmp As String, tmpOBJ As Object
If subForm Then
On Error Resume Next
obj.INI
For Each tmpOBJ In obj.Controls
If TypeName(tmpOBJ) = "SubForm" Then Labeling tmpOBJ.Form, Language, True
Next
End If
On Error GoTo errHandling
Set rs = CodeDb.OpenRecordset("SELECT sysTextunitObject.*, sysText.Wording, sysTextunit.LanguageID FROM sysText RIGHT JOIN (sysTextunit RIGHT JOIN sysTextunitObject ON sysTextunit.ID = sysTextunitObject.TextunitID) ON sysText.ID = sysTextunit.TextID WHERE Not ObjecttypeID=6 AND (sysTextunit.LanguageID=" & Language & " OR sysTextunit.LanguageID Is Null) AND Formularname = """ & obj.Name & """", dbOpenForwardOnly)
Do Until rs.EOF
If rs("ObjecttypeID") < 100 Then
Set tmpOBJ = obj
Else
Set tmpOBJ = obj.Controls(rs("Objectname"))
End If
tmp = rs("Prefix") & rs("Wording") & rs("Suffix") & ""
If IsNull(rs("textunitID")) Then
If tmp = "" And Not tmpOBJ.Properties(rs("prpName")) = "" Then tmp = "***" & tmpOBJ.Properties(rs("prpName"))
Else
If IsNull(rs("Wording")) And Not tmpOBJ.Properties(rs("prpName")) = "" Then
tmp = "***" & tmpOBJ.Properties(rs("prpName"))
End If
End If
tmpOBJ.Properties(rs("prpName")) = tmp
NextItem:
rs.MoveNext
Loop
Leave:
rs.Close
Set rs = Nothing
Exit Sub

errHandling:
If Err.Number = 2455 Or Err.Number = 2465 Or Err.Number = 2485 Or Err.Number = 7794 Or Err.Number = 438 Then Resume NextItem
Beep
MsgBox Err.Description
Resume Leave
End Sub

Die Änderung wird aber übernommen. Man kommt aber nur noch über Abbrechen aus dem Formular und dann gibts die Fehlermeldung, dass die Aktion Close abgebrochen wurde.

Mal sehen, was ich noch so finde ;)

JPA
28.03.2006, 11:57
Grundsätzlich:
Also damit die Example.mdb angewandt werden kann, wird kein Verweis auf das Tool benötigt, da es nicht angezogen wird.
Das Tool, also der Verweis wird nur dann Benötigt wenn man das Tool anwenden möchte, um die Text-Tabellen zu pflegen.

Zu den Fehlermeldungen: Wahrscheinlich war ich mit der Version unter 2000 zu voreilig, denn unter XP gibs diese nicht. Ich werde mir dies genauer anschauen.

Danke für dein Feedback.
Gruß
JPA

J_Eilers
28.03.2006, 13:57
Setze ich den Verweis nicht, bekomme ich die Fehlermeldung, dass eine Funktion aufgerufen werden soll, die Access nicht findet.

JPA
29.03.2006, 09:38
@Jan
Du erhälst die Fehlermeldungen weil du in deinem VBA-Editor unter Extras/Optionen/Allgemein/Unterbrechung bei Fehlern "Bei jedem Fehler" ausgewählt hast. Dies ist generel ungüstig, schaue mal hier rein: http://www.fmsinc.com/tpapers/vbacode/Debug.asp

Ich habe den Code jetzt so geändert, daß diese Einstellung autmatisch geändert wird, daher müsste es jetzt auch bei dir laufen.

Setze ich den Verweis nicht, bekomme ich die Fehlermeldung, dass eine Funktion aufgerufen werden soll, die Access nicht findet.
Beim Berichten einer Fehlmeldung ist es für mich hilfreich mitzuteilen wann/bei welcher Aktion der Fehler auftritt, danke.
Ich vermute es passiert wenn du in der example.mdb-Datei auf das ATM-Symbol klickst. Das ist normal.
Der Verweis auf die atm.mde muss manuell gesetzt werden, um das Tool benutzen zu können.
Das Tool wird NUR dann benötigt, wenn du deine Texte/Textmeldungen pflegen willst.
Für die Laufzeit deines Projektes wird das Tool NICHT benötigt. Also bei weitergabe des Projektes (installation beim Kunden) brauchst du nicht das Tool mitzuliefern und der Verweis SOLLTE wieder entfernt werden.

J_Eilers
29.03.2006, 11:43
Wieder was ddazugelernt. Mir war das so nicht klar. :)

Debus
30.03.2006, 14:02
Eine sehr gute Lösung, werde in Zukunft damit arbeiten!
Das tool läuft bei mir prima auf Access 2000 und 2002.
Verbesserungsvorschlag:
Es wäre sinnvoll pro Sprache nicht nur eine Office-Sprache zuordnen zu können, sondern mehrere, da Office z.B. zwischen verschiednen Engl.Sprachen unterscheidet.

JPA
31.03.2006, 09:13
Hallo,

guter Punkt von Holger Debus, habe dies gleich eingebaut.
Es können jetzt mehrer Office-Sprachen zur einer Sprache vom Textmanager zugeordnet werden. Danke für den guten Hinweis!

Das Tool läuft jetzt auch unter Office 2003.
Wenn ein paar von euch dies noch mal testen könnten wäre prima, danke!


Gruß
JPA

peppi
31.03.2006, 12:45
Hallo JPA,

sicherlich kriege ich jetzt ob meiner Dummheit gleich eins auf die Mütze :grins: , aber mir ist es nicht gelungen, Dein Tool in eine Access2003-DB zu implementieren - was ganz bestimmt nicht an Dir liegt, sondern an mir...

Meine Vorgehensweise:
Meine DB geöffnet, in den vba-Editor gegangen, Deine mde als Verweis eingebunden, DB wieder geschlossen, neu geöffnet... Und nun finde ich nirgendwo den Aufruf (wie z.B. das Symbol in der Example.mdb), um den Texteditor starten zu können... Kannst Du mir bitte mal auf die Sprünge helfen, wo mein Fehler liegt? Danke...

JPA
31.03.2006, 13:14
Hallo Liebe Peppi,

du hast alles richtig gemacht (brauchst gar nicht die mdb zu schließen nach dem setzen des verweis).
Das ATM-Symbol gibt es nur in der example-Datei.

In deiner eigenen Datei startest du den Textmanager, indem du im vba-Editor ins Direktfenster gehst und die Funktion
Textmanager
tippst und mit return bestätigt. Das wars schon.

Praktischer ist, dir ein eigenes Symbol einzurichten mit der EIgenschaft 'Bei AKtion' auf '=Textmanager()' zu setzen.

Gruß
Jean Pierre

peppi
31.03.2006, 13:38
Hallo Jean Pierre,

sooo einfach... Da bestätigt es sich doch mal wieder, daß ich oftmals viel zu kompliziert denke...

Jetzt zu meinen Beobachtungen mit 2003:
Der Aufruf klappte problemlos.
Mir wurden in einer MsgBox die Tabellen genannt, die angelegt werden und ich wurde gefragt, ob ich diese anlegen (lassen) möchte, was ich mit JA bestätigt habe.
Dann erschien die erste Fehlermeldung: "Fehler beim Zugriff auf Pfad/Datei" - nach Klick auf OK kam
die nächste Fehlermeldung: "Nicht erkennbares DB-Format LW:\Pfad\70554750.mdb"
Das Formular mit der Schaltfläche [Text jetzt einlesen] (oder so ähnlich) war aktiv und nach Klick auf diese Schaltfläche wurden alle Texte eingelesen.

Auch der Aufruf im Form_Load-Ereignis klappte - ich weiß nicht, warum diese Fehlermeldungen kamen, denn sie haben offensichtlich Dein Programm nicht daran gehindert, fehlerfrei zu laufen :grins: ...

Sobald mir noch etwas auffällt, werde ich es hier posten.

Schönes Wochenende...

JPA
31.03.2006, 15:59
Hallo Peppi,

die Fehlermeldung "Fehler beim Zugriff auf Pfad/Datei" sagt mir das er keine Datei anlegen konnte (es wird kurzfristig eine 128KB tempdatei angelegt).
Vielleicht Berechtigungseinschränkung in deinem Ordner?
Die Fehlermeldung "Nicht erkennbares DB-Format LW:\Pfad\70554750.mdb" ist dann ein folge Fehler.
Mich würde interessieren ob das Modul 'mduATM' in deiner mdb angelegt wurde?

Um diesen Fehler zukünftig auszuschließen werde ich wohl über's windows-Tempverz gehen..., also danke für dein Feedback.

Dir auch ein schönes WE!

peppi
31.03.2006, 22:49
Hallo Jean Pierre,

die DB wurde von einem verbundenen Netzlaufwerk aus geöffnet, auf dem ich (als Administator angemeldet) volle Schreib-/Leserechte habe...
Nein, das Modul "mduATM" wurde in meiner DB nicht angelegt... - was bedeutet das jetzt?

JPA
31.03.2006, 23:07
@peppi
Nun wenn du deine Formulare füllen lassen möchtest mit den Texten die zuvor ausgelesen wurden, dann benötigst du die fkt
Private Sub Form_Load()
objLabeling Me
End sub
wie in der info-datei beschrieben.
Diese fkt wird mitgeliefert über das modul mduATM.
Also das anlegen dieses Moduls hat offensichtlich nicht geklappt bei dir.
Versuche es bitte mal mit einer anderen Datei. Wenn diesmal nicht die Fehlermeldung "Fehler beim Zugriff auf Pfad/Datei" erhälst müsste es klappen.
Bisher weiß ich nicht warum du diese Fehlermdlung erhalten hast, ich habe es mit der 2003-Version intensiv noch mal getestet; läuft sauber durch. Hmm??!

Guten Nacht
JPA

JPA
04.04.2006, 11:34
Hallo,

eine neue Version liegt vor, folgendes wurde umgesetzt:
- Beim einrichten der Text-Tabellen wird nun das Windows-Tempverz. verwendet (wegen Fehlermeldung von Peppi)
- Beim einrichten der Text-Tabellen können jetzt auch die Text-Tabellen von bestehenden Projekten übernommen werden. Euere bisher erstellten Texte können somit in den folge Projekten weiterbenutzt werden!
Selbstverständlich lässt sich auch über fremde Arbeitsgruppen (mit Benutzer und Kennwort) auf die Tabellen zugreifen ;-)

@Peppi
Wäre schön wenn du den Vorgang noch mal ausprobierst, um festzustellen ob der bekannte Fehler bei dir noch auftritt, danke!

Gruß
JPA

JPA
21.04.2006, 15:23
Hallo,

die erste offiziele Version 1.00 liegt nun vor.
Ich bedanke mich ganz herzlich an alle Tester, und als kleines Dankeschön bekommt ihr von mir einen Aktivierungscode um die Vollversion aktivieren zu können.
Dazu sendet ihr mir einfach bitte euern Vor- und Nachname zu, danke.

Gruß
JPA

a0053
25.04.2006, 14:55
Der ATM gefällt mir gut, folgende Anregung:
Im mduATM werden DAO-Objekte benutzt. Die sollten aber mit vorangestelltem DAO. deklariert werden - sonst hakt der Kompiler falls der Verweis auf DAO nach ADO kommt.

JPA
19.04.2007, 09:04
Hallo,

eine neue Version 1.50 liegt vor, folgendes wurde umgesetzt:
- Der ATM Version 1.50 ist jetzt ein Add-In (Es wird in vba kein Verweis auf eine mde-Datei mehr benötigt)
- Verweis auf DAO ist nicht mehr erfoderlich (Kein Konflikt mehr mit ADO)
- Die neue Version ist voll kompatible mit den vorherigen Versionen

Hinweis zur Installation:
Um dieses Add-In Tool nutzen zu können, muss es zunächst in MS Access Installiert werden.
Anschließend können Sie es direkt in Ihrer Datenbank aufrufen. Gehen Sie dazu wie folgt vor:
- Starten Sie MS Access und öffnen Sie eine beliebige mdb-Datei
- Wählen Sie den Befehl: Extras/Add-Ins/Add-In-Manager
- Fügen Sie über die Schaltfläche 'Hinzufügen...' die Datei 'atm.mda' hinzu

Hinweis zum Aufruf des Tools:
- Öffnen Sie Ihre gewünschte mdb-Datei
- Wählen Sie den Befehl: Extras/Add-Ins/Access Text Manager

Anmerkung:
Eine weitere Anwendung wurde dank dem ATM in 3 Sprachen entwickelt:
Der neue Abfrage-Assistent 'Abfrage-Assistent zur Duplikatsuche und Bereinigung'
(http://ms-office-forum.net/forum/showthread.php?t=208417)

Gruß
JPA

Köbi
27.10.2007, 19:09
Hallo

Mit Access 2003 unter Windows Vista funktioniert es nicht. Nachdem ich die Installation mit dem Add-In-Manager vorgenommen habe, steht der Textmanager trotzdem nicht als Add-In zur Verfügung. Keine Fehlermeldung, kein nichts, aber auch kein Add-In.:eek:

Hängt das evtl. damit zusammen?
http://http://support.microsoft.com/kb/938809

Tatsächlich hilft dann aber die Empfehlung von MS, das SP3 zu installieren, nicht wirklich weiter, solange die aufgetauchten Macken im SP3 nicht gefixt sind.
Übrigens lässt sich auch das EICDoku-Add-In von Manuela Kulpa nicht installieren. Beide stehen schön aktiviert im Add-In-Manager zur angeblichen Verfügung, aber halt nicht als Add-In selbst.

Oder liegt es doch an was anderem?

JPA
27.10.2007, 20:44
Hallo Köbi,

vielen dank für die Rückmeldung.
Ja, es liegt am VISTA. MS hat mit diesem Windows ein neues Berechtigungsystem eingeführt. Liegt glaube ich auch an der verstärken einbringung von .NET
Der bug mit fehlenden Registry-Key von MS ist mal wieder peinlich.

Ich selbst habe es noch nicht in dieser konstellation getestet und werde vista auch nicht so schell einsetzen.
Achtung mit dem SP3, seht hier:
http://www.ms-office-forum.net/forum/showthread.php?t=218222&highlight=service+pack+3

Gruß
JPA