sql >> Databáze >  >> RDS >> Database

Připojení Delphi k Salesforce.com

unit Salesforce;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs,
  FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf,
  FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async,
  FireDAC.Phys, FireDAC.Phys.ODBC, FireDAC.Phys.ODBCDef, FireDAC.FMXUI.Wait,
  FireDAC.DApt, FMX.Controls.Presentation, FMX.StdCtrls, Data.DB,
  FireDAC.Comp.Client, FMX.ScrollBox, FMX.Memo;

type
  TForm1 = class(TForm)
    FDConnection1: TFDConnection;
    connectButton: TButton;
    outputMemo: TMemo;
    executeButton: TButton;
    procedure connectButtonClick(Sender: TObject);
    procedure executeButtonClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

procedure TForm1.connectButtonClick(Sender: TObject);
begin
  outputMemo.Text := '';

  try
    // Establish the connection.
    FDConnection1.Open;
    executeButton.Enabled := True;
    outputMemo.Lines.Add('Connection established!');
  except
    on E: EDatabaseError do
      outputMemo.Lines.Add('Exception raised with message' + E.Message);
  end;
end;

procedure TForm1.executeButtonClick(Sender: TObject);
var
  query: TFDQuery;
begin

  query := TFDQuery.Create(nil);

  try
    // Define the SQL Query
    query.Connection := FDConnection1;
    query.SQL.Text := 'SELECT * FROM Account';
    query.Open();
    outputMemo.Text := '';
    // Add the field names from the table.
    outputMemo.Lines.Add(String.Format('%s | %s', [' ID ', ' NAME ']));
    // Add one line to the memo for each record in the table.
    while not query.Eof do
    begin
      outputMemo.Lines.Add(String.Format('%s | %s',
        [query.FieldByName('ID').AsString, query.FieldByName('Name').AsString]));
      query.Next;
    end;

  finally
    query.Close;
    query.DisposeOf;
  end;

end;

end.

Ovladač ODBC Salesforce.com vám umožňuje pracovat s daty Salesforce.com v aplikacích Embarcadero Delphi.

Ovladač ODBC Salesforce.com je k dispozici ke stažení z webové stránky Easysoft:

  1. Stáhněte si ovladač ODBC pro Windows Salesforce.com. (Je nutná registrace.)
  2. Nainstalujte a licencujte ovladač ODBC Salesforce.com na počítači, kde je nainstalován.

    Pokyny k instalaci naleznete v dokumentaci k ovladači ODBC na portálu Salesforce.com.

Než budete moci použít Salesforce.com ODBC Driver k připojení Delphi k Salesforce.com, musíte nakonfigurovat zdroj dat ODBC. Zdroj dat ODBC ukládá podrobnosti o připojení pro cílovou databázi (např. Salesforce.com) a ovladač ODBC, který je vyžadován pro připojení k ní (např. ovladač ODBC Salesforce.com).

Chystáme se vytvořit 32bitovou aplikaci Delphi, takže ke konfiguraci zdroje dat použijeme 32bitovou verzi správce ODBC (%WINDIR%\SysWOW64\odbcad32.exe).

Chcete-li vytvořit zdroj dat ovladače Salesforce.com ODBC Driver:

  1. Proveďte jeden z následujících kroků:
    • Chcete-li vytvořit zdroj dat uživatele, na kartě Uživatelské DSN zvolte Přidat.

      –Nebo–

    • Chcete-li vytvořit systémový zdroj dat, vyberte kartu Systémové DSN a poté zvolte Přidat.
  2. V dialogovém okně Vytvořit nový zdroj dat zvolte Easysoft ODBC-Salesforce Driver a poté zvolte Dokončit.
  3. Dokončete dialogové okno Nastavení DSN ovladače Easysoft ODBC-Salesforce Driver:
    Nastavení Hodnota
    DSN Salesforce.com
    Uživatelské jméno Jméno vašeho uživatele Salesforce.com. Například [email protected].
    Heslo Heslo pro vašeho uživatele Salesforce.com.
    Token Bezpečnostní token pro vašeho uživatele Salesforce.com, je-li vyžadován.

    Chcete-li zjistit, zda potřebujete dodat bezpečnostní token, zvolte tlačítko Test. Pokud se pokus o připojení nezdaří s chybou, která obsahuje LOGIN_MUST_USE_SECURITY_TOKEN , musíte jeden dodat.

    Salesforce.com odešle e-mailem bezpečnostní token na e-mailovou adresu spojenou s vaším uživatelským účtem Salesforce.com. Pokud jste neobdrželi bezpečnostní token, můžete jej znovu vytvořit. Salesforce.com vám poté pošle e-mailem nový bezpečnostní token. Chcete-li znovu vytvořit svůj bezpečnostní token, přihlaste se na Salesforce.com a poté z uživatelské nabídky vyberte Nastavení. V poli Rychlé hledání vyhledejte „token zabezpečení“. Na stránce Resetovat bezpečnostní token klikněte na Obnovit bezpečnostní token. Když token obdržíte do svého e-mailového klienta, zkopírujte jej a vložte do pole Token.

  4. Pomocí tlačítka Test ověřte, že se můžete úspěšně připojit k webu Salesforce.com.

Při dotazování na některá data Salesforce.com z aplikace Delphi postupujte podle těchto kroků.

  1. V novém projektu Delphi přidejte formulář
  2. Přidejte dva ovládací prvky TButton s názvem „executeButton“ a „connectButton“. Nastavte Text vlastnosti tlačítek na "Execute" a "Connect".
  3. Nastavte Enabled vlastnost executeButton na False .
  4. Přidejte ovládací prvek TMemo s názvem "outputMemo".
  5. Přidejte komponentu TFDConnection. Poklepejte na tuto součást.

    Zobrazí se dialogové okno FireDAC Connection Editor.

  6. V seznamu ID ovladače vyberte ODBC.
  7. Zvolte tlačítko Průvodce. Po zobrazení výzvy vyberte zdroj dat Salesforce na kartě Zdroje strojových dat.
  8. V dialogovém okně FireDAC Connection Editor odstraňte hodnoty z polí User_Name a Password.

    V poli ODBCAdvanced přidejte tento řetězec k existující hodnotě:

    UID=user_name;PWD=password.
    

    Nahraďte user_name a heslo s hodnotami, které jste právě odstranili z polí Uživatelské_jméno a Heslo.

  9. Přidejte tento kód do OnClick obsluha události pro connectButton :
    procedure TForm1.connectButtonClick(Sender: TObject);
    begin
      outputMemo.Text := '';
    
      try
        // Establish the connection.
        FDConnection1.Open;
        executeButton.Enabled := True;
        outputMemo.Lines.Add('Connection established!');
      except
        on E: EDatabaseError do
          outputMemo.Lines.Add('Exception raised with message' + E.Message);
      end;
    end;
    
  10. Přidejte tento kód do OnClick obsluha události pro executeButton :
    procedure TForm1.executeButtonClick(Sender: TObject);
    var
      query: TFDQuery;
    begin
    
      query := TFDQuery.Create(nil);
    
      try
        // Define the SQL Query
        query.Connection := FDConnection1;
        query.SQL.Text := 'SELECT * FROM Account';
        query.Open();
        outputMemo.Text := '';
        // Add the field names from the table.
        outputMemo.Lines.Add(String.Format('%s | %s', [' ID ', ' NAME ']));
        // Add one line to the memo for each record in the table.
        while not query.Eof do
        begin
          outputMemo.Lines.Add(String.Format('%s | %s',
            [query.FieldByName('ID').AsString, query.FieldByName('Name').AsString]));
          query.Next;
        end;
    
      finally
        query.Close;
        query.DisposeOf;
      end;
    
    end;
    
  11. Zkompilujte a spusťte aplikaci.
  12. Chcete-li se připojit ke zdroji dat Salesforce.com, klikněte na tlačítko Připojit. Chcete-li vrátit některá data z tabulky Účet, zvolte tlačítko Provést.

  1. MySQL NULLIF() Vysvětleno

  2. Jak vrátit výsledek SELECT uvnitř funkce v PostgreSQL?

  3. Zaměňte citlivá data ve svých prováděcích plánech

  4. Použití velkých parametrů pro uloženou proceduru Microsoft SQL s DAO