tomislav91
Početnik
- Poruka
- 2
Pozdrav forumasi,
problem je taj sto meni filtriranje radi posebno, ali zelim zajedno to da funkcionise, da ako unesem korisnika i dogadjaj da mi izbaci tog korisnika za taj dogadjaj izmedju recimo tog i tog datuma. Radi posebno, ako unesem raspon datuma, odradi, ako unesem korisnika ili dogadjaj radi sve, ali zajedno ne, kako to da resim?
Hvala unapred,
evo celog koda
problem je taj sto meni filtriranje radi posebno, ali zelim zajedno to da funkcionise, da ako unesem korisnika i dogadjaj da mi izbaci tog korisnika za taj dogadjaj izmedju recimo tog i tog datuma. Radi posebno, ako unesem raspon datuma, odradi, ako unesem korisnika ili dogadjaj radi sve, ali zajedno ne, kako to da resim?
Hvala unapred,
evo celog koda
Kod:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace zadatak2
{
public partial class Izvestaj : Form
{
private OleDbConnection connection = new OleDbConnection();
private BindingSource bs;
public Izvestaj()
{
InitializeComponent();
}
OleDbDataAdapter sda;
DataTable dt;
private void Izvestaj_Load(object sender, EventArgs e)
{
connection.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Tomy\Desktop\zadatak2\zadatak2\baza.mdb;User Id=admin;Password=;";
dt = new DataTable();
sda = new OleDbDataAdapter("SELECT korisnici.korisnik,dogadjaji.dogadjaj,Tomislav.Datum FROM dogadjaji INNER JOIN (korisnici INNER JOIN Tomislav ON korisnici.ID = Tomislav.korisnik_ID) ON dogadjaji.ID = Tomislav.dogadjaj_ID;", connection);
sda.Fill(dt);
dataGridView1.DataSource = dt;
dataGridView1.Columns[0].Width = 120;
dataGridView1.Columns[1].Width = 150;
dataGridView1.Columns[2].Width = 150;
bs = new BindingSource(dt,null);
}
private void textBox3_TextChanged(object sender, EventArgs e)
{
if (textBox3.Text == string.Empty)
{
bs.RemoveFilter();
}
else
{
bs.Filter = string.Format("dogadjaj LIKE '*{0}*'", textBox3.Text);
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text == string.Empty)
{
bs.RemoveFilter();
}
else
{
bs.Filter = string.Format("korisnik LIKE '*{0}*'", textBox1.Text);
}
}
private void button1_Click(object sender, EventArgs e)
{
if(dateTimePicker1.Value>dateTimePicker2.Value)
{
MessageBox.Show("Takav opseg nije moguc. Datum Od mora biti veci od datuma Do.", "Opseg datuma", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else{
string query = "select korisnici.korisnik, dogadjaji.dogadjaj, Datum from korisnici, dogadjaji, Tomislav where Datum BETWEEN ? AND ?";
OleDbCommand cmd = new OleDbCommand(query, connection);
cmd.Parameters.AddWithValue("SDate", DbType.DateTime).Value = dateTimePicker1.Value;
cmd.Parameters.AddWithValue("EDate", DbType.DateTime).Value = dateTimePicker2.Value;
DataSet ds = new DataSet();
sda= new OleDbDataAdapter();
connection.Open();
sda.SelectCommand = cmd;
sda.Fill(ds, "Tomislav");
dataGridView1.DataSource = ds.Tables[0];
connection.Close();
}
}
private void unosUBazuToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Hide();
Form1 baza = new Form1();
baza.ShowDialog();
}
private void exitToolStripMenuItem1_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Da li ste sigurni?", "Exit", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
Application.Exit();
}
}
}
}