Navision Attain Database – Zugang durch C/ODBC aus ASP.NET Applikation

 

von Igor Kudryashov

 

Alba Spectrum Technologies

Deutschland (0177) 8349 806, Moskau (095) 918 3314, USA 1-866-528-0577

help@albaspectrum.com  

Microsoft hat Navision Software im Jahr 2002 erworben und es ist bei Microsoft Business Solutions genau so wie die anderen Applikationen (Microsoft Great Plains, Axapta, Solomon, Microsoft Retail Management System und Microsoft CRM) unterstutzt und weiterentwickelt. Navision Attain hat sehr starke Marktpositionen in Russisches, Europäisches und USA mittlerer Business. Dazu nimmt Navision Attain ein wirksamer Betriebssteuerung-Modul (Manufacturing Solution) auf. Unsere Ziel ist die Hilfe an IT-Abteilungen zu leisten, damit können die Navision ohne externe Experten unterstutzen.

 

 

Hauptthema des Artikels ist die Vorführung um zu zeigen wie ASP.NET–Applikation (mit Hilfe von C/ODBC-Interface) der Zugang an die Navision Attain-Daten ermöglicht. Dafür werden wir ein Zugangseite  bauen um an Navision Customers-Datei reinzukommen:

  1. Für unsere Arbeit nutzen wir Navision Attain 3.6, es basiert sich auf Navision Database Server, Navision Application Server und Navision Client. Die Komponenten sind auf Windows XP installiert. Um die Arbeit mit der Anwendung von C/ODBC – Interface zu ermöglichen, soll die Komponente von distributive Disk Navision Attain installiert werden.
  2. Jetzt bilden wir ODBC DSN um Zugang an unsere Navision Daten zu ermöglichen. Dafür wählen wir  Start -> Control Panel -> Administrative Tools -> Data Sources (ODBC)  aus. Dann wählen wir Einlage „System DSN“ aus und drucken auf „Add“-Knopf.  Um Zugang an die Datei zu kriegen, nutzen wir C/ODBC 32-bit - Treiber. Geben wir Data Source Name wie Navision auf und Connection lassen wir Local.  Als Datenbank ( Database Knopf ) wählen wir \Program Files\Navision Attain\Client\database.fdb (Demo-Datenbank) aus. Jetzt werden wir mit  CRONUS arbeiten („Company“–Knopf), die ist die einzige zugängliche Firma aus Demodatenbank.  Der werden wir benutzen. Wichtige Voraussetzung für korrekte Arbeit mit C/SIDE Datenbank ist korrekte Einsetzung von Optionen für C/ODBC Verbindung.  Drucken Sie auf „Options“-Knopf und gucken Sie zugängliche Optionen – uns interessiert Identifiers Parameter. Der Parameter bestimmt Kenntypen, welche werden an Kunden Programm überreichen.  Für korrekte Arbeit zwischen MS SQL Server 2000 und C/ODBC-Quelle nutzen wir Typ „a-z,A-Z,0-9,_“. Auf dem Punkt ist die Erschaffung von Datenquelle beendet. Jetzt regeln wir Linked Server.
  3. Machen wir SQL Server Enterprise Manager auf. Offen Sie Server-Body, der Sie nutzen wollen, finden Sie da Punkt Security und Unterpunkt Linked Servers. Mit rechte Knopf der Maus wählen Sie New Linked Servers im Menü aus. Im Dialogfenster bei Provider Name wählen Sie Microsoft OLE DB Provider for ODBC Drivers .  Nehmen an, Linked Server heißt NAVISION. In Zeile Data Source führen wir ODBS-Quelle Name ein, es war auch NAVISION. Linked Server ist fertig! Aus dem wählen wir Tabelleliste und sehen Datei aus Navision Attain- Datenbank.
  4. Ferner bilden wir kleine Prozedur für die Verwahrung von ausgesuchte Verkaufdatei. Text von Prozedur ist unter:

 

SET ANSI_NULLS ON

SET ANSI_WARNINGS ON

GO

 

CREATE PROCEDURE NavisionCustomers AS

 

DBCC TRACEON(8765)

SELECT No_, Name, Address, City, Contact FROM OPENQUERY(NAVISION, 'SELECT * FROM Customer')

 

RETURN

Kleine Erklärung. Die Direktive TRACEON(8765) ermöglicht Korrekturen in der Arbeit mit der Dateien von variable Länge (aus C/ODBC-Treiber). Ohne das können wir nicht mit der Felde von Tabelle Navision arbeiten – wir werden ständig Fehlermeldungen kriegen. Z.B.

 

OLE DB error trace [Non-interface error:  Unexpected data length returned for the column:  ProviderName='MSDASQL', TableName='[MSDASQL]', ColumnName='Ship_to_Filter', ExpectedLength='250', ReturnedLength='1'].

Server: Msg 7347, Level 16, State 1, Line 1

OLE DB provider 'MSDASQL' returned an unexpected data length for the fixed-length column '[MSDASQL].Ship_to_Filter'. The expected data length is 250, while the returned data length is 1.

 

Direktive OPENQUERY eröffnet verbundener Server und übertragt  die Anfrage und zeigt ausgesuchte Daten. Notwendige Voraussetzung für diese Prozedurbildung ist Eingabe von ANSI_NULLS- und ANSI_WARNINGS- Direktiven. Diese Direktiven ermöglichen Arbeit mit heterogen Anfragen. Um Arbeit von Prozedur zu kontrolliere, reich es EXEC NavisionCustomers – Befehl bei MS SQL Query Analizer zu geben.

  1. Jetzt bilden wir ASP:NET-Applikation. Dafür nutzen wir kostenlose RAD (ASP.NET Web-Matrix). Das können Sie unter http://asp.net/webmatrix runterladen. Bevor das installiert wird, soll man .NET SDK 1.1 schon installiert haben.
  2. Starten wir WebMatrix, suchen wir Data Pages - > Editable Data Grid  aus. Lassen wir da alle Parameter so wie die sind. Auf neue herstellte Seite ändert sich Titel auf MNavision Attain Customers. Für Tabelleschrift wählen wir Verdana und Schriftgroße kann beliebig sein. Weiter rufen wir Segment SqlDataSourceControl und geben wir folgende Einstellungen an:  server='(local)'; database='Alba';trusted_connection=true (aktualisieren wir der Name des Servers und des Datenbank), und  SelectCommand wie EXEC NavisionCustomers
  3. Für unsere Data Grid, welche stellt Käuferliste dar, geben wir DataSource als SqlDataSourceControl1 und DatKeyField als Nummer ein.
  4. Ferner schalten wir auf das Koderedaktionsregime um und ändern
  5.  Starten Sie den herstellten Applikation und prüfen Sie die Funktionalität. Das ist alles!

 

Wir wünschen Ihnen viel Erfolg bei der Softwareimplementierung und Berichterstellung. Falls sich Ihrerseits Fragen bzw. Problemstellungen ergeben sollten, stehen wir Ihnen jederzeit unter der Rufnummer in Deutschland (0177) 8349 806, in Moskau (095) 918 3314, in USA 1-866-528-0577  oder unter help@albaspectrum.com zur Verfügung.

 

Igor Kudryashov ist ein zertifizierter Navision Spezialist von Ronix Systems ( http://www.ronix.ru ) eines Microsoft Business Solution Partners und die Europäische Abteilung von Alba Spectrum Technologies, USA ( http://www.albaspectrum.com ). Wir sind in Deutschland (in NRW, Hessen, Sachsen-Anhalt und andere), in Russland, USA und Brasil tätig. Diese weltweit autorisierte Unternehmung spezialisierte sich auf Navision, Great Plains und den Microsoft CRM Kundenservice.