ADO.NET Provider for Sage Intacct

Build 23.0.8839

GETDELETED Statements

You can issue the GETDELETED query to retrieve all records deleted from the live data for the time range specified. This query accepts a datetime value as a filter, as shown in the following example:

GETDELETED FROM <table_name> WHERE <search_condition>

<search_condition> ::= 
  {
    <expression> { = | < | <= | > | >= } [ <expression> ] 
  } [ { AND | OR } ... ]

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>
  

C#

String connectionString = "User='myusername';CompanyID='TestCompany';Password='mypassword';SenderID='Test';SenderPassword='abcde123';";
using (SageIntacctConnection connection = new SageIntacctConnection(connectionString)) {
  SageIntacctCommand cmd = new SageIntacctCommand("GETDELETED FROM Customer WHERE WhenModified >= '2013-01-01'", connection); 
  SageIntacctDataReader rdr = cmd.ExecuteReader();
  while (rdr.Read()) {
    Console.WriteLine(rdr["Id"].ToString());
  }
}

VB.NET

Dim connectionString As [String] = "User='myusername';CompanyID='TestCompany';Password='mypassword';SenderID='Test';SenderPassword='abcde123';"
Using connection As New SageIntacctConnection(connectionString)
  Dim cmd As New SageIntacctCommand("GETDELETED FROM Customer WHERE WhenModified >= '2013-01-01'", connection)
  Dim rdr As SageIntacctDataReader = cmd.ExecuteReader()
  While rdr.Read()
    Console.WriteLine(rdr("Id").ToString())
  End While
End Using
Note: By putting a CACHE command in front of the query, you can update the cache to remove all values that have been deleted from the data source, as shown in the following example:
CACHE GETDELETED FROM [TableName] WHERE WhenModified >= '2013-01-01' AND WhenModified <= '2013-02-01'

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839