DennisBT Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 Hallo zusammen, habe zwar erst im Frühjahr 2010 meine Abschlußprüfung, doch wollte ich mir rechtzeitig Gedanken über ein mögliches Abschlußprojekt machen und habe daher folgende Projektidee : Projektbezeichnung: Entwicklung einer Schnittstelle zum Import von Artikeldaten in MS Dynamics NAV Kurze Projektbeschreibung: Die Ausbildungsbetrieb GmbH ist ein klassisches Systemhaus, welches sich seit geraumer Zeit in einer Expansionsphase befindet. Um die Effizienz im Bereich der Angebots-und Auftragsannahme bzw. bearbeitung zu verbessern, ist es notwendig, dass sämtliche Artikel Ihres bevorzugten Kreditors ( Lieferant GmbH ) in Navision importiert und mittels eines zeitgesteuerten Dienstes täglich hinsichtlich Einkaufspreise und Verfügbarkeit aktualisiert werden. Dies geschieht über eine von Lieferant GmbH zur Verfügung gestellte individuelle Preisliste, die sich auf dem Kundenserver von Lieferant GmbH befindet und täglich via ftp zum Download zur Verfügung steht. Desweiteren besteht seitens der Vertriebsabteilung die Anforderung, dass zu jedem Artikel detaillierte Beschreibungen in Navision hinterlegt werden können. Hierzu stellt die Ausbildungsbetriebs GmbH eine Liste erweiteter Artikelbeschreibungen zur Verfügung, die Sie über die Firma Lieferant2 GmbH ebenfalls als Textdatei erhält. Die Schnittstelle soll zudem in der Lage sein, Preislisten anderer Kreditoren ohne größeren Aufwand zu importieren,sofern diese im csv-Format zur Verfügung stehen. Dabei ist darauf zu achten, dass kein Artikel mehrfach im System angelegt wird, jedoch eine Möglichkeit geschaffen wird, gleiche Artikel unterschiedlicher Kreditoren hinsichtlich Preis und Verfügbarkeit miteinander zu vergleichen. Projektphasen mit Zeitplanung in Stunden: 1. Analyse/Planung (5 h) 1.1 Erfassung Ist-Zustand (1 h) 1.2 Soll-Zustand ermitteln, Pflichtenheft erstellen (3 h) 1.3 Kosten-Nutzen-Analyse (1 h) 2. Implementierung (41 h) 2.1 Neue Tabellen anlegen / Bestehende Tabellen erweitern ( 5 h) 2.2 Schnittstelle erstellen (32 h) 2.3 Formanpassungen vornehmen / neue Forms erstellen (3 h) 2.4 Application Server einrichten ( 1 ) 3. Qualitätsmanagement (14 h) 3.1 Testen der Software (10 h) 3.2 Fehlerbehebung/Puffer (4 h) 4. Dokumentation erstellen (10 h) 4.1 Projektdokumentation erstellen (10 h) Gesamt 70 h Was meint Ihr zu diesem Antrag ? Gruß & Danke vorab Dennis Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
robotto7831a Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 Hallo, ich habe zwar keine Ahnung von Navision darum habe ich kein Gefühl für die Zeitplanung besonders bei der Realisierung aber das Thema klingt interessant. Frank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 Da ich Navision kenne, muss ich ehrlich sagen 32 Stunden für einen Export / Import sind nicht verständlich. Navision stellt über die Dataports genau den Mechanismus für CSV Dateien fertig zur Verfügung. Sobald die Datei also vorliegt ist der Import schnell durchgeführt, da Du selbst nicht mehr die Tabellenstrukturen anlegen musst. Du hast somit kein Datenbankdesign mehr in Deinem Antrag. Weiterhin ist das C/AL fast komplett prozedural aufgebaut, so dass Du keine OOP verwendest, Datenbankzugriffe werden nicht über SQL sondern mit den Funktionen "setrange" bzw "setfilter" realisiert. Zum Antrag selbst stelle ich die Frage, wie wird die Datei per FTP geladen? Geschieht das automatisch oder liegt sie für Dein Projekt schon vor? Warum wird hier der umständliche Weg über Dateien gegangen und nicht über automatische System wie Webservice usw. ? Mir ist der Antrag vom Komplexitätsgrad definitiv zu wenig Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 13. August 2009 Autor Teilen Geschrieben 13. August 2009 Vielen Dank für Eure Antworten und Kritikpunkte. @Flashpixx Da der Import automatisiert über den NAS erfolgt, kommt ein Dataport leider nicht in Frage, sondern muss über eine Codeunit erfolgen, was zur Folge hat, dass die komplette Stringformatierung programmiert werden muss. Es stimmt, dass Navision nicht oo ist, aber das ist doch kein Kritierium für ein Abschlußprojekt. Ich lerne in meinem Ausbildungsbetrieb nur Navision, daher kommt auch nur ein Projekt in diesem Bereich in Frage. Die Preisliste wird mittels eines Shell-Scripts vom Lieferanten-Server geholt. Die Artikelbeschreibungen werden via Upload auf den ftp-Server meines Ausbildungsbetriebs geladen. Diese beiden Aufgaben übernimmt unser Systemadministrator. Da wir mit Navision 3.7 arbeiten, stehen uns leider keine Webservices zur Verfügung, diese gibt es imho erst seit NAV 2009. Gruß Dennis Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 Da der Import automatisiert über den NAS erfolgt, kommt ein Dataport leider nicht in Frage, sondern muss über eine Codeunit erfolgen, was zur Folge hat, [...] Ein NAS (Network Attached Storage) wird bei Dir im System als Laufwerk eingebunden (unter Windows als Buchstabe unter Unix als Mountpoint). Der Dataport kann auf Dateien zugreifen, so dass es für Navision selbst unerheblich ist, woher die Dateien kommen. Die Preisliste wird mittels eines Shell-Scripts vom Lieferanten-Server geholt. Die Artikelbeschreibungen werden via Upload auf den ftp-Server meines Ausbildungsbetriebs geladen. Diese beiden Aufgaben übernimmt unser Systemadministrator. Dann stelle ich die Frage, worin besteht Dein Projekt. Eine CSV Datei abgrasen, die Daten zeilenweise per Stringzerlegung verarbeiten und in die Tabellen einfügen? Ist meiner Ansicht zu wenig Da wir mit Navision 3.7 arbeiten, stehen uns leider keine Webservices zur Verfügung, diese gibt es imho erst seit NAV 2009. Das ist so nicht korrekt, denn Du kannst aus Navision jeden Automatisierungsserver von Windows ansprechen. Sobald Du mind ein Office 2003 auf dem System hast hast Du die MS SOAP Komponenten installiert und kannst damit auch Webservices direkt anbinden. Da ich selbst einige Jahre mit NAV gearbeitet habe, weiß ich, dass man sowohl mit Dataports und Codeunits sehr schnell Textdateien verarbeiten kann. Außerdem habe ich unter Navision diverse externe Komponenten angesprochen. Mirt fehlt hier fachlich sehr viel. Weiterhin fehlen bei Dir noch wirtschaftliche Entscheidungskriterien Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 13. August 2009 Autor Teilen Geschrieben 13. August 2009 Ich glaube, wir reden aneinander vorbei. Damit Du mich nicht falsch verstehst, ich möchte mein Projekt nicht schön reden, sondern nur realistisch den Aufwand darstellen. Da der Import automatisiert und ohne Aktion eines Users erfolgen soll, ist es notwendig, dass dafür ein NAS ( Navision Application Server ) eingerichtet wird bzw. dafür gesorgt wird, dass diesem ein Job zugewiesen wird, der den Import startet. Und dies funktioniert nicht mit einem Dataport, denn dieser lässt sich nicht über einen Dienst ausführen. Daher bedarf es zum Import einer Codeunit. Folgende Überlegungen müssen beim Import der Daten berücksichtigt werden : - Wie protokolliere ich den ganzen Vorgang ? - Wie bekomme ich es hin, dass die neu angelegten Artikel in Aufträgen / Rechnungen gebucht werden können ( Anm. : Die Preisliste enthält keine Angabe über den Mehrwertssteuersatz und einige Artikel sind Bücher ) ? - Wie benachrichtige ich den Vertrieb über einen erfolgreichen Importvorgang ? - Was sind Fehler bzw. unter welchen Konstellationen sollen Datensätze nicht importiert werden ? Gruß Dennis P.S. Gehören diese Überlegungen in meinen Projektantrag ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 P.S. Gehören diese Überlegungen in meinen Projektantrag ? Ja gehören sie und Du siehst auch, dass Du Bzeichnungen wie NAS auch angeben musst, denn dazu gibt es mehrere Bedeutungen. Schreibe noch einmal einen Antrag. Aber ich möchte Dir gerade da sagen, dass ich es als "Angriffspunkt" sehe, dass Der Sysadmin die Daten bereit stellt und Du sie nicht direkt selbst holst. Da es sich ja um einen (halb-)automatisierten Vorgang handelt sehe ich da wirklich den Punkt, dass ich beim Gespräch eben auf solche Techniken wie Webservice "pochen" würde Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 13. August 2009 Autor Teilen Geschrieben 13. August 2009 Hier mal die überarbeitete Version, hoffe es wird so klarer, was ich genau machen möchte. Gruß Dennis @flashpixx Habe gerade noch einmal nachgeschaut, eine Integration der Artikel über einen Webservice wäre mit erheblichem finanziellen Mehraufwand verbunden. Die Ausbildungsbetrieb GmbH ist ein klassisches Systemhaus, welches sich seit geraumer Zeit in einer Expansionsphase befindet. Um die Effizienz im Bereich der Angebots-und Auftragsannahme bzw. bearbeitung zu verbessern, ist es notwendig, dass sämtliche Artikel Ihres bevorzugten Kreditors ( Lieferant GmbH ) in Navision importiert und mittels eines zeitgesteuerten Dienstes täglich hinsichtlich Einkaufspreise und Verfügbarkeit aktualisiert werden. Dies geschieht über eine von Lieferant GmbH zur Verfügung gestellte individuelle Preisliste, die sich auf dem Kundenserver von Lieferant GmbH befindet und täglich via ftp zum Download zur Verfügung steht. Desweiteren besteht seitens der Vertriebsabteilung die Anforderung, dass zu jedem Artikel detaillierte Beschreibungen in Navision hinterlegt werden können. Hierzu stellt die Ausbildungsbetriebs GmbH eine Liste erweiteter Artikelbeschreibungen zur Verfügung, die Sie über die Firma Lieferant2 GmbH ebenfalls als Textdatei erhält. Dieser Importprozess soll ohne Eingreifen eines Benutzers automatisiert ablaufen, so dass es notwendig ist, dafür auf dem bereits im Navision vorhandenen Application Server einen weiteren Dienst zu installieren, der diese Aufgabe übernimmt. Da es sich bei dem Objekt, welches der Dienst ausführt, um eine Codeunit handeln wird, muss die Formatierung der Artikeldaten und Artikelbeschreibungen programmiert werden. Den Artikeln muss zudem nach Import in Navision automatisch eine Mehrwertsteuerbuchungsgruppe zugewiesen werden,wobei zu erwähnen ist, dass der Mehrwertsteuersatz nicht in der Preisliste der Lieferant GmbH enthalten ist. Hier muss über den Hersteller sowie drei Artikelkategoriegruppen eine Möglichkeit zur eindeutigen Identifizierung der Mehrwertsteuerbuchungsgruppe geschaffen werden. Desweiteren soll für jeden Import eine Protokollierung stattfinden, die - je nach Einrichtung - unterschiedlich ausführlich sein kann. Nach erfolgtem Import erhalten die Vertriebsmitarbeiter eine E-Mail über sämtliche relevanten Vorgänge des Imports. Die Schnittstelle soll zudem in der Lage sein, Preislisten anderer Kreditoren ohne größeren Aufwand zu importieren,sofern diese im csv-Format zur Verfügung stehen. Dabei ist darauf zu achten, dass kein Artikel mehrfach im System angelegt wird, jedoch eine Möglichkeit geschaffen wird, gleiche Artikel unterschiedlicher Kreditoren hinsichtlich Preis und Verfügbarkeit miteinander zu vergleichen. Beide zu importieren Listen werden durch ein automatischs Shell-Script, welches die Dateien vom jeweiligen Lieferantenserver lädt, zur Verfügung gestellt. Diese Aufgabe übernimmt der Systemadministrator der Ausbildungsbetrieb GmbH. 1. Analyse/Planung (5 h) 1.1 Erfassung Ist-Zustand (1 h) 1.2 Soll-Zustand ermitteln, Pflichtenheft erstellen (3 h) 1.3 Kosten-Nutzen-Analyse (1 h) 2. Implementierung ( 41 h) 2.1 Neue Tabellen anlegen ( 2,5 h) 2.1.1 Protokolltabellen ( Kopf / Zeilenstruktur ) anlegen ( 1 h) 2.1.2 Buchungseinrichtungstabelle anlegen ( 1,5 h) 2.2 Bestehende Tabellen erweitern ( 2,5 h) 2.2.1 Artikeltabelle anpassen ( 1,5 h) 2.2.2 Artikelreferenztabelle anpassen ( 0,5 h) 2.2.3 Lagereinrichtungstabelle anpassen ( 0,5 h) 2.3 Schnittstelle erstellen (32 h) 2.3.1 Funktionen zur Stringformatierung erstellen ( 5 h) 2.3.2 Kontrollfunktionen zur Überprüfung der gesplitteten Strings erstellen ( 3 h) 2.3.3 Funktionen zum Importieren des Artikels in artikelrelevante Tabellen erstellen ( 8 h) 2.3.4 Protokollfunktionen erstellen ( 2 h) 2.3.5 Funktionen zur Festlegung der Mwst.Buchungsgruppe des Artikel erstellen ( 8 h) 2.3.6 Funktionen zur Formatierung erweiteter Artikelbeschreibungen in Textbausteine erstellen ( 4 h) 2.3.7 Funktion zur E-mail Benachrichtung nach erfolgreichem Import erstellen ( 2 h) 2.4 Formanpassungen vornehmen ( 3 h) 2.5 NAS ( Navision Application Server ) einrichten. ( 1 h) 3. Qualitätsmanagement (14 h) 3.1 Testen der Software (10 h) 3.2 Fehlerbehebung/Puffer (4 h) 4. Dokumentation erstellen (10 h) 4.1 Projektdokumentation erstellen (10 h) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 13. August 2009 Teilen Geschrieben 13. August 2009 Habe gerade noch einmal nachgeschaut, eine Integration der Artikel über einen Webservice wäre mit erheblichem finanziellen Mehraufwand verbunden. Das gehört aber nicht in den Antrag, sondern ins Projekt, da Du ja hier eine Entscheidung treffen musst Dies geschieht über eine von Lieferant GmbH zur Verfügung gestellte individuelle Preisliste, die sich auf dem Kundenserver von Lieferant GmbH befindet und täglich via ftp zum Download zur Verfügung steht. Desweiteren besteht seitens der Vertriebsabteilung die Anforderung, dass zu jedem Artikel detaillierte Beschreibungen in Navision hinterlegt werden können. Hierzu stellt die Ausbildungsbetriebs GmbH eine Liste erweiteter Artikelbeschreibungen zur Verfügung, die Sie über die Firma Lieferant2 GmbH ebenfalls als Textdatei erhält. Trenne das einmal auf: Einmal in Projektumfeld bzw Zielsetzung. Dieser Importprozess soll ohne Eingreifen eines Benutzers automatisiert ablaufen, so dass es notwendig ist, dafür auf dem bereits im Navision vorhandenen Application Server einen weiteren Dienst zu installieren, der diese Aufgabe übernimmt. Da es sich bei dem Objekt, welches der Dienst ausführt, um eine Codeunit handeln wird, muss die Formatierung der Artikeldaten und Artikelbeschreibungen programmiert werden. Den Artikeln muss zudem nach Import in Navision automatisch eine Mehrwertsteuerbuchungsgruppe zugewiesen werden,wobei zu erwähnen ist, dass der Mehrwertsteuersatz nicht in der Preisliste der Lieferant GmbH enthalten ist. Hier muss über den Hersteller sowie drei Artikelkategoriegruppen eine Möglichkeit zur eindeutigen Identifizierung der Mehrwertsteuerbuchungsgruppe geschaffen werden. Desweiteren soll für jeden Import eine Protokollierung stattfinden, die - je nach Einrichtung - unterschiedlich ausführlich sein kann. Nach erfolgtem Import erhalten die Vertriebsmitarbeiter eine E-Mail über sämtliche relevanten Vorgänge des Imports. Die Schnittstelle soll zudem in der Lage sein, Preislisten anderer Kreditoren ohne größeren Aufwand zu importieren,sofern diese im csv-Format zur Verfügung stehen. Dabei ist darauf zu achten, dass kein Artikel mehrfach im System angelegt wird, jedoch eine Möglichkeit geschaffen wird, gleiche Artikel unterschiedlicher Kreditoren hinsichtlich Preis und Verfügbarkeit miteinander zu vergleichen. Das hier ist nicht für einen Antrag, denn hier steht was Du machen willst. Du musst im Laufe der Arbeit "evaluieren", waum eben das die angestrebte Lösung ist und z.B. kein Webservice und auch keine händische Arbeit Beide zu importieren Listen werden durch ein automatischs Shell-Script, welches die Dateien vom jeweiligen Lieferantenserver lädt, zur Verfügung gestellt. Diese Aufgabe übernimmt der Systemadministrator der Ausbildungsbetrieb GmbH. Das gehört dann in das Projektumfeld, denn das ist eine Gegebenheit, auf die Dein Projekt aufbaut 2.1 Neue Tabellen anlegen ( 2,5 h) 2.1.1 Protokolltabellen ( Kopf / Zeilenstruktur ) anlegen ( 1 h) 2.1.2 Buchungseinrichtungstabelle anlegen ( 1,5 h) 2.2 Bestehende Tabellen erweitern ( 2,5 h) 2.2.1 Artikeltabelle anpassen ( 1,5 h) 2.2.2 Artikelreferenztabelle anpassen ( 0,5 h) 2.2.3 Lagereinrichtungstabelle anpassen ( 0,5 h) Wie kannst Du mit Tabellen arbeiten, wenn Du kein ERM hast? 2.3 Schnittstelle erstellen (32 h) 2.3.1 Funktionen zur Stringformatierung erstellen ( 5 h) 2.3.2 Kontrollfunktionen zur Überprüfung der gesplitteten Strings erstellen ( 3 h) Wie sieht eine solche Kontrollfunktion aus und vor allem wie stellst Du sicher, dass diese ihre Aufgabe auch korrekt erfüllt (Stichwort Testszenarien) 2.3.7 Funktion zur E-mail Benachrichtung nach erfolgreichem Import erstellen ( 2 h) sehe ich das richtig, dass Du hier einen SMTP Client implementierst? 2.5 NAS ( Navision Application Server ) einrichten. ( 1 h) Ist nicht Deine Aufgabe, sondern die des FISI. 3. Qualitätsmanagement (14 h) 3.1 Testen der Software (10 h) Auch hier das Stichwort Testszenarien. Was willst Du hier genau testen und vor allem wie willst Du testen? Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 14. August 2009 Autor Teilen Geschrieben 14. August 2009 Guten Morgen, Das hier ist nicht für einen Antrag, denn hier steht was Du machen willst. Du musst im Laufe der Arbeit "evaluieren", waum eben das die angestrebte Lösung ist und z.B. kein Webservice und auch keine händische Arbeit Ich habe in der ersten Version des Projektantrags eine doch recht knappe Beschreibung des Projekts gegeben, die zu Missverständnissen geführt hat. Nun ist der Antrag detaillierter und einige Teile davon gehören eher in die Dokumentation ( Soll-Konzept ). Da stimme ich voll und ganz mit Dir überein. Ich möchte es aber vermeiden,dass mein Antrag aufgrund mangelnder Komplexität bzw. zu geringem Aufwand nur deshalb abgelehnt wird, da ich nicht klar herausstellen konnte, was ich alles dafür tun muss, damit dieser Import so realisiert werden kann. Wie kannst Du mit Tabellen arbeiten, wenn Du kein ERM hast? Ist es zwingend notwendig, dass ich vorab ein ER-Modell entwerfe ? Das wäre - im Rahmen der 70 Stunden - ein nicht zu unterschätzender Aufwand. Wie sieht eine solche Kontrollfunktion aus und vor allem wie stellst Du sicher, dass diese ihre Aufgabe auch korrekt erfüllt (Stichwort Testszenarien) Einige Fehler kann man direkt abfangen bzw. sind offensichtlich, dazu zwei Beispiele : Nach dem Splitten der Felder befinden sich dieser ein einem String-Array. Wenn für den Artikel ein Einkaufs/Verkaufspreis angegeben ist, dann habe ich ein leeres Feld. Wenn ich dieses Feld mit einem Decimal-Feld evaluieren möchte, dann bekomme ich eine Fehlermeldung. Daher wird dafür gesorgt, dass leere Preisfelder im String-Array mit "0" im Decimal-Feld angegeben werden. In der Preisliste werden die Nachkommastellen eines Preises durch einen Punkt ausgedruckt, das führt in Navision zu Fehlern. Also muss hier eine Konvertierung von Punkt zu Komma erfolgen. Es gibt noch ein paar weitere Kleinigkeiten, die man beachten muss und dafür hatte ich diese Kontrollfunktionen angedacht. sehe ich das richtig, dass Du hier einen SMTP Client implementierst? Ja,ich benutze ein STMP OCX, da der Navision Standard eine E-Mail Funktionalität erst ab Version 5.0 bietet. Ist nicht Deine Aufgabe, sondern die des FISI. Bei uns in der Firma muss jeder Navision Entwickler in der Lage sein, einen Application zu installieren bzw. zu konfigurieren, da es etwas wirklich Navision spezifisches ist. In meinem Fall geht es auch nur um die Einrichtung eines neuen Dienstes, der dafür sorgt, dass der Import zeitgesteuert angestoßen wird. Das ist kein großer Aufwand, man muss nur nachschauen, wie viele Dienste gleichzeitig laufen und dies dann mit der Lizenz, die man dafür erworben hat, abgleichen. Wenn alles über die Lizenz abgedeckt ist, muss man nichts ändern, ansonsten muss man einen Dienst zeitversetzt starten, wobei natürlich darauf zu achten ist, dass der Import erst dann startet, wenn wir die neue Preisliste bzw. Artikelbeschreibungsliste erhalten haben,ansonsten macht das Ganze nicht so viel Sinn Auch hier das Stichwort Testszenarien. Was willst Du hier genau testen und vor allem wie willst Du testen? Hier soll vor allem die Korrektheit der Stringformatierungen getestet werden, sowohl als Whitebox- und Blackboxtest, Korrektheit der Protokollierung..usw. Außerdem werden Testszenarien erstellt, in denen die Preisliste selbst Formatierungsfehler hat. Vielen Dank für Deine bisherige Analyse, die sehr hilfreich für mich war. Ich hoffe, es wird sich negativ für mich auswirken, sollte mein PA Navision nicht ( so genau ) kennen. Gruß Dennis Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 14. August 2009 Teilen Geschrieben 14. August 2009 Ich möchte es aber vermeiden,dass mein Antrag aufgrund mangelnder Komplexität bzw. zu geringem Aufwand nur deshalb abgelehnt wird, da ich nicht klar herausstellen konnte, was ich alles dafür tun muss, damit dieser Import so realisiert werden kann. Ich denke, wenn dann kann er mit Auflage zurück kommen, d.h. Du kannst nachbessern. Ist es zwingend notwendig, dass ich vorab ein ER-Modell entwerfe ? Das wäre - im Rahmen der 70 Stunden - ein nicht zu unterschätzender Aufwand. Das ist Basis der Datenbankentwicklung, wie willst Du denn Redundanzen erkennen bzw die Tabellen richtig normalisieren? Bei uns in der Firma muss jeder Navision Entwickler in der Lage sein, einen Application zu installieren bzw. zu konfigurieren, da es etwas wirklich Navision spezifisches ist. Da ich Nav kenne, weiß ich wie das funktioniert, nur muss es klar sein, was hier gemeint ist. Denn unter einem "Dienst" versteht man generell z.B. einen Mailserverdienst o.ä. und das ist Installation / Konfiguration für einen FISI. Du muss ganz klar abgrenzen, um was es sich handelt. Hier soll vor allem die Korrektheit der Stringformatierungen getestet werden, sowohl als Whitebox- und Blackboxtest, Korrektheit der Protokollierung..usw. Außerdem werden Testszenarien erstellt, in denen die Preisliste selbst Formatierungsfehler hat. würde ich auch genauso in die Planung mit aufnehmen. Testverfahren => Entwicklung der Szenarien =>Black-, Whiteboxtest => Auswertung HTH Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Wichteli Geschrieben 14. August 2009 Teilen Geschrieben 14. August 2009 Also ich muss flashpixx schon zustimmen. Ich selbst habe Jahre lang in Navision programmiert, u.a. auch ähnliches wie du es jetzt vor hast. Der Zeitaufwand für die Planung ist total klar, das ist eben so. Aber fürs Tabellen anlegen und erweitern 5h? Also ne... Ich glaube nicht. 1 h vielleicht. Wenn die Planung gut ist, brauchst Du auch für alles andere nicht viel Zeit. Ich würde die reine Arbeit an und in Navision auf max. einen Arbeitstag, also 8 h, setzen. Ok, für einen Azubi vielleicht 2 Tage. Du kannst es natürlich versuchen, aber ich kann mir vorstellen, dass du schlechte Karten mit dem Antrag hast, wenn ihn jemand prüft, der Navision kennt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 14. August 2009 Autor Teilen Geschrieben 14. August 2009 Also ich muss flashpixx schon zustimmen. Ich selbst habe Jahre lang in Navision programmiert, u.a. auch ähnliches wie du es jetzt vor hast. Der Zeitaufwand für die Planung ist total klar, das ist eben so. Aber fürs Tabellen anlegen und erweitern 5h? Also ne... Ich glaube nicht. 1 h vielleicht. Wenn die Planung gut ist, brauchst Du auch für alles andere nicht viel Zeit. Ich würde die reine Arbeit an und in Navision auf max. einen Arbeitstag, also 8 h, setzen. Ok, für einen Azubi vielleicht 2 Tage. Du kannst es natürlich versuchen, aber ich kann mir vorstellen, dass du schlechte Karten mit dem Antrag hast, wenn ihn jemand prüft, der Navision kennt. Hallo Wichteli, vielen Dank auch Dir für die Kritik. Ich habe mich ggf. wieder falsch ausgedrückt bzw. es ist unklar, was ich damit meine, wenn ich von Neuanalage von Tabellen bzw. deren Erweiterung spreche, denn es müssen natürlich auch kleinere Programmierung in der Artikeltabelle vorgenommen haben. Andererseits kann bzw. darf der Projektantrag auch kein Soll-Konzept sein. Diese 5 Stunden fallen bei Deiner Kritik aber auch nicht ins Gewicht, denn wenn Du den Gesamtaufwand wirklich nur bei 8 Stunden ( bzw. 16 für einen Azubi ) siehst, dann habe ich - sofern der PA dies ebenso einschätzen sollte - ein Problem. Als ich dieses Projekt als mögliches Abschlußprojekt ins Auge gefasst habe, hatte ich Bedenken, dass es für ein Abschlußprojekt eher zu umfangreich ist. Bin momentan ein bißchen ratlos, was ich jetzt machen soll. Gut, dass meine Abschlußprüfung erst im Sommer 2010 ist Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 14. August 2009 Teilen Geschrieben 14. August 2009 vielen Dank auch Dir für die Kritik. Ich habe mich ggf. wieder falsch ausgedrückt bzw. es ist unklar, was ich damit meine, wenn ich von Neuanalage von Tabellen bzw. deren Erweiterung spreche, denn es müssen natürlich auch kleinere Programmierung in der Artikeltabelle vorgenommen haben. Dann formuliere es entsprechend. Denn ich lese z.B. die Anträge hier so, als ob ich keine Ahnung von der Materie habe. Wenn der Antrag dann für mich schlüssig ist, dann ist das schon mal richtig. Erst beim zweiten Lesen, lese ich die fachlichen Dinge. Andererseits kann bzw. darf der Projektantrag auch kein Soll-Konzept sein. Doch, im Grunde soll er das. Das Ziel ist bekannt, nur der Weg dorthin nicht. Anders wäre das ja auch sinnlos, denn dann könntest Du Dein Projekt ständig ändern. Dein Antrag ist die Vorgabe was zu erreichen gilt. In der Arbeit begründest Du dann die einzelnen Schritte die zum Ziel führen oder warum Du das Ziel nicht erreicht hast. Als ich dieses Projekt als mögliches Abschlußprojekt ins Auge gefasst habe, hatte ich Bedenken, dass es für ein Abschlußprojekt eher zu umfangreich ist. Da ich mehrere Jahre mit Nav gearbeitet habe, kann ich Dir ehrlich sagen, dass es mir schwer fällt, da die Komplexität zu sehen (siehe vorher gehende Postings). Denn eine CSV Datei einlesen und verarbeiten ist nicht schwer. Bin momentan ein bißchen ratlos, was ich jetzt machen soll. Es geht nicht um das "was", sondern das "wie" und "warum", d.h. Du musst begründen, warum Du etwas machst. Für Deinen jetzigen Antrag sieht es so aus, Du hast eine "kleinere" CSV Datei und musst die Daten irgendwie in Nav importieren (ggf ein paar Zeichen ändern und prüfen). Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
navnav Geschrieben 28. August 2009 Teilen Geschrieben 28. August 2009 Da der Import automatisiert und ohne Aktion eines Users erfolgen soll, ist es notwendig, dass dafür ein NAS ( Navision Application Server ) eingerichtet wird bzw. dafür gesorgt wird, dass diesem ein Job zugewiesen wird, der den Import startet. Und dies funktioniert nicht mit einem Dataport, denn dieser lässt sich nicht über einen Dienst ausführen. Daher bedarf es zum Import einer Codeunit. Hi, bin zufällig über diesen Thread/Forum gestoßen. Also das der NAS einen Dataport nicht aufrufen kann ist quatsch (bitte den Umgangston nicht persönlich nehmen). Den man kann zwar keine Variable vom Typ Dataport direkt ausführen, sehr wohl aber eine Codeunit starten, die den Dataport ausführt (Beispiele findest du im Objektaufrufplaner, MIBUSO und etlichen Blogs). Ich schreibe extra "quatsch" und nicht "nicht ganz richtig", weil diese Tatsache/Workaround seit Navision Financials in der NAV Entwicklerszene bekannt ist und somit ggf. auch deinen Prüfern. Diese kommen inzwischen immer häufiger aus dem NAV Bereich, zumindestens seit es Microsoft geworden ist. Protokollieren ist auch easy, dazu machst du eine Importtabelle die 1:1 den Satzaufbau des/der CSV Felder abbildet plus ein paar Felder wie User, Zeit, Datum und Fehler. Diese Tabelle befüllt der Dataport, weiterverarbeitung kommt aus einer Codeunit-Funktion. Damit hast du eine Nachvollziehbarkeit erreicht, da die Quelldaten immer unangetastet in der Importtabelle sind und gleichzeitig auch protokolliert wird. Was du da mit den Dezimalstllen beim Importt und Prüfroutinen schreibst ... finde ich auch mau. Wenn man die CSV in Nav-Text eingelesen hat, macht man ein Evaluate oder ein Format mit ensprechendem Formatstring.. keine Prüfung mehr notwendig. Zur komplexität des Projektes sage ich mal aus eigener FIAE Erfahrung, dass ich vor fünf oder sechs Jahren ein Abschlussprojekt hatte, bei dem es ging eine Schnittstelle/Datenübernahmewerkzeug zu schaffen die Daten aus 7 - n verschiedenen Systemen als CSV einlesen sollte. Dazu gab es pro Fremd-/Altsystem mehrere Datenarten sagen wir mal Artikel, Posten, Kreditoren, Debitoren etc. Komplexität des Projektes ist sehr dehnbar (dein Projekt scheint mir eher zu simpel), zumal du auch ein Teil von einem Realprojekt als Abschlussprüfungsprojekt durchführen kannst. Worauf ich damit hinaus will ist, dass es dir passieren kann, dass der Prüfer dir in deiner Präsi genau das gleiche erwidert wie ich. Aber die wichtigste Botschaft ist, du hast noch Zeit. Zerbrich dir nicht den Kopf über einen CSV Import, der ist es nicht wert Mach doch mal was mit Webservices wenn du das schon erwähnt hast. Ist doch nicht schlimm dass es bei dir im Betrieb noch nicht gemacht wird... betrittst du halt neuland und kannst nach der hoffentlichen Übernahme vielleicht ein schönes Kundenprojekt abbekommen, wo es um Webservices geht (denn dass ist am Puls der Zeit). Glaube mir eins, man wächst mit jedem Projekt und auch wenn dir meine Worte jetzt eher sauer aufstoßen, in ein paar Jahren wirst du auch so denken, aber keiner zwingt dich bis dahin nur kleine Brötchen zu backen. Nur mut! Und viel Erfolg !!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
navnav Geschrieben 28. August 2009 Teilen Geschrieben 28. August 2009 Ach ja und wenn es doch dieses Projekt sein soll ... bohr es einfach etwas auf. Mach es z.B. Mehrmandantenfähig über einen NAS beschreib die komplexität daran. Beschreib die Kostenersparnis durch weniger Lizenzen etc. Das schöne an Navision sind halt eben seine Grenzen und die kreativen Lösungen um diesen zu erweitern Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
DennisBT Geschrieben 22. Januar 2010 Autor Teilen Geschrieben 22. Januar 2010 (bearbeitet) Hallo zusammen, also aktuellem Anlass möchte ich meinen leicht geänderten PA nochmal zur Bewertung stellen, vorab jedoch eine kurze Bemerkung zu den Beiträgen von navnav : Es ist nicht möglich, ein Objekt des Typs "Dataport" über einen NAS ( Navision Application Server ) zu starten. Auch der indirekte Weg, das Starten eines Objekts vom Typ "Codeunit", welche dann den Dataport aufruft, funktioniert nicht. Jetzt aber zum Projektantrag : Projektbezeichnung: Artikelimportschnittstelle für Microsoft Business Solutions – Navision ( Version 3.70.B ) Die YYYYYY GmbH ist ein klassisches Systemhaus, welches sich seit geraumer Zeit in einer Expansionsphase befindet. Um die Effizienz im Bereich der Angebots- und Auftragsannahme und Bearbeitung zu verbessern, ist es notwendig, dass sämtliche Artikel ihres bevorzugten Kreditors ( XXXXX GmbH ) in Navision importiert und mittels eines zeitgesteuerten Dienstes (NAS ≙ Navision Application Server) täglich hinsichtlich Einkaufspreise und Verfügbarkeit aktualisiert werden. Dies erfolgt über eine von XXXXX zur Verfügung gestellte individuelle Preisliste im csv-Format, die sich auf dem Kundenserver von XXXXX befindet und täglich via FTP zum Download bereit steht. Desweiteren besteht seitens der Vertriebsabteilung die Anforderung, zu jedem Artikel detaillierte Beschreibungen in Navision hinterlegen zu können. Da diese Beschreibungen in der von XXXXX enthaltenen Preisliste nicht vorhanden sind, bezieht die YYYYY GmbH diese Daten über die Firma „ZZZZZ“, deren Produkt „ProduktA“, ein Programm, mit dem man Preise unterschiedlicher Kreditoren vergleichen kann, bereits von der Vertriebsabteilung genutzt wird. Die Basis dieser Daten bildet der XXXXX Produktkatalog, d.h. in der von ZZZZZ bereitgestellten Liste werden nur die Daten derjenigen Artikel enthalten sein, die über XXXXX eingekauft werden können. Auch hier wird der BBBBB GmbH eine Datei im csv-Format bereitgestellt, welche täglich auf einen ihrer Webserver hochgeladen wird. Neben den reinen Artikeldaten enthält die ZZZZZ - Liste Informationen zum günstigsten Händler, der diesen Artikel anbietet und gleichzeitig vorrätig hat. Hierzu werden der Vertriebsabteilung sämtliche im „Marketviewer“ zur Verfügung stehenden Kreditoren genannt und im Anschluß daran wird die Vertriebsabteilung eine Auswahl der Kreditoren vornehmen, die zur Ermittlung des günstigsten Händlers in Frage kommen sollen. Aufgrund der langjährigen Partnerschaft und damit verbundenen Zufriedenheit der YYYYY GmbH mit XXXXX soll XXXXX auch weiterhin der Hauptkreditor bleiben, jedoch bei stark abweichenden Einkaufspreisen bzw. Artikelverfügbarkeit der in der von ZZZZZ bereitgestellten Liste günstigste Kreditor bei Anlage einer Einkaufsbestellung vorgeschlagen werden. Hierzu soll in Navision ein Regelwerk geschaffen werden. Die Artikel sollen neben der firmeninternen Artikelnummer auch über die XXXXX -Artikelnummer und die Herstellerartikelnummer in den Einkaufs- und Verkaufszeilen auffindbar und direkt buchbar sein. Da in beiden Preislisten keine Angaben zum Mehrwertsteuersatz des jeweiligen Artikels vorhanden ist, muss die Schnittstelle eine Lösung dieses Problems beinhalten. Nach erfolgtem Import der Artikeldaten erhält die Vertriebsabteilung der BBBBB GmbH eine aus Navision heraus erzeugte E-Mail, die die wesentlichen Kennzeichen des Imports (Anzahl neuer Artikel/geänderter Artikel/fehlerhafter Artikel…etc.) enthält. Aufgrund der tagespreisbedingten Schwankungen der Einkaufspreise besteht seitens der Vertriebsabteilung die Anforderung, eine Übersicht über die Preisschwankungen pro Artikel zu erhalten. Daher muss auf Basis eines Navision-Reports eine Möglichkeit geschaffen werden, die Preise in Abhängigkeit des Tagesdatums als Chart auszugeben. Hierbei ist zu beachten, dass der Navision Standard diese Funktionalität nicht enthält, so dass diese Anforderung nur über ein selbstgeschriebenes OCX, welches dann in Navision eingebunden wird, realisiert werden kann. Der Download der XXXXX Preisliste wird durch ein automatisches Shell-Script realisiert. Diese Aufgabe übernimmt ein Systemadministrator der YYYYYYY GmbH, ebenso wie die Einrichtung eines Accounts zum Upload der Artikeldatenliste von ZZZZZZ. Projektphasen mit Zeitplanung in Stunden: 1. Analyse/Planung (8 h) 1.1 Erfassung Ist-Zustand (1 h) 1.2 Soll-Zustand ermitteln, Pflichtenheft erstellen (2,5 h) 1.3 Kosten-Nutzen-Analyse (1 h) 1.4 DV Konzept erstellen (2,5 h) 1.5 „ZZZZZ ProduktA“ konfigurieren (1 h) 2. Implementierung (38 h) 2.1 Neue Tabellen anlegen (1 h) 2.2 Bestehende Tabellen erweitern (3 h) 2.3 Schnittstelle erstellen (26 h) 2.3.1 Funktionen zur Stringformatierung erstellen (2 h) 2.3.2 Kontrollfunktionen zur Überprüfung der gesplitteten Strings erstellen (3 h) 2.3.3 Funktionen zum Importieren des Artikels in artikelrelevante Tabellen erstellen (4 h) 2.3.4 Protokollfunktionen erstellen (2 h) 2.3.5 Funktionen zur Festlegung der Mwst.Buchungsgruppe des Artikel erstellen (5 h) 2.3.6 Funktionen zur Formatierung erweiterter Artikelbeschreibungen in Textbausteine (4 h) 2.3.7 Funktion zur E-Mail Benachrichtigung nach erfolgreichem Import erstellen (2 h) 2.4 Formanpassungen vornehmen (3 h) 2.5 NAS ( Navision Application Server ) einrichten (1 h) 2.6 Report zur Darstellung der Tagespreischarts erstellen (8 h) 2.6.1 Reportdesign (1 h) 2.6.2 Funktionen zur Bereitstellung der zu übergebenden Daten an das OCX erstellen (2 h) 2.6.3 OCX erstellen (5 h) 3. Qualitätsmanagement (14 h) 3.1 Testen der Software (10 h) 3.2 Fehlerbehebung/Puffer (4 h) 4. Dokumentation erstellen (10 h) Gesamt : 70 h Geplante Dokumentation zur Projektarbeit: - Projektbericht - Pflichtenheft - Testprotokoll - Quellcode - DV-Konzept - ZZZZZ „ProduktA“ Handbuch - Kurzbeschreibung des Inhalts der XXXXX Preisliste Was meint Ihr zu dem geänderten Antrag ? Gruß & Danke vorab Dennis Bearbeitet 22. Januar 2010 von robotto7831a Wunsch des Autors Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.