Skip to main content
Skip table of contents

Sage: Artikel mit Sachmerkmalen suchen (FindByPhysicalCriterionArticle)


Sage: Artikel mit Sachmerkmalen suchen (FindByPhysicalCriterionArticle)

Lesen der Daten eines oder mehrerer Artikel mit einer Suche nach Sachmerkmalen. Es kann eine Kombination aus Artikelinformationen und Merkmalen für die Suche verwendet werden. Als Eingabe werden zwei Parametergruppen verwendet. In der ersten Eingabeparametergruppe können verschiedene Parameter mit den entsprechenden Suchkriterien des Artikels belegt werden. Falls die Parameter das Zeichen % enthalten, wird mit like gesucht, ansonsten mit =. Die einzelnen Suchkriterien werden mit UND verknüpft. Es können alle Felder der Tabelle g000 angegeben werden. Durch Belegen des Parameters lang_ext kann gesteuert werden, welche Sprache gelesen werden soll. Eine spezielle Bedeutung haben die Parameter: BasePricemenge_ab und BasePricedatum. Mit diesen beiden Feldern können für die Einkaufspreise die gewünschte Menge bzw. Datum angegeben werden. In der zweiten Parametergruppe werden die Suchkriterien der Variantenmerkmale eingetragen. Diese Parametergruppe muss vom Typ: tdv:variantensuche sein. In dieser indizierten Parametergruppe existieren die Parameter Name, Operator und Wert. Je Suchbedingung muss auf dem Parameter Name der Name des Merkmals, auf dem Parameter Operator die Art des Vergleichs und auf dem Parameter Wert der zu vergleichende Wert eingetragen werden. Als Operator sind folgende Vergleiche möglich:

=

ist gleich

>

Größer

>=

Größer oder gleich

<

Kleiner

<=

Kleiner oder gleich

!=

Ungleich


Falls die Suche der Artikel auch die Werte einzelner Merkmale liefern soll, ist in einer dritten Parametergruppe eine Liste der zu lesenden Merkmale mitzugeben. Diese Parametergruppe muss vom Typ tdv:sage_merkmal_zuordnen sein. In dieser indizierten Parametergruppe müssen folgende Parameter belegt werden:

Name

der Name des Merkmals. (Dieser Name muss auch in der Ergebnisparametergruppe enthalten sein, sonst kann das Merkmal nicht geschrieben werden)

Bezeichnung

Der Name eines Parameters der Ergebnisparamatergruppe, auf welchen die Bezeichnung der Ausprägung geschrieben wird. Diese Angabe ist optional


Die Funktion liefert in einer indizierten Parametergruppe alle gefundenen Artikel zurück. Die Indizierung der Parametergruppe wird bei Bedarf angepasst. Bei Verwendung von unbekannten Suchkriterien liefert der Service eine entsprechende Fehlermeldung. Diese wird über den Parameter Meldung übergeben. Vor einer Auswertung der Ausgabeparametergruppe sollte der Parameter Meldung überprüft werden.

Um die Geschwindigkeit dieser Funktion zu erhöhen, gibt es noch die Möglichkeit, die intern im Service zu lesenden Daten einzugrenzen. Mit dem Parameter select der Suchparametergruppe kann die Liste der zu lesenden Felder gesteuert werden. z.B.

art_such.select = ’identnr,ben,werkstoff,PhysicalCriterion/*’

oder

art_such.select = ’identnr,ben,werkstoff,BasePrice/ekpreis,PhysicalCriterion/fldname, PhysicalCriterion/fldtyp, PhysicalCriterion/ausprint, PhysicalCriterion/ausprtxt, PhysicalCriterion/ausprfloat, PhysicalCriterion/ausprdatuhr, PhysicalCriterion/txt’

Folgende Gruppen an Feldern kann spezifiziert werden:

Felder des Artikels

<Name>

Felder der Artikelbenennung

ArtivelName/<Name>

Basispreis

BasePrice/<Name>

Merkmal

PhysicalCriterion/<Name>

Ausprägungsbezeichnung

PhysicalCriterion/CriterionRangeDesignation/txt


Folgende Parameter der Parametergruppe werden gefüllt.:

abmessung, aendnr, agr, altern, aplidentnr, aplvar, ben, ben1, bestell, bild, bild_inet, bonuskz, breite, bs, cadkz, cadnr, ch, dataen, datneu, doku, dpreis, ekpreism, epreis, ekpreis, gewicht, hoehe, identnr, kalkpreis, klasse, kn_sebl, kn_variant, kn_vsperre, kontovb, kontovr, kontowe, kontowv, kostst, kurz_ben, laenge, lang_ext, lgnr, mc_var, me, me_abmessung, meb, mep, mev, mevk, menge_ab, norm, normnr, objektid, orpreis, pe, peek, pevk, preisgrp, preisgrp_e, prodgr, rabattkz, staffel, stlidentnr, stlvar, ts_m, ts_w, txt_nr, umrech, umrechb, umrechp, umrechvk, updatenr, useraen, userneu, var, var_akt, volumen, vpreis, waehrung, werkstoff, wgr, zeichnr, zu_ab, zuab_wert und die angegebenen Merkmale.

Syntax:

Status = f$SageService ( Service , 'FindByPhysicalCriterionArticle' , 'PGINPUTListe' , 'PGOUTPUT' )

 

Argument

Typ

Bedeutung

 

Service

Zeichenkette

URL des WebService Dienstes

 

'FindByPhysicalCriterionArticle'

Zeichenkette

Befehlskonstante

 

'PGINPUTListe'

Zeichenkette

Name der beiden mit Komma getrennten ePOS Parametergruppen mit den Suchkriterien.

 

'PGOUTPUT'

Zeichenkette

Name der ePOS Parametergruppe mit den Ergebnisdaten.

Ergebnis:

Ganzzahl

Status der Funktion:

1 : die Servicefunktion wurde erfolgreich aufgerufen

-1 : die Komponente eposvbcomexe konnte nicht gefunden werden

-2 : keine URL der Funktion angegeben

-4 : allgemeiner Fehler

Beispiel 1 :

B7Service = 'http://b7demo.sagebaeurer.de/br71/callin/epos_soap'

Variantensuche[1].Name = 'SPANNUNG'

Variantensuche[1].Operator = '='

Variantensuche[1].Wert = '12 Volt'

Status = f$SageService ( B7Service , 'FindByPhysicalCriterionArticle', 'art_such,Variantensuche' , 'art_erg' )

Beispiel 2 :

B7Service = 'http://b7demo.sagebaeurer.de/br71/callin/epos_soap'

art_such.BasePricemenge_ab = 2

Variantensuche[1].Name = 'SPANNUNG'

Variantensuche[1].Operator = '='

Variantensuche[1].Wert = '12 Volt'

Artikelmerkmale[1].Name = 'SPANNUNG'

Artikelmerkmale[2].Name = 'BREITE'

Artikelmerkmale[3].Name = 'PRUEF_STROM'

Artikelmerkmale[3].Bezeichnung = 'PRUEF_STROM_TXT'

Status = f$SageService ( B7Service , 'FindByPhysicalCriterionArticle', 'art_such,Variantensuche,Artikelmerkmale' , 'art_erg' )

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.