PDA

View Full Version : گزارش گیری کامل



alirzn
دوشنبه 23 مهر 1386, 20:30 عصر
بهترین روش واسه اینکه در برناممون یک گزارش گیری کامل بگذاریم چیه؟

hassan razavi
دوشنبه 23 مهر 1386, 22:34 عصر
به نظر من طوری طراحی بشه که کاملا داینامیک باشه و به تعداد فیلدهای خاص و Jointهای خاص محدود نباشه. بتوان فیلدها را انتخاب کرد و بین جداول joint ایجاد کرد

black_hole
سه شنبه 24 مهر 1386, 08:14 صبح
میشه کاملترمنظورتون رو بگید

alirzn
سه شنبه 24 مهر 1386, 08:33 صبح
یعنی query رو چطور بسازم؟

hassan razavi
سه شنبه 24 مهر 1386, 08:59 صبح
ابتدا کلیه جداول را لیست کنید ، تمامی فیلدهای هر جدول را نمایش بدهید و کلیدهای خارجی و اصلی هر جدول را نیز مشخص کنید.
حالا با توجه به فیلدهای انتخابی توسط کاربر و همچنین جداولی که کاربر فیلدها را انتخاب کرده ، دستورات Select و Joint و شرط و حتی Group را بنویسید.
برای بار اول مشکل و زمانبر هست ولی با یک بار نوشتن میتونید همه جا ازش استفاده کنید

black_hole
سه شنبه 24 مهر 1386, 08:59 صبح
//Connect to Database to read data
string connString = GetConnectionString();
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(connString);
System.Data.OleDb.OleDbCommand com = new System.Data.OleDb.OleDbCommand();
System.Data.OleDb.OleDbDataAdapter da = new System.Data.OleDb.OleDbDataAdapter(com);
System.Data.OleDb.OleDbCommandBuilder cb = new System.Data.OleDb.OleDbCommandBuilder(da);
System.Data.DataTable dt = newDataTable();
try
{
dt = newDataTable(Command);
com.Connection = conn;
com.CommandType = CommandType.TableDirect;
com.CommandText = "select * from " + tableName+ " ORDER BY ID";
da.SelectCommand = com;
da.Fill(dt);


}
catch
{
MessageBox.Show("عملیات با موفقیت انجام نشد!", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Hand);
Application.Exit();
}

//Closeing Database
conn.Close();
return dt;
}

iman_s52
سه شنبه 24 مهر 1386, 09:00 صبح
میشه یه نمونه معرفی کنین

black_hole
سه شنبه 24 مهر 1386, 09:01 صبح
بعد dt بدست آمده رو تو یک دیتاگرید فیل کند تا تمام دیتابیس را نشان دهد

alirzn
سه شنبه 24 مهر 1386, 09:39 صبح
عزیزم اینهارو میدونم. منظورم اینه که بهترین روش واسه گزارشی که کاربر خودش بتونه بسازه و query اون توسط سیستم ساخته بشه هست.


بعد dt بدست آمده رو تو یک دیتاگرید فیل کند تا تمام دیتابیس را نشان دهد