VIES-Programmierbibliotheken

Programmierbibliotheken ermöglichen es Ihnen, anhand der eingegebenen EU-Umsatzsteuernummer nach Unternehmerdaten zu suchen. Derzeit sind API-Bibliotheken für die folgenden Programmiersprachen verfügbar:

  • .NET (C#, Visual Basic)
  • Java
  • JavaScript (Node.js)
  • PHP
  • Python
  • C/C++

API bietet die folgenden Funktionen:

  • getVIESData – Funktion zur Bestätigung der Aktivität der EU-Umsatzsteuernummer, die von einem der Mitgliedstaaten der Europäischen Union vergeben wurde,
  • getVIESDataParsedFunktion zur Bestätigung der Aktivität der von einem der Mitgliedstaaten der Europäischen Union zugewiesenen EU-Umsatzsteuer-Identifikationsnummer und zur Rückgabe der analysierten Händleradresse,
  • getVIESDataAsync – asynchrone Funktion, die es Ihnen ermöglicht, basierend auf dem gesendeten Stapel von Umsatzsteuer-Identifikationsnummern den aktuellen EU-Umsatzsteuerstatus und die Händlerdaten abzurufen.
  • getVIESDataAsyncResult – Mit der Funktion können Sie Batch-Ergebnisse basierend auf dem von der Funktion getVIESDataAsync zurückgegebenen Token abrufen
  • getAccountStatus – Funktion zum Abrufen aktueller Informationen zum Benutzerkonto.

Integration

Alle Bibliotheken mit Quellcodes stehen zum Download auf der zur Verfügung Download Seite. Darüber hinaus ist der Quellcode für die Bibliotheken auch in unserem offiziellen Repository verfügbar GitHub.

Die Art der Einbindung der Bibliothek hängt von der gewählten Programmiersprache ab. Für die Sprachen, die die Bibliotheksverwaltung auf der Grundlage eines zentralen Repositorys unterstützen, ist es möglich, sie zu verwenden.

// NuGet Gallery
// https://www.nuget.org/packages/VIESAPI.VIESAPIClient

PM> Install-Package VIESAPI.VIESAPIClient
// No central repository support
// Maven
// https://viesapi.eu/maven/

<repository>
    <id>viesapi</id>
    <url>https://viesapi.eu/maven/releases</url>
</repository>

<dependency>
    <groupId>eu.viesapi</groupId>
    <artifactId>viesapi-client</artifactId>
    <version>1.2.6</version>
</dependency>
// NPM
// https://www.npmjs.com/package/viesapi-client

npm install viesapi-client
// Packagist (Composer)
// https://packagist.org/packages/viesapi/client

composer require viesapi/client
# No central repository support

pip install viesapi-python-client-1.2.6.zip
' No central repository support

Authentifizierung

Um die korrekte Authentifizierung durchzuführen, müssen die korrekten Werte der id und key Parameter sollten während der Erstellung des Client-Objekts bereitgestellt werden. Das id -Parameter sollte eine gültige Schlüsselkennung enthalten, die für die Autorisierung verwendet wird. Das key Der Parameter sollte einen gültigen Wert des für die Autorisierung verwendeten Schlüssels enthalten. Die Schlüsselkennung und der Schlüssel werden vom Benutzer nach dem Einloggen in sein Konto auf der generiert viesapi.eu Portal. Der Prozess zum Generieren der Schlüssel und Identifikatoren wurde oben detailliert beschrieben.

Das folgende Beispiel veranschaulicht die Verwendung der Bibliotheksfunktionen:

using viesapiLibrary.dll;

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient viesapi = new VIESAPIClient("id", "key");
#include "viesapi.h"

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient* viesapi = NULL;
viesapi_new_prod(&viesapi, "id", "key");
import pl.viesapi.client.*;

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
VIESAPIClient viesapi = new VIESAPIClient("id", "key");
var VIESAPI = require('viesapiclient');

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
var viesapi = new VIESAPI.VIESAPIClient('id', 'key');
require_once 'VIESAPI/VIESAPIClient.php';

\VIESAPI\VIESAPIClient::registerAutoloader();

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
$viesapi = new \VIESAPI\VIESAPIClient('id', 'key');
from viesapi import *
from pprint import pprint

// Create the service client object
// id - a string representing the API key identifier
// key - a string representing the API key
viesapi = VIESAPIClient('id', 'key')
' Create the service client object
' id - a string representing the API key identifier
' key - a string representing the API key
Dim viesapi As New VIESAPIClient
viesapi.URL = "https://www.viesapi.eu/api"
viesapi.Id = "id"
viesapi.Key = "key"

Aufmerksamkeit! Während des Authentifizierungsprozesses wird die aktuelle Uhrzeit des Computers des Clients verwendet. Stellen Sie daher im Falle von Authentifizierungsproblemen beim Versuch, sich mit dem viesapi.eu-System zu verbinden, zunächst sicher, dass der Computer oder Server, von dem aus die Verbindung hergestellt wird, die richtige aktuelle Uhrzeit und Zeitzone hat. Weitere Informationen über die vom viesapi.eu-System verwendete Methode zur Authentifizierung von Anfragen finden Sie hier hier.

Überprüfung der EU-Umsatzsteuernummern

Die Bestätigung der EU-Umsatzsteuer-Identifikationsnummer erfolgt durch einen Anruf bei der getVIESData Funktion, deren Parameter die EU-Umsatzsteuernummer ist, die wir überprüfen möchten. Die Funktion ermöglicht die Überprüfung von EU-Umsatzsteuernummern, die von allen Mitgliedsstaaten der Europäischen Union ausgestellt wurden.

Das folgende Beispiel veranschaulicht, wie Funktionen in Bibliotheken verwendet werden:

// A call to a method that returns data from a VIES system
VIESData vies = viesapi.GetVIESData("PL1234567890");

if (vies != null) {
	Console.WriteLine(vies);
}
else {
	Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// A call to a method that returns data from a VIES system
VIESData* vies = viesapi_get_vies_data(viesapi, "PL1234567890");

if (vies != NULL) {
	printf("Kraj: %s\n", vies->CountryCode);
	printf("VAT ID: %s\n", vies->VATNumber);
	printf("Aktywny: %d\n", vies->Valid);
}
else {
	printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.getVIESData("PL1234567890");

if (vies != null) {
	System.out.println(vies);
}
else {
	System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// A call to a method that returns data from a VIES system
viesapi.getVIESData('PL1234567890').then((vies) => {
	console.log(vies.toString());
}).catch((e) => {
	console.log(e.message);
});
// A call to a method that returns data from a VIES system
$vies = $viesapi->get_vies_data('PL1234567890');

if ($vies) {
	print_r($vies);
}
else {
	echo '<p>Error: ' . $viesapi->get_last_error() . '</p>';
}
# A call to a method that returns data from a VIES system
vies = viesapi.get_vies_data('PL1234567890')

if vies:
    pprint(vars(vies))
else:
    print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' A call to a method that returns data from a VIES system
Dim vies As VIESData
Set vies = viesapi.GetVIESData("PL1234567890")

If vies Is Nothing Then
	Console.WriteLine("Error: {0}", viesapi.LastError)
Else
	Console.WriteLine(vies.ToString())
End If

Detaillierte Beschreibung der zurückgegebenen Attribute:

  • uid – eindeutige Abfrage-ID, generiert von viesapi.eu,
  • countryCode – Ländercode, in dem das Unternehmen registriert ist, das mit der in der Anfrage angegebenen EU-Umsatzsteuernummer verknüpft ist,
  • vatNumber – EU-Umsatzsteuernummer des in der Anfrage angegebenen verifizierten Unternehmens,
  • valid – Antwort des MIAS-Dienstes, die über den aktuellen EU-Mehrwertsteuerstatus des überprüften Unternehmens informiert:
    • true – die in der Anfrage angegebene EU-Umsatzsteuernummer ist gültig,
    • false – die in der Anfrage angegebene EU-Umsatzsteuer-Identifikationsnummer ist ungültig,
  • traderName – Handelsname des Unternehmens,
  • traderCompanyType – gab immer eine Zeichenfolge mit „-“-Zeichen zurück,
  • traderAddress – Firmenadresse, an der das Unternehmen eingetragen ist,
  • id – eindeutige Abfragekennung, die vom MIAS-System generiert wird (Konsultationsnummer)
  • date – Ausführungsdatum abfragen
  • source – Datenquelle, immer: http://ec.europa.eu

Überprüfung der EU-Umsatzsteuer-Identifikationsnummer mit analysierter Händleradresse

Sie können die EU-Umsatzsteuer-Identifikationsnummer auch telefonisch unter getVIESDataParsed Funktion, deren Parameter die zu überprüfende EU-Umsatzsteuer-Identifikationsnummer ist. Durch den Aufruf dieser Funktion erhalten Sie neben Informationen zum Umsatzsteuerstatus auch die geparste Händleradresse.

Notiz! Aufgrund der fehlenden Daten, die das VIES für Händler aus Deutschland und Spanien liefert, nicht zurückkehren eine analysierte Händleradresse (traderAddressComponent) für diese Länder.

Wichtiger Haftungsausschluss

Die Parsing-Funktion verwendet externe KI-Algorithmen und APIs, um automatisch Attribute wie Stadt, Postleitzahl, Straße mit Straßennummer (Gebäudenummer) und Hausnummer zu extrahieren. Daher können wir die korrekte Funktionsweise von 100% nicht garantieren.

Das folgende Beispiel veranschaulicht, wie Funktionen in Bibliotheken verwendet werden:

// A call to a method that returns data from a VIES system
VIESData vies = viesapi.GetVIESDataParsed("PL1234567890");

if (vies != null) {
	Console.WriteLine(vies);
}
else {
	Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// A call to a method that returns data from a VIES system
VIESData* vies = viesapi_get_vies_data_parsed(viesapi, "PL1234567890");

if (vies != NULL) {
	printf("Kraj: %s\n", vies->CountryCode);
	printf("VAT ID: %s\n", vies->VATNumber);
	printf("Aktywny: %d\n", vies->Valid);
}
else {
	printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// A call to a method that returns data from a VIES system
VIESData vies = viesapi.getVIESDataParsed("PL1234567890");

if (vies != null) {
	System.out.println(vies);
}
else {
	System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// A call to a method that returns data from a VIES system
viesapi.getVIESDataParsed('PL1234567890').then((vies) => {
	console.log(vies.toString());
}).catch((e) => {
	console.log(e.message);
});
// A call to a method that returns data from a VIES system
$vies = $viesapi->get_vies_data_parsed('PL1234567890');

if ($vies) {
	print_r($vies);
}
else {
	echo '<p>Error: ' . $viesapi->get_last_error() . '</p>';
}
# A call to a method that returns data from a VIES system
vies = viesapi.get_vies_data_parsed('PL1234567890')

if vies:
    pprint(vars(vies))
else:
    print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' A call to a method that returns data from a VIES system
Dim vies As VIESData
Set vies = viesapi.GetVIESDataParsed("PL1234567890")

If vies Is Nothing Then
	Console.WriteLine("Error: {0}", viesapi.LastError)
Else
	Console.WriteLine(vies.ToString())
End If

Detaillierte Beschreibung der zurückgegebenen Attribute:

  • uid – eindeutige Abfrage-ID, generiert von viesapi.eu,
  • countryCode – Ländercode, in dem das Unternehmen registriert ist, das mit der in der Anfrage angegebenen EU-Umsatzsteuernummer verknüpft ist,
  • vatNumber – EU-Umsatzsteuernummer des in der Anfrage angegebenen verifizierten Unternehmens,
  • valid – Antwort des MIAS-Dienstes, die über den aktuellen EU-Mehrwertsteuerstatus des überprüften Unternehmens informiert:
    • true – die in der Anfrage angegebene EU-Umsatzsteuernummer ist gültig,
    • false – die in der Anfrage angegebene EU-Umsatzsteuer-Identifikationsnummer ist ungültig,
  • traderName – Handelsname des Unternehmens,
  • traderCompanyType – gab immer eine Zeichenfolge mit „-“-Zeichen zurück,
  • traderAddress – Firmenadresse, unter der das Unternehmen registriert ist (Originalformat)
  • traderAddressComponentKomponentengruppierungsadressdetails
    • country – Name des Händlerlandes in seiner Landessprache
    • postalCode – Postleitzahl der Adresse des Händlers
    • city – Stadt der Adresse des Händlers
    • street -Straße der Adresse des Händlers
    • streetNumber – Hausnummer der Adresse des Händlers
    • houseNumber – Hausnummer der Adresse des Händlers
  • id – eindeutige Abfragekennung, die vom MIAS-System generiert wird (Konsultationsnummer)
  • date – Ausführungsdatum abfragen
  • source – Datenquelle, immer: http://ec.europa.eu

Batch-Prüfung (asynchron) der EU-Mehrwertsteuernummern

getVIESDataAsync – asynchrone Funktion, die es Ihnen ermöglicht, basierend auf dem gesendeten Stapel von Umsatzsteuer-Identifikationsnummern den aktuellen EU-Umsatzsteuerstatus und die Händlerdaten abzurufen.
Geben Sie als Parameter ein String-Array mit EU-Umsatzsteuernummern an, für die der Status als EU-Umsatzsteuerzahler geprüft und die Daten des Händlers heruntergeladen werden sollen.

Die Mindestanzahl der zu übermittelnden EU-Umsatzsteuernummern beträgt 2, die Höchstanzahl 99.

Eine korrekt aufgerufene Funktion gibt ein Token zurück, das zum Abrufen der Anfrageergebnisse erforderlich ist. Das folgende Beispiel veranschaulicht die Verwendung von Funktionen in Bibliotheken:

// Upload batch of VAT numbers and get their current VAT statuses and traders data
List numbers = new List {
	"PL1234567890,
	"DK64839576",
	"CZ8475630234"
};

string token = viesapi.GetVIESDataAsync(numbers);

if (token != null) {
	Console.WriteLine("Batch token: " + token);
} else {
	Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
char* numbers[] = {
	"PL1234567890,
	"DK64839576",
	"CZ8475630234"
};

token = viesapi_get_vies_data_async(viesapi, numbers, 3);

if (token != NULL) {
	printf("Batch token:  %s\n", token);
} else {
	printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
List numbers = new ArrayList<>();
numbers.add("PL1234567890");
numbers.add("DK64839576");
numbers.add("CZ8475630234");

String token = viesapi.getVIESDataAsync(numbers);

if (token != null) {
	System.out.println("Batch token: " + token);
} else {
	System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
}
// Upload batch of VAT numbers and get their current VAT statuses and traders data
const numbers = [
	'PL1234567890',
	'DK64839576',
	'CZ8475630234'
];

viesapi.getVIESDataAsync(numbers).then((token) => {
	console.log('Batch token: ' + token);
}).catch((e) => {
	console.log(e.message);
});
// Upload batch of VAT numbers and get their current VAT statuses and traders data
$numbers = array(
	'PL1234567890',
	'DK64839576',
	'CZ7710043187'
);

$token = $viesapi->get_vies_data_async($numbers);

if ($token) {
	echo '<pre>Batch token: ' . $token . '</pre>';
} else {
	echo '<p>Error: ' . $viesapi->get_last_error() . ' (code: ' . $viesapi->get_last_error_code() . ')</p>';
}
# Upload batch of VAT numbers and get their current VAT statuses and traders data
numbers = [
    'PL1234567890',
    'DK64839576',
    'CZ7710043187'
]

token = viesapi.get_vies_data_async(numbers)

if token:
    print('Batch token: ' + token)
else:
    print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' Not supported yet

Aufgrund der asynchronen Natur der Funktion können die Ergebnisse nach ca. 2-3 Minuten abgerufen werden. Dabei spielt es keine Rolle, ob 2 oder 99 EU-Umsatzsteuernummern in der Anfrage übermittelt wurden.

Wenn mindestens eine in der Anfrage übergebene EU-Umsatzsteuer-Identifikationsnummer ein falsches Format aufweist, gibt das System die Fehlermeldung „Die Umsatzsteuer-Identifikationsnummer ist ungültig“ zurück.

Um die Ergebnisse zur gesendeten Anfrage abzurufen, rufen Sie die getVIESDataAsyncResult Funktion, die den Tokenwert als Eingabeparameter bereitstellt.

Wichtiger Hinweis!

  1. Die Funktion wurde als Workaround für den vom VIES-System zurückgegebenen Fehler vorbereitet: „The maximum number of concurrent requests has been reached” (MS_MAX_CONCURRENT_REQ). Wir empfehlen, es beim Senden von Anfragen für Deutschland (DE) Und Frankreich (FR), was den oben genannten Fehler zurückgab.
  2. Bis der Prozess der Überprüfung aller in der Anfrage übermittelten EU-Umsatzsteuer-Identifikationsnummern abgeschlossen ist, werden alle weiteren Versuche abgelehnt und der Fehler korrigiert.The maximum number of batch request has been reached, please re-submit your request later“.

getVIESDataAsyncResult– Mit dieser Funktion können Sie Batch-Ergebnisse basierend auf dem vom getVIESDataAsync Funktion.

Das folgende Beispiel veranschaulicht, wie Funktionen in Bibliotheken verwendet werden:

// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
BatchResult result;

while ((result = viesapi.GetVIESDataAsyncResult(token)) == null) {
	if (viesapi.LastErrorCode != Error.BATCH_PROCESSING) {
		Console.WriteLine("Error: " + viesapi.LastError + " (code: " + viesapi.LastErrorCode + ")");
		return;
	}

	Console.WriteLine("Batch is still processing, waiting...");
	Thread.Sleep(30000);
}

// Batch result is ready
Console.WriteLine(result);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
while ((result = viesapi_get_vies_data_async_result(viesapi, token)) == NULL) {
	if (viesapi_get_last_err_code(viesapi) != VIESAPI_ERR_BATCH_PROCESSING) {
		printf("Error: %s (code: %d)\n", viesapi_get_last_err(viesapi), viesapi_get_last_err_code(viesapi));
		return;
	}

	printf("Batch is still processing, waiting...\n");
	Sleep(30000);
}

// Batch result is ready
for (i = 0; i < result->NumbersCount; i++) {
	printf("Country:  %s\n", result->Numbers[i]->CountryCode);
	printf("VAT ID:   %s\n", result->Numbers[i]->VATNumber);
	printf("Is valid: %d\n", result->Numbers[i]->Valid);
	printf("\n");
}

for (i = 0; i < result->ErrorsCount; i++) {
	printf("Country:  %s\n", result->Errors[i]->CountryCode);
	printf("VAT ID:   %s\n", result->Errors[i]->VATNumber);
	printf("Error:    %s\n", result->Errors[i]->Error);
	printf("\n");
}
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
BatchResult result;

while ((result = viesapi.getVIESDataAsyncResult(token)) == null) {
	if (viesapi.getLastErrorCode() != eu.viesapi.client.Error.BATCH_PROCESSING) {
		System.out.println("Error: " + viesapi.getLastError() + " (code: " + viesapi.getLastErrorCode() + ")");
		return;
	}

	System.out.println("Batch is still processing, waiting...");
	Thread.sleep(30000);
}

// Batch result is ready
System.out.println(result);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
const looper = setInterval(() => {
	viesapi.getVIESDataAsyncResult(token).then((result) => {
		// Batch result is ready
		console.log(result);
		clearInterval(looper);
	}).catch((e) => {
		console.log(e.message);
	});
}, 30000);
// Check batch result and download data (at production it usually takes 2-3 min for result to be ready)
while (($result = $viesapi->get_vies_data_async_result($token)) === false) {
	if ($viesapi->get_last_error_code() !== \VIESAPI\Error::BATCH_PROCESSING) {
		echo '<p>Error: ' . $viesapi->get_last_error() . ' (code: ' . $viesapi->get_last_error_code() . ')</p>';
		die();
	}

	echo '<p>Batch is still processing, waiting...</p>';
	sleep(30);
}

// Batch result is ready
echo '<pre>' . print_r($result, true) . '</pre>';
# Upload batch of VAT numbers and get their current VAT statuses and traders data
numbers = [
    'PL1234567890',
    'DK64839576',
    'CZ7710043187'
]

token = viesapi.get_vies_data_async(numbers)

if token:
    print('Batch token: ' + token)
else:
    print('Error: ' + viesapi.get_last_error() + ' (code: ' + str(viesapi.get_last_error_code()) + ')')
' Not supported yet

Für jede im Batch-Aufruf übergebene EU-Umsatzsteuernummer werden Attribute verwendet, die mit der Antwort auf die getVIESData Funktion werden zurückgegeben.

Abrufen von Informationen über den Kontostatus des Benutzers

Die Funktion ermöglicht es Ihnen, alle grundlegenden Informationen zum Benutzerkonto herunterzuladen, die nach dem Einloggen in das Konto auf dem Portal viesapi.eu angezeigt werden. Die Funktion liefert auch Informationen über die maximale Anzahl der Abfragen, die im ausgewählten Tarif verfügbar sind (z. B. 5.000 für den Business-Tarif) und die Gesamtzahl aller Abfragen, die im aktuellen Monat auf dem Konto des Benutzers getätigt wurden.

Aufmerksamkeit! Der Aufruf der Funktion tut es nicht erhöhen die Anzahl der gestellten Anfragen.

Das folgende Beispiel veranschaulicht die Verwendung der Bibliotheksfunktionen.

// Get current account status
AccountStatus account = viesapi.GetAccountStatus();

if (account != null) {
     Console.WriteLine(account);
}
else {
     Console.WriteLine("Error: " + viesapi.LastError);
}
// Get current account status
AccountStatus* account = viesapi_get_account_status(viesapi);

if (account != NULL) {
	printf("Plan name: %s\n", account->BillingPlanName);
	printf("Price: %.2f\n", account->SubscriptionPrice);
	printf("Number of queries: %d\n", account->TotalCount);
}
else {
	printf("Error: %s\n", viesapi_get_last_err(viesapi));
}
// Get current account status
AccountStatus account = viesapi.getAccountStatus();

if (account != null) {
     System.out.println(account);
}
else {
     System.err.println("Error: " + viesapi.getLastError());
}
// Get current account status
viesapi.getAccountStatus().then((account) => {
	console.log(account.toString());
}).catch((e) => {
	console.log(e.message);
});
// Get current account status
$account = $viesapi->get_account_status();

if ($account) {
     echo '<p>' . print_r($account, true) . '</p>';
}
else {
     echo '<p>Error: ' . $viesapi->get_last_error() . '</p>';
}
# Get current account status
account = viesapi.get_account_status()

if account:
    pprint(vars(account))
else:
    print u'Error: ' + viesapi.get_last_error()
'Get current account status
Dim account As AccountStatus
Set account = viesapi.GetAccountStatus()

If account Is Nothing Then
	Console.WriteLine("Error: {0}", viesapi.LastError)
Else
	Console.WriteLine(account.ToString())
End If

Registrieren einer .NET-Bibliothek als COM-Objekt

Die viesapiLibrary.dll Bibliothek kann im Windows-System als sog. registriert werden COM Objekt. Dann können die Funktionen der Bibliothek aus vielen verschiedenen Programmiersprachen und vorgefertigten Anwendungen referenziert werden, inkl. Microsoft Excel, Access, SQL Server, Dynamics oder Visual FoxPro.

Gehen Sie folgendermaßen vor, um eine Bibliothek als COM-Objekt zu registrieren:

  1. Laden Sie die herunter .NET-Bibliothek archivieren und auf einer lokalen Festplatte an einem beliebigen Ort entpacken.
  2. Gehen Sie in das Verzeichnis mit den entpackten Bibliotheksdateien und suchen Sie die com-register.bat Datei.
  3. Wähle aus com-register.bat Datei mit der Maus und wählen Sie die Run as administrator Befehl aus dem Kontextmenü.

Verwendung der .NET-Bibliothek in MS Excel

Die Funktionen der Bibliothek viesapiLibrary.dll können in der MS Excel-Anwendung verwendet werden, um eigene Funktionen und Prozeduren in die zu schreiben Visual Basic Sprache. Um dies zu ermöglichen, ist Folgendes erforderlich:

  1. Registrieren das viesapiLibrary.dll Bibliothek als COM Objekt an Windows.
  2. Starten Sie die Excel-Anwendung. Wähle aus DEVELOPER Registerkarte in der Multifunktionsleiste und klicken Sie dann auf Visual Basic Taste.
  3. In dem Visual Basic for Application Fenster auswählen Tools und dann References aus dem Menü. In dem Available References auflisten, suchen und auswählen VIESAPI Service Client for .NET Framework (C#). Bestätigen Sie Ihre Auswahl mit OK Taste.
  4. Von dem Insert Menü, wählen Module und fügen Sie den in den Beispielen für Visual Basic vorgestellten Funktionscode in das neue Fenster ein.
  5. Schließlich geeignete Werte von w für viesapi.ID und viesapi.Key sollte eingestellt werden. Die Methode zum Erhalt des Schlüssels und des Zugangsschlüssels ist im Kapitel beschrieben Generieren der Kennung und des Zugangsschlüssels