Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »

Descrizione

Questo metodo può essere utilizzato per ottenere la lista dei prodotti presenti all'interno del sistema.

Utilizzo

I parametri richiesti da questa funzione sono:

  • productId: Id del prodotto di cui si vogliono ottenere informazioni, se impostato a false verranno ritornate tutti i prodotti presenti nel sistema.
  • languageId: Id della lingua in cui si vogliono ottenere il nome, la descrizione, i metadata e i tags del prodotto, per le lingue disponibile vedere il metodo getAvailableLanguages.
  • workflowType: Tipologia di prodotto che si vuole visualizzare.
  • editorAvailable: true se si vuole ottenere la lista di prodotti con editor attivo, false in caso contrario.
  • thumbSize: dimensione dell'immagine di preview espressa in pixel (la preview è generata in formato quadrato).

 In caso di successo ritorna un'array di oggetti così strutturati:

  • productId: Id del prodotto.
  • productCode: Codice del prodotto.
  • productSkuCode: Codice magazzino del prodotto.
  • productName: Nome del prodotto.
  • productDescription: Descrizione del prodotto.
  • productMetaDataDescription: Descrizione utilizzata dai motori di ricerca.
  • productMetaDataKeywords: Parole chiave indicizzate dai motori di ricerca.
  • productTags: Array di stringhe che rappresentano i tags associati al prodotto.
  • image: Url dell'immagine di preview del prodotto.
  • urlSeo: Se impostato contiene il path di navigazione google Friendly.
  • taxClassId: Id della classe di tassa associata al prodotto.
  • manufacturerId: Id del marchio associato al prodotto.
  • relatedProducts: Array di interi che rappresentano gli id dei prodotti associati.
  • relatedCategories: Array di interi che rappresentano gli id delle categorie associate.
  • relatedStores: Array di interi che rappresentano gli id degli store associati.
  • relatedLayouts: Array di interi che rappresentano di id dei layout associati.
  • rewardDefault: Numero di punti associati di default al prodotto
  • rewards: Array di strutture che rappresentano i punti associati al prodotti, così strutturati:
    • customerGroupId: Id del gruppo utenti collegato.
    • points: Numero di punti assegnati.
  • shippingAvailable: true se il prodotto richiede la spedizione, false in caso contrario.
  • dateAvailableStringa contenente la data di disponibilità del prodotto nel formato YYYY-MM-DD HH:MM:SS.
  • showDefaultPrice: true se durante la navigazione dello shop viene visualizzato il prezzo di partenza del prodotto, false in caso contrario.
  • viewCount: Numero di visualizzazione del prodotto.
  • enable: true se il prodotto è attivo, false in caso contrario.
  • sortOrder: Numero che rappresenta l'indice di visualizzazione per questo elemento.
  • dateCreated: Stringa contenente la data in cui è stato creato il prodotto nel formato YYYY-MM-DD HH:MM:SS.
  • dateUpdated: Stringa contenente la data in cui è stato modificato il prodotto nel formato YYYY-MM-DD HH:MM:SS.

Gestione errori

In caso di errore il metodo genererà un'eccezione che riporterà uno dei seguenti codici di errore:

  • ERROR_INVALID_PARAMS: Uno dei parametri inviati non è valido.
  • ERROR_INVALID_TOKEN: Non è stato effettuato nessun login in precedenza o la sessione è scaduta per inutilizzo.
  • ERROR_INVALID_IP: L'indirizzo ip del server che sta effettuando la chiamata non valido perchè non inserito nella whitelist associata alle credenziali.
  • ERROR_SERVER_UNAVAILABLE: Il server non è disponibile o si è verificato un errore di comunicazione generico.

ATTENZIONE

Possibili tipologie di workflow

Il campo workflowType può avere i seguenti valori:

  • SML: Prodotto stampato di piccolo formato.
  • LRG: Prodotto stampato di grande formato.
  • NPR: Prodotto non stampato.
  • DIG: Prodotto digitale.

In .NET è possibile utilizzare la struttura statica CatalogItemWorkflowTypes presente in Structures.

 

PHP
require "vendor/autoload.php"
 
try {
    $ezPrintSDK = new ezPrintSDKWrapper('http://demo.ezprint.it');
	$apiToken = $ezPrintSDK->cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG');
 
	$availableLanguages = $ezPrintSDK->backOffice->bGetAvailableLanguages();
	$products = $ezPrintSDK->backOffice->bGetCatalogProducts(false, $availableLanguages[0]['languageId'], false, false, 100);
	
	foreach($products as $product) {
        echo $product['productId'], ' ', $product['productName'];
    }
} catch (Exception $e) {
    echo 'Error Code: ',  $e->getMessage();
}

Node.js
try {
	var util = require('util');
	var ezPrintSDK = require('ezprint-sdk-wrapper');
	ezPrintSDK.initializeWrapper('http://demo.ezprint.it');
 
    var apiToken = ezPrintSDK.cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG');
 
	var availableLanguages = ezPrintSDK.backOffice.bGetAvailableLanguages();
	var products = ezPrintSDK.backOffice.bGetCatalogProducts(false, availableLanguages[0].languageId, false, false, 100);
 
	products.forEach(function(product) {
        console.log(product.productId);
        console.log(product.productName);
    });
} catch (ex) {
	console.log(ex);
}
.NET (C#)
try {
	ezPrintSDKWrapper.Client ezPrintSDK = new ezPrintSDKWrapper.Client("http://demo.ezprint.it");
	ezPrintSDK.cLoginAPI("1WHm0icsupAEm9fil9en","yCHZ0nKiyn1MU0DhpgmG");
	
	List<ezPrintSDKWrapper.Structures.languageItem> availableLanguages = ezPrintSDK.BackOffice.bGetAvailableLanguages();
    List<ezPrintSDKWrapper.Structures.productItem> products = ezPrintSDK.BackOffice.bGetCatalogProducts(false, availableLanguages[0].languageId, false, false, 100);
    
	System.Console.WriteLine("Catalog Product {0}: {1}", products[0].productId, products[0].productName);
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}

 

products 
  • No labels