OBS/Amazon/MakroFunktionen: Unterschied zwischen den Versionen

Aus OBS Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „=Makro Funktionen= Folgende Funktionen stehen in den Makros zur Verfügung um auf Amazon-Daten zuzugreifen: function GetAmazonShopNr(): string; gibt die Amazo…“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
=Makro Funktionen=
=Makro Funktionen=
Folgende Funktionen stehen in den Makros zur Verfügung um auf Amazon-Daten zuzugreifen:
Folgende Funktionen stehen in den Makros zur Verfügung um auf Amazon-Daten zuzugreifen:


function GetAmazonShopNr(): string;


==GetAmazonShopNr(): string==
gibt die Amazon-Shopnummer zurück. Die Shopnummer ist nötig um die Artikel aus der Tabelle shp_artikel auszulesen.  
gibt die Amazon-Shopnummer zurück. Die Shopnummer ist nötig um die Artikel aus der Tabelle shp_artikel auszulesen.  
Codebeispiel:
Codebeispiel:
Zeile 11: Zeile 10:
  cSql    := 'SELECT sa_artnr FROM SHP_ARTIKEL WHERE sa_shopnr = ' + DB_SQLVal(cShopNr);
  cSql    := 'SELECT sa_artnr FROM SHP_ARTIKEL WHERE sa_shopnr = ' + DB_SQLVal(cShopNr);


procedure SetAmazonListingPrice(cArtNr: string; nListenPreis: Double);


==SetAmazonListingPrice(cArtNr: string; nListenPreis: Double)==
Setzt den Listenpreis (Bruttopreis OHNE Versandkosten) eines Artikels in Amazon.
Setzt den Listenpreis (Bruttopreis OHNE Versandkosten) eines Artikels in Amazon.


function GetAmazonCompetitorPrice(cArtNr: string): TAmazonPriceTable;


==GetAmazonListingPrice(cArtNr: string): TAmazonPrice==
Gibt den eigenen Preis zu einem Artikel zurück. Der eigene Preis wird, genau wie der Konkurrenzpreis, regelmässig ausgelesen. Die Funktion gibt den Wert zurück der zuletzt ausgelesen wurde.
var oPreis: TAmazonPrice;
[...]
oPreis := GetAmazonListingPrice('ARTIKELNUMMER');
oPreis.nListing  <- Listenpreis
oPreis.nShipping  <- Versandkosten
==GetAmazonCompetitorPrice(cArtNr: string): TAmazonPriceTable==
Gibt eine Liste aller Konkurrenzpreise für einen Artikel zurück.
Gibt eine Liste aller Konkurrenzpreise für einen Artikel zurück.
* der Rückgabewert ist ein Array vom Typ TAmazonPrice das nach Preis sortiert ist.
* der Rückgabewert ist ein Array vom Typ TAmazonPrice das nach Preis sortiert ist.
Zeile 34: Zeile 44:
     // oPreise[0].nShipping sind die zugehörigen Versandkosten
     // oPreise[0].nShipping sind die zugehörigen Versandkosten
     // Der Brutto-VK auf Amazon ist die Summer beider Werte.
     // Der Brutto-VK auf Amazon ist die Summer beider Werte.
 
     // durchläuft alle Preise vom Niedrigsten bis zum Höchsten
     // durchläuft alle Preise vom Niedrigsten bis zum Höchsten
     for i := 0 to Length(oPreise) + 1 do begin
     for i := 0 to Length(oPreise) + 1 do begin
Zeile 41: Zeile 51:
   end;
   end;
  end;
  end;
==GetAmazonFee(nListing, nShipping: Double): Double==
Berechnet die ungefähr anfallenden Amazon-Gebühren zu einem Preis. Es müssen Listenpreis und Versandkosten übergeben werden.
==GetArtNrBySku(cSku: string): string==
Gibt die OBS-Artikelnummer anhand der SKU zurück.
==GetSkuByArtNr(cArtNr: string): string==
Gibt die SKU anhand der OBS-Artikelnummer zurück.
==GetAmazonMail(cAufNr: string): string==
Gibt die eMail-Adresse des Kunden zu einer Auftragsnummer zurück. Handelt es sich bei dem Auftrag nicht um einen Amazon-Auftrag ist der Rückgabewert leer.

Version vom 7. Juli 2015, 07:14 Uhr

Makro Funktionen

Folgende Funktionen stehen in den Makros zur Verfügung um auf Amazon-Daten zuzugreifen:


GetAmazonShopNr(): string

gibt die Amazon-Shopnummer zurück. Die Shopnummer ist nötig um die Artikel aus der Tabelle shp_artikel auszulesen. Codebeispiel:

cShopNr := GetAmazonShopNr();
cSql    := 'SELECT sa_artnr FROM SHP_ARTIKEL WHERE sa_shopnr = ' + DB_SQLVal(cShopNr);


SetAmazonListingPrice(cArtNr: string; nListenPreis: Double)

Setzt den Listenpreis (Bruttopreis OHNE Versandkosten) eines Artikels in Amazon.


GetAmazonListingPrice(cArtNr: string): TAmazonPrice

Gibt den eigenen Preis zu einem Artikel zurück. Der eigene Preis wird, genau wie der Konkurrenzpreis, regelmässig ausgelesen. Die Funktion gibt den Wert zurück der zuletzt ausgelesen wurde.

var oPreis: TAmazonPrice;
[...]
oPreis := GetAmazonListingPrice('ARTIKELNUMMER');

oPreis.nListing   <- Listenpreis
oPreis.nShipping  <- Versandkosten


GetAmazonCompetitorPrice(cArtNr: string): TAmazonPriceTable

Gibt eine Liste aller Konkurrenzpreise für einen Artikel zurück.

  • der Rückgabewert ist ein Array vom Typ TAmazonPrice das nach Preis sortiert ist.
  • Derzeit wird immer nur ein Wert zurückgegeben, die Funktionalität für mehrere Werte folgt später.
  • Zugriff auf das Array mit oPreise[Index]
  • Jeder Eintrag hat die beiden Eigenschaften nListing (Listenpreis) und nShipping(Versandkosten) vom Typ Double

Beispiel für die Ausgabe aller Preise in dem Array:

procedure Test();
var oPreise : TAmazonPriceTable;
    i       : Integer;
begin
  oPreise := GetAmazonCompetitorPrice('artikelnummer');
  if (Length(oPreise) > 0) then begin
    // oPreise[0].nListing ist der günstigste Listenpreis
    // oPreise[0].nShipping sind die zugehörigen Versandkosten
    // Der Brutto-VK auf Amazon ist die Summer beider Werte.

    // durchläuft alle Preise vom Niedrigsten bis zum Höchsten
    for i := 0 to Length(oPreise) + 1 do begin
      Ausgabe(oPreise[i].nListing);
    end;
  end;
end;


GetAmazonFee(nListing, nShipping: Double): Double

Berechnet die ungefähr anfallenden Amazon-Gebühren zu einem Preis. Es müssen Listenpreis und Versandkosten übergeben werden.


GetArtNrBySku(cSku: string): string

Gibt die OBS-Artikelnummer anhand der SKU zurück.


GetSkuByArtNr(cArtNr: string): string

Gibt die SKU anhand der OBS-Artikelnummer zurück.


GetAmazonMail(cAufNr: string): string

Gibt die eMail-Adresse des Kunden zu einer Auftragsnummer zurück. Handelt es sich bei dem Auftrag nicht um einen Amazon-Auftrag ist der Rückgabewert leer.