Hi,I have 2 Data Table and on Table Joined from Database Tables By Query
I use 3 Layer Programming
My Report Class DAL Like Below
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace DAL
{
public class _Report:SQLActivity
{
public int identity = 0;
public string Table = "";
public int DatasetLink = 0;
DataSet ds = new DataSet("Report");
DataTable dtObject = new DataTable("dtObject");
DataTable dtWarehouse = new DataTable("dtWarehouse");
public void Crate_DataTable()
{
switch (DatasetLink)
{
case 0:
{
DataColumn[] columns = new DataColumn[0];
dtObject.Columns.Add("identity", typeof(int));
dtObject.Columns.Add("iD", typeof(int));
dtObject.Columns.Add("Title", typeof(string));
dtObject.PrimaryKey = columns;
ds.Tables.Add(dtObject);
}
break;
case 9:
{
DataColumn[] columns = new DataColumn[0];
dtWarehouse.Columns.Add("identity", typeof(int));
dtWarehouse.Columns.Add("iD", typeof(int));
dtWarehouse.Columns.Add("Title", typeof(string));
dtWarehouse.PrimaryKey = columns;
ds.Tables.Add(dtWarehouse);
}
break;
}
}
public void AddNew_SelectDatatable_Row(int identity, int iD, string Title)
{
switch (DatasetLink)
{
case 0:
{
dtObject.Rows.Add(new object[] { identity,iD, Title });
}
break;
case 9:
{
dtWarehouse.Rows.Add(new object[] { identity, iD, Title });
}
break;
}
}
public int Delete_SelectDatatable_Row(int iD)
{
switch (DatasetLink)
{
case 0:
{
DataRow[] drr = dtObject.Select("iD=' " + iD + " ' ");
foreach (var row in drr)
row.Delete();
}
break;
case 9:
{
DataRow[] drr = dtWarehouse.Select("iD=' " + iD + " ' ");
foreach (var row in drr)
row.Delete();
}
return 1;
}
public DataTable Get_Update_SelectDatatable()
{
switch (DatasetLink)
{
case 0:
{
Table = "dtObject";
}
break;
case 9:
{
Table = "dtWarehouse";
}
break;
return ds.Tables[Table];
}
public int GetFind_SelectDatatable_iD(int iD)
{
int retval = 0;
switch (DatasetLink)
{
case 0:
{
foreach (DataRow row in dtObject.Rows)
{
if (row["iD"].ToString() == iD + "")
{
retval = 1;
}
}
}
break;
case 9:
{
foreach (DataRow row in dtWarehouse.Rows)
{
if (row["iD"].ToString() == iD+"")
{
retval = 1 ;
}
}
}
break;
return retval;
}
public DataTable Report_WarehouseStore()
{
SqlDataAdapter da =new SqlDataAdapter (@"SELECT WarehouseStore.ProductID, WarehouseStore.ProductCode, WarehouseStore.ProductName, UnitPart.UnitPart, Warehouse.WarehouseName,WarehouseStore.ProductValue FROM WarehouseStore INNER JOIN UnitPart ON WarehouseStore.UnitPartID = UnitPart.UnitPartid INNER JOIN Warehouse ON Warehouse.WarehouseiD = WarehouseStore.WarehouseiD INNER JOIN dtObject ON dtObject.iD =WarehouseStore.ProductCode INNER JOIN dtWarehouse ON dtWarehouse.iD =WarehouseStore.WarehouseiD",new _Connections().Cnn);
DataTable dt=new DataTable();
da.Fill(dt);
ds.Tables.Add(dt);
ds.Tables.Add(dtObject);
ds.Tables.Add(dtWarehouse);
return dt;
}
}
}
I'm Confused How i can run this Query On Data set and Return Data table
SELECT WarehouseStore.ProductID, WarehouseStore.ProductCode, WarehouseStore.ProductName, UnitPart.UnitPart, Warehouse.WarehouseName,WarehouseStore.ProductValue FROM WarehouseStore INNER JOIN UnitPart ON WarehouseStore.UnitPartID = UnitPart.UnitPartid INNER JOIN Warehouse ON Warehouse.WarehouseiD = WarehouseStore.WarehouseiD INNER JOIN dtObject ON dtObject.iD =WarehouseStore.ProductCode INNER JOIN dtWarehouse ON dtWarehouse.iD =WarehouseStore.WarehouseiD
Data "dtObject" and "dtWarehouse" insert by User. i want select data from WarehoseStore when WarehoseStore.ProductCode=dtObject.iD and WarehouseStore.WarehouseiD=dtWarehouse.iD
if dtObject database table is this can work but now i cant run query on this position.
when is run this Query
SELECT WarehouseStore.ProductID, WarehouseStore.ProductCode, WarehouseStore.ProductName, UnitPart.UnitPart, Warehouse.WarehouseName,WarehouseStore.ProductValue FROM WarehouseStore INNER JOIN UnitPart ON WarehouseStore.UnitPartID = UnitPart.UnitPartid INNER JOIN Warehouse ON Warehouse.WarehouseiD = WarehouseStore.WarehouseiD
I have no problem but when add this Query to above code
INNER JOIN dtObject ON dtObject.iD =WarehouseStore.ProductCode INNER JOIN dtWarehouse ON dtWarehouse.iD =WarehouseStore.WarehouseiD
My problem will start