Looking at the API examples from Acumatica, I have written code to Export some data from the Customer screen based on a single filter. The filter should enforce that the Customer's email address equals a particular value (once that's working, I will also check a custom field with an encrypted password). Yet for some reason the Export function is returning what appears to be every customer record in our database. Can anyone tell what I am doing wrong with my filter, or anything else? Code and screenshot from debugger are below.
Thank you!
Public Function ValidateUser(ByVal emailAddress As String, ByVal password As String, ByRef customerFirstName As String, ByRef customerLastName As String, ByRef customerCountry As String, ByRef customerPhone As String, ByRef customerCell As String) As String
Dim customer As AR303000Content = m_context.AR303000GetSchema()
m_context.AR303000Clear()
Dim emailFilter As Filter = New Filter()
emailFilter.Field = customer.GeneralInfoMainContact.Email
emailFilter.Condition = FilterCondition.Equals
emailFilter.Value = emailAddress
Dim searchfilters() As Filter = {emailFilter}
Dim searchCommands() As Command = {customer.CustomerSummary.CustomerID, customer.CustomerSummary.CustomerName, customer.GeneralInfoMainContact.Phone1, customer.GeneralInfoMainContact.Phone2, customer.GeneralInfoMainAddress.Country}
Dim searchResult As String()() = m_context.AR303000Export(searchCommands, searchfilters, 0, False, False)
Dim numRecords = searchResult.Length
Dim customerID As String = ""
Dim customerName As String = ""
If numRecords > 0 Then
' we found a user with that email address
Dim i As Integer = 0
For i = 1 To numRecords
customerID = searchResult(i - 1)(0)
customerName = searchResult(i - 1)(1)
customerPhone = searchResult(i - 1)(2)
customerCell = searchResult(i - 1)(3)
customerCountry = searchResult(i - 1)(4)
Next
End If
Dim spaceInName = customerName.IndexOf(" ")
If spaceInName >= 0 Then
customerFirstName = customerName.Substring(0, spaceInName)
customerLastName = customerName.Substring(spaceInName + 1)
End If
Return customerID
End Function
