Gửi bởi
kocoviecgikho
SELECT Salary.Luong, Salary.TroCap, Presence.Thuong
,(isnull(Salary.Luong,0) + isnull(Salary.TroCap,0) + isnull(Presence.Thuong,0)) as TongLuong
FROM Salary Left Join Presence on Salary.StaffID = Presence.StaffID
Trong grid của bạn khai báo 4 cột tương ứng với 4 cột vừa select ra.
Bạn gọi câu query này, khai báo Datatable để nhận kết quả rồi gắn nó vào datasource của grid là xong
Cảm ơn bạn nhìu. Mình làm như hướng dẫn những vẫn báo lỗi " không tìm thấy datasource của TongLuong". Bạn hộ mình code như thế này có đúng không nhé.
Mình tạo Store là : bangluong_Sum.
Mã:
Create PROCEDURE [dbo].[bangluong_Sum]
-- Add thông tin của bảng Presence
@Daysoff int,
@Bonus int,
--Add thông tin của bảng Salary
@Salary int,
@Subvention int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT Salary.Salary, Salary.Subvention, Presence.Bonus, Presence.Daysoff
,(isnull(Salary.Salary,0) + isnull(Salary.Subvention,0) + isnull(Presence.Bonus,0)- ISNULL(Presence.Daysoff*20,000)) as TongLuong
FROM Salary Left Join Presence on Salary.StaffID = Presence.StaffID
end
Còn cậu lệnh gọi store trong aspx.cs là:
Mã:
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection conn = new
SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
SqlCommand sql = new SqlCommand();
conn.Open();
SqlCommand sqlCmd = new SqlCommand("bangluong_Sum", conn);
sqlCmd.CommandType = CommandType.StoredProcedure;
String str = "select Staff.StaffID, Staff.Name, Salary.Startingdate, Salary.Salary, Salary.Subvention, Presence.Month, Presence.Daysoff,Presence.Bonus from Staff left outer join Salary On Staff.StaffID = Salary.StaffID left outer join Presence On Staff.StaffID = Presence.StaffID";
SqlDataAdapter adt = new SqlDataAdapter(str, conn);
DataSet ds = new DataSet();
adt.Fill(ds);
DataTable mytable = new DataTable();
mytable = ds.Tables[0];
conn.Close();
grdluong.DataSource = mytable;
grdluong.DataBind();
Trong phần code này mình có trèn cả cậu lênh load lên gridview nữa.
Cậu lênh trên trang aspx.
Mã:
<asp:GridView ID="grdluong" runat="server"
AutoGenerateColumns="False" BackColor="White" BorderColor="#999999"
BorderStyle="None" BorderWidth="1px" CellPadding="3" CssClass="style1"
GridLines="Vertical" Height="110px"
style="margin-right: 0px" Width="100%" onpageindexchanging="grdluong_PageIndexChanging" AllowPaging="True">
<RowStyle BackColor="#EEEEEE" ForeColor="Black" />
<Columns>
<asp:BoundField DataField="StaffID" HeaderText="Mã NV"
SortExpression="StaffID" />
<asp:BoundField DataField="Name" HeaderText="Họ & Tên"
SortExpression="Name" />
<asp:BoundField DataField="Startingdate" HeaderText="Ngày bắt đầu" DataFormatString="{0:dd/MM/yyyy}" HtmlEncode="false" />
<asp:BoundField DataField="Month" HeaderText="Tháng" SortExpression="Month" />
<asp:BoundField DataField="Daysoff" HeaderText="Số ngày nghỉ"
SortExpression="Daysoff" />
<asp:BoundField DataField="Salary" HeaderText="Lương Tháng" SortExpression="Salary" />
<asp:BoundField DataField="Subvention" HeaderText="Trợ cấp"
SortExpression="Subvention" />
<asp:BoundField DataField="Bonus" HeaderText="Thưởng" SortExpression="Bonus" />
<asp:BoundField DataField="TongLuong" HeaderText="Tổng lương" SortExpression="" />
</Columns>
<FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
<PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="#DCDCDC" />
</asp:GridView>
Vệ sinh cá nhân là một phần quan yếu của sức khỏe nam giới. Dùng dung dịch vệ sinh mỗi ngày mang lại nhiều ích, giúp loại bỏ vi khuẩn và vi sinh vật gây hại, giúp khu vực cơ quan sinh dục luôn sạch...
Gel vệ sinh cu, bạn trai có nên...