Compare commits
10
Commits
10f73526bc
...
0084261cc0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0084261cc0 | ||
|
|
439e941268 | ||
|
|
b66279e5fa | ||
|
|
f1cf00d06c | ||
|
|
3cb2c0d97c | ||
|
|
6d6f18e2ef | ||
|
|
b61b8281c8 | ||
|
|
e8fb81958e | ||
|
|
fca50b7715 | ||
|
|
dd8a26206f |
@@ -24,22 +24,22 @@
|
||||
| 6 | forms/customer/fmBpja.ascx | gvBPJA | dsBPJAGrid | BPJA | 無→BpjaDAC | **完成** |
|
||||
| 7 | forms/customer/fmBpjb.ascx | gvBPJB | dsBPJBGrid | BPJB | 無→BpjbDAC | **完成** |
|
||||
| 8 | forms/customer/fmBprj.ascx | gvBPRJ | dsBPRJGrid | BPRJ | BprjDAC(+Select) | **完成** |
|
||||
| 9 | forms/customer/fmBprm.ascx | gvBPRM | dsBPRMGrid | BPRM | BprmDAC | 待辦 |
|
||||
| 10 | forms/customer/fmRasn.ascx | gvRASN_RAENO | dsRASN_RAENO1 | RASN+BPSNView | RasnDAC | 待辦 |
|
||||
| 11 | forms/customer/fmRasn.ascx | gvRASN_RABRH | dsRASN_RABRH1 | RASN+BCLS | RasnDAC | 待辦 |
|
||||
| 12 | forms/customer/fmRasn.ascx | RASNGrid | dsRASNGrid | RASN/BPJB/BPSNView | RasnDAC | 待辦 |
|
||||
| 13 | forms/customer/fmRpfe.ascx | RPFEGrid | dsRPFEGrid | RPFE | 無 | 待辦 |
|
||||
| 14 | forms/flow/fmSign.ascx | gvRPAB2 | dsRPAB2 | RPAB | RpabDAC | 待辦 |
|
||||
| 15 | forms/flow/fmSign.ascx | gvRPAB | dsRPAB | RPAB | RpabDAC | 待辦 |
|
||||
| 16 | forms/summary/fmSalaryCalc.ascx | GridView1 | dsSACD | SACD | 無 | 待辦 |
|
||||
| 9 | forms/customer/fmBprm.ascx | gvBPRM | dsBPRMGrid | BPRM | BprmDAC(+Select) | **完成** |
|
||||
| 10 | forms/customer/fmRasn.ascx | gvRASN_RAENO | dsRASN_RAENO1 | RASN+BPSNView | RasnDAC(+Select) | **完成** |
|
||||
| 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(+Select) | **完成** |
|
||||
| 15 | forms/flow/fmSign.ascx | gvRPAB | dsRPAB | RPAB | RpabDAC(+Select) | **完成** |
|
||||
| 16 | forms/summary/fmSalaryCalc.ascx | GridView1 | dsSACD | SACD | 無→SacdDAC | **完成** |
|
||||
| 17 | forms/worker/fmBpsn.ascx | GridView1 | dsBPSNGrid | BPSNView | BpsnDAC | **進行中** |
|
||||
| 18 | forms/worker/fmRowk.ascx | gvROWK | dsROWKGrid | ROWK | 無 | 待辦 |
|
||||
| 19 | forms/worker/fmRpar.ascx | RPARGrid | dsRPARGrid | RPAR | RparDAC | 待辦 |
|
||||
| 20 | forms/worker/fmRparWorker.ascx | RPABGrid | dsRPAB | RPAB | RpabDAC | 待辦 |
|
||||
| 21 | forms/worker/fmRparWorker.ascx | RPARGrid | dsRPARGrid | RPAR | RparDAC | 待辦 |
|
||||
| 22 | forms/worker/fmRsaj.ascx | RSAJGrid | dsRSAJGrid | RSAJ | RsajDAC | 待辦 |
|
||||
| 23 | forms/worker/fmSendSalaryStrip.ascx | gvSSMS | dsSSMS | SSMS | SsmsDAC | 待辦 |
|
||||
| 24 | forms/worker/fmSendSalaryStrip.ascx | gvSSMSSum | dsSSMSSum | SSMS | SsmsDAC | 待辦 |
|
||||
| 18 | forms/worker/fmRowk.ascx | gvROWK | dsROWKGrid | ROWK | 無 | **保留**(使用 WUserControlBase 的 SqlDataSource 框架,需另案) |
|
||||
| 19 | forms/worker/fmRpar.ascx | RPARGrid | dsRPARGrid | RPAR | RparDAC(+Select) | **完成** |
|
||||
| 20 | forms/worker/fmRparWorker.ascx | RPABGrid | dsRPAB | RPAB | RpabDAC(+Select) | **完成** |
|
||||
| 21 | forms/worker/fmRparWorker.ascx | RPARGrid | dsRPARGrid | RPAR | RparDAC(+Select) | **完成** |
|
||||
| 22 | forms/worker/fmRsaj.ascx | RSAJGrid | dsRSAJGrid | RSAJ | RsajDAC(+Select) | **完成** |
|
||||
| 23 | forms/worker/fmSendSalaryStrip.ascx | gvSSMS | dsSSMS | SSMS | SsmsDAC(+Select) | **完成** |
|
||||
| 24 | forms/worker/fmSendSalaryStrip.ascx | gvSSMSSum(已註解) | dsSSMSSum | SSMS | SsmsDAC | **完成**(移除 dsSSMSSum,footer 改用 SsmsDAC) |
|
||||
|
||||
> 已為 ObjectDataSource(不列入):`fmBPAP`(dsBPAP)、`fmRparManager`(dsRpad)、`fmSign` 內 dsRPAR未簽/已簽/我的/我的督導、`fmBpsl`、`fmBPSE`、`fmRpir`。
|
||||
|
||||
@@ -148,3 +148,13 @@
|
||||
| 2026-09-10 | 轉換 fmBpja(BPJA):新增 BpjaDAC(SelectPage/SelectCount/SelectBPJAIndex);dsBPJAGrid 改 ObjectDataSource;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmBpjb(BPJB):新增 BpjbDAC(SelectPage/SelectCount);dsBPJBGrid 改 ObjectDataSource;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmBprj(BPRJ):BprjDAC 新增 SelectPage/SelectCount/SelectBPRJIndex(含 LAST_YEAR 排序);dsBPRJGrid 改 ObjectDataSource;編譯通過 |
|
||||
| 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 事件;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmSalaryCalc(SACD):新增 SacdDAC(SelectByProject);dsSACD 改 ObjectDataSource;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmRpar(RPAR):RparDAC 新增 SelectPage/SelectCount;dsRPARGrid 改 ObjectDataSource;Search/Selected 調整;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmRparWorker(RPAR/RPAB):RparDAC 新增 SelectWorkerPage/SelectWorkerCount;RpabDAC 新增 SelectRPABByRPREN;dsRPARGrid/dsRPAB 改 ObjectDataSource;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmRsaj(RSAJ):RsajDAC 新增 SelectPage/SelectCount;dsRSAJGrid 改 ObjectDataSource;編譯通過 |
|
||||
| 2026-09-10 | 轉換 fmSendSalaryStrip(SSMS):SsmsDAC 新增 SelectSalaryStrip/SelectSalaryStripSum;dsSSMS 改 ObjectDataSource;移除 dsSSMSSum(footer 改用 SsmsDAC);編譯通過 |
|
||||
| 2026-09-10 | fmRowk(ROWK)保留未轉換:其 Grid 綁定使用 WUserControlBase 的 Grid_View/GridView_DataSource(SqlDataSource)框架與 override Search,無法直接改用 ObjectDataSource,需另案重構 |
|
||||
|
||||
@@ -8,11 +8,14 @@ using System.Web.UI.WebControls;
|
||||
using System.Web.UI.WebControls.WebParts;
|
||||
using System.Web.UI.HtmlControls;
|
||||
using System.Data.Common;
|
||||
using System.ComponentModel;
|
||||
using System.Text;
|
||||
using Wellan.Data;
|
||||
|
||||
/// <summary>
|
||||
/// 用來取得專案處理人員資料的類別
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class BprmDAC : Wellan.Data.WDAC
|
||||
{
|
||||
public BprmDAC()
|
||||
@@ -63,4 +66,57 @@ public class BprmDAC : Wellan.Data.WDAC
|
||||
cmd.Parameters.Add(Query.NewParameter("BPPYN", BPPYN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 專案處理人員 Grid 分頁查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectPage(int startRowIndex, int maximumRows, string BPPNM)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, BPPNM);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT *, ROW_NUMBER() OVER (ORDER BY BPENO) AS ROWID
|
||||
FROM BPRM WHERE 1=1 {0}
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID",
|
||||
filter.ToString());
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 專案處理人員 Grid 查詢筆數
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectCount(string BPPNM)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, BPPNM);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM BPRM WHERE 1=1 {0}", filter.ToString());
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 組出專案處理人員 Grid 的查詢條件 (與舊 AddSearch 行為一致)
|
||||
/// </summary>
|
||||
private void BuildFilter(StringBuilder sb, DbCommand cmd, string BPPNM)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(BPPNM))
|
||||
{
|
||||
sb.Append(" AND BPPNM LIKE @BPPNM1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("BPPNM1", BPPNM + "%"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ using Wellan.Data;
|
||||
/// <summary>
|
||||
/// 人員派遣資料的資料處理類別
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class RasnDAC : Wellan.Data.WDAC
|
||||
{
|
||||
private DbCommand cmdSelectRasnRapyn = null;
|
||||
@@ -582,6 +583,124 @@ public class RasnDAC : Wellan.Data.WDAC
|
||||
}
|
||||
*/
|
||||
|
||||
/// <summary>
|
||||
/// 派遣人員清單 (未結束,供挑選人員用)
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectRAENO(string RAPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(
|
||||
@"SELECT A.RANUM, B.BPNME
|
||||
FROM RASN AS A
|
||||
INNER JOIN BPSNView AS B ON A.RANUM = B.BPENO
|
||||
WHERE (A.RAPYN = @RAPYN) AND A.RAEDT IS NULL");
|
||||
cmd.Parameters.Add(Query.NewParameter("RAPYN", RAPYN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 站別統計 (未結束,供挑選站別用)
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectRABRH(string RAPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(
|
||||
@"SELECT A.RABRH, B.BSSCR, COUNT(1) AS RABRH_COUNT
|
||||
FROM RASN AS A
|
||||
INNER JOIN BCLS AS B ON A.RABRH = B.BSCLS AND B.BSPAR = 'BPSNBRH'
|
||||
WHERE (A.RAPYN = @RAPYN) AND A.RAEDT IS NULL
|
||||
GROUP BY A.RABRH, B.BSSCR");
|
||||
cmd.Parameters.Add(Query.NewParameter("RAPYN", RAPYN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
private static readonly List<string> HQ_RAPYNS = new List<string>() { "103TYB00001", "103JYB00001" };
|
||||
|
||||
private string BuildRasnGridSql(string RAPYN, string BPENO, string BPNME, int year, StringBuilder filter, DbCommand cmd)
|
||||
{
|
||||
string order1, order2;
|
||||
if (HQ_RAPYNS.IndexOf(RAPYN) < 0)
|
||||
{
|
||||
order1 = "RANUM";
|
||||
order2 = "RAEDT, RANUM";
|
||||
}
|
||||
else
|
||||
{
|
||||
order1 = "RAEDT, RANUM";
|
||||
order2 = "RAEDT, RANUM";
|
||||
}
|
||||
|
||||
if (year > 0 && HQ_RAPYNS.IndexOf(RAPYN) < 0)
|
||||
{
|
||||
filter.AppendFormat(
|
||||
" AND ((RASDT >= '{0}/01/01' AND RASDT <= '{0}/12/31') OR (RAEDT >= '{0}/01/01' AND RAEDT <= '{0}/12/31') OR (RASDT <= '{0}/01/01' AND RAEDT >= '{0}/12/31') ) ",
|
||||
year);
|
||||
}
|
||||
if (!string.IsNullOrEmpty(BPENO))
|
||||
{
|
||||
filter.Append(" AND C.BPENO LIKE @BPENO1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("BPENO1", BPENO + "%"));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(BPNME))
|
||||
{
|
||||
filter.Append(" AND C.BPNME LIKE @BPNME1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("BPNME1", BPNME + "%"));
|
||||
}
|
||||
|
||||
return String.Format(@"
|
||||
SELECT A.*, B.BPSRM, B.BPSRD, B.BPP01, B.BPP02, B.BPP03, B.BPP04, B.BPP05
|
||||
FROM
|
||||
(
|
||||
SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY {0}) ROWNUM FROM RASN WHERE RAPYN=@RAPYN AND RAEDT IS NULL) T1
|
||||
UNION ALL
|
||||
SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY {1}) ROWNUM FROM RASN WHERE RAPYN=@RAPYN AND RAEDT IS NOT NULL) T2
|
||||
) A
|
||||
LEFT OUTER JOIN BPJB B ON A.RAPYN=B.BPPYN AND A.RAJNO=B.BPJNO AND A.RACNO=B.BPCNO
|
||||
LEFT OUTER JOIN BPSNView C ON A.RANUM=C.BPENO
|
||||
WHERE 1=1 {2}", order1, order2, filter.ToString());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 派遣紀錄 Grid 分頁查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectPage(int startRowIndex, int maximumRows, string RAPYN, string BPENO, string BPNME, int year)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
string inner = BuildRasnGridSql(RAPYN, BPENO, BPNME, year, filter, cmd);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT Q.*, ROW_NUMBER() OVER (ORDER BY CASE WHEN Q.RAEDT IS NULL THEN 0 ELSE 1 END, Q.ROWNUM) AS ROWID
|
||||
FROM ( {0} ) Q
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID", inner);
|
||||
cmd.Parameters.Add(Query.NewParameter("RAPYN", RAPYN));
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 派遣紀錄 Grid 查詢筆數
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectCount(string RAPYN, string BPENO, string BPNME, int year)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
string inner = BuildRasnGridSql(RAPYN, BPENO, BPNME, year, filter, cmd);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM ( {0} ) Q", inner);
|
||||
cmd.Parameters.Add(Query.NewParameter("RAPYN", RAPYN));
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@ using System.ComponentModel;
|
||||
/// <summary>
|
||||
/// 人員差勤簽核檔
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class RpabDAC : Wellan.Data.WDAC
|
||||
{
|
||||
private string _select =
|
||||
@@ -289,4 +290,32 @@ public class RpabDAC : Wellan.Data.WDAC
|
||||
AddParam(cmd, "OLD_RPREN", RPREN);
|
||||
Query.ExecuteNonQuery(tran.Connection, tran, cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 取得簽核關卡明細 (已簽核)
|
||||
/// </summary>
|
||||
[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);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 取得簽核關卡明細 (全部)
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectRPABByRPREN(string RPREN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(
|
||||
@"SELECT RPANO, RPAPN, RPENO, RPDAT, RPAPP, RPDOC
|
||||
FROM RPAB
|
||||
WHERE RPREN = @RPREN");
|
||||
cmd.Parameters.Add(Query.NewParameter("RPREN", RPREN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ using Wellan.Data;
|
||||
using Wellan.Common;
|
||||
using System.Transactions;
|
||||
using System.ComponentModel;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
using System.Web;
|
||||
using System.Linq;
|
||||
@@ -1856,6 +1857,186 @@ public class RparDAC : Wellan.Data.WDAC
|
||||
|
||||
return new 打卡檢查Item();
|
||||
}
|
||||
|
||||
private const string RparGridColumns =
|
||||
@"TRDAT, TRMOD, TRUSR, RPREN, RPNUM, RAITM, RPCNM, RPPYN, RPRDT, RPEDT, RPTYP, FLOOR(RPTCT / 60) AS RPTCT, RPFTR, RPDOC,
|
||||
APPNO, RPAPP, RPAPD, RPAPU, RPADT, RPAPN, RPANO, RPAGT, RPRTM, RPETM, RPUST, RPTC1, RPTC2, RPTC3,
|
||||
RPRSN, RPAGM, ISNULL(RPTCT - FLOOR(RPTCT / 60) * 60, 0) AS RPTMT";
|
||||
|
||||
private const string RparGridWhere = " WHERE ((RPAPN IS NULL) OR ((RPAPN<>'D') AND (RPAPN=RPANO))) ";
|
||||
|
||||
/// <summary>
|
||||
/// 差勤紀錄 Grid 分頁查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectPage(int startRowIndex, int maximumRows, string RPPYN, string RPNUM1, string RPNUM2, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildRparGridFilter(filter, cmd, RPPYN, RPNUM1, RPNUM2, RPRDT1, RPRDT2, rparType);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT {0}, ROW_NUMBER() OVER (ORDER BY RPREN) AS ROWID
|
||||
FROM RPAR {1} {2}
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID",
|
||||
RparGridColumns, RparGridWhere, filter.ToString());
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 差勤紀錄 Grid 查詢筆數
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectCount(string RPPYN, string RPNUM1, string RPNUM2, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildRparGridFilter(filter, cmd, RPPYN, RPNUM1, RPNUM2, RPRDT1, RPRDT2, rparType);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM RPAR {0} {1}", RparGridWhere, filter.ToString());
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
private void BuildRparGridFilter(StringBuilder sb, DbCommand cmd, string RPPYN, string RPNUM1, string RPNUM2, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
switch (rparType)
|
||||
{
|
||||
case "0":
|
||||
sb.Append(" AND RPTYP LIKE '0%' ");
|
||||
break;
|
||||
case "1":
|
||||
sb.Append(" AND RPTYP LIKE '1%' ");
|
||||
break;
|
||||
case "21":
|
||||
sb.Append(" AND RPTYP = '21' ");
|
||||
break;
|
||||
case "22":
|
||||
sb.Append(" AND RPTYP = '22' ");
|
||||
break;
|
||||
case "3":
|
||||
sb.Append(" AND RPTYP LIKE '3%' ");
|
||||
break;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(RPPYN))
|
||||
{
|
||||
sb.Append(" AND RPPYN = @RPPYN1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("RPPYN1", RPPYN));
|
||||
}
|
||||
|
||||
AppendRparRange(sb, cmd, "RPNUM", RPNUM1, RPNUM2, true);
|
||||
AppendRparRange(sb, cmd, "RPRDT", RPRDT1, RPRDT2, false);
|
||||
}
|
||||
|
||||
private void AppendRparRange(StringBuilder sb, DbCommand cmd, string field, string value1, string value2, bool like)
|
||||
{
|
||||
bool has1 = !string.IsNullOrEmpty(value1);
|
||||
bool has2 = !string.IsNullOrEmpty(value2);
|
||||
|
||||
if (has1 && has2)
|
||||
{
|
||||
sb.AppendFormat(" AND {0} >= @{0}1 AND {0} <= @{0}2 ", field);
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "1", value1));
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "2", value2));
|
||||
}
|
||||
else if (has1)
|
||||
{
|
||||
if (like)
|
||||
{
|
||||
sb.AppendFormat(" AND {0} LIKE @{0}1 ", field);
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "1", value1 + "%"));
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendFormat(" AND {0} >= @{0}1 ", field);
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "1", value1));
|
||||
}
|
||||
}
|
||||
else if (has2)
|
||||
{
|
||||
if (like)
|
||||
{
|
||||
sb.AppendFormat(" AND {0} LIKE @{0}2 ", field);
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "2", value2 + "%"));
|
||||
}
|
||||
else
|
||||
{
|
||||
sb.AppendFormat(" AND {0} <= @{0}2 ", field);
|
||||
cmd.Parameters.Add(Query.NewParameter(field + "2", value2));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 差勤紀錄 Grid 分頁查詢 (員工本人)
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectWorkerPage(int startRowIndex, int maximumRows, string RPNUM_FIXED, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildWorkerGridFilter(filter, cmd, RPNUM_FIXED, RPRDT1, RPRDT2, rparType);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT {0}, ROW_NUMBER() OVER (ORDER BY RPREN) AS ROWID
|
||||
FROM RPAR {1}
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID",
|
||||
RparGridColumns, filter.ToString());
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 差勤紀錄 Grid 查詢筆數 (員工本人)
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectWorkerCount(string RPNUM_FIXED, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildWorkerGridFilter(filter, cmd, RPNUM_FIXED, RPRDT1, RPRDT2, rparType);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM RPAR {0}", filter.ToString());
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
private void BuildWorkerGridFilter(StringBuilder sb, DbCommand cmd, string RPNUM_FIXED, string RPRDT1, string RPRDT2, string rparType)
|
||||
{
|
||||
sb.Append(" WHERE RPNUM = @RPNUM_FIXED ");
|
||||
cmd.Parameters.Add(Query.NewParameter("RPNUM_FIXED", RPNUM_FIXED));
|
||||
|
||||
switch (rparType)
|
||||
{
|
||||
case "0":
|
||||
sb.Append(" AND RPTYP LIKE '0%' AND RPADT IS NOT NULL ");
|
||||
break;
|
||||
case "1":
|
||||
sb.Append(" AND RPTYP LIKE '1%' AND RPADT IS NOT NULL ");
|
||||
break;
|
||||
case "3":
|
||||
sb.Append(" AND RPTYP LIKE '3%' AND RPADT IS NOT NULL ");
|
||||
break;
|
||||
}
|
||||
|
||||
AppendRparRange(sb, cmd, "RPRDT", RPRDT1, RPRDT2, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.Text;
|
||||
using System.ComponentModel;
|
||||
using Wellan.Data;
|
||||
|
||||
/// <summary>
|
||||
/// 專案憑證的資料處理類別
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class RpfeDAC : Wellan.Data.WDAC
|
||||
{
|
||||
public RpfeDAC()
|
||||
{
|
||||
}
|
||||
|
||||
public RpfeDAC(string connectionConfig, string connectionConfigName)
|
||||
: this()
|
||||
{
|
||||
this._connectionConfig = connectionConfig;
|
||||
this._connectionConfigName = connectionConfigName;
|
||||
}
|
||||
|
||||
public RpfeDAC(WQuery query)
|
||||
{
|
||||
this._query = query;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 專案憑證 Grid 分頁查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectPage(int startRowIndex, int maximumRows, string RPPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, RPPYN);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT *, ROW_NUMBER() OVER (ORDER BY RPPYN, RPREN) AS ROWID
|
||||
FROM RPFE WHERE 1=1 {0}
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID",
|
||||
filter.ToString());
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 專案憑證 Grid 查詢筆數
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectCount(string RPPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, RPPYN);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM RPFE WHERE 1=1 {0}", filter.ToString());
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 組出專案憑證 Grid 的查詢條件 (與舊 AddSearch 行為一致)
|
||||
/// </summary>
|
||||
private void BuildFilter(StringBuilder sb, DbCommand cmd, string RPPYN)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(RPPYN))
|
||||
{
|
||||
sb.Append(" AND RPPYN LIKE @RPPYN1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("RPPYN1", RPPYN + "%"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,15 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.ComponentModel;
|
||||
using System.Text;
|
||||
using Wellan.Data;
|
||||
using Wellan.Common;
|
||||
|
||||
/// <summary>
|
||||
/// 薪資加減項資料處理類別
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class RsajDAC : Wellan.Data.WDAC
|
||||
{
|
||||
public RsajDAC()
|
||||
@@ -127,4 +130,62 @@ public class RsajDAC : Wellan.Data.WDAC
|
||||
cmd.Parameters.Add(Query.NewParameter("RSYMM", yymm));
|
||||
return GetStringValue(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 薪資加減項 Grid 分頁查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectPage(int startRowIndex, int maximumRows, string RSENO, string RSPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, RSENO, RSPYN);
|
||||
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT * FROM
|
||||
(
|
||||
SELECT *, ROW_NUMBER() OVER (ORDER BY RSYMM DESC, RSREN DESC) AS ROWID
|
||||
FROM RSAJ WHERE 1=1 {0}
|
||||
) AS TMP
|
||||
WHERE ROWID BETWEEN @STARTROWINDEX + 1 AND @STARTROWINDEX + @MAXIMUMROWS
|
||||
ORDER BY ROWID",
|
||||
filter.ToString());
|
||||
cmd.Parameters.Add(Query.NewParameter("STARTROWINDEX", startRowIndex));
|
||||
cmd.Parameters.Add(Query.NewParameter("MAXIMUMROWS", maximumRows));
|
||||
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 薪資加減項 Grid 查詢筆數
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public int SelectCount(string RSENO, string RSPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
|
||||
StringBuilder filter = new StringBuilder();
|
||||
BuildFilter(filter, cmd, RSENO, RSPYN);
|
||||
|
||||
cmd.CommandText = String.Format("SELECT COUNT(*) FROM RSAJ WHERE 1=1 {0}", filter.ToString());
|
||||
return WDAC.GetInt32Value(Query.ExecuteScalar(cmd));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 組出薪資加減項 Grid 的查詢條件 (與舊 AddSearch 行為一致)
|
||||
/// </summary>
|
||||
private void BuildFilter(StringBuilder sb, DbCommand cmd, string RSENO, string RSPYN)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(RSENO))
|
||||
{
|
||||
sb.Append(" AND RSENO LIKE @RSENO1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("RSENO1", RSENO + "%"));
|
||||
}
|
||||
if (!string.IsNullOrEmpty(RSPYN))
|
||||
{
|
||||
sb.Append(" AND RSPYN LIKE @RSPYN1 ");
|
||||
cmd.Parameters.Add(Query.NewParameter("RSPYN1", RSPYN + "%"));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.ComponentModel;
|
||||
using Wellan.Data;
|
||||
|
||||
/// <summary>
|
||||
/// 薪資科目匯總的資料處理類別
|
||||
/// </summary>
|
||||
[DataObject(true)]
|
||||
public class SacdDAC : Wellan.Data.WDAC
|
||||
{
|
||||
public SacdDAC()
|
||||
{
|
||||
}
|
||||
|
||||
public SacdDAC(string connectionConfig, string connectionConfigName)
|
||||
: this()
|
||||
{
|
||||
this._connectionConfig = connectionConfig;
|
||||
this._connectionConfigName = connectionConfigName;
|
||||
}
|
||||
|
||||
public SacdDAC(WQuery query)
|
||||
{
|
||||
this._query = query;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 取得某專案年月的科目預算與本月金額
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectByProject(string BPPYN, DateTime SAYMM)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(
|
||||
@"SELECT BPAB.BPPYN, BPAB.BPACC, ISNULL(BPAB.BPBGT, 0) AS BPBGT, BPAB.BPCLS, BPAB.BPAME, ISNULL(SACD.SAAMT, 0) AS SAAMT, SACD.SADOC
|
||||
FROM BPAB
|
||||
LEFT OUTER JOIN SACD ON BPAB.BPPYN = SACD.SAPYN AND BPAB.BPACC = SACD.SAACC AND SACD.SAYMM = @SAYMM
|
||||
WHERE (BPAB.BPPYN = @BPPYN) AND (SUBSTRING(BPAB.BPACC, 5, 2) <> '00')
|
||||
ORDER BY BPAB.BPCLS");
|
||||
cmd.Parameters.Add(Query.NewParameter("BPPYN", BPPYN));
|
||||
cmd.Parameters.Add(Query.NewParameter("SAYMM", SAYMM));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,13 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
using System.ComponentModel;
|
||||
using System.Text;
|
||||
using Wellan.Data;
|
||||
using Wellan.Common;
|
||||
using System.Data.SqlClient;
|
||||
|
||||
[DataObject(true)]
|
||||
public class SsmsDAC : Wellan.Data.WDAC
|
||||
{
|
||||
private DbCommand cmdSelectSSMS;
|
||||
@@ -629,6 +632,95 @@ public class SsmsDAC : Wellan.Data.WDAC
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private const string SelectSalaryStripSql =
|
||||
@"SELECT A.*,
|
||||
SSP06 + SSP07 + SSP08 + SSP13 + SSP14 OVERWORK,
|
||||
SSP09 + SSP10 + SSP12 OUTGOING,
|
||||
SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 + SSP13 + SSP14 + SSP15 + SSP99 SSPLUS,
|
||||
SSS01 + SSS02 + SSS09 LEAVING,
|
||||
SST01 + SST02 + SST03 + SST21 + SST22 OVERWORKTIME,
|
||||
(SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 + SSP13 + SSP14 + SSP15 + SSP99)
|
||||
- (SSS01 + SSS02 + SSS03 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 + SSS14 + SSS15 + SSS99) SSTOTAL,
|
||||
SSS01 + SSS02 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 + SSS14 + SSS15 + SSS99 SSMINUS,
|
||||
SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 + SSP13 + SSP14 + SSP15 + SSP99 TOTALPLUS,
|
||||
SSH01 + SSH02 + SSH03 EMPLOYER,
|
||||
ISNULL(B.BPNME, '') BPNME,
|
||||
ISNULL(C.BPPYM, '') BPPYM,
|
||||
ISNULL(B.BPSWY, '') BPSWY,
|
||||
ISNULL(D.BCNAM, '') BCNAM,
|
||||
ISNULL(B.BPACC, '') BPACC,
|
||||
ISNULL(B.BPEML, '') BPEML,
|
||||
ISNULL(B.BPEM2, '') BPEM2,
|
||||
(SELECT SUM(SSS06) FROM {0} E WHERE A.SSENO=E.SSENO AND E.SSYMM <= @SSYMM) SSS06SUM,
|
||||
(SELECT SUM(SSH06) FROM {0} F WHERE A.SSENO=F.SSENO AND F.SSYMM <= @SSYMM) SSH06SUM,
|
||||
SSC01, SSC03, SSC03, SSC04, SSC05, SSC06, SSC07, SSC08, SSC09, SSC10
|
||||
FROM {0} A
|
||||
LEFT OUTER JOIN BPSNView B ON A.SSENO=B.BPENO
|
||||
LEFT OUTER JOIN BPAA C ON A.SSPYN=C.BPPYN
|
||||
LEFT OUTER JOIN BRML D ON B.BPBNK=D.BCNUM";
|
||||
|
||||
private const string SelectSalaryStripSumSql =
|
||||
@"SELECT ISNULL(SUM(SSD01), 0) SSD01, ISNULL(SUM(SSD02), 0) SSD02, ISNULL(SUM(SSSRD), 0) SSSRD, ISNULL(SUM(SSP00), 0) SSP00,
|
||||
ISNULL(SUM(SSP01), 0) SSP01, ISNULL(SUM(SSP02), 0) SSP02, ISNULL(SUM(SSP03), 0) SSP03, ISNULL(SUM(SSP04), 0) SSP04,
|
||||
ISNULL(SUM(SSP05), 0) SSP05, ISNULL(SUM(SSP06), 0) SSP06, ISNULL(SUM(SSP07), 0) SSP07, ISNULL(SUM(SSP08), 0) SSP08,
|
||||
ISNULL(SUM(SSP09), 0) SSP09, ISNULL(SUM(SSP10), 0) SSP10, ISNULL(SUM(SSP11), 0) SSP11, ISNULL(SUM(SSP12), 0) SSP12,
|
||||
ISNULL(SUM(SSP13), 0) SSP13, ISNULL(SUM(SSP14), 0) SSP14, ISNULL(SUM(SSP15), 0) SSP15, ISNULL(SUM(SSP99), 0) SSP99,
|
||||
ISNULL(SUM(SSS01), 0) SSS01, ISNULL(SUM(SSS02), 0) SSS02, ISNULL(SUM(SSS03), 0) SSS03, ISNULL(SUM(SSS04), 0) SSS04,
|
||||
ISNULL(SUM(SSS05), 0) SSS05, ISNULL(SUM(SSS06), 0) SSS06, ISNULL(SUM(SSS07), 0) SSS07, ISNULL(SUM(SSS08), 0) SSS08,
|
||||
ISNULL(SUM(SSS09), 0) SSS09, ISNULL(SUM(SSS10), 0) SSS10, ISNULL(SUM(SSS11), 0) SSS11, ISNULL(SUM(SSS12), 0) SSS12,
|
||||
ISNULL(SUM(SSS13), 0) SSS13, ISNULL(SUM(SSS14), 0) SSS14, ISNULL(SUM(SSS15), 0) SSS15, ISNULL(SUM(SSS99), 0) SSS99,
|
||||
ISNULL(SUM(SSH01), 0) SSH01, ISNULL(SUM(SSH02), 0) SSH02, ISNULL(SUM(SSH03), 0) SSH03, ISNULL(SUM(SSH04), 0) SSH04,
|
||||
ISNULL(SUM(SSH05), 0) SSH05, ISNULL(SUM(SSH06), 0) SSH06, ISNULL(SUM(SSH07), 0) SSH07, ISNULL(SUM(SSH08), 0) SSH08,
|
||||
ISNULL(SUM(SSH09), 0) SSH09, ISNULL(SUM(SSH10), 0) SSH10, ISNULL(SUM(SST01), 0) SST01, ISNULL(SUM(SST02), 0) SST02,
|
||||
ISNULL(SUM(SST03), 0) SST03, ISNULL(SUM(SST04), 0) SST04, ISNULL(SUM(SST05), 0) SST05, ISNULL(SUM(SST06), 0) SST06,
|
||||
ISNULL(SUM(SST07), 0) SST07, ISNULL(SUM(SST08), 0) SST08, ISNULL(SUM(SST09), 0) SST09, ISNULL(SUM(SST10), 0) SST10,
|
||||
ISNULL(SUM(SST11), 0) SST11, ISNULL(SUM(SST12), 0) SST12, ISNULL(SUM(SST13), 0) SST13, ISNULL(SUM(SST14), 0) SST14,
|
||||
ISNULL(SUM(SST15), 0) SST15, ISNULL(SUM(SST16), 0) SST16, ISNULL(SUM(SST17), 0) SST17, ISNULL(SUM(SST18), 0) SST18,
|
||||
ISNULL(SUM(SST19), 0) SST19, ISNULL(SUM(SST20), 0) SST20, ISNULL(SUM(SST21), 0) SST21, ISNULL(SUM(SST22), 0) SST22,
|
||||
ISNULL(SUM(SST23), 0) SST23, ISNULL(SUM(SST24), 0) SST24, ISNULL(SUM(SST25), 0) SST25, ISNULL(SUM(SSL01), 0) SSL01,
|
||||
ISNULL(SUM(SSL02), 0) SSL02, ISNULL(SUM(SSL03), 0) SSL03, ISNULL(SUM(SSL04), 0) SSL04, ISNULL(SUM(SSL05), 0) SSL05,
|
||||
ISNULL(SUM(SSP06 + SSP07 + SSP08 + SSP13 + SSP14), 0) OVERWORK,
|
||||
ISNULL(SUM(SSP09 + SSP10 + SSP12), 0) OUTGOING,
|
||||
ISNULL(SUM(SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 +
|
||||
SSP13 + SSP14 + SSP15 + SSP99), 0) SSPLUS,
|
||||
ISNULL(SUM(SSS01 + SSS02 + SSS09), 0) LEAVING,
|
||||
ISNULL(SUM(SST01 + SST02 + SST03 + SST21 + SST22), 0) OVERWORKTIME,
|
||||
ISNULL(SUM((SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 +
|
||||
SSP13 + SSP14 + SSP15 + SSP99)
|
||||
- (SSS01 + SSS02 + SSS03 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 +
|
||||
SSS14 + SSS15 + SSS99)), 0) SSTOTAL,
|
||||
ISNULL(SUM(SSS01 + SSS02 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 + SSS14 +
|
||||
SSS15 + SSS99), 0) SSMINUS,
|
||||
ISNULL(SUM(SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 + SSP13 +
|
||||
SSP14 + SSP15 + SSP99), 0) TOTALPLUS,
|
||||
ISNULL(SUM(SSH01 + SSH02 + SSH03), 0) EMPLOYER
|
||||
FROM {0} A WHERE SSYMM=@SSYMM AND SSPYN=@SSPYN";
|
||||
|
||||
/// <summary>
|
||||
/// 薪資條發放 Grid 查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectSalaryStrip(string tableName, DateTime SSYMM, string SSPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(
|
||||
String.Format(SelectSalaryStripSql, tableName) + " WHERE SSYMM=@SSYMM AND SSPYN=@SSPYN ORDER BY SSENO ");
|
||||
cmd.Parameters.Add(Query.NewParameter("SSYMM", SSYMM));
|
||||
cmd.Parameters.Add(Query.NewParameter("SSPYN", SSPYN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 薪資條發放 Grid 合計查詢
|
||||
/// </summary>
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectSalaryStripSum(string tableName, DateTime SSYMM, string SSPYN)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand(String.Format(SelectSalaryStripSumSql, tableName));
|
||||
cmd.Parameters.Add(Query.NewParameter("SSYMM", SSYMM));
|
||||
cmd.Parameters.Add(Query.NewParameter("SSPYN", SSPYN));
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
}
|
||||
|
||||
public class SsmsRecord
|
||||
|
||||
@@ -80,12 +80,13 @@
|
||||
</table>
|
||||
</asp:View>
|
||||
<asp:View ID="View3" runat="server">
|
||||
<asp:SqlDataSource ID="dsBPRMGrid" runat="server"
|
||||
ConflictDetection="CompareAllValues"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
OnSelected="dsBPRM_Selected"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
SelectCommand="SELECT * FROM BPRM"></asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsBPRMGrid" runat="server"
|
||||
TypeName="BprmDAC" SelectMethod="SelectPage" SelectCountMethod="SelectCount"
|
||||
EnablePaging="true" OnSelected="dsBPRMGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="BPPNM" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:SqlDataSource ID="dsBPRMForm" runat="server"
|
||||
ConflictDetection="CompareAllValues"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa" DeleteCommand="DELETE FROM BPRM
|
||||
|
||||
@@ -19,10 +19,6 @@ using System.Data.Common;
|
||||
public partial class forms_customer_fmBprm : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
protected string _BPPNM = "";
|
||||
private string select = "SELECT * ";
|
||||
private string from = " FROM BPRM ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
private string order = " ORDER BY BPENO";
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
@@ -181,14 +177,15 @@ public partial class forms_customer_fmBprm : Wellan.Web.UI.WUserControlBase
|
||||
// 查詢動作
|
||||
private new void Search()
|
||||
{
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsBPRMGrid.SelectParameters.Clear();
|
||||
AddSearch(sql, dsBPRMGrid, "BPPNM", _BPPNM, "", true);
|
||||
sql.Append(order);
|
||||
dsBPRMGrid.SelectCommand = sql.ToString();
|
||||
dsBPRMGrid.SelectParameters["BPPNM"].DefaultValue = _BPPNM;
|
||||
}
|
||||
|
||||
protected void dsBPRMGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
fvBPRM.ChangeMode(FormViewMode.Insert);
|
||||
}
|
||||
}
|
||||
|
||||
protected void dsBPRM_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
|
||||
@@ -53,28 +53,19 @@
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
|
||||
<asp:SqlDataSource ID="dsRASN_RAENO1" runat="server"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
SelectCommand="SELECT A.RANUM, B.BPNME
|
||||
FROM RASN AS A
|
||||
INNER JOIN BPSNView AS B ON A.RANUM = B.BPENO
|
||||
WHERE (A.RAPYN = @RAPYN) AND A.RAEDT IS NULL">
|
||||
<asp:ObjectDataSource ID="dsRASN_RAENO1" runat="server"
|
||||
TypeName="RasnDAC" SelectMethod="SelectRAENO">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RAPYN" />
|
||||
<asp:Parameter Name="RAPYN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
<asp:SqlDataSource ID="dsRASN_RABRH1" runat="server"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
SelectCommand="SELECT A.RABRH, B.BSSCR, COUNT(1) AS RABRH_COUNT
|
||||
FROM RASN AS A
|
||||
INNER JOIN BCLS AS B ON A.RABRH = B.BSCLS AND B.BSPAR = 'BPSNBRH'
|
||||
WHERE (A.RAPYN = @RAPYN) AND A.RAEDT IS NULL
|
||||
GROUP BY A.RABRH, B.BSSCR">
|
||||
<asp:ObjectDataSource ID="dsRASN_RABRH1" runat="server"
|
||||
TypeName="RasnDAC" SelectMethod="SelectRABRH">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RAPYN" />
|
||||
<asp:Parameter Name="RAPYN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
<asp:SqlDataSource ID="dsRASN_RAWTZ" runat="server"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
@@ -282,17 +273,16 @@
|
||||
</InsertParameters>
|
||||
</asp:SqlDataSource>
|
||||
|
||||
<asp:SqlDataSource ID="dsRASNGrid" runat="server"
|
||||
ConflictDetection="CompareAllValues"
|
||||
SelectCommand="SELECT A.*, B.BPSRM, B.BPSRD, B.BPP01, B.BPP02, B.BPP03, B.BPP04, B.BPP05
|
||||
FROM RASN A
|
||||
LEFT OUTER JOIN BPJB B ON A.RAPYN=B.BPPYN AND A.RAJNO=B.BPJNO AND A.RACNO=B.BPCNO
|
||||
LEFT OUTER JOIN BPSNView C ON A.RANUM=C.BPENO
|
||||
WHERE 1=0"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
OnSelected="dsRASNGrid_Selected">
|
||||
</asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsRASNGrid" runat="server"
|
||||
TypeName="RasnDAC" SelectMethod="SelectPage" SelectCountMethod="SelectCount"
|
||||
EnablePaging="true" OnSelected="dsRASNGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RAPYN" Type="String" />
|
||||
<asp:Parameter Name="BPENO" Type="String" />
|
||||
<asp:Parameter Name="BPNME" Type="String" />
|
||||
<asp:Parameter Name="year" Type="Int32" DefaultValue="0" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
<asp:FormView ID="RASNForm" runat="server"
|
||||
DataSourceID="dsRASNForm"
|
||||
|
||||
@@ -53,13 +53,10 @@ public partial class forms_customer_fmRasn : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsRASNForm.ConnectionString = ConnectionString;
|
||||
dsRASNGrid.ConnectionString = ConnectionString;
|
||||
dsRASN_RABRH.ConnectionString = ConnectionString;
|
||||
dsRASN_RANUM.ConnectionString = ConnectionString;
|
||||
dsRASN_BPJNO.ConnectionString = ConnectionString;
|
||||
dsRASN_BPCNO.ConnectionString = ConnectionString;
|
||||
dsRASN_RAENO1.ConnectionString = ConnectionString;
|
||||
dsRASN_RABRH1.ConnectionString = ConnectionString;
|
||||
dsRASN_RAWTZ.ConnectionString = ConnectionString;
|
||||
|
||||
_YY = GetIntParam("YY");
|
||||
@@ -219,44 +216,16 @@ public partial class forms_customer_fmRasn : Wellan.Web.UI.WUserControlBase
|
||||
// 查詢動作
|
||||
private new void Search()
|
||||
{
|
||||
StringBuilder sql = new StringBuilder();
|
||||
List<string> HQ_RAPYNS = new List<string>() { "103TYB00001", "103JYB00001" };
|
||||
String searchOrder1 = String.Empty, searchOrder2 = String.Empty;
|
||||
if (HQ_RAPYNS.IndexOf(_RAPYN) < 0)
|
||||
{
|
||||
searchOrder1 = "RANUM";
|
||||
searchOrder2 = "RAEDT, RANUM";
|
||||
}
|
||||
else
|
||||
{
|
||||
searchOrder1 = "RAEDT, RANUM";
|
||||
searchOrder2 = "RAEDT, RANUM";
|
||||
}
|
||||
|
||||
sql.Append(string.Format(@"
|
||||
SELECT A.*, B.BPSRM, B.BPSRD, B.BPP01, B.BPP02, B.BPP03, B.BPP04, B.BPP05
|
||||
FROM
|
||||
(
|
||||
SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY {0}) ROWNUM FROM RASN WHERE RAPYN=@RAPYN AND RAEDT IS NULL) T1
|
||||
UNION ALL
|
||||
SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY {1}) ROWNUM FROM RASN WHERE RAPYN=@RAPYN AND RAEDT IS NOT NULL) T2
|
||||
) A
|
||||
LEFT OUTER JOIN BPJB B ON A.RAPYN=B.BPPYN AND A.RAJNO=B.BPJNO AND A.RACNO=B.BPCNO
|
||||
LEFT OUTER JOIN BPSNView C ON A.RANUM=C.BPENO
|
||||
WHERE 1=1
|
||||
", searchOrder1, searchOrder2));
|
||||
int year = 0;
|
||||
if (!string.IsNullOrEmpty(txtYY.Text) && HQ_RAPYNS.IndexOf(_RAPYN) < 0)
|
||||
{
|
||||
sql.Append(string.Format(" AND ((RASDT >= '{0}/01/01' AND RASDT <= '{0}/12/31') OR (RAEDT >= '{0}/01/01' AND RAEDT <= '{0}/12/31') OR (RASDT <= '{0}/01/01' AND RAEDT >= '{0}/12/31') ) ", WQuery.GetInt32Value(txtYY.Text) + WGuard1.CY11));
|
||||
}
|
||||
year = WQuery.GetInt32Value(txtYY.Text) + WGuard1.CY11;
|
||||
|
||||
dsRASNGrid.SelectParameters.Clear();
|
||||
dsRASNGrid.SelectParameters.Add(new Parameter("RAPYN", DbType.String, _RAPYN));
|
||||
// AddSearch(sql, dsRASNGrid, "RAPYN", _RAPYN, "", true);
|
||||
AddSearch(sql, dsRASNGrid, "C.BPENO", _BPENO, "", true);
|
||||
AddSearch(sql, dsRASNGrid, "C.BPNME", _BPNME, "", true);
|
||||
|
||||
dsRASNGrid.SelectCommand = sql.ToString();
|
||||
dsRASNGrid.SelectParameters["RAPYN"].DefaultValue = _RAPYN;
|
||||
dsRASNGrid.SelectParameters["BPENO"].DefaultValue = _BPENO;
|
||||
dsRASNGrid.SelectParameters["BPNME"].DefaultValue = _BPNME;
|
||||
dsRASNGrid.SelectParameters["year"].DefaultValue = year.ToString();
|
||||
}
|
||||
|
||||
// 存檔前的計算動作
|
||||
@@ -302,9 +271,9 @@ WHERE 1=1
|
||||
RASNGrid.DataBind();
|
||||
}
|
||||
|
||||
protected void dsRASNGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
protected void dsRASNGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
if (ForwardSource != "")
|
||||
RASNForm.ChangeMode(FormViewMode.Insert);
|
||||
|
||||
@@ -6,11 +6,13 @@
|
||||
TextMessageId="FMRPFE.NAME"></cc1:WLabel>
|
||||
<asp:CustomValidator ID="cvMessage" runat="server"
|
||||
Display="None"></asp:CustomValidator>
|
||||
<asp:SqlDataSource ID="dsRPFEGrid" runat="server"
|
||||
ConflictDetection="CompareAllValues" SelectCommand="SELECT * FROM RPFE WHERE (1 = 0)"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient" OnSelected="dsRPFEGrid_Selected">
|
||||
</asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsRPFEGrid" runat="server"
|
||||
TypeName="RpfeDAC" SelectMethod="SelectPage" SelectCountMethod="SelectCount"
|
||||
EnablePaging="true" OnSelected="dsRPFEGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RPPYN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:SqlDataSource ID="dsRPFEForm" runat="server"
|
||||
UpdateCommand="UPDATE RPFE SET RPENO = @RPENO, RPDAT = @RPDAT, RPACC = @RPACC, RPAMT = @RPAMT, RPDOC = @RPDOC, APPNO = APPNO + 1, TRDAT = GETDATE(), TRMOD = 'UPDATE', TRUSR = @TRUSR WHERE RPREN = @OLD_RPREN AND APPNO = @OLD_APPNO"
|
||||
DeleteCommand="DELETE FROM RPFE WHERE RPREN = @OLD_RPREN AND APPNO = @OLD_APPNO"
|
||||
|
||||
@@ -23,10 +23,6 @@ public partial class forms_customer_fmRpfe : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
private string _RPPYN = "";
|
||||
private int _YY = 0;
|
||||
private string select = "SELECT * ";
|
||||
private string from = " FROM RPFE ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
private string order = " ORDER BY RPPYN, RPREN";
|
||||
private TextBox[] RPDATs = new TextBox[10];
|
||||
private DropDownList[] RPACCs = new DropDownList[10];
|
||||
private TextBox[] RPAMTs = new TextBox[10];
|
||||
@@ -47,7 +43,6 @@ public partial class forms_customer_fmRpfe : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsRPFEForm.ConnectionString = ConnectionString;
|
||||
dsRPFEGrid.ConnectionString = ConnectionString;
|
||||
dsRPFE_RPACC.ConnectionString = ConnectionString;
|
||||
dsRPFE_RPENO.ConnectionString = ConnectionString;
|
||||
|
||||
@@ -152,14 +147,7 @@ public partial class forms_customer_fmRpfe : Wellan.Web.UI.WUserControlBase
|
||||
// 查詢動作
|
||||
private new void Search()
|
||||
{
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsRPFEGrid.SelectParameters.Clear();
|
||||
AddSearch(sql, dsRPFEGrid, "RPPYN", _RPPYN, "", true);
|
||||
sql.Append(order);
|
||||
dsRPFEGrid.SelectCommand = sql.ToString();
|
||||
dsRPFEGrid.SelectParameters["RPPYN"].DefaultValue = _RPPYN;
|
||||
}
|
||||
|
||||
private int CheckInsertInput(int index)
|
||||
@@ -229,9 +217,9 @@ public partial class forms_customer_fmRpfe : Wellan.Web.UI.WUserControlBase
|
||||
RPFEGrid.DataBind();
|
||||
}
|
||||
|
||||
protected void dsRPFEGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
protected void dsRPFEGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
//RPFEForm.ChangeMode(FormViewMode.Insert);
|
||||
//RPFEForm_ModeChanged(sender, e);
|
||||
|
||||
@@ -690,13 +690,13 @@
|
||||
</EmptyDataTemplate>
|
||||
</asp:GridView>
|
||||
|
||||
<asp:SqlDataSource ID="dsRPAB2" runat="server" ConnectionString="Data Source=SRYANG-X200\SQL2K8;Initial Catalog=THINKYU_WEB_TY;Integrated Security=True"
|
||||
ProviderName="System.Data.SqlClient" SelectCommand="SELECT [RPANO], [RPAPN], [RPENO], [RPDAT], [RPAPP], [RPDOC] FROM [RPAB] WHERE (([RPREN] = @RPREN) AND ([RPDAT] IS NOT NULL))"
|
||||
<asp:ObjectDataSource ID="dsRPAB2" runat="server"
|
||||
TypeName="RpabDAC" SelectMethod="SelectRPAB"
|
||||
OnSelecting="dsRPAB2_Selecting">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RPREN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
</div>
|
||||
</asp:View>
|
||||
<asp:View ID="View5" runat="server">
|
||||
@@ -2589,13 +2589,13 @@
|
||||
</EmptyDataTemplate>
|
||||
</asp:GridView>
|
||||
|
||||
<asp:SqlDataSource ID="dsRPAB" runat="server" ConnectionString="Data Source=SRYANG-X200\SQL2K8;Initial Catalog=THINKYU_WEB_TY;Integrated Security=True"
|
||||
ProviderName="System.Data.SqlClient" SelectCommand="SELECT [RPANO], [RPAPN], [RPENO], [RPDAT], [RPAPP], [RPDOC] FROM [RPAB] WHERE (([RPREN] = @RPREN) AND ([RPDAT] IS NOT NULL))">
|
||||
<asp:ObjectDataSource ID="dsRPAB" runat="server"
|
||||
TypeName="RpabDAC" SelectMethod="SelectRPAB">
|
||||
<SelectParameters>
|
||||
<asp:ControlParameter ControlID="RPARGrid" Name="RPREN" PropertyName="SelectedValue"
|
||||
Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -139,15 +139,13 @@
|
||||
</asp:Panel>
|
||||
<asp:Panel ID="pnSACD" runat="server"
|
||||
Width="100%" Visible="False">
|
||||
<asp:SqlDataSource ID="dsSACD"
|
||||
runat="server" ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
SelectCommand="SELECT BPAB.BPPYN, BPAB.BPACC, ISNULL(BPAB.BPBGT, 0) AS BPBGT, BPAB.BPCLS, BPAB.BPAME, ISNULL(SACD.SAAMT, 0) AS SAAMT, SACD.SADOC FROM BPAB LEFT OUTER JOIN SACD ON BPAB.BPPYN = SACD.SAPYN AND BPAB.BPACC = SACD.SAACC AND SACD.SAYMM = @SAYMM WHERE (BPAB.BPPYN = @BPPYN) AND (SUBSTRING(BPAB.BPACC, 5, 2) <> '00') ORDER BY BPAB.BPCLS">
|
||||
<asp:ObjectDataSource ID="dsSACD"
|
||||
runat="server" TypeName="SacdDAC" SelectMethod="SelectByProject">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="SAYMM" />
|
||||
<asp:Parameter Name="BPPYN" />
|
||||
<asp:Parameter Name="BPPYN" Type="String" />
|
||||
<asp:Parameter Name="SAYMM" Type="DateTime" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
@@ -1560,7 +1560,6 @@ public partial class forms_summary_fmSalaryCalc : Wellan.Web.UI.WUserControlBase
|
||||
bool result = true;
|
||||
aYYMM = CheckDate(lbYYMM.Text + "01", "", ref result, cvMessage);
|
||||
|
||||
dsSACD.ConnectionString = ConnectionString;
|
||||
dsSACD.SelectParameters["BPPYN"].DefaultValue = ddlRSPYN.SelectedValue;
|
||||
dsSACD.SelectParameters["SAYMM"].DefaultValue = aYYMM.ToString(System.Globalization.CultureInfo.InvariantCulture);
|
||||
GridView1.DataBind();
|
||||
|
||||
@@ -6,12 +6,19 @@
|
||||
CssClass="pageTitle"></cc1:WLabel>
|
||||
<asp:CustomValidator ID="cvMessage"
|
||||
runat="server" Display="None"></asp:CustomValidator>
|
||||
<asp:SqlDataSource ID="dsRPARGrid"
|
||||
runat="server" ConflictDetection="CompareAllValues"
|
||||
SelectCommand="SELECT * FROM RPAR WHERE (1 = 0)"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
OnSelected="dsRPARGrid_Selected"></asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsRPARGrid"
|
||||
runat="server" TypeName="RparDAC"
|
||||
SelectMethod="SelectPage" SelectCountMethod="SelectCount"
|
||||
EnablePaging="true" OnSelected="dsRPARGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RPPYN" Type="String" />
|
||||
<asp:Parameter Name="RPNUM1" Type="String" />
|
||||
<asp:Parameter Name="RPNUM2" Type="String" />
|
||||
<asp:Parameter Name="RPRDT1" Type="String" />
|
||||
<asp:Parameter Name="RPRDT2" Type="String" />
|
||||
<asp:Parameter Name="rparType" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:SqlDataSource ID="dsRPARForm"
|
||||
runat="server" InsertCommand="INSERT INTO RPAR
|
||||
(RPREN, RPNUM, RAITM, RPCNM, RPPYN, RPRDT, RPEDT, RPTYP, RPTCT,
|
||||
|
||||
@@ -37,7 +37,6 @@ public partial class forms_worker_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
RPRSN, RPAGM, ISNULL(RPTCT - FLOOR(RPTCT / 60) * 60, 0) AS RPTMT";
|
||||
private string from = " FROM RPAR ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
private string order = " ORDER BY RPREN";
|
||||
private FormView RPARForm;
|
||||
private Panel RPARPanel;
|
||||
protected string rparType;
|
||||
@@ -71,7 +70,6 @@ public partial class forms_worker_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsRPARForm.ConnectionString = ConnectionString;
|
||||
dsRPARGrid.ConnectionString = ConnectionString;
|
||||
dsRPAR_RPTYP.ConnectionString = ConnectionString;
|
||||
|
||||
rparDao = new RparDAC(Query);
|
||||
@@ -282,21 +280,16 @@ public partial class forms_worker_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
// RPARForm.Visible = true;
|
||||
}
|
||||
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsRPARGrid.SelectParameters.Clear();
|
||||
|
||||
DateTime RPRDT1, RPRDT2;
|
||||
CheckDate(_RPRDT1, out RPRDT1);
|
||||
CheckDate(_RPRDT2, out RPRDT2);
|
||||
|
||||
AddSearch(sql, dsRPARGrid, "RPPYN", _RPPYN, "", false);
|
||||
AddSearch(sql, dsRPARGrid, "RPNUM", _RPNUM1, _RPNUM2, true);
|
||||
AddSearch(sql, dsRPARGrid, "RPRDT", RPRDT1, RPRDT2, true);
|
||||
sql.Append(order);
|
||||
dsRPARGrid.SelectCommand = sql.ToString();
|
||||
dsRPARGrid.SelectParameters["RPPYN"].DefaultValue = _RPPYN;
|
||||
dsRPARGrid.SelectParameters["RPNUM1"].DefaultValue = _RPNUM1;
|
||||
dsRPARGrid.SelectParameters["RPNUM2"].DefaultValue = _RPNUM2;
|
||||
dsRPARGrid.SelectParameters["RPRDT1"].DefaultValue = RPRDT1.Ticks > 0 ? RPRDT1.ToString("yyyy-MM-dd") : "";
|
||||
dsRPARGrid.SelectParameters["RPRDT2"].DefaultValue = RPRDT2.Ticks > 0 ? RPRDT2.ToString("yyyy-MM-dd") : "";
|
||||
dsRPARGrid.SelectParameters["rparType"].DefaultValue = rparType;
|
||||
|
||||
dsRPARForm.SelectCommand = select + from + " WHERE RPREN=@RPREN ";
|
||||
}
|
||||
@@ -625,9 +618,9 @@ public partial class forms_worker_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
RPARGrid.DataBind();
|
||||
}
|
||||
|
||||
protected void dsRPARGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
protected void dsRPARGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
switch (MultiView1.ActiveViewIndex)
|
||||
{
|
||||
|
||||
@@ -5,9 +5,16 @@
|
||||
TagPrefix="uc1" %>
|
||||
<cc1:WLabel ID="WLabel1" runat="server" CssClass="pageTitle"></cc1:WLabel>
|
||||
<asp:CustomValidator ID="cvMessage" runat="server" Display="None"></asp:CustomValidator>
|
||||
<asp:SqlDataSource ID="dsRPARGrid" runat="server" ConflictDetection="CompareAllValues"
|
||||
SelectCommand="SELECT * FROM RPAR WHERE (1 = 0)" ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient" OnSelected="dsRPARGrid_Selected"></asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsRPARGrid" runat="server"
|
||||
TypeName="RparDAC" SelectMethod="SelectWorkerPage" SelectCountMethod="SelectWorkerCount"
|
||||
EnablePaging="true" OnSelected="dsRPARGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RPNUM_FIXED" Type="String" />
|
||||
<asp:Parameter Name="RPRDT1" Type="String" />
|
||||
<asp:Parameter Name="RPRDT2" Type="String" />
|
||||
<asp:Parameter Name="rparType" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:SqlDataSource ID="dsRPARForm" runat="server"
|
||||
InsertCommand="INSERT INTO RPAR
|
||||
(RPREN, RPNUM, RAITM, RPCNM, RPPYN, RPRDT, RPEDT,
|
||||
@@ -182,14 +189,13 @@
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
<asp:SqlDataSource ID="dsRPAB" runat="server" ConnectionString="Data Source=SRYANG-X200\SQL2K8;Initial Catalog=THINKYU_WEB_TY;Integrated Security=True"
|
||||
ProviderName="System.Data.SqlClient"
|
||||
SelectCommand="SELECT [RPANO], [RPAPN], [RPENO], [RPDAT], [RPAPP], [RPDOC] FROM [RPAB] WHERE [RPREN] = @RPREN">
|
||||
<asp:ObjectDataSource ID="dsRPAB" runat="server"
|
||||
TypeName="RpabDAC" SelectMethod="SelectRPABByRPREN">
|
||||
<SelectParameters>
|
||||
<asp:ControlParameter ControlID="RPARGrid" Name="RPREN" PropertyName="SelectedValue"
|
||||
Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:SqlDataSource>
|
||||
</asp:ObjectDataSource>
|
||||
|
||||
<asp:ObjectDataSource ID="dsBPSE" runat="server" OldValuesParameterFormatString="original_{0}"
|
||||
OnSelecting="dsBPSE_Selecting" SelectMethod="Select片語By類別"
|
||||
|
||||
@@ -49,7 +49,6 @@ public partial class forms_customer_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
FLOOR(RPTC5 / 60) AS RPTC5, RPTC5 - FLOOR(RPTC5 / 60) * 60 AS RPTM5";
|
||||
private string from = " FROM RPAR ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
private string order = " ORDER BY RPRDT DESC";
|
||||
private FormView RPARForm;
|
||||
private Panel RPARPanel;
|
||||
protected string rparType;
|
||||
@@ -136,9 +135,7 @@ public partial class forms_customer_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsRPARForm.ConnectionString = ConnectionString;
|
||||
dsRPARGrid.ConnectionString = ConnectionString;
|
||||
dsRPAR_RPTYP.ConnectionString = ConnectionString;
|
||||
dsRPAB.ConnectionString = ConnectionString;
|
||||
|
||||
bpsnDao = new BpsnDAC(Query);
|
||||
rparDao = new RparDAC(Query);
|
||||
@@ -354,19 +351,14 @@ public partial class forms_customer_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
RPARPanel.Visible = true;
|
||||
}
|
||||
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsRPARGrid.SelectParameters.Clear();
|
||||
|
||||
DateTime RPRDT1, RPRDT2;
|
||||
CheckDate(_RPRDT1, out RPRDT1);
|
||||
CheckDate(_RPRDT2, out RPRDT2);
|
||||
|
||||
AddSearch(sql, dsRPARGrid, "RPRDT", RPRDT1, RPRDT2, true);
|
||||
sql.Append(order);
|
||||
dsRPARGrid.SelectCommand = sql.ToString();
|
||||
dsRPARGrid.SelectParameters["RPNUM_FIXED"].DefaultValue = UserId;
|
||||
dsRPARGrid.SelectParameters["RPRDT1"].DefaultValue = RPRDT1.Ticks > 0 ? RPRDT1.ToString("yyyy-MM-dd") : "";
|
||||
dsRPARGrid.SelectParameters["RPRDT2"].DefaultValue = RPRDT2.Ticks > 0 ? RPRDT2.ToString("yyyy-MM-dd") : "";
|
||||
dsRPARGrid.SelectParameters["rparType"].DefaultValue = rparType;
|
||||
|
||||
dsRPARForm.SelectCommand = select + from + " WHERE RPREN=@RPREN ";
|
||||
|
||||
@@ -959,9 +951,9 @@ public partial class forms_customer_fmRpar : Wellan.Web.UI.WUserControlBase
|
||||
gvRPAD.DataBind();
|
||||
}
|
||||
|
||||
protected void dsRPARGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
protected void dsRPARGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
switch (MultiView1.ActiveViewIndex)
|
||||
{
|
||||
|
||||
@@ -6,10 +6,14 @@
|
||||
TextMessageId="FMRSAJ.NAME"></cc1:WLabel>
|
||||
<asp:CustomValidator ID="cvMessage" runat="server"
|
||||
Display="None"></asp:CustomValidator>
|
||||
<asp:SqlDataSource ID="dsRSAJGrid" runat="server"
|
||||
ConflictDetection="CompareAllValues" SelectCommand="SELECT * FROM RSAJ WHERE (1 = 0)"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient" OnSelected="dsRSAJGrid_Selected"></asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsRSAJGrid" runat="server"
|
||||
TypeName="RsajDAC" SelectMethod="SelectPage" SelectCountMethod="SelectCount"
|
||||
EnablePaging="true" OnSelected="dsRSAJGrid_Selected">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="RSENO" Type="String" />
|
||||
<asp:Parameter Name="RSPYN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:SqlDataSource ID="dsRSAJForm" runat="server"
|
||||
ConflictDetection="CompareAllValues" SelectCommand="SELECT * FROM RSAJ WHERE RSREN = @RSREN"
|
||||
DeleteCommand="DELETE RSAJ WHERE RSREN = @OLD_RSREN AND APPNO = @OLD_APPNO"
|
||||
|
||||
@@ -23,11 +23,6 @@ public partial class forms_worker_fmRsaj : Wellan.Web.UI.WUserControlBase
|
||||
protected DateTime _YYMM;
|
||||
protected string _RSENO = "";
|
||||
protected string _RSPYN = "";
|
||||
private string select = "SELECT * ";
|
||||
private string from = " FROM RSAJ ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
// private string order = " ORDER BY RSPYN, RSREN";
|
||||
private string order = " ORDER BY RSYMM DESC, RSREN DESC";
|
||||
private TextBox[] RSYMMs = new TextBox[10];
|
||||
private DropDownList[] RSENOs = new DropDownList[10];
|
||||
private TextBox[] RSAMTs = new TextBox[10];
|
||||
@@ -48,7 +43,6 @@ public partial class forms_worker_fmRsaj : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsRSAJForm.ConnectionString = ConnectionString;
|
||||
dsRSAJGrid.ConnectionString = ConnectionString;
|
||||
dsRSAJ_RSENO.ConnectionString = ConnectionString;
|
||||
dsRSAJ_RSENO.SelectCommand =
|
||||
@"IF @RSPYN = '-ALL-'
|
||||
@@ -201,15 +195,8 @@ public partial class forms_worker_fmRsaj : Wellan.Web.UI.WUserControlBase
|
||||
// 查詢動作
|
||||
private new void Search()
|
||||
{
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsRSAJGrid.SelectParameters.Clear();
|
||||
AddSearch(sql, dsRSAJGrid, "RSENO", _RSENO, "", true);
|
||||
AddSearch(sql, dsRSAJGrid, "RSPYN", _RSPYN, "", true);
|
||||
sql.Append(order);
|
||||
dsRSAJGrid.SelectCommand = sql.ToString();
|
||||
dsRSAJGrid.SelectParameters["RSENO"].DefaultValue = _RSENO;
|
||||
dsRSAJGrid.SelectParameters["RSPYN"].DefaultValue = _RSPYN;
|
||||
}
|
||||
|
||||
// 存檔前的計算動作
|
||||
@@ -254,9 +241,9 @@ public partial class forms_worker_fmRsaj : Wellan.Web.UI.WUserControlBase
|
||||
RSAJGrid.DataBind();
|
||||
}
|
||||
|
||||
protected void dsRSAJGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
protected void dsRSAJGrid_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
if (e.ReturnValue is Int32 && WDAC.GetInt32Value(e.ReturnValue) == 0)
|
||||
{
|
||||
/*
|
||||
if (ForwardSource != "")
|
||||
|
||||
@@ -69,12 +69,14 @@
|
||||
OnClick="btnSSPYN_Click"></cc1:WButton></td>
|
||||
</tr>
|
||||
</table>
|
||||
<asp:SqlDataSource ID="dsSSMS" runat="server"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient"></asp:SqlDataSource>
|
||||
<asp:SqlDataSource ID="dsSSMSSum" runat="server"
|
||||
ConnectionString="Data Source=(local);Initial Catalog=THINKYU_WEB;Persist Security Info=True;User ID=sa"
|
||||
ProviderName="System.Data.SqlClient"></asp:SqlDataSource>
|
||||
<asp:ObjectDataSource ID="dsSSMS" runat="server"
|
||||
TypeName="SsmsDAC" SelectMethod="SelectSalaryStrip">
|
||||
<SelectParameters>
|
||||
<asp:Parameter Name="tableName" Type="String" />
|
||||
<asp:Parameter Name="SSYMM" Type="DateTime" />
|
||||
<asp:Parameter Name="SSPYN" Type="String" />
|
||||
</SelectParameters>
|
||||
</asp:ObjectDataSource>
|
||||
<asp:Button ID="btnSend" runat="server" OnClick="btnSend_Click"
|
||||
Text="S.發送" CssClass="button" AccessKey="S"
|
||||
OnClientClick='if (confirm("是否確定發送薪資單郵件?")) {ShowProcessing(2000); return true;} else return false;' />
|
||||
|
||||
@@ -50,42 +50,6 @@ public partial class forms_worker_fmSendSalaryStrip : Wellan.Web.UI.WUserControl
|
||||
LEFT OUTER JOIN BPSNView B ON A.SSENO=B.BPENO
|
||||
LEFT OUTER JOIN BPAA C ON A.SSPYN=C.BPPYN
|
||||
LEFT OUTER JOIN BRML D ON B.BPBNK=D.BCNUM";
|
||||
private string selectSum =
|
||||
@"SELECT ISNULL(SUM(SSD01), 0) SSD01, ISNULL(SUM(SSD02), 0) SSD02, ISNULL(SUM(SSSRD), 0) SSSRD, ISNULL(SUM(SSP00), 0) SSP00,
|
||||
ISNULL(SUM(SSP01), 0) SSP01, ISNULL(SUM(SSP02), 0) SSP02, ISNULL(SUM(SSP03), 0) SSP03, ISNULL(SUM(SSP04), 0) SSP04,
|
||||
ISNULL(SUM(SSP05), 0) SSP05, ISNULL(SUM(SSP06), 0) SSP06, ISNULL(SUM(SSP07), 0) SSP07, ISNULL(SUM(SSP08), 0) SSP08,
|
||||
ISNULL(SUM(SSP09), 0) SSP09, ISNULL(SUM(SSP10), 0) SSP10, ISNULL(SUM(SSP11), 0) SSP11, ISNULL(SUM(SSP12), 0) SSP12,
|
||||
ISNULL(SUM(SSP13), 0) SSP13, ISNULL(SUM(SSP14), 0) SSP14, ISNULL(SUM(SSP15), 0) SSP15, ISNULL(SUM(SSP99), 0) SSP99,
|
||||
ISNULL(SUM(SSS01), 0) SSS01, ISNULL(SUM(SSS02), 0) SSS02, ISNULL(SUM(SSS03), 0) SSS03, ISNULL(SUM(SSS04), 0) SSS04,
|
||||
ISNULL(SUM(SSS05), 0) SSS05, ISNULL(SUM(SSS06), 0) SSS06, ISNULL(SUM(SSS07), 0) SSS07, ISNULL(SUM(SSS08), 0) SSS08,
|
||||
ISNULL(SUM(SSS09), 0) SSS09, ISNULL(SUM(SSS10), 0) SSS10, ISNULL(SUM(SSS11), 0) SSS11, ISNULL(SUM(SSS12), 0) SSS12,
|
||||
ISNULL(SUM(SSS13), 0) SSS13, ISNULL(SUM(SSS14), 0) SSS14, ISNULL(SUM(SSS15), 0) SSS15, ISNULL(SUM(SSS99), 0) SSS99,
|
||||
ISNULL(SUM(SSH01), 0) SSH01, ISNULL(SUM(SSH02), 0) SSH02, ISNULL(SUM(SSH03), 0) SSH03, ISNULL(SUM(SSH04), 0) SSH04,
|
||||
ISNULL(SUM(SSH05), 0) SSH05, ISNULL(SUM(SSH06), 0) SSH06, ISNULL(SUM(SSH07), 0) SSH07, ISNULL(SUM(SSH08), 0) SSH08,
|
||||
ISNULL(SUM(SSH09), 0) SSH09, ISNULL(SUM(SSH10), 0) SSH10, ISNULL(SUM(SST01), 0) SST01, ISNULL(SUM(SST02), 0) SST02,
|
||||
ISNULL(SUM(SST03), 0) SST03, ISNULL(SUM(SST04), 0) SST04, ISNULL(SUM(SST05), 0) SST05, ISNULL(SUM(SST06), 0) SST06,
|
||||
ISNULL(SUM(SST07), 0) SST07, ISNULL(SUM(SST08), 0) SST08, ISNULL(SUM(SST09), 0) SST09, ISNULL(SUM(SST10), 0) SST10,
|
||||
ISNULL(SUM(SST11), 0) SST11, ISNULL(SUM(SST12), 0) SST12, ISNULL(SUM(SST13), 0) SST13, ISNULL(SUM(SST14), 0) SST14,
|
||||
ISNULL(SUM(SST15), 0) SST15, ISNULL(SUM(SST16), 0) SST16, ISNULL(SUM(SST17), 0) SST17, ISNULL(SUM(SST18), 0) SST18,
|
||||
ISNULL(SUM(SST19), 0) SST19, ISNULL(SUM(SST20), 0) SST20, ISNULL(SUM(SST21), 0) SST21, ISNULL(SUM(SST22), 0) SST22,
|
||||
ISNULL(SUM(SST23), 0) SST23, ISNULL(SUM(SST24), 0) SST24, ISNULL(SUM(SST25), 0) SST25, ISNULL(SUM(SSL01), 0) SSL01,
|
||||
ISNULL(SUM(SSL02), 0) SSL02, ISNULL(SUM(SSL03), 0) SSL03, ISNULL(SUM(SSL04), 0) SSL04, ISNULL(SUM(SSL05), 0) SSL05,
|
||||
ISNULL(SUM(SSP06 + SSP07 + SSP08 + SSP13 + SSP14), 0) OVERWORK,
|
||||
ISNULL(SUM(SSP09 + SSP10 + SSP12), 0) OUTGOING,
|
||||
ISNULL(SUM(SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 +
|
||||
SSP13 + SSP14 + SSP15 + SSP99), 0) SSPLUS,
|
||||
ISNULL(SUM(SSS01 + SSS02 + SSS09), 0) LEAVING,
|
||||
ISNULL(SUM(SST01 + SST02 + SST03 + SST21 + SST22), 0) OVERWORKTIME,
|
||||
ISNULL(SUM((SSP00 + SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 +
|
||||
SSP13 + SSP14 + SSP15 + SSP99)
|
||||
- (SSS01 + SSS02 + SSS03 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 +
|
||||
SSS14 + SSS15 + SSS99)), 0) SSTOTAL,
|
||||
ISNULL(SUM(SSS01 + SSS02 + SSS04 + SSS05 + SSS06 + SSS07 + SSS08 + SSS09 + SSS10 + SSS11 + SSS12 + SSS13 + SSS14 +
|
||||
SSS15 + SSS99), 0) SSMINUS,
|
||||
ISNULL(SUM(SSP01 + SSP02 + SSP03 + SSP04 + SSP05 + SSP06 + SSP07 + SSP08 + SSP09 + SSP10 + SSP11 + SSP12 + SSP13 +
|
||||
SSP14 + SSP15 + SSP99), 0) TOTALPLUS,
|
||||
ISNULL(SUM(SSH01 + SSH02 + SSH03), 0) EMPLOYER
|
||||
FROM {0} A WHERE SSYMM=@SSYMM AND SSPYN=@SSPYN";
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
@@ -102,11 +66,6 @@ public partial class forms_worker_fmSendSalaryStrip : Wellan.Web.UI.WUserControl
|
||||
if (_BonusTimes == "")
|
||||
_BonusTimes = "0";
|
||||
|
||||
dsSSMS.ConnectionString = ConnectionString;
|
||||
dsSSMSSum.ConnectionString = ConnectionString;
|
||||
dsSSMS.SelectCommand = String.Format(select, _tableName) + " WHERE SSYMM=@SSYMM AND SSPYN=@SSPYN ORDER BY SSENO ";
|
||||
dsSSMSSum.SelectCommand = String.Format(selectSum, _tableName);
|
||||
|
||||
if (ForwardSource != "")
|
||||
{
|
||||
MultiView1.ActiveViewIndex = 1;
|
||||
@@ -140,10 +99,9 @@ public partial class forms_worker_fmSendSalaryStrip : Wellan.Web.UI.WUserControl
|
||||
_SSYMM = _SSYMM.AddDays(i);
|
||||
s = _SSYMM.ToString(WGuard1.InvariantCulture);
|
||||
|
||||
dsSSMS.SelectParameters.Add("SSYMM", s);
|
||||
dsSSMS.SelectParameters.Add("SSPYN", ddlSSPYN.SelectedValue);
|
||||
dsSSMSSum.SelectParameters.Add("SSYMM", s);
|
||||
dsSSMSSum.SelectParameters.Add("SSPYN", ddlSSPYN.SelectedValue);
|
||||
dsSSMS.SelectParameters["tableName"].DefaultValue = _tableName;
|
||||
dsSSMS.SelectParameters["SSYMM"].DefaultValue = s;
|
||||
dsSSMS.SelectParameters["SSPYN"].DefaultValue = ddlSSPYN.SelectedValue;
|
||||
|
||||
if (_BonusTimes == "0")
|
||||
{
|
||||
@@ -582,42 +540,42 @@ public partial class forms_worker_fmSendSalaryStrip : Wellan.Web.UI.WUserControl
|
||||
|
||||
if (e.Row.RowType == DataControlRowType.Footer)
|
||||
{
|
||||
var param = new DataSourceSelectArguments();
|
||||
var a = dsSSMSSum.Select(param) as DataView;
|
||||
DataTable a = new SsmsDAC(Query).SelectSalaryStripSum(_tableName, _SSYMM, ddlSSPYN.SelectedValue);
|
||||
DataRow ar = a.Rows[0];
|
||||
|
||||
e.Row.Cells[1].Text = "合計";
|
||||
e.Row.Cells[1].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[2].Text = string.Format("{0:###,###,##0}", a[0]["SSP00"]); // 本薪
|
||||
e.Row.Cells[2].Text = string.Format("{0:###,###,##0}", ar["SSP00"]); // 本薪
|
||||
e.Row.Cells[2].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[3].Text = string.Format("{0:###,###,##0}", a[0]["SSP01"]); // 全勤獎金
|
||||
e.Row.Cells[3].Text = string.Format("{0:###,###,##0}", ar["SSP01"]); // 全勤獎金
|
||||
e.Row.Cells[3].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[4].Text = string.Format("{0:###,###,##0}", a[0]["OVERWORK"]);
|
||||
e.Row.Cells[4].Text = string.Format("{0:###,###,##0}", ar["OVERWORK"]);
|
||||
e.Row.Cells[4].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[5].Text = string.Format("{0:###,###,##0}", a[0]["OUTGOING"]);
|
||||
e.Row.Cells[5].Text = string.Format("{0:###,###,##0}", ar["OUTGOING"]);
|
||||
e.Row.Cells[5].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[6].Text = string.Format("{0:###,###,##0}", a[0]["SSP11"]);
|
||||
e.Row.Cells[6].Text = string.Format("{0:###,###,##0}", ar["SSP11"]);
|
||||
e.Row.Cells[6].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[7].Text = string.Format("{0:###,###,##0}", a[0]["SSP02"]);
|
||||
e.Row.Cells[7].Text = string.Format("{0:###,###,##0}", ar["SSP02"]);
|
||||
e.Row.Cells[7].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[8].Text = string.Format("{0:###,###,##0}", a[0]["SSP99"]);
|
||||
e.Row.Cells[8].Text = string.Format("{0:###,###,##0}", ar["SSP99"]);
|
||||
e.Row.Cells[8].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[9].Text = string.Format("{0:###,###,##0}", a[0]["SSP03"]);
|
||||
e.Row.Cells[9].Text = string.Format("{0:###,###,##0}", ar["SSP03"]);
|
||||
e.Row.Cells[9].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[10].Text = string.Format("{0:###,###,##0}", a[0]["SSP05"]);
|
||||
e.Row.Cells[10].Text = string.Format("{0:###,###,##0}", ar["SSP05"]);
|
||||
e.Row.Cells[10].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[12].Text = string.Format("{0:###,###,##0}", a[0]["SSPLUS"]);
|
||||
e.Row.Cells[12].Text = string.Format("{0:###,###,##0}", ar["SSPLUS"]);
|
||||
e.Row.Cells[12].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[13].Text = string.Format("{0:###,###,##0}", a[0]["LEAVING"]);
|
||||
e.Row.Cells[13].Text = string.Format("{0:###,###,##0}", ar["LEAVING"]);
|
||||
e.Row.Cells[13].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[14].Text = string.Format("{0:###,###,##0}", a[0]["SSS05"]);
|
||||
e.Row.Cells[14].Text = string.Format("{0:###,###,##0}", ar["SSS05"]);
|
||||
e.Row.Cells[14].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[15].Text = string.Format("{0:###,###,##0}", a[0]["SSS04"]);
|
||||
e.Row.Cells[15].Text = string.Format("{0:###,###,##0}", ar["SSS04"]);
|
||||
e.Row.Cells[15].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[16].Text = string.Format("{0:###,###,##0}", a[0]["SSS07"]);
|
||||
e.Row.Cells[16].Text = string.Format("{0:###,###,##0}", ar["SSS07"]);
|
||||
e.Row.Cells[16].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[17].Text = string.Format("{0:###,###,##0}", a[0]["SSS06"]);
|
||||
e.Row.Cells[17].Text = string.Format("{0:###,###,##0}", ar["SSS06"]);
|
||||
e.Row.Cells[17].HorizontalAlign = HorizontalAlign.Center;
|
||||
e.Row.Cells[18].Text = string.Format("{0:###,###,##0}", a[0]["SSS99"]);
|
||||
e.Row.Cells[18].Text = string.Format("{0:###,###,##0}", ar["SSS99"]);
|
||||
e.Row.Cells[18].HorizontalAlign = HorizontalAlign.Center;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user