Versionskontrolle Access 2007 Datenbank und Anwendung

8

Ich muss eine Microsoft Access 2007-Datenbank und -Anwendung versionieren. Derzeit ist alles in einer einzigen MDB-Datei enthalten.

Die Anwendung enthält:

  • Formulare
  • VBA-Code
  • Tatsächliche Datenbank

Ich würde annehmen, dass ich die Datenbank von den Formularen / vom Code trennen muss. Ich möchte in der Lage sein, die Formulare / den Code als Text zu versionieren, um Version diffs zu unterstützen.

Im Moment habe ich keinen Zugriff auf SourceSafe (ich habe gehört, dass es vielleicht eine Zugriffsunterstützung gibt), daher würde ich eine Lösung bevorzugen, die mit Subversion oder Git funktioniert.

    
Jesse Vogt 05.07.2009, 20:53
quelle

3 Antworten

3

Access 2007 verfügt über eine Funktion, mit der Sie eine Datenbank in ihre Tabellen / Abfragen (Back-End) und Formulare / Berichte (Front-End) aufteilen können. Da Ihre Frage nur die Version betrifft, die die Formulare und Module steuert, könnte dies eine elegantere Lösung sein. Ich weiß nicht, wo Module nach der Trennung gehen, also könnte das ein Stolperstein sein.

Microsoft bietet VSTO (Visual Studio Tools für Office) an, mit denen Sie sich weiterentwickeln können VS und Versionskontrolle über jedes VS-Plugin (CVS / SVN / VSS / etc.)

Schließlich können Sie einfach direkt mit Visual Source Safe verbinden. Dieser MSKB-Artikel enthält einige gute Informationen und Hintergrundinformationen, während < a href="http://office.microsoft.com/en-us/access/HA102092391033.aspx"> Dieser Office Online-Artikel wurde entwickelt, um Sie zum Laufen zu bringen.

Letztendlich würde ich vorschlagen, den Code möglichst nicht aus Access herauszunehmen. Vorausgesetzt, der VBA-Editor ist Ihre primäre Entwicklungsumgebung, fügen Sie Ihrem Entwicklungsprozess zusätzliche Schritte hinzu, die nicht einfach automatisiert werden können. Jede Änderung, die Sie vornehmen, muss manuell exportiert, getrennt und gespeichert werden, und es gibt kein Application.OnCompile-Ereignis, das Sie zum Exportieren der Änderungen verwenden könnten. Noch schwieriger, Sie müssen manuell alle geänderten Quelldateien von anderen Entwicklern importieren, wenn sie einchecken.

    
Andrew Scagnelli 07.07.2009, 12:59
quelle
2

Ich verwende den folgenden Code, um den vba-Code aus Excel-Dateien zu extrahieren. Sie können diesen Code möglicherweise ändern, um ihn aus Access zu extrahieren.

%Vor%

End Sub

Können Sie die Formulare vielleicht als XML extrahieren?

    
Craig T 06.07.2009 05:41
quelle
2

Ich habe mit dem gleichen Problem gekämpft. Ich habe ursprünglich Code sehr ähnlich wie die bestehende Antwort geschrieben. Der Trick besteht darin, alle Module auf das Dateisystem zu bekommen , aber diese Methode hat einige Nachteile. Wenn Sie diese Route verwenden, können Sie Ihre Formulare und Berichte aus den VBA-Projekten abrufen, aber Sie können sie nicht wieder abrufen. Also erstellte eine Bibliothek als Teil unseres Rubberduck-VBE-Add-Ins . Die Bibliothek, die ich geschrieben habe, kümmert sich darum, all deines Codes in / aus dem VBA-Projekt in / aus dem Repository zu importieren und zu exportieren, während du pushen, ziehen und committen kannst. Es ist ein kostenloses und Open-Source-Projekt, also zögern Sie nicht die neueste Version herunterzuladen und zu installieren .

Hier ist ein Beispiel, wie die Bibliothek verwendet wird. Ich werde die tatsächliche Integration mit dem VBA-Editor in einer zukünftigen Version hinzufügen.

%Vor%     
RubberDuck 01.03.2015 11:56
quelle