Webservice Filter anwenden - wie richtig?

18. März 2011 09:18

Guten Morgen,

ich habe Page 30 als Webservice veröffentlicht und filter auf das Feld "Blocked":
Code:
 Dim filter As New NAVServiceProduct.Product_Filter()
filter.Field = NAVServiceProduct.Product_Fields.Blocked
filter.Criteria = "0"

Statt filter.Criteria = "0" könnte ich auch filter.Criteria = false oder filter.Criteria = "Nein" oder filter.Criteria = "No" schreiben.

Ist das von den installierten Sprachversionen abhängig oder ist es egal welche Version man verwendet?

Volker

Re: Webservice Filter anwenden - wie richtig?

18. März 2011 10:25

Bei C# sind das ein paar Zeilen mehr code.

Zum Filtern
Code:
           // Create filter for searching for customers.
            List<Customer_Filter> filterArray = new List<Customer_Filter>();
            Customer_Filter nameFilter = new Customer_Filter();
            nameFilter.Field = Customer_Fields.Name;
            nameFilter.Criteria = "C*";
            filterArray.Add(nameFilter);
...
Customer[] list = service.ReadMultiple(filter.ToArray(), null, 100);
            foreach (Customer c in list)
            {
                PrintCustomer(c);
            }
            Msg("End of List");


Für Single Line per "GET" :
Code:
customer = service.ReadByRecId("Customer: " + id.ToUpper());

Re: Webservice Filter anwenden - wie richtig?

18. März 2011 10:38

Mein Filter geht ja, aber ich will ja nicht für jede NAV-Installation mein Programm neu kompilieren nur weil vielleicht irgendwas von den installierten Sprachversionen abhängig ist.

filter.Criteria = "0"
filter.Criteria = false
filter.Criteria = "Nein"
filter.Criteria = "No"

Alle 4 Vorschlage kommen zum gleichen (richtigen) Ergebnis.

Nur kann ich mir nicht vorstellen, dass ein japanisches NAV den Filter "Nein" versteht. Oder doch?

Volker

Re: Webservice Filter anwenden - wie richtig?

18. März 2011 10:59

Ich würde es wohl em ehsten mit English versuchen, weil dies "eigentlich" in jeder Installation als Feldname vorhanden sein sollte. Ich meine damit nicht die Caption.
Obwohl... wenn 0 funktioniert, wäre das wohl am sprachneutralstem.