[SQL/C#] Meerdere database query's in een Form?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Stekeltje
  • Registratie: November 2005
  • Laatst online: 10-07 16:43

Stekeltje

Nothing to see here move along

Topicstarter
Ik ben bezig aan een programma waarmee vragen gesteld worden aan een SQL database (duh!), ik heb het nu zo voor elkaar dat alle producten die binnen nu en 14 dagen "over de datum" zijn worden aan gegeven in een tabel.

Echter wil ik in dezelfde form een 2e tabel met een query naar de zelfde SQL database voor een andere soort vraag. Zodra ik deze query uitvoer, vult hij elke tabel (gridview) met dezelfde waardes van query 1 of query 2. Het is niet zo dat query 1 in tabel 1 verschijnt en query 2 in tabel 2.

Hoe kan ik dit oplossen? Zodra ik knoppen gebruik gebeurd hetzeflde, ik ben ene complete noob in c# en sql, maar ik vind het leuk om iets nieuws te leren.

Oja, ik gebruikte eerst geen gridview maar een andere database viewer (oid) en als ik dan dubbel klikte op cellcontent dan opende hij een new form met diezelfde cell. Nu ik een Gridview gebruik doet hij dit niet meer automatisch, is dit een instelling of hoe kan ik dit anders aanpakken?

Ik heb door de vele verhalen van google en op tweakers geen idee meer waar ik het moet zoeken het is gewoon veel te veel om er echte verschillen in te zien welke oplossingen werken of niet.

C#:
1
2
3
4
5
6
7
8
9
            this.devicestableTableAdapter.Fill(this.devicestableDataSet1.devicestable);
            try
            {
                this.devicestableTableAdapter.cabdueStatus(this.devicestableDataSet1.devicestable);
            }
            catch (System.Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);
            }

Is er een mogelijkheid waarbij this. kan worden vervangen voor bijvoorbeeld gvCabStatus?

[ Voor 11% gewijzigd door Stekeltje op 09-11-2010 13:29 ]


  • Stekeltje
  • Registratie: November 2005
  • Laatst online: 10-07 16:43

Stekeltje

Nothing to see here move along

Topicstarter
Ik schop hem weer even omhoog, misschien dat ie dan weer opvalt.

  • Sven_Vdb
  • Registratie: Januari 2006
  • Laatst online: 18-02 22:40
Kan je , je vraag iets specifieker stellen?
Het is niet echt duidelijk ( alleszins niet voor mij ).

Je hebt 2 grids?
Je wil daar verschillende data in?
Je hebt 2 query's die dit ophalen?
Je bind de gegevens ook aan die grids?

  • jip_86
  • Registratie: Juli 2004
  • Laatst online: 10-07 17:26
Je omschrijving is wat vaag, maar zo als ik het begrijp/interpreteer stop je de data in allebei de gridviews? En niet query1 in gridview1 en query2 in gridview2.

  • Stekeltje
  • Registratie: November 2005
  • Laatst online: 10-07 16:43

Stekeltje

Nothing to see here move along

Topicstarter
Sorry als het niet duidelijk is.

Ik heb een venster:
Afbeeldingslocatie: http://i102.photobucket.com/albums/m99/Ruudjuh_2006/11-11-20104-30-50PM.png

In dat venster gebruik ik zoals je ziet 2 gridviews.

In gridview 1 moet alleen op de calibratie status worden gelet, dus een query waarin gekeken wordt of er in de database apparaten zijn die daaraan voldoen.

In gridview 2 moet alleen op de nen status worden gelet, dus een query waarin gekeken wordt of er in de database apparaten zijn die daaraan voldoen.

Het probleem:
In gridview 1 en in gridview 2 kunnen geen verschillende querys. Iig niet op de manier zoals het nu is geschreven, hoe kan je een query specificeren voor 1 tabel. Wel gebruik makende van 1 database.

De volgende code staat op dit moment in mijn Form_load:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        private void Form2_Load(object sender, EventArgs e)
        {
            // TODO: This line of code loads data into the 'dsDevicetable.devicestable' table. You can move, or remove it, as needed.
            this.devicestableTableAdapter.Fill(this.dsDevicetable.devicestable);
            try
            {
                //Hier onder wordt er een query uitgevoerd naar de database
                this.devicestableTableAdapter.cabStatus(this.dsDevicetable.devicestable);
            }
            catch (System.Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message);
            }
        }


Vraag 2:
Zodra ik de functie: doubleclick on cell content toevoeg om na een volgende form te gaan met daarin meer informatie over het desbetreffende apparaat. Gebruikt hij niet het aangeklikte item maar gewoon het eerste item uit de database, hoe kan ik wat in Form 2 wordt aangeklikt (bijvoorbeeld apparaat 003) dat apparaat 003 ook met al zijn informatie te zien in form 3 ipv apparaat 001.
Afbeeldingslocatie: http://i102.photobucket.com/albums/m99/Ruudjuh_2006/11-11-20104-31-45PM.png
Code Form 2 na Form 3
C#:
1
2
3
4
5
6
        private void dgvCabStatus_CellContentDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            this.Hide();
            Form formAdInfo1 = new formAdInfo();
            formAdInfo1.Show();
        }


Gehele code Form 3
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
    public partial class formAdInfo : Form
    {
        public formAdInfo()
        {
            InitializeComponent();
        }

        private void devicestableBindingNavigatorSaveItem_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.devicestableBindingSource.EndEdit();
            this.tableAdapterManager.UpdateAll(this.dsDevicetable);

        }

        private void Form3_Load(object sender, EventArgs e)
        {
            this.devicestableTableAdapter.Fill(this.dsDevicetable.devicestable);
        }

        private void devicestableBindingNavigatorSaveItem_Click_1(object sender, EventArgs e)
        {
            this.Validate();
            this.devicestableBindingSource.EndEdit();
            this.tableAdapterManager.UpdateAll(this.dsDevicetable);
        }

    }
}

  • Wijnbo
  • Registratie: December 2002
  • Laatst online: 03-07 13:04

Wijnbo

Electronica werkt op rook.

Ik heb het idee dat je nogal wat basiskennis mist?

Meerdere gridjes kun je toch gewoon op een pagina /form pleuren, en dan vervolgens binden? Wat je er vervolgens aanhangt maakt weinig uit...

Verder maak je gebruik van een nogal oude manier van databinden. Wat dacht je van LINQ / SqlDataReaders etc?

Dit ziet er een beetje uit als .NET 1.1 code....

[ Voor 29% gewijzigd door Wijnbo op 11-11-2010 16:56 ]

Pagina: 1