Verwenden des Filters mit dem Kundenbildschirm in der Acumatica API

Wenn ich mir die API-Beispiele von Acumatica anschaue, habe ich Code zum Exportieren einiger Daten vom Kundenbildschirm auf der Grundlage eines einzelnen Filters geschrieben. Der Filter sollte erzwingen, dass die E-Mail-Adresse des Kunden einem bestimmten Wert entspricht (sobald dies funktioniert, überprüfe ich auch ein benutzerdefiniertes Feld mit einem verschlüsselten Kennwort). Aus irgendeinem Grund gibt die Exportfunktion jeden Kundendatensatz in unserer Datenbank zurück. Kann jemand sagen, was ich mit meinem Filter oder etwas anderem falsch mache? Code und Screenshot vom Debugger sind unten.

Vielen Dank

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

Antworten auf die Frage(2)

Ihre Antwort auf die Frage