Office: (Office 2016) Migration einer .adp Anwendung

Helfe beim Thema Migration einer .adp Anwendung in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Guten Tag, ich versuche eine alte .adp Anwendung unter Windows 10 mit SQL Server 2017 zu migieren. Leider funktionieren einige Anweisungen nicht mehr... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Hubert111, 21. August 2019.

  1. Migration einer .adp Anwendung


    Guten Tag,

    ich versuche eine alte .adp Anwendung unter Windows 10
    mit SQL Server 2017 zu migieren.
    Leider funktionieren einige Anweisungen nicht mehr wie gewohnt und bitte daher um eure Hilfe.

    Fehlermeldungen beim Vergleich vom Datum der Datenbank mit einem Datum auf dem Eingabeformular (Eingangsdatum = datetime):
    Dim rs As New ADODB.Recordset
    rs.CursorLocation = adUseClient
    Code:
     
    Hubert111, 21. August 2019
    #1
  2. Wenn du CurrentConnection verwendest, dann läuft die Abfrage via Access über die verknüpften Tabellen.

    Dann musst du das Datum so formatieren, dass Access sich auskennt.
    Die Funktion ist Access natürlich auch unbekannt.
    Access gibt das nicht 1:1 weiter, sondern analysiert und verändert den String ....

    Alternativ, kannst du eine direkte Connection zum Server erstellen, dann läuft die Abfrage auch direkt über den Server der die Funktion dann logischerweise auch kennt, oder du machst gleich eine Stored Procedure.

    CurrentConnection macht eigentlich nur Sinn, wenn man spezielle ADO Methoden auf ein Access Backend anwenden will.
     
    markusxy, 22. August 2019
    #2
  3. Was genau möchtest du tun? Die Anwendung, so wie ist, also als ADP mit SQL Server 2017 betreiben, oder die Anwendung umstellen auf eine AccDb?

    Dein Ansatz bzgl. des Datum ist schon mal der richtige Gedanke. Das Datum aus dem Formularsteuerelement muss in ein allgemeinverständliches Format konvertiert werden. In VBA kann man dazu die Format-Funktion verwenden. - Siehe auch Der Datum/Uhrzeit Datentyp in VBA und Access und VBA-SQL-String-Tutorial.

    Darüber hinaus der Hinweis, dass CurrentProject.Connection in einer AccDb nicht mehr direkt auf dem SQL Server zeigt, sondern auf die lokale Access-DB.
    Daher die Fehlermeldung: Undefinierte Funktion 'Convert' in Ausdruck.
    Wenn du weiterhin direkt auf den SQL Server zugreifen willst, musst du dir eine eigene ADO-Connection erstellen.


    [Werbung]
    Falls du in dieser Sache bezahlte Hilfe in Anspruch nehmen möchtest, kannst du mich per PM anpingen. Ich habe in den letzten Jahren einige derartige Migrationsprojekte umgesetzt oder begleitet.
    [/Werbung]
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  4. Migration einer .adp Anwendung

    Hallo @markusxy,

    danke für deine logischen Anregungen.
    Werde ich mal versuchen umzusetzen.
     
    Hubert111, 23. August 2019
    #4
  5. Hallo sonic8,

    danke für deinen Hinweis:
    > CurrentProject.Connection in einer AccDb nicht mehr direkt auf dem SQL Server zeigt
    und für den Hinweis:
    >Wenn du weiterhin direkt auf den SQL Server zugreifen willst, musst du dir eine eigene ADO-Connection erstellen

    Ich werde das mit einer eigenen ADO Connection testen.
     
    Hubert111, 23. August 2019
    #5
  6. Guten Morgen @all

    Ich habe nun einen Ansatz der wie folgt "funktioniert:"
    Zunächst wurde der Connection String in einer Textdatei gespeichert
    damit bei Änderung des Providers|Server|Datenbank nur dort eine
    Änderung vorgenommen werden muss.

    Dann wird in einem Modul "Start" dieser String ausgelesen für Con.ConnectionString.

    Code:
    Im Formular erfolgt der Zugriff auf die Tabellen des SQL Servers so:
    Code:
     
    Hubert111, 27. August 2019
    #6
  7. Hallo Hubert,
    grundsätzlich ist mal wichtig dass es funktioniert.

    Eine Funktion für die Connection ist schon mal gut.
    Die Frage ist nur, warum du die jedes mal neu erstellst.

    Ich würde es so gestalten, dass eine Funktion oder Property die Connection beschafft und bei Bedarf einfach erstellt.

    Genauso beim Recordset.
    Einfach eine Funktion erstellen, die ein Recordset liefert.


    Dann stellt sich die Frage, warum du das Recordset im Formular Header deklarierst?

    Aussderem, was es mit dem Recordset.Close auf sich?
    Ein Close ist widersinnig. Das Recordset wird automatisch geschlossen, wenn das Formular geschlossen wird, vorausgesetzt es gibt keine zusätzliche Referenz im Formular Modul.
    Das Gleiche mit der Connection.

    Also irgendwie passt da alles nicht zusammen.
    Wenn du ein Recordset schließt werden die Daten ja wieder freigegeben. Außer du verwendest einen Clone - was absolut keinen Sinn macht - und dadurch wird die Freigabe dann verhindert.

    So würde ich es machen:

    Code:
    mehr wäre da im Formular für die Erstellung des Recordset nicht erforderlich.

    Die Funktion getAdoRs erstellt ein Recordset nach Wunsch.
     
    markusxy, 27. August 2019
    #7
  8. Migration einer .adp Anwendung

    Hallo @markusxy,

    vielen Dank für deine Ratschläge.
    Ich tauche da im trüben Wasser weil diese 15 Jahre alte
    Anwendung bisher als .adp Lösung immer funktionierte.
    Wegen Umstellung auf Office 2016 geht aber keine .adp mehr.

    Deinen Vorschlag habe ich wie folgt umgesetzt:
    Im Modul "Start":
    Und im Formular:
     
    Hubert111, 27. August 2019
    #8
Thema:

Migration einer .adp Anwendung

Die Seite wird geladen...
  1. Migration einer .adp Anwendung - Similar Threads - Migration adp Anwendung

  2. Falsche E-Mail-Adresse in Outlook Live nach IONOS-Migration

    in Microsoft Outlook Hilfe
    Falsche E-Mail-Adresse in Outlook Live nach IONOS-Migration: Hallo zusammen, ich habe kürzlich meinen Vertrag bei IONOS umgestellt und musste dabei auch meine E-Mail-Adressen über ein IONOS-Tool migrieren. Outlook auf meinem Desktop-Rechner und auch auf...
  3. Kein Speicherplatz nach Projekt Migration

    in Microsoft Teams Hilfe
    Kein Speicherplatz nach Projekt Migration: Hallo, meine Hochschule hat letzte Woche alle Office 365 Accounts der Studierenden gelöscht & demnach auch alle Dateien welche in den Office Anwendungen genutzt worden sind. Im nachgang wurden...
  4. Teams Migration - Outlook Kontakte fehlen

    in Microsoft Teams Hilfe
    Teams Migration - Outlook Kontakte fehlen: Hi Zusammen, wir migrieren aktuell von Skype on Prem zu Teams. Soweit alles gut, bis auf das, dass wir festgestellt haben, dass bei einigen Usern die Outlook Kontakte nicht mit migriert werden....
  5. Microsoft Teams Kalender ohne Migration zu Office 365

    in Microsoft Teams Hilfe
    Microsoft Teams Kalender ohne Migration zu Office 365: Einen schönen guten Tag an alle, die Domain unseres Unternehmens ist per "Azure AD Connect" mit unserem Office-365 verbunden, damit die Mitarbeiter sich mit ihrer geschäftlichen E-Mail (hosted...
  6. Nach Migration von HDD auf SSD startet Outlook nicht

    in Microsoft Outlook Hilfe
    Nach Migration von HDD auf SSD startet Outlook nicht: Hallo@ ich habe mir eine Samsung SSD gekauft und meine HDD dahin migriert. Bis auf Outlook funktioniert alles. Wenn ich Outlook starten will kommt Fehler: Microsoft kann nicht gestartet werden....
  7. Unter Excel2007 funktionierende Formel wird von Excel2010 nicht akzeptiert

    in Microsoft Excel Hilfe
    Unter Excel2007 funktionierende Formel wird von Excel2010 nicht akzeptiert: Hallo, Ich versuche ein Dokument, welches schon seit langem mit Excel2007 verwendet wird nun nach Office2010 zu portieren. Dabei bin ich auf folgendes Problem gestoßen: In Makro fügt in...
  8. Migration Frontpage 2000 -> 2002

    in Microsoft FrontPage Hilfe
    Migration Frontpage 2000 -> 2002: Meine HP - basierend auf einer stark bearbeiteten FP 2000 Vorlage - lässt sich in FP 2002 nicht bearbeiten. Das Web lässt sich öffnen, aber sobald ich eine Seite in öffne und hineinklicke, stürzt...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden