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.
Salesforce.com ODBC ड्राइवर आपको Embarcadero Delphi अनुप्रयोगों में Salesforce.com डेटा के साथ काम करने में सक्षम बनाता है।
Salesforce.com ODBC ड्राइवर Easysoft वेब साइट से डाउनलोड करने के लिए उपलब्ध है:
- Windows Salesforce.com ODBC ड्राइवर डाउनलोड करें। (पंजीकरण आवश्यक।)
- उस मशीन पर जहां स्थापित है, Salesforce.com ODBC ड्राइवर को स्थापित और लाइसेंस दें।
स्थापना निर्देशों के लिए, Salesforce.com ODBC ड्राइवर दस्तावेज़ देखें।
इससे पहले कि आप डेल्फ़ी को Salesforce.com से कनेक्ट करने के लिए Salesforce.com ODBC ड्राइवर का उपयोग कर सकें, आपको ODBC डेटा स्रोत कॉन्फ़िगर करने की आवश्यकता है। एक ODBC डेटा स्रोत लक्ष्य डेटाबेस (जैसे Salesforce.com) और उससे कनेक्ट होने के लिए आवश्यक ODBC ड्राइवर (उदा. Salesforce.com ODBC ड्राइवर) के लिए कनेक्शन विवरण संग्रहीत करता है।
हम एक 32-बिट डेल्फ़ी एप्लिकेशन बनाने जा रहे हैं ताकि हम अपने डेटा स्रोत को कॉन्फ़िगर करने के लिए ODBC व्यवस्थापक (%WINDIR%\SysWOW64\odbcad32.exe) के 32-बिट संस्करण का उपयोग करें।
Salesforce.com ODBC ड्राइवर डेटा स्रोत बनाने के लिए:
- निम्न में से कोई एक कार्य करें:
- उपयोगकर्ता डेटा स्रोत बनाने के लिए, उपयोगकर्ता DSN टैब में, जोड़ें चुनें।
–या–
- सिस्टम डेटा स्रोत बनाने के लिए, सिस्टम डीएसएन टैब चुनें, और फिर जोड़ें चुनें।
- उपयोगकर्ता डेटा स्रोत बनाने के लिए, उपयोगकर्ता DSN टैब में, जोड़ें चुनें।
- नया डेटा स्रोत बनाएं संवाद बॉक्स में, Easysoft ODBC-Salesforce ड्राइवर चुनें, और फिर समाप्त करें चुनें।
- Easysoft ODBC-Salesforce ड्राइवर DSN सेटअप डायलॉग बॉक्स को पूरा करें:
सेटिंग <थ>मानDSN Salesforce.com उपयोगकर्ता नाम आपके Salesforce.com उपयोगकर्ता का नाम। उदाहरण के लिए, [email protected]. पासवर्ड आपके Salesforce.com उपयोगकर्ता के लिए पासवर्ड। टोकन यदि आवश्यक हो तो आपके Salesforce.com उपयोगकर्ता के लिए सुरक्षा टोकन। यह पता लगाने के लिए कि क्या आपको सुरक्षा टोकन की आपूर्ति करने की आवश्यकता है, परीक्षण बटन चुनें। यदि कनेक्शन का प्रयास किसी त्रुटि के साथ विफल हो जाता है जिसमें
LOGIN_MUST_USE_SECURITY_TOKEN
शामिल है , आपको एक आपूर्ति करनी होगी।Salesforce.com आपके Salesforce.com उपयोगकर्ता खाते से जुड़े ईमेल पते पर सुरक्षा टोकन ईमेल करता है। यदि आपको सुरक्षा टोकन नहीं मिला है, तो आप इसे पुन:उत्पन्न कर सकते हैं। इसके बाद Salesforce.com आपको नया सुरक्षा टोकन ईमेल करेगा। अपना सुरक्षा टोकन पुन:उत्पन्न करने के लिए, Salesforce.com में लॉग इन करें और फिर उपयोगकर्ता मेनू से सेटअप चुनें। त्वरित खोज बॉक्स में "सुरक्षा टोकन" खोजें। सुरक्षा टोकन रीसेट करें पृष्ठ में सुरक्षा टोकन रीसेट करें क्लिक करें। जब आप अपने ईमेल क्लाइंट में टोकन प्राप्त करते हैं, तो इसे कॉपी करें और फिर इसे टोकन फ़ील्ड में पेस्ट करें।
- यह सत्यापित करने के लिए परीक्षण बटन का उपयोग करें कि आप Salesforce.com से सफलतापूर्वक जुड़ सकते हैं।
डेल्फ़ी एप्लिकेशन से कुछ Salesforce.com डेटा को क्वेरी करने के लिए इन चरणों का पालन करें।
- एक नए डेल्फ़ी प्रोजेक्ट में, एक फॉर्म जोड़ें
- दो TButton नियंत्रण जोड़ें, जिसका नाम "executeButton" और "connectButton" है।
Text
सेट करें "निष्पादित" और "कनेक्ट" करने के लिए बटन के गुण। Enabled
सेट करेंexecuteButton
. की संपत्ति करने के लिएFalse
।- "outputMemo" नाम का एक TMemo नियंत्रण जोड़ें।
- एक TFDConnection घटक जोड़ें। इस घटक पर डबल-क्लिक करें।
FireDAC कनेक्शन संपादक संवाद बॉक्स प्रदर्शित होता है।
- चालक आईडी सूची में, ODBC चुनें।
- विज़ार्ड बटन चुनें। संकेत मिलने पर मशीन डेटा स्रोत टैब से अपना Salesforce डेटा स्रोत चुनें।
- FireDAC कनेक्शन संपादक संवाद बॉक्स में, User_Name और पासवर्ड बॉक्स से मानों को हटा दें।
ODBAdvanced बॉक्स में, बॉक्स इस स्ट्रिंग को मौजूदा मान से जोड़ दें:
UID=user_name;PWD=password.
बदलें user_name और पासवर्ड उन मानों के साथ जिन्हें आपने अभी-अभी User_Name और पासवर्ड बॉक्स से हटाया है।
- इस कोड को
OnClick
में जोड़ें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;
- इस कोड को
OnClick
में जोड़ें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;
- एप्लिकेशन को संकलित करें और चलाएं।
- Salesforce.com डेटा स्रोत से कनेक्ट करने के लिए, कनेक्ट करें बटन चुनें। खाता तालिका से कुछ डेटा वापस करने के लिए, निष्पादित करें बटन चुनें।