Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Verbinden Sie SQL Server mit SugarCRM

Verwenden Sie den SugarCRM ODBC-Treiber, um Microsoft SQL Server mit SugarCRM zu verbinden und:

  • Verwenden Sie einen Verbindungsserver, um mit SugarCRM-Daten zu arbeiten, als ob Sie mit Daten arbeiten würden, die in einer SQL Server-Tabelle gespeichert sind.
  • Integrieren Sie SugarCRM mit SQL Server mithilfe von SQL Server Integration Services (SSIS).
  1. Installieren und lizenzieren Sie den SugarCRM ODBC-Treiber auf dem Computer, auf dem SQL Server installiert ist .

    Hinweis Wenn Sie den Verbindungsserver in einer Clusterumgebung verwenden möchten, müssen Sie den ODBC-Treiber auf jedem Knoten im Cluster installieren.

    Installationsanweisungen finden Sie in der Dokumentation zum SugarCRM-ODBC-Treiber.

Bevor Sie den SugarCRM-ODBC-Treiber verwenden können, um SQL Server mit SugarCRM zu verbinden, müssen Sie eine ODBC-Datenquelle konfigurieren. Eine ODBC-Datenquelle speichert die Verbindungsdetails für die Zieldatenbank (z. B. SugarCRM) und den für die Verbindung erforderlichen ODBC-Treiber (z. B. den SugarCRM-ODBC-Treiber).

Hinweis Wenn Sie den Verbindungsserver in einer Clusterumgebung verwenden möchten, müssen Sie die Datenquelle auf jedem Knoten im Cluster konfigurieren.

Sie können eine Benutzer-ODBC-Datenquelle konfigurieren, die nur dem Benutzer zur Verfügung steht, der sie erstellt, oder eine System-ODBC-Datenquelle, die allen Benutzern auf dem Computer zur Verfügung steht. Sie konfigurieren ODBC-Datenquellen im ODBC-Administrator, der in Windows enthalten ist. Beachten Sie, dass eine Benutzerdatenquelle nur für eine SQL Server-Instanz verfügbar ist, wenn diese Instanz als ein bestimmter Benutzer ausgeführt wird. Andernfalls müssen Sie eine Systemdatenquelle konfigurieren.

64-Bit-Windows Auf dieser Plattform gibt es zwei Versionen von ODBC Administrator. (Wenn Sie nicht sicher sind, ob Ihre Windows-Version 32-Bit oder 64-Bit ist, befolgen Sie die Anweisungen in diesem Microsoft Knowledge Base-Artikel, um dies herauszufinden.) Die Version von ODBC-Administrator, die Sie ausführen müssen, hängt davon ab, ob Sie eine 32-Bit- oder 64-Bit-Version von SQL Server. Um herauszufinden, welche Version von SQL Server Sie haben, stellen Sie eine Verbindung zu Ihrer SQL Server-Instanz her und führen Sie dann diese SQL-Anweisung aus:

select SERVERPROPERTY('edition')

Wenn Sie die 64-Bit-Version von SQL Server und haben Wenn Sie einen Verbindungsserver mit dem SugarCRM-ODBC-Treiber verwenden möchten, müssen Sie die 64-Bit-Version des ODBC-Administrators ausführen. Öffnen Sie dazu Verwaltung in der Systemsteuerung und dann Datenquellen (ODBC). (Unter Windows Server 2003 und früher trägt das Applet der Systemsteuerung, das den ODBC-Administrator startet, die Bezeichnung Datenquellen. Unter Windows 8 und höher trägt das Applet der Systemsteuerung die Bezeichnung ODBC-Datenquellen (64-Bit).)

Wenn Sie die 32-Bit-Version von SQL Server haben oder Wenn Sie SSIS mit dem SugarCRM-ODBC-Treiber verwenden möchten, müssen Sie die 32-Bit-Version des ODBC-Administrators ausführen. Geben Sie dazu im Windows-Dialogfeld „Ausführen“ Folgendes ein:

%windir%\syswow64\odbcad32.exe

32-Bit-Windows Um den ODBC-Administrator unter 32-Bit-Windows auszuführen, öffnen Sie Verwaltung in der Systemsteuerung und öffnen Sie dann Datenquellen (ODBC). (Bei älteren Versionen von Windows trägt das Applet der Systemsteuerung, das den ODBC-Administrator startet, die Bezeichnung Datenquellen.)

Verwenden Sie den ODBC-Administrator, um Ihre Datenquelle für den SugarCRM-ODBC-Treiber zu erstellen:

  1. Führen Sie einen der folgenden Schritte aus:
    • Um eine Benutzerdatenquelle zu erstellen, wählen Sie auf der Registerkarte Benutzer-DSN die Option Hinzufügen.

      Wichtig Dies ist nur erfolgreich, wenn die SQL Server-Instanz unter demselben Benutzerkonto ausgeführt wird, das zum Erstellen der Datenquelle verwendet wurde. Andernfalls müssen Sie stattdessen eine System-ODBC-Datenquelle erstellen.

      –Oder–

    • Um eine Systemdatenquelle zu erstellen, wählen Sie die Registerkarte System-DSN und dann Hinzufügen.
  2. Wählen Sie im Dialogfeld „Neue Datenquelle erstellen“ die Option „Easysoft ODBC-SugarCRM-Treiber“ und dann „Fertig stellen“.
  3. Füllen Sie das Dialogfeld Easysoft ODBC-SugarCRM-Treiber-DSN-Setup aus:
    Setting Wert
    DSN SugarCRM
    Benutzername Der Name Ihres SugarCRM-Benutzers. Zum Beispiel admin.
    Passwort Das Passwort für Ihren SugarCRM-Benutzer.
    Anmelde-URI Der URI der SugarCRM-Instanz, zu der Sie eine Verbindung herstellen möchten. Zum Beispiel:
    https://sg-richarddemo.demo.sugarcrm.eu/

    Der Easysoft ODBC-SugarCRM-Treiber kann eine Verbindung zu einer SugarCRM-Instanz sowohl über https herstellen und http

  4. Verwenden Sie die Test-Schaltfläche, um zu überprüfen, ob Sie erfolgreich eine Verbindung zu SugarCRM herstellen können.

Sie können jetzt SQL Server mit SugarCRM verbinden.

Beispiel:SugarCRM-Daten mithilfe eines verknüpften Servers abrufen

  1. Stellen Sie in Microsoft SQL Server Management Studio eine Verbindung zu der SQL Server-Instanz her, für die Sie den Verbindungsserver erstellen möchten.

    Sie müssen sich mit einem Konto anmelden, das Mitglied der festen Serverrolle „sysadmin“ von SQL Server ist, um einen Verbindungsserver zu erstellen.

  2. Klicken Sie mit der rechten Maustaste auf Serverobjekte. Wählen Sie im Popup-Menü Neu> Verbundener Server.
  3. Geben Sie im Feld Verbindungsserver "SugarCRM" ein.
  4. Wählen Sie aus der Anbieterliste Microsoft OLE DB-Anbieter für ODBC-Treiber aus.
  5. Geben Sie im Feld Datenquelle den Namen Ihrer SugarCRM-ODBC-Datenquelle ein und wählen Sie dann OK.

    SQL Server verifiziert den Verbindungsserver durch Testen der Verbindung.

    • Wenn Sie die Fehlermeldung "Der angegebene Treiber konnte aufgrund des Systemfehlers 126 nicht geladen werden:Das angegebene Modul konnte nicht gefunden werden" erhalten, wählen Sie "Ja", wenn Sie gefragt werden, ob Sie den Verbindungsserver behalten möchten. Sie müssen Ihre SQL Server-Instanz neu starten, bevor Sie den Verbindungsserver verwenden können. Wenn SQL Server bereits ausgeführt wurde, als Sie den SugarCRM-ODBC-Treiber installiert haben, verfügt er nicht über die neueste Version der Umgebungsvariable System PATH. Das SugarCRM-ODBC-Treiber-Setup-Programm fügt Einträge für den Treiber zum System PATH hinzu. Durch einen Neustart der Instanz werden diese Änderungen für SQL Server verfügbar, sodass der SugarCRM-ODBC-Treiber geladen werden kann.
    • Wenn Sie bei der Angabe der SugarCRM-ODBC-Datenquelle einen Fehler gemacht haben, erhalten Sie den Fehler „Datenquellenname nicht gefunden und kein Standardtreiber angegeben. Wenn Sie diesen Fehler erhalten, wählen Sie Nein, wenn Sie gefragt werden, ob Sie den Verbindungsserver behalten und bearbeiten möchten den Wert im Feld Datenquelle.
  6. Sie können Ihre SugarCRM-Daten entweder mit einem:
      abfragen
    • Vierteiliger Tabellenname in einer verteilten Abfrage.

      Ein vierteiliger Tabellenname hat das Format:

      Servername .[Datenbankname ].[schema_name ].Tabellenname .

      Obwohl es bei SugarCRM keine Datenbank oder kein Schema gibt, gibt der Easysoft ODBC-SugarCRM-Treiber einen „Dummy“-Wert für beide Bezeichner zurück, da einige ODBC-Anwendungen erwarten, dass es eine Datenbank und ein Schema gibt. Die Datenbank, die der Treiber zurückgibt, ist SUGAR . Das Schema, das der Treiber zurückgibt, ist DBO . Schließen Sie diese Bezeichner in Ihre SQL-Anweisungen ein. Zum Beispiel:

      SELECT * FROM SUGARCRM.SF.DBO.Accounts
      

      Die Großschreibung des Tabellennamens muss mit der in SugarCRM übereinstimmen. Die folgende Abfrage ist beispielsweise ungültig:

      SELECT * FROM SUGARCRM.SF.DBO.ACCOUNTS
      

      Um die Großschreibung der SugarCRM-Tabellen (Objekte) zu überprüfen, führen Sie Folgendes aus:

      EXEC sp_tables_ex @table_server = 'SUGARCRM'
      
    • Pass-Through-Abfrage in einer OPENQUERY-Funktion. Zum Beispiel:
      SELECT * FROM OPENQUERY(SUGARCRM, 'SELECT * FROM ACCOUNTS')
      

      SQL Server sendet Pass-Through-Abfragen als nicht interpretierte Abfragezeichenfolgen an den SugarCRM-ODBC-Treiber. Dies bedeutet, dass SQL Server keinerlei Logik auf die Abfrage anwendet oder versucht abzuschätzen, was diese Abfrage bewirken wird.

Beispiel:SugarCRM-Daten mit OPENDATASOURCE / OPENROWSET abrufen

Die OPENDATASOURCE / OPENROWSET Funktionen ermöglichen es Ihnen, mit SugarCRM-Daten in SQL Server zu arbeiten, ohne einen Verbindungsserver zu konfigurieren. Ihre Verwendung hat einige Auswirkungen auf die Sicherheit und diese Funktionen sind daher standardmäßig nicht aktiviert.

  1. Führen Sie in Microsoft SQL Server Management Studio diese Befehle aus, um OPENDATASOURCE zu aktivieren / OPENROWSET Funktionen:
    EXEC sp_configure 'show advanced options', 1
    RECONFIGURE
    GO
    EXEC sp_configure 'ad hoc distributed queries', 1
    RECONFIGURE
    GO
  2. Führen Sie Folgendes aus:
    SELECT * FROM OPENDATASOURCE('MSDASQL', 'DSN=MY_SUGARCRM_ODBC_DATA_SOURCE;') .SF.DBO.Accounts

    – Oder –

    SELECT * FROM OPENROWSET('MSDASQL', 'DSN=MY_SUGARCRM_ODBC_DATA_SOURCE;', 'select * from Accounts;')

Beispiel:Eine SugarCRM-Tabelle in SQL Server sichern

Dieser Befehl erstellt eine Kopie der Account-Tabelle, wobei angenommen wird, dass der Verbindungsserver SUGARCRM heißt .

IF OBJECT_ID('dbo.Account', 'U') IS NOT NULL DROP TABLE dbo.Accounts;
SELECT * INTO Accounts FROM OPENQUERY(SUGARCRM,'SELECT * FROM Accounts')

Beispiel:Integrieren Sie SugarCRM mit SQL Server mithilfe von SQL Server Integration Services (SSIS)

Diese Anweisungen setzen voraus, dass Sie Microsoft Visual Studio und SQL Server Data Tools für Visual Studio installiert haben.

  1. Erstellen Sie eine .csv-Datei namens Categories.csv mit folgendem Inhalt:
    name,is_external
    "Test Category 1",1
    "Test Category 2",0
  2. Erstellen Sie in Visual Studio ein neues Integration Services-Projekt.
  3. Ziehen Sie eine Datenflussaufgabe aus der Toolbox auf die Registerkarte Ablaufsteuerung.
  4. Wählen Sie die Registerkarte Datenfluss.
  5. Ziehen Sie eine Flatfilequelle aus der Toolbox auf die Registerkarte Datenfluss und drücken Sie dann die Eingabetaste.

    Flat File Source befindet sich unter der Liste Other Sources.

  6. Wählen Sie im Flatfile-Quelleditor Neu aus.
  7. Suchen Sie im Dialogfeld Verbindungs-Manager-Editor für Flatfiles nach Ihrer .csv-Datei.
  8. Geben Sie im Feld Textqualifizierer ".
  9. ein
  10. Wählen Sie „Vorschau“ und dann „OK“, um die Dialogfelder zu schließen.
  11. Ziehen Sie ein ODBC-Ziel aus der Toolbox auf die Registerkarte Datenfluss und drücken Sie dann die Eingabetaste.

    Das ODBC-Ziel befindet sich in der Liste „Andere Ziele“.

  12. Wählen Sie die Flatfile-Quelle aus. Ziehen Sie den blauen Pfeil auf das ODBC-Ziel.
  13. Wählen Sie das ODBC-Ziel aus und drücken Sie dann die Eingabetaste.
  14. Wählen Sie im Dialogfeld „ODBC-Ziel“ die Option „Neu“.
  15. Wählen Sie im Dialogfeld „ODBC-Verbindungsmanager konfigurieren“ die Option „Neu“.
  16. Wählen Sie im Dialogfeld „Verbindungsmanager“ Ihre SugarCRM-ODBC-Datenquelle aus und verwenden Sie dann die Schaltfläche „OK“, um zum Dialogfeld „ODBC-Quelle“ zurückzukehren.
  17. Wählen Sie im Namen der Tabelle oder der Ansichtsliste Product2.
  18. Wählen Sie Zuordnungen.
  19. Ordnen Sie die Spalten „Name“, „Beschreibung“ und „Familie“ in der Eingabeliste denselben Spalten in der Zielliste zu.

    Ihre Eingabe- und Zielspalten sollten wie folgt aussehen:

    Eingabespalte Zielspalte
    [ist_extern] ist_extern
    Name Name

    Bei allen anderen Spaltennamen wird die Eingabe auf <ignore> gesetzt

  20. Wählen Sie die Schaltfläche Start, um die Datensätze aus der .csv-Datei in SugarCRM einzufügen.