Este blog fornece um exemplo de transferência de dados de uma tabela local do SQL Server para o Salesforce. Estamos usando o driver ODBC do Salesforce.com para inserir três registros na tabela Salesforce Product2.
- Configure um servidor vinculado que se conecte ao Salesforce.
- No SQL Server Management Studio, altere o Linked Server> Linked Server Properties> Server Options> RPC Out configuração como Verdadeiro.
- Crie esta tabela no SQL Server:
create table NewProducts ( "Name" nvarchar(30), ProductCode nvarchar(10), Description nvarchar(max)) insert into NewProducts values ( 'Test1', 'TEST01', 'Test 1st description') insert into NewProducts values ( 'Test2', 'TEST02', '2nd description' ) insert into NewProducts values ( 'Test3', 'TEST03', '3rd Test description')
Você pode inserir dados em qualquer uma das colunas na tabela Product2, supondo que você tenha as permissões necessárias.
- Execute o seguinte SQL:
-- Declare a variable for each column you want to insert: declare @Name nvarchar(30) declare @ProductCode nvarchar(10) declare @Description nvarchar(max) -- Use a cursor to select your data, which enables SQL Server to extract -- the data from your local table to the variables. declare ins_cursor cursor for select "Name", ProductCode, Description from NewProducts open ins_cursor fetch next from ins_cursor into @Name, @ProductCode, @Description -- At this point, the data from the first row -- is in your local variables. -- Move through the table with the @@FETCH_STATUS=0 while @@FETCH_STATUS=0 Begin -- Execute the insert to push this data into Salesforce. Replace "SF_LINK" with the name of your Salesforce Linked Server. exec ('insert into Product2 ( "Name", ProductCode, Description ) Values (?, ?, ?)', @Name, @ProductCode ,@Description ) at SF_LINK -- Once the execution has taken place, you fetch the next row of data from your local table. fetch next from ins_cursor into @Name, @ProductCode, @Description End -- When all the rows have inserted you must close and deallocate the cursor. -- Failure to do this will not let you re-use the cursor. close ins_cursor deallocate ins_cursor
Veja também
- Dicas para usar o SQL Server com o Salesforce