diff --git a/Doc/GridView改用ObjectDataSource計畫.md b/Doc/GridView改用ObjectDataSource計畫.md index 02b6983..e687108 100644 --- a/Doc/GridView改用ObjectDataSource計畫.md +++ b/Doc/GridView改用ObjectDataSource計畫.md @@ -29,8 +29,8 @@ | 11 | forms/customer/fmRasn.ascx | gvRASN_RABRH | dsRASN_RABRH1 | RASN+BCLS | RasnDAC(+Select) | **完成** | | 12 | forms/customer/fmRasn.ascx | RASNGrid | dsRASNGrid | RASN/BPJB/BPSNView | RasnDAC(+Select) | **完成** | | 13 | forms/customer/fmRpfe.ascx | RPFEGrid | dsRPFEGrid | RPFE | 無→RpfeDAC | **完成** | -| 14 | forms/flow/fmSign.ascx | gvRPAB2 | dsRPAB2 | RPAB | RpabDAC | 待辦 | -| 15 | forms/flow/fmSign.ascx | gvRPAB | dsRPAB | RPAB | RpabDAC | 待辦 | +| 14 | forms/flow/fmSign.ascx | gvRPAB2 | dsRPAB2 | RPAB | RpabDAC(+Select) | **完成** | +| 15 | forms/flow/fmSign.ascx | gvRPAB | dsRPAB | RPAB | RpabDAC(+Select) | **完成** | | 16 | forms/summary/fmSalaryCalc.ascx | GridView1 | dsSACD | SACD | 無 | 待辦 | | 17 | forms/worker/fmBpsn.ascx | GridView1 | dsBPSNGrid | BPSNView | BpsnDAC | **進行中** | | 18 | forms/worker/fmRowk.ascx | gvROWK | dsROWKGrid | ROWK | 無 | 待辦 | @@ -151,3 +151,4 @@ | 2026-09-10 | 轉換 fmBprm(BPRM):BprmDAC 新增 SelectPage/SelectCount;dsBPRMGrid 改 ObjectDataSource;dsBPRM_Selected 拆分為 grid/form 兩個事件;編譯通過 | | 2026-09-10 | 轉換 fmRasn(RASN,3 個 Grid):RasnDAC 新增 SelectPage/SelectCount 及 SelectRAENO/SelectRABRH;三個 datasource 改 ObjectDataSource;Search/Selected 調整;編譯通過 | | 2026-09-10 | 轉換 fmRpfe(RPFE):新增 RpfeDAC(SelectPage/SelectCount);dsRPFEGrid 改 ObjectDataSource;編譯通過 | +| 2026-09-10 | 轉換 fmSign(RPAB):RpabDAC 新增 SelectRPAB;dsRPAB2/dsRPAB 改 ObjectDataSource;dsRPAB2_Selecting 改 ODS 事件;編譯通過 | diff --git a/Web/App_Code/DAC/RpabDAC.cs b/Web/App_Code/DAC/RpabDAC.cs index e67f3c5..c24ba6c 100644 --- a/Web/App_Code/DAC/RpabDAC.cs +++ b/Web/App_Code/DAC/RpabDAC.cs @@ -12,6 +12,7 @@ using System.ComponentModel; /// /// 人員差勤簽核檔 /// +[DataObject(true)] public class RpabDAC : Wellan.Data.WDAC { private string _select = @@ -289,4 +290,18 @@ public class RpabDAC : Wellan.Data.WDAC AddParam(cmd, "OLD_RPREN", RPREN); Query.ExecuteNonQuery(tran.Connection, tran, cmd); } + + /// + /// 取得簽核關卡明細 (已簽核) + /// + [DataObjectMethod(DataObjectMethodType.Select)] + public DataTable SelectRPAB(string RPREN) + { + DbCommand cmd = Query.NewCommand( + @"SELECT RPANO, RPAPN, RPENO, RPDAT, RPAPP, RPDOC + FROM RPAB + WHERE RPREN = @RPREN AND RPDAT IS NOT NULL"); + cmd.Parameters.Add(Query.NewParameter("RPREN", RPREN)); + return Query.Select(cmd); + } } \ No newline at end of file diff --git a/Web/forms/flow/fmSign.ascx b/Web/forms/flow/fmSign.ascx index 0aed599..32d3a15 100644 --- a/Web/forms/flow/fmSign.ascx +++ b/Web/forms/flow/fmSign.ascx @@ -690,13 +690,13 @@ - - + @@ -2589,13 +2589,13 @@ - + - + diff --git a/Web/forms/flow/fmSign.ascx.cs b/Web/forms/flow/fmSign.ascx.cs index 9e86332..224fe1c 100644 --- a/Web/forms/flow/fmSign.ascx.cs +++ b/Web/forms/flow/fmSign.ascx.cs @@ -86,10 +86,8 @@ public partial class forms_flow_fmSign : Wellan.Web.UI.WUserControlBase protected override void OnInit(EventArgs e) { base.OnInit(e); - dsRPAB.ConnectionString = ConnectionString; dsRPARForm.ConnectionString = ConnectionString; dsRPAR_RPTYP.ConnectionString = ConnectionString; - dsRPAB2.ConnectionString = ConnectionString; rparDao = new RparDAC(Query); rpabDao = new RpabDAC(Query); bsgpDao = new BsgpDAC(Query); @@ -1746,11 +1744,10 @@ public partial class forms_flow_fmSign : Wellan.Web.UI.WUserControlBase RPARGrid2.DataBind(); } - protected void dsRPAB2_Selecting(object sender, SqlDataSourceSelectingEventArgs e) + protected void dsRPAB2_Selecting(object sender, ObjectDataSourceSelectingEventArgs e) { if (RPARGrid2.SelectedValue != null) - e.Command.Parameters["@RPREN"].Value = RPARGrid2.SelectedValue; - //(sender as SqlDataSource).SelectParameters["RPREN"].DefaultValue = WDAC.GetStringValue(RPARGrid2.SelectedValue); + e.InputParameters["RPREN"] = RPARGrid2.SelectedValue; } protected string GetAttachLink(string RPREN)