dotConnect for Zoho CRM Documentation
In This Topic
    Bulk Data Loading
    In This Topic

    ZohoLoader component is used for bulk uploading a large number of records to Zoho CRM.

    To start uploading data, create a ZohoLoader component. Then you may tweak its BatchSize property. BatchSize property determines a maximal number of records in a batch. After this you need to specify columns to load data. You may do it either manually, using the Columns property, or you may use the CreateColumns method to retrieve table columns information from the table specified in the TableName property. Then call the Open method and use the SetValue method to set values for the row fields. To switch to the next row, call the NextRow method.

    After you have finished loading data, call the Close method. This mthod sends the last batch to the server.

    The following example demonstrates using the ZohoLoader class.

        using (var connection = new ZohoConnection("security token=d3c6452922f65c24b59c75aee0d0112b;")) {
            connection.Open();
    
            ZohoLoader loader = new ZohoLoader("Accounts", connection);
            loader.Columns.Add("Account Name", DbType.String, 0, 0, 0);
            loader.Columns.Add("Website", DbType.String, 0, 0, 0);
    
            try {
                loader.Open();
                for (int i = 1; i <= 100; i++) {
                    loader.SetValue("Account Name", "Test " + i);
                    loader.SetValue("Website", "www.devart.com");
                    loader.NextRow();
                }
                loader.Close();
            }
            catch (ZohoException ex) {
    
                // process exception
            }
        }
    
    
    
    
        Using connection As New ZohoConnection("security token=d3c6452922f65c24b59c75aee0d0112b;")
            connection.Open()
    
            Dim loader As New ZohoLoader("Accounts", connection)
            loader.Columns.Add("Account Name", DbType.String, 0, 0, 0)
            loader.Columns.Add("Website", DbType.String, 0, 0, 0)
    
            Try
                loader.Open()
                For i As Integer = 1 To 100
                    loader.SetValue("Account Name", "Test " & i)
                    loader.SetValue("Website", "www.devart.com")
                    loader.NextRow()
                Next
                loader.Close()
    
            Catch ex As ZohoException
                'process exception
    
            End Try
        End Using
    
    
    

    After calling the Close method you can retrieve the results of data loading operation as an array of structs with the GetResults method.

    Note that dotConnect for Zoho CRM includes two different loader classes: Devart.Data.Zoho.ZohoLoader and Devart.Data.Zoho.APIVersion2.ZohoLoader. These classes have the same interface and implement similar functionality, but they use different Zoho CRM API versions. Devart.Data.Zoho.ZohoLoader is intended for use with a connection using Zoho CRM API v2, and Devart.Data.Zoho.APIVersion2.ZohoLoader is for a connection using Zoho CRM API v1.