Retrieves the list of individual objects that have been updated (added or changed) within the given timespan for the specified object.
GetUpdatedResult[] = connection.getUpdated(string sObjectType, dateTime startDate, dateTime EndDate);
Use getUpdated() for data replication applications to retrieve a set of IDs for objects of the specified object that have been created or updated within the specified timespan. The getUpdated() call retrieves an array of GetUpdatedResult objects containing the ID of each created or updated object and the date/time (Coordinated Universal Time (UTC) time zone) on which it was created or updated, respectively. Be sure to read Data Replication before using getUpdated() in your client application.
When replicating created and updated objects, consider the following rules and guidelines:
Replicating objects involves the following basic steps for each object that you want to replicate:
A client application likely performs other tasks associated with data replication operations. For example, if an opportunity were to become closed, a client application might run a new revenue report. Similarly, if a task were completed, the process might log this somehow in another system.
This sample gets the accounts that were updated in the last 60 minutes and writes their IDs to the console.
public void getUpdatedRecords() { try { GregorianCalendar endTime = (GregorianCalendar) connection .getServerTimestamp().getTimestamp(); GregorianCalendar startTime = (GregorianCalendar) endTime.clone(); // Subtract 60 minutes from the server time so that we have // a valid time frame. startTime.add(GregorianCalendar.MINUTE, -60); System.out.println("Checking updates as of: " + startTime.getTime().toString()); // Get the updated accounts within the specified time frame GetUpdatedResult ur = connection.getUpdated("Account", startTime, endTime); System.out.println("GetUpdateResult: " + ur.getIds().length); // Write the results if (ur.getIds() != null && ur.getIds().length > 0) { for (int i = 0; i < ur.getIds().length; i++) { System.out.println(ur.getIds()[i] + " was updated between " + startTime.getTime().toString() + " and " + endTime.getTime().toString()); } } else { System.out.println("No updates to accounts in " + "the last 60 minutes."); } } catch (ConnectionException ce) { ce.printStackTrace(); } }
This sample gets the accounts that were updated in the last 60 minutes and writes their IDs to the console.
public void getUpdatedRecords() { try { DateTime endTime = binding.getServerTimestamp().timestamp; // Subtract 60 minutes from the server time so that we have
// a valid time frame. DateTime startTime = endTime.AddMinutes(-60); Console.WriteLine("Checking updates as of: " + startTime.ToLocalTime().ToString()); // Get the updated accounts within the specified time frame GetUpdatedResult ur = binding.getUpdated("Account", startTime, endTime); Console.WriteLine("GetUpdateResult: " + ur.ids.Length); // Write the results
if (ur.ids != null && ur.ids.Length > 0) { for (int i = 0; i < ur.ids.Length; i++) { Console.WriteLine(ur.ids[i] + " was updated between " + startTime.ToLocalTime().ToString() + " and " + endTime.ToLocalTime().ToString()); } } else { Console.WriteLine("No updates to accounts in " + "the last 60 minutes."); } } catch (SoapException e) { Console.WriteLine("An unexpected error has occurred: " + e.Message + "\n" + e.StackTrace); } }
| Name | Type | Description |
|---|---|---|
| sObjectTypeEntityType | string | Object type. The specified value must be a valid object for your organization. For a list of standard objects, see Standard Objects. |
| startDate | dateTime | Starting date/time (Coordinated Universal Time (UTC) time zone—not local— timezone) of the timespan for which to retrieve the data. The API ignores the seconds portion of the specified dateTime value (for example, 12:30:15 is interpreted as 12:30:00 UTC). |
| endDate | dateTime | Ending date/time (Coordinated Universal Time (UTC) time zone—not local— timezone) of the timespan for which to retrieve the data. The API ignores the seconds portion of the specified dateTime value (for example, 12:35:15 is interpreted as 12:35:00 UTC). |