Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von BerndFfm
Thema: Report erstellen und dabei bestimmte Einträge filtern
Am im Forum: Rund um die Programmierung

Der Report kann auch auf ein DataSet oder eine Enumeration als Datenquelle zugreifen, so kannst Du mit den Daten vor der Ausgabe machen was Du willst.

Eine Where-Klausel ist aber erstmal der einfachere Weg.

Beachte dass in der RDLC-Datei Username und Kennwort im Klartext stehen, wenn Du den Report mit einem SQL-Server ohne Windows-Authentifizerung verbindest.

Grüße Bernd

Thema: Daten aus einer SQL Datenbank auslesen - Welcher Connectionstring ist richtig?
Am im Forum: Datentechnologien

Hallo Fitzel,

in Deinem Connection String fehlt eventuell die Angabe der Server Instance.

Beispiel "Data Source=192.168.2.50\SQLExpress" statt Network Address.

Hier ein paar Beispiele :

http://download.seven-c.de/files/DatenbankenHowTo.htm

Grüße Bernd

Thema: Wie baue ich am Besten einen Webshop?
Am im Forum: Smalltalk

Schau Dir mal Smartstore.net an, das gefällt mir recht gut :

http://www.smartstore.com/de/net/

Die Buchhaltung muss natürlich richtig gemacht werden.

Grüße Bernd

Thema: Table-Valued User-Defined Fu ist langsam, wenn sie mit Integer-Wert anstatt Variabel aufgerufen wird
Am im Forum: Datentechnologien

Arbeite in C# auf jeden Fall mit Parametern, das kann der SQL Server auch wesentlich besser optimieren.

Grüße Bernd

Thema: Table-Valued User-Defined Fu ist langsam, wenn sie mit Integer-Wert anstatt Variabel aufgerufen wird
Am im Forum: Datentechnologien

Hallo Christoph,

wenn Du mit Parametern arbeitest wird das SQL Statement nicht jedes Mal neu übersetzt.

Auch kann der SQL Server auf seinen Cache zurückgreifen.

Das der Unterschied aber so groß ist hätte ich nicht gedacht.

Was passiert wenn Du die Reihenfolge umkehrst ?

Grüße Bernd

Thema: .NET Usergroup Frankfurt 6. September : Von BeginInvoke zu async / await (Golo Roden)
Am im Forum: Szenenews

Ein Hinweis : Nach dem Umbau der Microsoft Geschäftsstelle in Bad Homburg steht leider nicht mehr soviel Platz zur Verfügung. Die meisten Termine sind deshalb schnell ausgebucht, ich poste sie deshalb nicht hier. Weiß jemand einen Raum im Rhein/Main-Gebiet, in dem kostengünstig bis zu 80 Personen untergebracht werden können ?

Für den morgigen Termin sind noch ein paar Restplätze zur Verfügung, er wird sicher wieder sehr interessant werden :

Dienstag, 06. September 2016 18:30 - 22:00
Von BeginInvoke zu async / await: Eine kurze Geschichte der asynchronen Programmierung in C# und JavaScript
Golo Roden (goloroden.de)

Erinnern Sie sich noch an BeginInvoke und EndInvoke aus .NET 1.0? Oder an DownloadStringAsync und DownloadStringCompleted aus .NET 2.0? Wahrscheinlich nicht. Dank den Schlüsselwörtern async und await ist die asynchrone Programmierung ein Leichtes geworden. Doch wie funktionieren die beiden Schlüsselwörter unter der Haube? Ein Blick über den Tellerrand hilft, denn auch JavaScript führt async und await in der nächsten Sprachversion ein. Wie kam es dazu? Wo liegen die Gemeinsamkeiten von C# und JavaScript, wo die Unterschiede? Und was kann die eine von der anderen Sprache lernen - und umgekehrt? Golo Roden nimmt Sie mit auf eine Reise durch die Geschichte von zwei der beliebtesten Programmiersprachen. Das Ziel: Die Asynchrone Programmierung in C# und JavaScript von Grund auf zu meistern.

Wir freuen uns unsere September-Tradition wieder aufleben lassen zu können und Golo mit einem Vortrag bei uns begrüßen zu dürfen. Sicher ein toller Abend, den Ihr nicht verpassen solltet.

Im Anschluss an den Vortrag geht es wie gewohnt zum Networking ins Brauhaus. Dort gibt es bei einem kühlen Getränk und leckeren Speisen die Gelegenheit für vertiefende Gespräche und weiteren Austausch.

Der Beginn für das Meeting ist wie immer um 18:30 Uhr. Bitte um 18:15 anwesend sein.

Veranstaltungsort ist die Geschäftsstelle von Microsoft in Bad Homburg, Siemensstrasse 27. Die Tiefgarage kann genutzt werden.

Bitte beachtet, dass für den Besuch dieses User Group Meetings eine Anmeldung auf der Web Seite der .NET User Group zwingend notwendig ist :

http://dnug-frankfurt.de/Event/tabid/119/ID/106/Default.aspx

Grüße Bernd

Thema: Unterordner von Ornder A nach x Tagen in Ordner B verschieben
Am im Forum: Rund um die Programmierung

Hier noch ein Tipp :

QuickIO.NET - Performante Dateioperationen

Grüße Bernd

Thema: Wie automatisch mehrere Exe-Dateien aus einem Projekt erstellen und individuelle Variable setzen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich kompiliere auch individuell pro Kunde.

Ich schreibe den Lizenzcode direkt in den Sourcecode und kompiliere dann dreimal per Batchdatei, bei 3 Kunden.

Grüße Bernd

Thema: Einzelne Klassen in mehreren Projekten verwenden - Elegantere Lösung? --> Neues Projekt in Solution
Am im Forum: Grundlagen von C#

Ja, das ist die typische Anwendung für eine DLL.

Es geht allerdings auch ohne DLL :

Sharing code between 2 projects without a dll

Grüße Bernd

Thema: Große Datenmengen in Datenbank einspielen
Am im Forum: Datentechnologien

Hallo Christoph,

bei meinen Daten hatte ich folgende Zeiten für einen Datenimport :

Ca. 2 Mio. Datensätze :

Datensätze einzeln lesen und speichern : 36 h
Datensätze in Dataset laden und auf einmal speichern : 3 h
Datensätze aus externer Datei mit Bulk Insert : 7 min

Wenn die Tabelle bei Methode 2 größer 500 MB ist dann teile ich auf mehrere Datasets auf.

Beim Bulk Insert bekommt man keine aussagekräftige Fehlermeldung wenn was schief geht. Er fügt einfach nicht ein.

Grüße Bernd

Thema: Datenbankabfrage mit SqlDataAdapter liefert keine Daten zurück [==> Serverfehler]
Am im Forum: Datentechnologien

Zitat
Hast Du den SQL-Befehl schon im Management Studio ausprobiert ?

Thema: Datenbankabfrage mit SqlDataAdapter liefert keine Daten zurück [==> Serverfehler]
Am im Forum: Datentechnologien

Da hilft nur, wie fast immer, Schritt für Schritt überprüfen.

Die Connection und der SQL Befehl sind in Ordnung wenn sie keine Exception werfen.

Hast Du den SQL-Befehl schon im Management Studio ausprobiert ?

Wieviele Zeilen enthält das Table nach dem Fill ?

var count = dt.Rows.Count;

Grüße Bernd

Thema: SQL-Query Filter mit Textboxen im Query angeben
Am im Forum: Datentechnologien

Benutze unbedingt die Tipps die Du hier bekommst, auch wenn das etwas länger dauert.

Mit Parametern sieht das SQL-Kommando so aus :

SqlDataAdapter adapter = new SqlDataAdapter("select a.I_FALL, m.CODE, m.ANZ, m.TDAT From test m with (nolock) inner join test2 a with (nolock) on a.aid = m.aid where m.TDAT = @tdat and m.Einrichtung = @einricht order by a.I_FALL", "Server = tre; Database = vbn;Trusted_Connection = True");

Ich hoffe das Datum liegt in der Datenbank im Datetime-Format vor. Wandele den Text aus der Textbox in ein Datetime und übergebe das als Parameter.

Grüße Bernd

Thema: Per C# und Tapi3 eingehende Anrufe abfangen
Am im Forum: Rund um die Programmierung

Bei Codeplex geht es um Tapi 2.0, das kann aber auch eingehende Anrufe anzeigen.

Ich habe sogar festgestellt dass Tapi 2.0 viel stabiler läuft als 3.0, und die neuen Sachen in 3.0 braucht kein Mensch (Videokonferenz).

ich benutze den C# Wrapper von Helen Warn für Tapi 2.0 :

TAPI Treiber mir C# erstellen möglich?

Grüße Bernd

Thema: Per C# und Tapi3 eingehende Anrufe abfangen
Am im Forum: Rund um die Programmierung

TAPI ist eine sehr wackelige Sache habe ich festgestellt.

Kommen denn die Anrufe an ? Prüfe mal mit einem anderen TAPI-Programm.

Grüße Bernd

Thema: Report - Verschachteltes Objekt im Report anzeigen
Am im Forum: Datentechnologien

Willst Du einen Master-Detail-Report anzeigen ?

Das ist leider umständlich im Report Viewer.

Hier sind die 2 Möglichkeiten dargestellt :

http://gotreportviewer.com/masterdetail/index.html

Grüße Bernd

Thema: Hat C# unter Windows 10 Probleme mit SQL Server 2016 ?
Am im Forum: Datentechnologien

Hallo CWolle,

an C# liegt es nicht, denn diese Kombination läuft hier öfter.

Liegen Datenbank und C# Applikation auf dem gleichen Rechner ?

Kannst Du mit SQL Management Studio auf den SQL Server zugreifen ?

Data Source ist bei mir 'localhost\SQLExpress'.

Starte Deine Anwendung als Administrator, geht es dann ?

Benutze mal SQL Server Authentifizierung mit User und Kennwort statt Windows Authentifizierung.

Grüße Bernd

Thema: Nach Update auf Windows 10 wirft Datetime Parse/Tryparse eine Exception (Ländereinstellungen gleich)
Am im Forum: Rund um die Programmierung

FxCop gibt es leider nur für das Framework 2.0.

Grüße Bernd

Thema: Nach Update auf Windows 10 wirft Datetime Parse/Tryparse eine Exception (Ländereinstellungen gleich)
Am im Forum: Rund um die Programmierung

Stell mal dein eigenes System auf Englisch um und prüfe deine Datumsroutinen. Sie sollten dann auch funktionieren.

Wir hatten mal bei Installation auf einem Apple Computer merkwürdige Datumseinstellungen im Windows.

Grüße Bernd

Thema: (Klassen)architektur mehrerer Windows Forms mit Submenüs/Unterfenstern
Am im Forum: GUI: Windows-Forms

Zitat von Palladin007
Zum Beispiel habe ich noch die Arbeit mit einer Anwendung im Hinterkopg (welche weiß ich nicht mehr), wo alles ein Fenster war - auch die verschiedenen Dokument, an denen ich in der Anwendung gearbeitet habe. Diese Dokumenta waren im Prinzip eigene Fenster innerhalb des Haupt-Fensters.

MDI ? Das ist sehr altmodisch und auch sehr unpraktisch finde ich.

Grüße Bernd

Thema: (Klassen)architektur mehrerer Windows Forms mit Submenüs/Unterfenstern
Am im Forum: GUI: Windows-Forms

Ich öffne ein neues Fenster mit Show() über dem Hauptfenster. So kann der Anwender, wenn er will, mehrere Fenster öffnen.

Schaltet der Anwender auf Vollbild werden die Unterfenster auch im Vollbild geöffnet. So kommen auch Anwender, die Fenster nicht kennen, mit der Anwendung zurecht. So wie MS-DOS früher ;-)

Ich würde die Vorgehensweise von den Anwendern abhängig machen und von den Funktionen , die in den Unterfenstern angeboten werden.

Grüße Bernd

Thema: Entscheidungshilfe zu einer Datenbank: Welche verwenden?
Am im Forum: Datentechnologien

Hallo Jesfreric,

Deine Aufgabenstellung kann von so ziemlich jeder Datenbank erledigt werden.

Ich empfehle Dir den Microsoft SQL Server 2016 Express Edition. Das SQL Management Studio gleich dazu installieren.

Die Datenbankdateien werden nicht im Netzwerk freigegeben, sondern ausschließlich vom SQL Server verwaltet. So verhindert man Datenverluste und erhöht Sicherheit und Geschwindigkeit.Der Client oder die Middleware kommuniziert dann mit dem SQL Server per TCP/IP, Named Pipes oder Shared Memory.

Der SQL Server sollte auf einem zentralem Server installiert werden, nicht auf einem Arbeitsplatz.

Hinweis zur Installation : Gemischte Authentifizierung = Ja, TCP/IP überall einschalten, SQL-Browserdienst Startart automatisch, Windows Firewall erstmal ausschalten.

Eine ausführliche Installationsanleitung zur Installation eines SQL Servers in einem Netzwerk stelle ich gerne zur Verfügung.

Grüße Bernd

Thema: Problem beim Update der Access DB: Parallelitätsverletzung: Der UpdateCommand hat sich auf 0 der ...
Am im Forum: Datentechnologien

chilic : Doch, es kann passieren wenn Rundungsfehler in float auftreten. Hatte ich auch schon.

Einen eindeutigen Schlüssel braucht man natürlich, darf auch veränderbar sein.

SQL-Kommando ansehen :

string sql = da.UpdateCommand;

"da" ist der DataAdapter.

Grüße Bernd

Thema: Problem beim Update der Access DB: Parallelitätsverletzung: Der UpdateCommand hat sich auf 0 der ...
Am im Forum: Datentechnologien

Hallo roadrunner,

die Fehlermeldung besagt dass der Datensatz, der geändert werden soll, nicht gefunden wird. Das kann passieren wenn der Datensatz inzwischen von einem anderen Benutzer geändert wurde. Das kann aber auch passieren wenn Rundungsfehler in float Spalten auftreten. Schau Dir mal das erzeugte SQL Update Kommando an ;-)

Eine Lösung ist es auf optimistic locking umzustellen :

DbCommandBuilder cb = new SqlCommandBuilder();
cb.ConflictOption = ConflictOption.OverwriteChanges;

Jetzt musst Du aber selbst dafür sorgen dass kein anderer Benutzer den Datensatz inzwischen geändert hat, sonst werden dessen Änderungen überschrieben.

Grüße Bernd

Thema: CodeTags in Richtextbox nachbauen
Am im Forum: Grundlagen von C#

Syntax Highlighting heißt das Stichwort, wenn die Hervorhebung über eine Farbe erfolgt.

Ich benutze dazu dieses Projekt :

http://www.codeproject.com/Articles/161871/Fast-Colored-TextBox-for-syntax-highlighting

bzw.

https://github.com/PavelTorgashov/FastColoredTextBox

Grüße Bernd

Thema: Label an Auflösung anpassen
Am im Forum: Grundlagen von C#

Hallo mrHJS,

Du kannst auch in den Eigenschaften des Forms einstellen :

AutoSizeMode = None

Grüße Bernd

Thema: Daten aus Datenbank ausdrucken - Welche Form ist am Besten geeignet?
Am im Forum: Datentechnologien

Lass diese Schleife weg, sie hat keine Funktion :

for (int i = 0; i < 20; i++)

Ergänze deine Fehlermeldung um den genauen Grund des Fehlers :

 MessageBox.Show("Ein Fehler ist aufgetreten : " + ex.Message);

Unter Windows statt \n besser \r\n oder Environment.NewLine.

Jetzt das Ergebnis nur noch drucken !

Du kannst das Ergebnis auch in ein DataSet laden, hier siehst Du wie Du ein DataSet als Tabelle ausdruckst :

http://www.gotreportviewer.com/

Grüße Bernd

Thema: SQL Server 2016 veröffentlicht
Am im Forum: Szenenews

Ich installiere den SQL 2016 gleich mal. Wie bekomme ich die Version "With Tools" mit SQL Management Studio ? Als Media-Download ?

Wie kann ich die 32-Bit-Version downloaden auf einem 64-Bit-System ? Gibt es die denn noch ?

Grüße Bernd

Thema: Daten aus Datenbank ausdrucken - Welche Form ist am Besten geeignet?
Am im Forum: Datentechnologien

Für das Drucken gibt es mehrere Möglichkeiten :

- PrintDocument : Du musst alles selber machen

- PrintForm : Ein Form wird gedruckt

- Reportbuilder : Komfortabel und hübsch

- Andere Reportgeneratoren (SAP Crystal Reports, FIY Reporting bzw. der Nachfolger NReports etc.)

Jede Methode hat so ihre Vor- und Nachteile.

Grüße Bernd

Thema: Einsetzten von Werten im Grid in eine TextBox
Am im Forum: Datentechnologien

Beispiel zu 1. bis 3. :

Mit If-Abfrage :

cmd.CommandText = "SELECT * FROM Member WHERE";
string vorname = txtB_Vorname.Text;
if (vorname != "") cmd.CommandText += " Vorname LIKE @Vorname AND";
...


Oder SQL Server machen lassen :

cmd.CommandText = "SELECT * FROM Member WHERE (Vorname LIKE @Vorname OR @Vorname = '') AND ...";


Grüße Bernd