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 oehrle
Thema: Inhalte von zwei generischen Listen miteinander vergleichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi, habe die Klasse geändert (überschreiben von Equals() und GetHashCode())
Nun, jetzt muß ich jeden Eintrag der List in den Typ zurückcasten (CDateiInfos) und dann mit Equals auswerten. Geht das nun auch gleich mit dem Vergleich in der List??


if (listVorhandenSQLFiles.Equals(CUpdateSQL.listDateienImPool[i]))
{

}

Thema: Inhalte von zwei generischen Listen miteinander vergleichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo, ich habe ein Datenbank, die Werte aus Dateien speichert. Diese Werte der Dateien sollen immer wieder aktualisiert werden können. Diese Dateien liegen in einem Verzeichnis auf dem Server, und es weren dort neue erstellt, oder auch die vorhandenen Dateien verändert (nur der Inhalt, nicht der Dateiname).

Nun lese ich die Dateien aus dem Verzeichnis auf dem Server ein, und schreibe den Dateinamen und das letzte Änderungsdatum in eine List<T>.

Dann lese ich aus der SQL-Tabelle alle Dateiname und ihrem letzten Änderungsdatum ebenfalls in eine List<T> ein.

Dann will ich in einer Schleife prüfen, ob alle die eine generische Liste den Eintrag von der anderen generischen Liste beinhaltet ==> List<t>.Contains()

Leider funktioniert das so nicht. Ich gebe das mal an wie ich das gemacht habe.



/// hier der Klassenaufbau für die generische Struktir der Liste
public class CDateiInfos
    {
        public string Dateiname { get; set; }
        public DateTime LetzterSchreibzugriff { get; set; }
    }

/// hier schreibe ich die Dateieinträge von der SQL-Tabelle rein
List<CDateiInfos> listVorhandenSQLFiles = new List<CDateiInfos>(); 

/// hier sind die Dateien vom VErzeichnis auf dem Server drin 
/// CUpdateSQL.listDateienImPool

            for (int i = 0; i < CUpdateSQL.listDateienImPool.Count; i++)
            {
                if (listVorhandenSQLFiles.Contains(CUpdateSQL.listDateienImPool[i]))
                {
                    listGeaenderteDateien.Add(CUpdateSQL.listDateienImPool[i]);
                }

            }


So findet er jedenfalls keine Übereinstimmung, warum weiss ich nicht. Es sind jedenfalls in beiden Listen gleiche Einträge vorhanden.
Hat jemand einen Tipp. Muss ich da noch was implementieren (Schnittstelle??)

Thema: Bekomme keine Fehlerausgabe bei bei Programmabbruch
Am im Forum: Rund um die Programmierung

Danke dir für den Link. Der Fehler war was ganz dämliches, aber auchwirklich sehr gut versteckt in einer Methode bei einem Dateizugriff.

Thema: Bekomme keine Fehlerausgabe bei bei Programmabbruch
Am im Forum: Rund um die Programmierung

Hallo, habe das mal getestet. Bekomme folgende Meldung:
==> System.NullReference Exception. Object reference not set to an instance of an object

Wie komm ich da weiter dran? Problem ist, das ich auf diesen Rechnern immer nur mal kurz ran kann und kien Debugger-System drauf ist.

Thema: MonthCalendar erweitern, damit Feietage in anderer Farbe erscheinen
Am im Forum: GUI: Windows-Forms

Das mit den Standard-Bold Dates habe verwende ich schon für gesetzte Termine. Ich möchte deshalb die Feiertage in einer extra Farbe anzeigen.

Thema: MonthCalendar erweitern, damit Feietage in anderer Farbe erscheinen
Am im Forum: GUI: Windows-Forms

Hallo, hat von euch schon jemand das Control so abgeändert, das man die Feiertage in einer anderen Farbe darstellen kann als die Tage des vorigen oder kommenden Monates?
Das muß doch bestimmt irgendwie möglich sein. Überschreiben (Vererbung)??

Thema: Bekomme keine Fehlerausgabe bei bei Programmabbruch
Am im Forum: Rund um die Programmierung

Hat noch jemand eine Idee wie ich rausfinden kann, was den Rechnern fehlt? Gibt es bei Windows irgendein Log-System?

Thema: Bekomme keine Fehlerausgabe bei bei Programmabbruch
Am im Forum: Rund um die Programmierung

Hi, das hatte ich schon versucht. Habe bei den ganzen Aufrufen Try-Catch eingefügt, sowie auch das mit der DEBUG-Variante.

Wie gesagt, das Programm initialisiert sich zuerst, dann wenn diese Methode mit der List<t> aufgerufen wird, schmiert das Prog ab. Ich bekomme keinerlei Hinweise von try -- catch.

P.S. Try catch ==> ich fange die oberste Ausnahme ab, das ist die Exception. Das ist doch wohl ok, oder?

Thema: Bekomme keine Fehlerausgabe bei bei Programmabbruch
Am im Forum: Rund um die Programmierung

Hallo, habe ein Programm geschrieben, dass einigen Rechnern läuft. Nun wollte ich das Programm noch auf zwei weiteren Rechnern einrichten, das Programm beendet sich aber selbst.
Zur Verknüpfung vom Programm: Meine Releasde VErsion liegt auf einem Netzlaufwerk, und wird über eine Desktopverknüpung auf den betreffenden Rechnern eingebunden. Das funktioniert soweit.

==> Das PRogramm hat ein Problem festgestellt und muss beendet werden.
Falls Sie ihre Arbeit noch nicht gespeichert hatten, können Daten möglicherweise verloren gegangen sein.

Diese MEldung bekomme ich. Habe nun auch schon gegoogelt, und was gefunden. Mein Programm arbeitet doe PROGRAM.CS ab und initialisert die erset FORM. In der Form werden VErzeichnisse auf Bestand geprüft, und dann kommts. Ich lese Daten ein, schreibe diese Daten in eine List<T>, un da kacken die beiden Rechner ab. Framework 3.5 SP1 ist installiert, auch bei der Einstellung im VS 2008 eingestellt. Wer kann mir dabei helfen?

Thema: Untypisiertes Dataset: Update überschreibt vorigen Datensatz oder Concurrency violation
Am im Forum: Datentechnologien

Meine vorige Datenzeil wurde immer komplett null gesetzt, das hängt damit zusammen, das ich direkt vor dem AddNew() alle meine Checkboxen zuerst gelöscht habe. Das darf ich baürlich erst machen wenn die neue DataRow schon steht.
Das mit dem ConcurrencyViolation hing mit der Vergabe der automatisschen PK-ID der Tabelle zusammen. Hab ich deaktiviert, und hat gefunzt.

Thema: Untypisiertes Dataset: Update überschreibt vorigen Datensatz oder Concurrency violation
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQL 2008 Express>
Hi, probiere schon seit einem ganzen Tag an einem Problem beim updaten. Zuerst mal, ich verwende ein untypisiertes Dataset.
In meiner Form benutze ich zum navigieren ein BindingNavigator. Ich füge einen neuen Datensatz über die BindingSource hinzu:
_bsHM_F.Current;.AddNew();

Dann hole ich den aktuellen Datensatz in eine DataRowView:
_drv = (DataRowView) _bsHM_F.Current;

Nun trage ich alle relevante Daten in die _drv ein und mache dann das update.
Davor generiere ich noch den SQL-CommandBuilder:
_sqlcmb = new SqlCommandBuilder(_arSqladap[0]);

Dann kommt das Update:
_arSqladap[0].Update(_MVDataSet.Tables["HMF"]);

Ich hänge mal hier den Code ran, wenn ich die Daten sichere:


       private void stp_btnSave_Click(object sender, EventArgs e)
        {
            DataRowView drv = (DataRowView)_arBsSchichtTabs[0][_arBsSchichtTabs[0].Count-1];
            drv.Row.BeginEdit();
            if (drv != null)
            {
               if (Convert.ToDateTime(drv.Row["Datum"]) == Convert.ToDateTime("01.01.2000"))
                {
                    drv.Row["Datum"] = monthCal.SelectionStart.Date;
                    drv.Row["Datum"] = aktTagDtime;
                }

                drv.BeginEdit();
                foreach (Control ctrl in pnl_Frueh.Controls)
                {
                    if(ctrl is CheckBox)
                    {
                        CheckBox cbx = (CheckBox) ctrl;
                        drv[ctrl.Name] = cbx.CheckState;
                    }
                }
                drv.Row.EndEdit();
            }

            
            try
            {
                this.Validate();
                _arBsSchichtTabs[0].EndEdit();
            }
            catch (ConstraintException conexc)
            {
                MessageBox.Show("Es kann kein neuer Datensatz angelegt werden, wenn das Zugehörige Datum schon in einem \n anderen Datensatz verwendet wird. Bitte anderes Datum auswählen !!", "Datum wurde schon verwendet", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                _arBsSchichtTabs[0].CancelEdit();
                return;
            }

            try
            {
                _sqlcmb = new SqlCommandBuilder(_arSqladap[0]);
                              //{
                              //    SetAllValues = false,
                              //    ConflictOption = ConflictOption.OverwriteChanges
                              //};
                _arSqladap[0].Update(_MVDataSet.Tables["HMF"]);
                _MVDataSet.Tables["HMF"].AcceptChanges();
                MessageBox.Show("Datensatz wurde korrekt übernommen !", "Aktualisierung / Eintrag erfogreich");
                
            }
            catch (SqlException sqlex)
            {
                MessageBox.Show("Es kann kein neuer Datensatz angelegt werden, wenn das Zugehörige Datum schon in einem \n anderen Datensatz verwendet wird. Bitte anderes Datum auswählen !!", "Datum wurde schon verwendet", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                _arBsSchichtTabs[0].CancelEdit();

                if (monthCal.DataBindings.Control == null)
                    this.monthCal.DataBindings.Add(new System.Windows.Forms.Binding("SelectionRange", this._arBsSchichtTabs[0], "Datum", true, System.Windows.Forms.DataSourceUpdateMode.OnValidation, null, "d"));
                return;
            }
            


            if (monthCal.DataBindings["SelectionRange"] == null)
                this.monthCal.DataBindings.Add(new System.Windows.Forms.Binding("SelectionRange", this._arBsSchichtTabs[0], "Datum", true, System.Windows.Forms.DataSourceUpdateMode.OnValidation, null, "d"));

            _arBsSchichtTabs[0].Sort = "Datum ASC";
            KalenderDatumMarkieren();
            // BerechneVerbrauch();

            tsp_Speichern.Enabled = false;
        }

Ich hatte es schon soweit, dass die Datensätze korrekt abgespeichert wurden, aber der letzte Datensatz wurde immer alle Spalten in der Datentabelle auf null gesetzt. Warum?

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hi, ich habe das Problem vor längerem gelöst. Ich habe einfach dieseleb Query nochmals abgesetzt, und in einer weiteren var abgelegt. Dann habe ich die beiden Queries in eine neue Datentabelle eingelesen. Die Spaltennamen habe ich mir über eine SChleife aus den beiden Abfrageergebnissen ausgelesen, und so die gemeinsame Tabellenstruktur erstellt, und dann die ganzen Datenreihen aus den Ergebnissen wieder mit einer Schleife 1:1 in die Tabelle geschrieben. Dann muß die Tabelle nur noch mit dem DataGridView verbunden werden. Ist zwar ertwas umständlich, aber eine andere Lösung hatte ich nicht gesehen und funktioniert schnell und gut.

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hi, bevor ich da noch lang dran rumprobier, das geht also mit der JOIN definitiv so nicht, ist das korrekt???
Naja, finde das Linq schon ne tolle Sache, manche Dinge hab ich auch noch nicht begriffen. Aber wenn es sowas nicht kann, das stimmt mich ein wenig nachdenklich. Gibt's da Besserung ab FW 4.0 ??
Arbeite mit VS 2008 Prof, von 2010 hab ich mir erst die Expressversion gezogen, und weiß nicht wie da EF unterstützt wird.

Ich habe das Projekt davor mit ADO.Net realisiert. Bei der ersten Auswahl vom WErkzeugprogramm in der Kopf - Tabelle wird auf 16000 Werkzeugdaten zugegriffen, die nach diversen Abmessungen anhand der Datensaplten abgesucht werden können. Dann beginnt je nach Arbeitanwendung die Verzweigung in die 24 Tabellen. Somit muß ich z.B. wenn 3500 Datensätze in der Kopftabelle in das Auswahlkriterium fallen, von allen 3500 der Fremdschlüssel in eine Tabelle gespeichert werden (per SQL-Command), da die SQL-Abfragerei ja in den DataSet-Tabellen auch nicht funktioniert. Diese Geschichte ist für den Rechner sehr Zeitintensiv, diie Tabellen dann immer wieder direkt vom SQL-Server auszulesen, weil ich die eben nicht im Ram zwischenspeichern kann. Das ist eben das tolle an Linq to DataSet oder Linq to EF.
Muß ich mir was überlegen, wie ich die ganze Sache anders aufziehen könnte.

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Habe das mal getestet. Geht nicht. Das ist doch irgendwie total irre, oder? Irgendwie muß es doch möglich sein, alle Tabellen von beiden tabellen in ein DGV zu bekommen.
Also, ich muß in meinem Projekt nur Abfragen machen, nichts zurückschreiben. In meinem Projekt habe ich eine Tabelle mit Werkzuegdaten, dazu sind 24 weitere tabellen mit Daten vorhanden, die über einen Fremdschlüssel zueinander passen. Dmit bei den Abfragen, die nacheinander von abfolgen können nicht zu viel Zeit verloren geht, sollen die Daten erst mal lokal abgelegt werden (RAM). Das geht mit DataSet oder Entitiy Framework. Habe dasselbe nun auch mal mit DataSet probiert, ist selbes Problem. Dort muß ich beide Typen in eine DataTable bringen (.CopyToDataTable()). Nun, irgendwie muß ich von
select new{k,g}
durchlaufen lassen (SChleife) und die Spaltentypen und Bezeichnungen in eine DataTable erzeugen lassen. Was anderes fällt mir nun nicht ein.
Sonst jemand eine Idee?

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hi, habe mir das durchgeschaut, aber nicht das treffende gesehen. Gib mir mal einen Tipp.
In diesem Link wird ja nur ein Beispiel von einem Objekt gemacht. Ich habe zwei Tabellen.

Mein Ansatz:


 var v = from k in _cnc.Kopf
                    join c in _cnc.C1
                        on k.Dateiname equals c.Bezeichnung
                    select new {k, c};


            dgv_SqlAusgabe.DataSource = v.ToList();                      // Die Datensätze werden im DGV nicht ausgegeben,


Funktioniert aber nur so wie zuvor beschrieben, 2 Spalten weren ausgegeben

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hab mir das angesehen, aber der springende Punkt habe ich nicht gefunden ?? Wie krieg ich das Zueg ins dgv??

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hi, habe das probiert, das Ergebnis hatte ich gestern schon.
Ich bekomme nur zwei Spalten angezeigt, aber die Anzahl der Datenzeilen die Ausgegeben werden sollten die stimmt überein, wie wenn ich das mit SQL mache. Habe mir das LinqPad gezogen, dort die DB verbunden und das mal simuliert. Ich bekomme dort alle Spalten der beidne Tabellen.
Aber im C#-Prog funktionierts nict. Vielleicht spielt die Typisierung eine Rolle?

Zuallererst mache ich von der Entity eine globale Instanz, auch von jeder Tabelle.

Nach dem Initialisieren der Form, lade ich jede Tabelle in eine List <T>. Dann habe ich alle Daten im RAM, weil ich mit meinem Programm sehr viele Suchanfragen in den Daten durchführen werde.

Nun, die Daten liegen vor, ich gebe das so ein:


            var v = from k in _cnc.Kopf
                    join c in _cnc.C1
                        on k.Dateiname equals c.Bezeichnung
                    select new {k, c};

aber als Ausgabe im DataGridView bekomme ich nur zwei Spalten, mit dem Namen der Applikation und dem Tabellennamen.
So ein Käse ...

Ha, du wohl auch Schwarzwald ??

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

Hallo, das funktioniert so nicht. Noch mal zu meiner Erklärung: Ich habe zwei Tabellen, die Tabelle _kopf und die Tabelle _c1
Die Tabelle _kopf hat eine Spalte die mit der Tabelle _c1 übereinstimmt. Es ist aber keine Fremdschlüsselbeziehung in der Datenbank angelegt. Ich möchte nun die alle Datensaätze der Tabelle _kopf, wo die Fremdschlüsselspalte identisch mit der Beziechnung in der Bezugspalte der Tabelle _c1 ist.

In SQL mach ich das über Join, oder über Where.

In Linq to EF kann man das auch über Join machen, hat aber den Nachteil das ich nicht weiß wie ich alle Spalten auf einen Schlag auswählen kann, da ich sonst bei
SELECT NEW{_kopf.xxx, _kopf.yyy, _c1.xxx, _c1.yyy .....) alles eintrgaen muß. Ich habe sehr viel Spalten und ich möchte dann diese Muster für andere Tabellen weiterverwenden. Gibts da keinen generellen BEfehl, der alle Spalten übernimmt????

Thema: Linq to EF Join-Abfrage Auswahl aller Spalten möglich?
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQLEXPRESS 2008>

Hi, ich arbeite mich im moment in Linq to EF ein.
Habe schon einige Fehler geknackt, die einem Frischling so passieren.
Im moment bin ich an einer Abfrage mit Join. Die abfrage funktioniert auch. Nur möchte ich in der select new{} nicht alle Spalten der beiden Tabellen für die Ausgabe alle eingeben, sondern alle irgendwie mit einer Bezeichnung auswählen, wie bei SQL (Select * FROM _C1) als Besipiel. Geht das in Linq? Hintergund: in mnchen Tabellen sind 40 Spalten abgelegt, das ist dann mühsam.
Kann mir jemand helfen?


var v = from g in _c1
                    join p in _kopf on g.Bezeichnung equals p.Dateiname
                    select new {g,p};   // hier müßte sowas wie bei SQL select * geben

Thema: Keine Properties bei Linq to EF vorhanden
Am im Forum: Datentechnologien

Hi FZelle, danke. Damit ich bisher die Ausgabe ohne Fehler anzeigen konnte, habe ich die Spalte einfach ausgeblendet. Nun aber, mein DGV wird dynamisch erzuegt, je nachdem wie ich Tabellen in der Abfrage Joine oder Spalten auswähle. Jetzt hab ich schon rumprobiert, habe auch etwas gefunden. Dann muß ich aber erst die Spalte anlegen, und dann der DGV zuweisen. Nur geht das ja nicht, weil ich die Tabelle je nach Abfrage generiere.Wie mach ich das? Muß ich da ein DataEvent abfangen und dann neu formatieren??

Thema: Keine Properties bei Linq to EF vorhanden
Am im Forum: Datentechnologien

DIe Fehlermeldung tritt bei der Abfrage auf, wenn die Datenzeilen in das DataGridView übergeben werden. Bei jedem Datensatz. Und zwar bei dem SSMA_TimeStamp. Da muß er irgend was mit dem Format nicht schlucken. Muss mal noch sehen wie ich den Typ der Spalte ändere, denke daran liegts.



---------------------------
DataGridView Default Error Dialog
---------------------------
The following exception occurred in the DataGridView:



System.ArgumentException: Parameter is not valid.

   at System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagement, Boolean validateImageData)

   at System.Drawing.ImageConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)

   at System.Windows.Forms.Formatter.FormatObjectInternal(Object value, Type targetType, TypeConverter sourceConverter, TypeConverter targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue)

   at System.Windows.Forms.Formatter.FormatObject(Object value, Type targetType, TypeConverter sourceConverter, TypeConverter targetConverter, String formatString, IFormatProvider formatInfo, Object formattedNullValue, Object dataSourceNullValue)

   at System.Windows.Forms.DataGridViewCell.GetFormattedValue(Object value, Int32 rowIndex, DataGridViewCellStyle& cellStyle, TypeConverter valueTypeConverter, TypeConverter formattedValueTypeConverter, DataGridViewDataErrorContexts context)



To replace this default dialog please handle the DataError event.
---------------------------
OK   
---------------------------

Thema: Keine Properties bei Linq to EF vorhanden
Am im Forum: Datentechnologien

Nun funktionierts soweit, bekomme nun noch bei jedem Datensatz der angezeigt wird eine Fehlermeldung für die Spallte SSMA_Timestamp. Das mag er wohl nicht, warum? Hat da jemand schone eine Idee? Ich seh mal nach....

Thema: Keine Properties bei Linq to EF vorhanden
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQL Express 2008>

Hi, kann mir jemand auf die Sprünge hellfen? Ich arbeite mich gerade in Linq to EF ein. Ich habe die Nordwind.mdb als EntityDataModel eingebunden, habe alle Tabellen angewählt und das System die Entitäten erzeugen lassen. Dann habe ic auf meiner Form einfach mal ein DataGridView platziert, ein Button dazu, um mal zu spielen. Nun möchte ich eine Abfrage erstellen:


 private void btn_Linq_Click(object sender, EventArgs e)
        {
           NordwindEntity nw = new NordwindEntity(Settings.Default.ConString);

            var test = from p in Artikel
                       where Artikel. ??
                       select p;


            dgv_test.DataSource = test;
        }


Ich bekomme bei Artikel. keine Properties angezeigt (Artikel ist eine Tabelle (Entität) bei der Nordwind-Datenbank). Warum? Ich sehe zwar, Artikel ist eingefärbt wie eine Klasse, aber kann das sein das ich von jeder Entität ers teine Instanz erstellen muss?

Was ist falsch?

Thema: Dataview in DataTable speichern und für weitere Abfrage verwenden
Am im Forum: Datentechnologien

Hi, es funktioniert seit längerem (aber immer noch ein Problem). Ich nutze eine Tabelle zum zwischenspeichern von Ergebnissen, die ich immer wieder in die Tabelle schreibe. Wenn ich nun eine weitere Menutabelle laden will, hole ich mir die benötigten Daten für die Auswahl der Datensätze aus der Tabelle mit dne zwischengespeicherten Daten. Das dauert alles sehr lang. Liegt daran, das ich das nicht alles komplett im DataSet abarbeiten kann (können schon,aber da funktioniert ja das JOIN nicht). Nun, wie kannn ich die Daten lokal im Cache vorhalten? Mit LinQ? Evtl. ists dort auch besser mit der Verknüpfun der Tabellen (Join) ? Hat jemand einen IDee?

Thema: Dataview in DataTable speichern und für weitere Abfrage verwenden
Am im Forum: Datentechnologien

Hallo, das Problem ist halt, das ich nicht nur in der Tabelle dann irgendwelche Daten filtern möchte, sondern die Tabelle mit einer anderen aus meinem DataSet Verjoinen möchte. Was ist die Lösung? Eine temporäre Tabelle in SQL erstellen? Dann muß ich aber wieder genau die STruktur kennen. WEnn es möglich wäre wie in Access, da kann man ja einfach aus einer Abfrage die Datensätze in eine Tabelle lenken. hat noch jemand eine Idee?

Thema: Dataview in DataTable speichern und für weitere Abfrage verwenden
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: <SQL2008Express>
Hallo, ich habe Daten in einer DataView ausgegeben. Dann übertrage ich die Daten aus der DataView in eine DataTable.


 /// Daten zuvor aus der DV sichern
                    _tempTabelle = _dv.ToTable();

Jetzt möchte ich die DataTable in eine weitere Abfrage einbinden


_sqladap.SelectCommand.CommandText = "SELECT * FROM Kopf JOIN _temptabelle  ON Kopf.Dateiname = _temptabelle.Bezeichnung";

Tabeladapter füllen


_sqladap.Fill(_ds, _tempTabelle.ToString());

Da bringt mir aber der Compiler einen Fehler: ungültiger Objektname "_tempTabelle".

Ich denke ist auch klar weil die Tabelle im DataSet nicht existiert. Wie bekomme ich die da hinein? Oder ist der komplette Ansatz falsch?

Thema: "dynamisches INSERT" geht das? oder wie kann ich das sonst noch machen?
Am im Forum: Datentechnologien

Hallo, habe gerade noch im Forum danch gesucht. Das wird wohl nicht so funzen, mit dem aktualisieren per Code. Sieht so aus als müßte ich in untyp. DataSet verwenden.

Thema: "dynamisches INSERT" geht das? oder wie kann ich das sonst noch machen?
Am im Forum: Datentechnologien

Sorry, am besten die Tabellen rauskoieren und in Excel einfügen, dann passt die Formatierung.


Tabelle Maschinenliste: (hier werden weitere Maschinen manuell eingefügt)

ID MaschName Typ Druckluft Oel KVA Zentralv
1 WZ300x1 Rund 300 450 25 2
2 WZ300x2 Rund 300 450 25 1
3 WZ300x3 Rund 300 450 25 3
4 USx1 Dreh 100 120 10 1
5 MSKx1 Fraes 125 245 15 2


Nun die zweite Tabelle, in der die ganzen aktivierten Maschinen welche dann in der Übersicht angeklickt werden, abgespeichert werden und die VErbrauchswerte addiert und ebenfals in diese Tabelle in die VErbrauchsspalten eingefügt wird.

ID WZ300x1_Fruehschicht WZ300x1_Spaethschicht WZ300x1_Nachtschicht WZ300x2_Fruehschicht WZ300x2_Spaethschicht WZ300x2_Nachtschicht Datum SummeOelvebrauch SummeLuftverbrauch SummeKVA Zentralversorgungen
1 TRUE FALSE FALSE TRUE TRUE TRUE 30.06.2010 1350 900 75 7
2 FALSE TRUE FALSE FALSE FALSE FALSE 01.07.2010 450 300 25 2
3 FALSE FALSE FALSE TRUE FALSE FALSE 02.07.2010 450 300 25 1
4 FALSE FALSE TRUE FALSE FALSE FALSE 03.07.2010
5 FALSE FALSE FALSE FALSE TRUE FALSE 04.07.2010


Nun, so sieht der Aufbau Grundsätzlich aus. Nur habe ich im Moment 60 Maschinen und viel mehr Verbrauchswerte.
In der zweiten Tabelle wird also die Tagesüberischt für alle drei Schichten abgelegt, und die Verbruachswerte sowie die aktiven VErsorgungseinheiten abgelegt und berechnet.

Wird jetzt in der Maschinentabelle eine neue Maschine eingetragen, muß die zweite Tabelle automatisch erweitert werden (Spalten einfügen, was nun auch schon funktioniert). Nun muß ich noch das typ. DataSet automatishc aktualisieren lassen, habe aber noch keine Ahnung wie ich das machen soll.

Thema: "dynamisches INSERT" geht das? oder wie kann ich das sonst noch machen?
Am im Forum: Datentechnologien

Werde eine erstellen und euch zeigen (heute mittag oder heute abend noch)
Gruß
oehrle

Thema: "dynamisches INSERT" geht das? oder wie kann ich das sonst noch machen?
Am im Forum: Datentechnologien

Hi, ich habe dich verstanden. Das ist auch korrekt mit der Datenkonsistenz. Aber ich denke in meinem Fall wäre das noch so OK. Es funktioniert nun auch, mit einer gespeicherten Prozedur eine neue Spalte mit Namen einzufügen. Nun habe ich aber noch ein anderes "dickes" Problem. Ich arbeite mit einem typ. DataSet. Das heißt auch, wenn ich in der Tabelle neue Spalten hinzufüge, sind die zwar drin, aber nicht im typ. DataSet. Da muß ich die erst wieder manuell anwählen und das DataSet neu generieren lassen. Gibts da die Möglichkeit, das automatisch generieren zu lassen?