Beiträge von s1ck

    Wie kann ich in Centura daten, die ich in Textboxen eingegebn hab speichern?
    Es handelt sich hierbei um eine Tabelledie mit daten gefüllt werden soll. Für jede spalte habe ich eine Textbox und möchte diese daten, die ich in die textboxen schreibe per knopfdruck in die tabelle speichern.
    mfg s1ck

    Garnet mal so verkehrt die Idee ;)

    Also:

    Vorhaben:
    ICh hab ein Programm geschrieben das als Datenbank fungieren soll. Dazu hab ich in C# eine Access Datenbank implementiert bzw. ich lasse diese reinladen.
    Nun hat mein Programm aber auch eine Suchfunktion und um diese dreht es sich hier.

    Was soll sie können?
    ICh hab in meiner Suchfunktion 9 Textboxen die die jeweiligen Tabellen-header repräsentieren (Name, Vorname, Strasse...).
    Wenn ich nun zum Beispiel bei der Textbox "name" ein "M" eingebe, möchte ich, dass er automatisch die Datenbank nach den Einträgen durchsucht in denen der Name mit "m" beginnt und mir diese in einer Tabelle ausgibt. die anderen Felder sind analog zu diesem zu betrachten. Bei Eintrag in zwei feldern sollen beide als Vorraussetzung dienen. (kurz: FILTER)

    So, nun zu dem Programmcode:
    Die Variable sSql beinhaltetdie zuvorschon aus den Textboxen entnommen daten in der Form: "SELECT * FROM <tabelle> WHERE <bedingung> AND <bedingung>..."

    DataRowView[] drv;

    OleDbCommand cmd = new OleDbCommand();
    cmd.CommandText = sSql;
    cmd.Connection = oleDbConnection1;
    OleDbDataReader rdr = cmd.ExecuteReader();

    drv = dv.FindRows(rdr); //rausfinden wieviele Zeilen es sind -> mit schleife ausgeben

    Fehlerquelle:
    die letzten beiden Zeilen desProgrammcodes. Zum einen gibt er eine Überladung des ExecuteReader() an und zum anderen kann ich nicht die Länge des Arrays drv ermitteln.

    Bei weiteren Fragen einfach posten und wenn ihr ne Lösung / Alternative habt dann nur zu :)

    mfgs1ck

    Geht darum, dass ich in Textboxes verschiedene Daten eingeben möchte (auch buchstaben) und das Programm mir dann alle in der Datenbank (Access) befindlichen daten mit diesen eigenschaften raussucht und in einer tabelle ausgibt.
    Programmcode der Fehlerstelle :

    try
    {
    oleDbConnection1.Open();
    oleDbDataAdapter1.Fill(dataSet11);
    tbl = dataSet11.Tables['Tabelle'];
    DataRow row;
    DataRowView[] drv;
    string a;
    int i, j;
    DataTable tblSearch = tbl.Clone();

    OleDbCommand cmd = new OleDbCommand();
    cmd.CommandText = sSql;
    cmd.Connection = oleDbConnection1;
    OleDbDataReader rdr = cmd.ExecuteReader();

    // dv.Sort = cmd.CommandText;
    drv = dv.FindRows(rdr);
    for(i=0; i<= drv.Length -1; i++)
    {
    row = tblSearch.NewRow();
    for(j = 0; j<= tbl.Columns.Count -1 ; j++)
    {
    row[j] = drv[i].Row[j];
    }
    tblSearch.Rows.Add(row);
    }
    dvSearch = new DataView (tblSearch);
    dg.DataSource = dvSearch;
    dg.CaptionText = "Suchergebnisse";

    }

    catch(Exception ex)
    {
    MessageBox.Show(ex.ToString());
    }
    finally
    {
    oleDbConnection1.Close();
    }

    Die variable "sSql" ist vom Typ her der Art "Select * From <tabelle> Where <bedingng> and <bedingung>
    Fehler ist wahrscheinlich innerhalb dieses Ausschnittes (ohne Garantie):

    cmd.Connection = oleDbConnection1;
    OleDbDataReader rdr = cmd.ExecuteReader();
    // dv.Sort = cmd.CommandText;
    drv = dv.FindRows(rdr);

    Bitte um Hilfe,

    mfg s1ck

    hiho,

    beschäfftige mich nun mal mit C# und bräuchte mal den code dafür, dass ich das proggi verzögern kann. (Um zB eine Uhr zu bauen - damit das programm auch die sekunde wartet und nicht gleich weiter geht)

    Bei TB war es glaube delay oO

    Dann bräuchte ich nochmal den Code um den Bildschirm zu "leeren"...

    Bei TB wars glaube clear *g*

    Jemand ne ahnung :)

    mfg s1ck