zenani mthembu

zenani mthembu

  • 1.8k
  • 35
  • 482

how to update dataset n gridview each time data is loaded

Apr 11 2019 7:31 AM
i am developing a small website where users first upload excel sheet with project names, the next page i have a gridview which displays results of stored procedure Report. the report shows learners extracted from the database using the project names. the problem i have is that when i upload new projects the gridview shows the old data or is empty. i tried to truncate the table first then run the procedure but then my gridview is empty. here is the code and stored procedure. would really appreciate the help
  1. protected void Page_Load(object sender, EventArgs e)  
  2. {  
  3. if (!IsPostBack)  
  4. {  
  5. bind();  
  6. }  
  7. }  
  8. public void bind(){  
  9. SqlConnection con = new SqlConnection(strConnString);  
  10. con.Open();  
  11. SqlCommand command = new SqlCommand("BenReport", con) { CommandType = System.Data.CommandType.StoredProcedure };  
  12. SqlDataAdapter sda = new SqlDataAdapter("BenReport", con);  
  13. command.Connection = con;  
  14. sda.SelectCommand = command;  
  15. DataSet ds = new DataSet();  
  16. sda.Fill(ds);  
  17. GRDBencount.DataSource = ds.Tables[0];  
  18. GRDBencount.DataBind();  
  19. con.Close();  
  20. }  
stored procedure
  1. ALTER PROCEDURE BenReport  
  2. AS  
  3. INSERT INTO [Verify_Pbank_Projects_MassT]  
  4. SELECT DISTINCT master.id,PPRS.PPR_Caption ,CAST(replace(substring(PPR_Caption,1,CHARINDEX('[',PPR_Caption)),'[','')AS DATE)AS UPLOAD_DATE,PPRS.[Upload_Date]  
  5. From PPRS  
  6. left join master  
  7. on PPRS.PPR_Caption = masters.Caption  
  8. WHERE PPR_Caption IN (SELECT DISTINCT master.Caption FROM master)  
  9. --- Report show counts for beneficiaries to be extracted and excluded  
  10. SELECT G.ParentId ,(Select Caption from Master Where ID = G.ParentId) as PPRName,  
  11. COUNT(DISTINCT G.Field_972) as BeneficiaryCnt ,  
  12. SUM(CASE WHEN ( (G.AccountNumber IS NOT NULL AND G.AccountNumber <> 0) AND NOT  
  13. ((ISNULL(cast(ROUND(G.FIELD_647,0) as decimal(18,0)),0)+ISNULL(cast(ROUND(G.FIELD_649,0) as decimal(18,0)),0)+ISNULL(cast(ROUND(G.FIELD_1233,0) as decimal(18,0)),0)) * ISNULL(cast(ROUND(G.FIELD_648,2) as decimal(18,2)),0)) = 0 ) THEN 1 ELSE 0 ENDas Ben_Account_Included,  
  14. SUM(CASE WHEN NOT (G.AccountNumber IS NOT NULL AND G.AccountNumber <> 0) THEN 1 ELSE 0 ENDas Ben_ZeroAccount_Excluded,  
  15. SUM(CASE WHEN  
  16. ((ISNULL(cast(ROUND(G.FIELD_647,0) as decimal(18,0)),0)+ISNULL(cast(ROUND(G.FIELD_649,0) as decimal(18,0)),0)+ISNULL(cast(ROUND(G.FIELD_1233,0) as decimal(18,0)),0)) * ISNULL(cast(ROUND(G.FIELD_648,2) as decimal(18,2)),0)) = 0  
  17. THEN 1 ELSE 0 ENDas Ben_ZeroWages_Excluded  
  18. FROM pb_g164 G with(nolock)  
  19. INNER JOIN P_data_search with(nolock)  
  20. ON P_data_search.RecordID = cast(G.FIELD_972 as int)  
  21. INNER JOIN C_ListItems with(nolock)  
  22. ON C_ListItems.ItemID = cast(G.FIELD_645 as int)  
  23. INNER JOIN  
  24. (SELECT m2.id as PPR_Recordid,m2.Caption,  
  25. CAST(Substring(m2.Caption, 1,Charindex('[', m2.Caption)-1) as date) PPRDate  
  26. FROM dbo.Masterm with (nolock)  
  27. INNER JOIN dbo.Master m1 with (nolock) on m.ID=m1.ParentRecordID and m1.TypeID=77  
  28. INNER JOIN dbo.Master m2 with (nolock) on m1.ID=m2.ParentRecordID and m2.TypeID=82 and m2.TransactionID>1  
  29. INNER JOIN dbo.Master_Status ms on m.Status=ms.Status  
  30. INNER JOIN dbo.Master_Status msp on m2.Status=msp.Status  
  31. INNER JOIN dbo.[Verify_Pbank_Projects_MassT] vp with (nolock) on vp.PPRName = m2.Caption AND vp.PPRDate = CAST(Substring(m2.Caption, 1,Charindex('[', m2.Caption)-1) as DateTime)  
  32. WHERE m.TypeID=72  
  33. ) pb  
  34. ON pb.PPR_Recordid = G.ParentId  
  35. WHERE G.isActive = 1 and G.Status = 'C'  
  36. --AND ( G.Paid = 0 OR G.Paid IS NULL)  
  37. group by G.ParentId  
  38. --END

Answers (1)