Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 6/2006.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Kurzinformationen

Zusammenfassung

Windows und Access bringen alle Voraussetzungen für das automatische Wählen von Telefonnummern mit - das fehlende Know-how liefert dieser Beitrag.

Techniken

VBA, TAPI

Voraussetzungen

Access ab Version 97

Beispieldatei

WaehlenMitAccess.mdb

Shortlink

418

Telefonieren mit Access

Sascha Trowitzsch, Berlin

Telefonnummern findet man praktisch in jeder Datenbank. Lästig und fehleranfällig ist aber - gerade bei langen internationalen Nummern - das Ablesen und Eintippen ins Telefon, wenn etwa ein Kunde angerufen werden soll, der noch nicht in den Nummernspeicher des Telefons aufgenommen wurde. Unter der Voraussetzung, dass eine Telefonanlage vorhanden ist, die die so genannte TAPI-Schnittstelle unterstützt, lässt sich mit nur wenigen Zeilen VBA-Code ein Verbindungsaufbau aus Access heraus auf Knopfdruck realisieren.

TAPI - Die Voraussetzung

Windows offeriert eine Systemschnittstelle, die sich TAPI nennt: Telephony Application Programming Interfaces. Das ist eine Zwischenschicht, die Anwendungen mit Treibern eines Telefondienstanbieters verbindet. Solche Treiber werden mit TK-Anlagen ausgeliefert und bestehen selbst oft aus einem umfangreichen Set von Konfigurationsanwendungen.

Sie sind manchmal aber auch recht spartanisch ausgelegt, wie etwa der TAPI-Dienst der AVM Fritz!Box, von der später noch die Rede sein wird. Diese Treiber kommunizieren unmittelbar mit der Telefonanlage – sei es über ein serielles Kabel, einen USB-Anschluss oder das Netzwerk.

Diese TAPI Service Provider (TSP) genannten Treiber – normalerweise DLLs – stellen zwar einen Satz genormter Funktionen zur Verfügung, mit denen man sich als Programmierer indessen aber genauso wenig beschäftigen muss wie zum Beispiel mit Grafikkartentreibern. Denn diese Arbeit nimmt Ihnen die Windows-TAPI-Schnittstelle ab, die sich ihrerseits per VBA über zwei Methoden ansprechen lässt: Entweder über API-Aufrufe, also Deklarationen auf die tapi32.dll, oder über einen Verweis auf die Microsoft Telephony 3.0 Library. Wichtig ist zunächst nur dies: Sollten Sie oder Ihr Kunde über eine TK-Anlage verfügen, die einen TAPI-Treiber besitzt, dann steht einem Verbindungsaufbau zwischen Access und der Anlage nichts im Wege.

Ob ein solcher Treiber installiert ist, lässt sich in der Systemsteuerung mit dem Applet „Telefon- und Modemoptionen“ ermitteln. Unter dem Reiter Erweitert sind dort alle installierten TSPs aufgelistet, wie in Abb. 1 zu erkennen ist.

telefonoptionen1.tif

Abb. 1: TAPI-Telefondienstanbieter in der Windows Systemsteuerung

Wenn Sie einen Eintrag der Liste markieren, dann wird unter Umständen die Schaltfläche Konfigurieren... aktiv, mit der Sie Einstellungen für die Kommunikation zwischen Anlage und TAPI vornehmen können.

Bei ausgewachsenen Telefonanlagen gleicht die Konfigurationsseite, die der Hersteller hier bereitstellt, oft selbst einer umfangreichen Anwendung, die ohne Lektüre von Unterlagen oder der Online-Hilfe kaum zu durchschauen ist. Dies soll an dieser Stelle nur deshalb erwähnt werden, weil eine korrekte Einrichtung der Anlage erst die Voraussetzung dafür ist, dass unsere Beispieldatenbank dann auch so reibungslos läuft, wie sie sollte.

Access-Beispiel: Adressformular

In der Beispieldatenbank Waehlenmitaccess.mdb öffnet sich beim Start ein Mini-Adressformular, dargestellt in Abb. 2. Neben den Anschriftdaten enthält es drei Felder zur Eingabe von Telefonnummern. Dahinter sind jeweils Schaltflächen mit Telefonsymbolen angebracht. Wenn alles gut geht, dann verbindet ein Klick auf eine der Schaltflächen Ihr Telefon mit der Nummer des Teilnehmers.

dialer1.tif

Abb. 2: Beispielformular mit über Button wählbaren Telefonnummern

Dabei kommt erstaunlicherweise nur eine einzige API-Funktion zum Einsatz, die Sie im Modul mdlTAPICALL der Datenbank finden. Erstaunlich deshalb, weil TAPI eigentlich Hunderte von Funktionen und Objekten enthält.

Tatsächlich handelt es sich in diesem Beitrag nur um die Beschreibung einer sehr rudimentären Telefonieschnittstelle, die sich die in Windows gut versteckte Wählhilfe zunutze macht. Die API-Funktion tapiRequestMakeCall ruft nämlich genau diese Wählhilfe auf, weil sie in Windows als Standardanwendung für TAPI eingestellt ist. Sie muss, damit das Wählen über das Formular funktioniert, zusätzlich zur oben erwähnten Einrichtung des TAPI-Treibers erst konfiguriert werden.

Wählhilfe

Wenn Sie unter Windows XP arbeiten, dann werden Sie im Startmenü vergeblich nach der Wählhilfe suchen. Windows XP legt bei Installation keine Verknüpfung zu dieser Anwendung an – aus welchen Gründen auch immer.

Sie können sie einfach aufrufen, indem Sie per Startmenü/Ausführen den Dialog zum Eingeben von Befehlen öffnen und über das dortige Eingabefeld die Anwendung dialer.exe starten. Die Wählhilfe ist eine komplette kleine Telefon-Anwendung mit Nummernliste, Protokollierung und Konferenzraum, die nicht nur wählen, sondern auch Anrufe entgegennehmen kann und sogar Bildschirmtelefonie ermöglicht. Das alles ist an dieser Stelle aber nicht interessant, denn wichtig sind für unseren Zweck lediglich die Einstellungen der Wählhilfe, die beim Aufruf der API-Funktion zum Tragen kommen.

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.