Laden...

Erstes C#-projekt

Erstellt von mischer vor 18 Jahren Letzter Beitrag vor 17 Jahren 14.288 Views
M
mischer Themenstarter:in
6 Beiträge seit 2005
vor 18 Jahren
Erstes C#-projekt

Hi Leute,

da ich neu hier bin will ich erstmal ein herzliches Hallo an alle Adminstratoren, Moderatoren, Mitglieder und wen es hier sonst noch so herumtreibt loswerden.

Nun aber gleich zu meinem ersten Anliegen. Ich habe vor ein Verwaltungsprogramm zu schreiben, mit dem man Kundendaten speichen, Angebote und Rechnungen erstellen und den üblichen Kram erledigen kann. Und das ganze natürlich in C#, sonst wäre ich ja nicht hier ... klingt komisch - is aber so.

Ich habe mir deshalb schon einmal ein paar Gedanken gemacht und auch das web schon kräftig bemüht und wollte Euch jetzt mal nach Eurer Meinung bzw anderen Vorschlägen zu den zu verwendenden Programmen fragen.

Ich hab mir das so vorgestellt, dass ich das Ding mit #develop schreibe, was ja wirklich top sein soll, die Daten will ich in einer Postgres Datenbank ablegen und für die Berichte bin ich über ein Tool namens Report.NET http://sourceforge.net/projects/report gestolpert, mit dem man aus C# pdf-Dokumente erzeugen kann.

Jetzt wollte ich von Euch mal wissen was Ihr davon haltet und wo ihr vielleicht auch andere Tools einsetzen würdet. Ich bevorzuge eigentlich open-source-software würde aber (wenn es große Vorteile bringt) auch kommerzielle Produkte in Betracht ziehen.

Vielen Dank schon im Voraus für Eure Mühe und auf eine gute Zeit hier im Forum.

MfG
mischer

3.728 Beiträge seit 2005
vor 18 Jahren
Architektur

Ich persönlich bevorzuge SQL Server 2000 bzw. MSDE als Datenbank. SQL Server ist in der Microsoft Welt sehr beliebt und verbreitet. Außerdem haben viele Firmen bereits einen oder mehrere SQL Server am laufen. Es ist ärgerlich, wenn man einen zweiten Datenbankserver aufsetzen und pflegen muss, nur weil eine neue Software den existierenden nicht unterstützt. Ein weiterer Grund für SQL Server ist die gute Dokumentation und die breite Entwicklerunterstützung. Die meisten .NET Entwickler kennen sich mit SQL Server aus. Postgre SQL soll ein ausgezeichnetes Datenbank-System sein. Aber der SQL Server ist eben vertrauter. Außerdem sind die grafischen Tools Enterprise Manager, Query Analyzer und Profiler von SQL Server aller erste Sahne. Bei PostgreSQL bin ich nicht im Bilde, welche Admin-Tools es dafür gibt.

Wenn Du Deine zukünftige ERP-Software verkaufen willst, solltest Du auch erwägen, mehrere Datenbanken zu unterstützen. Damit hast Du automatisch einen größeren Kundenkreis. SQL Server sollte dabei nicht fehlen. Natürlich gibt es auch Firmen, die lieber Lizenzkosten sparen wollen und deshalb freie Software einsetzen. Über eine abstrakte Datenzugriffsschicht kannst Du den Aufwand zur unterstützung unterschiedlicher Datenbank-Systeme in Grenzen halten. Der Nachteil dabei ist, dass Du kein Datenbank-System voll ausreizen kannst, weil das eine Datenbank-System Funktionen hat, die das andere nicht hat.

#develop ist toll. In Preis/Leitung nicht zu schlagen.

Hast Du Dir auch schon Gedanken über die Architektur gemacht? Wie soll Deine Software aufgebaut sein?
*2 Schichtig (Clients greifen direkt auf die DB zu; Geschäftslogik als SPs oder im Client) *3 Schichtig (Front-End als ASP.NET Lösung) *3 Schichtig (Forms-Client, Geschäftslogik auf Appserver) *n Schichtig: Service-/Komponentenorientiert (Verschiede autonome Komponenten bzw. Dienste kommunizieren über Schnittstellen)

Webservices gehört die Zukunft. Ein modernes ERP-System sollte auf jeden Fall bestimmte Teile der Geschäftslogik über Webservices zugänglich machen. Dann können andere Programme (z.B. Logistik-Software, CRM, FiBu-Software usw.) leichter angebunden werden. Für Firmen ist es wichtig, dass sie ihre Software gut miteinander integrieren können (z.B. muss das Logistik-Programm Porto beim Lieferschein im ERP-System eintragen können, damit automatisch die Rechnung mit dem richtigen Betrag generiert werden kann).

Wenn die Geschäftslogik zentral auf einem AppServer liegen soll, musst Du Dir auch Gedanken machen, wie die Clients auf die Geschäftslogik zugreifen (Webservices, .NET Remoting, Enterprise Services, Eigene Implementierung über TCP/IP Sockets).

Es kommt einfach darauf an wie groß Dein Projekt werden soll. Eine gute Architektur hilft Dir später das Projekt zu erweitern und zu warten. Außerdem ist es hilfreich, wenn bestimmte Vorgänge nach festgelegten Mustern ablaufen.

Was das Reporting-Tool angeht, kann ich die Microsoft SQL Server Reporting Services empfehlen. Die sind für Besitzer einer SQL Server Lizenz kostenlos. Einfach runterladen, installieren und loslegen. Die Reporing Services enthalten auch ein Web-Portal, um Berichte für kaufmännische Mitarbeiter zu veröffentlichen. Zum Beispiel kann der Geschäftsführer sich den Umsatzbericht automatisch um 7:00 Uhr morgens per Mail schicken lassen. Ein Ordner und Berechtigungssystem sorgt für den nötigen Überblick und Sicherheit.

Die Reports können im Browser angezeigt werden und interaktiv sein (Drill-Down). Unterstützung für Pivot-Tabellen und Diagramme ist auch integriert. Die Berichte können auch als PDF, CSV, Excel oder TIF gerändert werden. Außerdem kann man eigene Rendering-Erweiterungen schreiben. Reporte können miteinander verknüpft werden (z.B. auf eine Verkaufszahl in einem Verkaufsbericht klicken und schon wird ein detaillierterer Bericht aufgerufen, der die die Verkaufszahl näher aufschlüsselt).

Auch das ist ein Argument für SQL Server. Es gibt wenige Reporting-Tools, die das alles können. Und wenn kosten sie tausende von Euro. Schau Dir den folgenden Webcast an, wenn Du Dir die Reporting Services näher anschauen willst:

http://www.microsoft.com/germany/aktionen/webcasts/detail.aspx?id=100136

1.274 Beiträge seit 2005
vor 18 Jahren

Die Adresse funktioniert nicht mehr.

Die funktionierende lautet
https://microsoft.com/germany/msdn/webcasts/detail.aspx?id=100136

"Das Problem kennen ist wichtiger, als die Lösung zu finden, denn die genaue Darstellung des Problems führt automatisch zur richtigen Lösung." Albert Einstein

64 Beiträge seit 2005
vor 18 Jahren

Hallo!

Das finde ich sehr gut dein Projekt.

Als "großes Vorbild" kannst du ja GeoBüro von HHK nehmen (www.hhk.de). Die haben auch so etwas ähnliches (Kundenkartei, Mitarbeiter etc.). Kannst dir ja die Funktionen durchlesen und evtl. diese bei dir mit einbauen.

Hier findest du noch einmal mehr dazu:

http://www.hhk.de/produkte/bs/Hotmails/index.html

::So long, Nekromanter

3.825 Beiträge seit 2006
vor 17 Jahren

Hallo Mischer,

ich will Deinen Eifer ja nicht bremsen, aber gibt es nicht genug Programme die Kundendaten speichern und Rechnungen schreiben ?

Es lohnt sich meiner Meinung nach nicht mehr sowas heute durch eine Individualsoftware erledigen zu lassen. Irgendwann ist diejenige Person, die das Programm geschrieben hat, nicht mehr greifbar und dann muss kosten- und zeitintensiv auf eine Standard-Software umgestiegen werden.

Wenn man so eine Software später als Standardsoftware verkaufen will ist der Aufwand noch wesentlich höher. Man denke nur an eine vollständige Dokumentation die von Rechts wegen schon vorhanden sein muss. In den bekannten Softwarehäusern, die solche Software anbieten, ist eine 2 bis 4-stellige Zahl an Programmierern an solchen Projekten tätig, und dann klappt trotzdem nicht alles.

Wenn Du einige Anforderungen nennst kann ich Dir sicher fertige Software nennen.

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

4.221 Beiträge seit 2005
vor 17 Jahren

Original von BerndFfm

Wenn Du einige Anforderungen nennst kann ich Dir sicher fertige Software nennen.

z.B: Software aus Polen ... auch SAP genannt 😁

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

3.825 Beiträge seit 2006
vor 17 Jahren

Programmierhans : SAP heisst "Shareware aus Pakistan"

SAP-Mitarbeiter allerdings denken es heisst "Sex am Pool".

😉

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3