Schraubwerk CRM – CRM für den Großhandel.
Desktop-CRM für einen Großhändler für Verbindungselemente: Kunden, Produkte, Verkauf mit Rechnungsdruck und Zahlungen, Aktivitäten, Erinnerungen sowie Benutzer und Rollen – C#, WPF, Entity Framework und SQL Server. Als Demo mit Setup zum Herunterladen.
Schraubwerk CRM – CRM für den Großhandel
Desktop-CRM für einen Großhändler für Verbindungselemente: Kunden, Produkte, Verkauf mit Rechnungsdruck und Zahlungen, Aktivitäten, Erinnerungen sowie Benutzer und Rollen – C#, WPF, Entity Framework und SQL Server. Als Demo mit Setup zum Herunterladen.
Über das Projekt
Schraubwerk CRM wurde für einen Großhändler für Verbindungselemente wie Schrauben, Muttern, Scheiben und Dübel entwickelt. Es bündelt die tägliche Arbeit an einem Ort: Kunden und Produkte verwalten, Verkäufe erfassen, Rechnungen drucken, Zahlungen buchen und Aufgaben an Mitarbeitende verteilen.
Die veröffentlichte Version ist eine Demo zum Ausprobieren: Ein grafischer Setup-Assistent installiert das Programm mit wenigen Klicks, beim ersten Start werden Datenbank, gespeicherte Prozeduren, Benutzer und Beispieldaten automatisch angelegt. Anmeldung: demo / demo123.
Technische Umsetzung
Eine Windows-Desktop-Anwendung mit C# und .NET Framework 4.7.2. Die Oberfläche kombiniert WPF (mit HandyControls) und Windows Forms. Der Datenzugriff erfolgt über Entity Framework 6 auf SQL Server bzw. SQL Server Express LocalDB, ergänzt durch gespeicherte Prozeduren für Suchen und Auswertungen. Hochgeladene Bilder werden automatisch verkleinert und als JPEG gespeichert. Ein eigener Setup-Assistent (Windows Forms) installiert das Programm ohne Administratorrechte und lädt ein fehlendes LocalDB über den offiziellen Microsoft-Installer nach.
Wichtige Funktionen
- Benutzer & Rollen: Rollen mit Rechten pro Bereich (Lesen, Anlegen, Bearbeiten, Löschen); Benutzer anlegen, bearbeiten und löschen.
- Kundenverwaltung: Kunden anlegen, bearbeiten, löschen und durchsuchen – jeder Kunde hat einen Betreuer und einen Saldo.
- Produktverwaltung: Verbindungselemente mit Gewinde, Länge, Güte, Überzug, DIN-Nummer, Preis, Bestand und Produktbild.
- Verkauf & Rechnung: Kunde wählen, Warenkorb füllen, Bestellung anlegen und Rechnung drucken – der Lagerbestand wird automatisch reduziert.
- Erinnerungen: Aufgaben an Benutzer zuweisen – die Benachrichtigung erscheint am Fälligkeitstag auf der Startseite.
- Zahlungen: Teil- und Restzahlungen je Rechnung buchen, offene Beträge auf einen Blick.
- Aktivitäten: Telefonate, Besuche und Angebote je Kunde dokumentieren.
- Bedienhinweise: Jedes Fenster zeigt, was als Nächstes zu tun ist – im Verkauf Schritt für Schritt.
- Demo-Version: Grafischer Setup-Assistent; Datenbank und Beispieldaten werden beim ersten Start automatisch angelegt.
Meine Rolle
Eigenständig konzipiert und entwickelt – von der Datenbank über die Geschäftslogik bis zur Desktop-Oberfläche.
Architektur
Drei-Schichten-Architektur: BE (Entitäten) → DAL (Entity Framework 6, SQL Server/LocalDB, gespeicherte Prozeduren) → BLL (Geschäftslogik) → Desktop-Oberfläche (WPF und Windows Forms). Ein Demo-Modul richtet Datenbank und Beispieldaten beim ersten Start selbst ein; der Setup-Assistent packt die Anwendung in eine einzige Setup.exe.
Herausforderungen
Die Software musste den echten Arbeitsalltag eines Händlers abbilden – vom Kundenkontakt über Verkauf und Rechnung bis zur Zahlung – und nur für berechtigte Mitarbeitende nutzbar sein. Für das Portfolio sollte sie außerdem ohne eigene Datenbank-Einrichtung von jedem getestet werden können.
Lösungen
Rollen mit frei definierbaren Rechten, ein Verkaufsmodul mit Warenkorb, Rechnungsdruck und Teilzahlungen, Erinnerungen, die genau am Fälligkeitstag beim zuständigen Benutzer erscheinen, sowie ein Demo-Modus mit LocalDB und ein grafischer Setup-Assistent, der die Installation auf wenige Klicks reduziert.
Code-Highlight
Rollen- und Rechteverwaltung · Warenkorb mit Rechnungsdruck und Teilzahlungen · gespeicherte SQL-Prozeduren für Suche und Kundensaldo · automatische Demo-Einrichtung (Datenbank, Prozeduren, Beispieldaten) · Bildkomprimierung beim Hochladen · eigener Setup-Assistent
Lernpunkte
Fachliche Anforderungen eines echten Unternehmens in Software übersetzen · Schichtentrennung in einer Desktop-Anwendung · Arbeiten mit SQL Server, LocalDB und gespeicherten Prozeduren · Benutzer- und Rechteverwaltung · Auslieferung einer Desktop-Anwendung mit eigenem Installer
// Detailansichten
