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

Descrizione

Questo metodo può essere utilizzato per modificare una classe di tassa presente all'interno del sistema.

Utilizzo

I parametri richiesti da questa funzione sono:

  • taxClassId: Id della classe di tassa.
  • taxClassName: Array di oggetti che definiscano il nome della classe di tassa nelle varie lingue così strutturati:
    • languageId: Id della lingua.
    • value: Nome del gruppo nella lingua specificata, lunghezza minima 5 caratteri, massima 100.
  • taxClassDescription: Array di oggetti che definiscano la descrizione della classe di tassa nelle varie lingue così strutturati:
    • languageId: Id della lingua.
    • value: Nome del gruppo nella lingua specificata, lunghezza minima 5 caratteri, massima 100.
  • taxRules: Array di oggetti che rappresentano le regole di calcolo della classe di tassa, così composti:
    • taxRateId: Id dell'aliquota d'imposta associata alla regola.
    • based: Elemento in base a cui viene calcola la regola (shipping = Indirizzo di spedizione, payment = Indirizzo di fatturazione, store = Indirizzo del negozio).
    • priority: Numero che rappresenza l'ordine di esecuzione della regola.

 Il metodo non ha nessun valore di ritorno.

Gestione errori

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

  • ERROR_INVALID_TAX_CLASS_ID: Id della classe di tassa non valido.
  • 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.

 

PHP
require "vendor/autoload.php"
 
try {
    $ezPrintSDK = new ezPrintSDKWrapper('http://demo.ezprint.it');
	$apiToken = $ezPrintSDK->cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG');
 
	$availableLanguages = $ezPrintSDK->backOffice->bGetAvailableLanguages();
	$taxRates = $ezPrintSDK->backOffice->bGetTaxRates(false);
	$taxClasses = $ezPrintSDK->backOffice->bGetTaxClasses(false, $availableLanguages[0]['languageId']);
	
	$className = array();
    $classDescription = array();
	$taxRules = array(
		'taxRateId' => $taxRates[0]["taxRateId"],
		'based' 		=> "payment",
		'priority' 	=> 0
	);
  
    foreach($availableLanguages as $language) {
        $className[] = array(
            'languageId'    => $language['languageId'],
            'value'         => 'Nome ' . $language['languageName']
        );
  
        $classDescription[] = array(
            'languageId'    => $language['languageId'],
            'value'         => 'Descrizione ' . $language['languageName']
        );
    }
 
	$ezPrintSDK->backOffice->bEditTaxClass(taxClasses[0]["taxClassId"], $className, $classDescription, $taxRules);
} 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 taxRates = ezPrintSDK.backOffice.bGetTaxRates(false);
	var taxClasses = ezPrintSDK.backOffice.bGetTaxClasses(false, availableLanguages[0].languageId);
	var className = [];
    var classDescription = [];
  	var taxRules = [{
		taxRateId:  taxRates[0].taxRateId,
		based: 		=> "payment",
		priority: 	=> 0
	}];

    availableLanguages.forEach(function(language) {
        className.push({
            languageId:     language['languageId'],
            value:          'Nome ' . language['languageName']
        });
  
        classDescription.push({
            languageId:     language['languageId'],
            value:          'Descrizione ' . language['languageName']
        });
    });
 
	ezPrintSDK.backOffice.bEditTaxClass(taxClasses[0].taxClassId, className, classDescription, taxRules);
} 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.taxRateItem> taxRates = ezPrintSDK.BackOffice.bGetTaxRates(false);
	List<ezPrintSDKWrapper.Structures.localizationItem> className = new List<ezPrintSDKWrapper.Structures.localizationItem>();
    List<ezPrintSDKWrapper.Structures.localizationItem> classDescription = new List<ezPrintSDKWrapper.Structures.localizationItem>();
	List<ezPrintSDKWrapper.Structures.taxClassRuleItem> taxRules = new List<ezPrintSDKWrapper.Structures.taxClassRuleItem>();
	List<ezPrintSDKWrapper.Structures.taxClassItem> taxClasses = ezPrintSDK.BackOffice.bGetTaxClasses(false, availableLanguages[0].languageId);
  
	taxRules.Add(new ezPrintSDKWrapper.Structures.taxClassRuleItem() {taxRateId = taxRates[0].taxRateId, based = ezPrintSDKWrapper.Structures.taxClassRuleBased.shippingAddress, priority = 0});

    foreach (ezPrintSDKWrapper.Structures.languageItem language in availableLanguages) {
        className.Add(new ezPrintSDKWrapper.Structures.localizationItem() {languageId = language.languageId, value = "Name " + language.languageName});
        classDescription.Add(new ezPrintSDKWrapper.Structures.localizationItem() {languageId = language.languageId, value = "Descrizione " + language.languageName});
    }
 
	ezPrintSDK.BackOffice.bEditTaxClass(taxClasses[0].taxClassId, className, classDescription, taxRules);
} catch (ezPrintException ex) {
	string ErrorMessage = ex.Message;
}
  • No labels