目的:V80202L – 工單資料查詢 – [SAP單況比對] – 依[工號]排序 ,- Sort - datatable
處理說明: 1>datatable 依 [工號]排序
dt1.DefaultView.Sort = "SAPNO";
dt1 = dt1.DefaultView.ToTable();
dt1.DefaultView.Sort = "SAPNO";
dt1 = dt1.DefaultView.ToTable();
for (var i = 0; i < dt1.Rows.Count; i++)
1>*.js
dt1.DefaultView.Sort = "SAPNO";
dt1 = dt1.DefaultView.ToTable();
string Tmp_old_SAPNO="";
int Tmp_row = 0;
for (var i = 0; i < dt1.Rows.Count; i++)
{
Tmp_SAPNO = dt1.Rows[i]["SAPNO"].ToString();
if (Tmp_SAPNO == "TEST")
Tmp_SAPNO = "TEST";
if (Tmp_old_SAPNO == Tmp_SAPNO)
continue;
Tmp_SAPNO1 = myfunc.get_SAPNO(Tmp_SAPNO);
Tmp_Sql =" SELECT b.AUFNR,UDATE ,UTIME,USNAM,STAT "
+" FROM SAPR3.JCDS@SAP a,SAPR3.AUFK@SAP b "
+" WHERE a.MANDT = '999' "
+" AND b.MANDT = '999' "
+" AND a.INACT = ' ' "
+" AND a.OBJNR = b.OBJNR "
+" AND b.AUFNR ="+ myfunc.AA(Tmp_SAPNO1)
+" ORDER BY AUFNR,UDATE ,UTIME ,STAT ";
dt2 = myfunc.SqlOpen(dt2, Tmp_Sql);
for (var j = 0; j < dt2.Rows.Count; j++)
{
Tmp_row = Tmp_row + 1;
//string Tmp_SAPNO,Tmp_UDATE,Tmp_UTIME,Tmp_UDID,Tmp_STAT;
Tmp_UDATE = dt2.Rows[j]["UDATE"].ToString();
Tmp_UTIME = dt2.Rows[j]["UTIME"].ToString();
Tmp_UDID = dt2.Rows[j]["USNAM"].ToString();
Tmp_SAPSTAT = dt2.Rows[j]["STAT"].ToString();
//單況說明
Tmp_Sql = " SELECT TXT04, TXT30 "
+ " FROM SAPR3.TJ02T @SAP d "
+ " WHERE 1 = 1 "
+ " AND SPRAS = 'M' "
+ " AND ISTAT =" + myfunc.AA(Tmp_SAPSTAT);
Tmp_Str = myfunc.SqlValue(Tmp_Sql);
Tmp_TXT04 = myfunc.StrExtract(Tmp_Str, 1, ";");
Tmp_TXT30 = myfunc.StrExtract(Tmp_Str, 2, ";");
ws1.Range[myfunc.GetExcelPos(0, Tmp_row)].Text = Tmp_SAPNO;
ws1.Range[myfunc.GetExcelPos(1, Tmp_row)].Text = Tmp_UDATE;
ws1.Range[myfunc.GetExcelPos(2, Tmp_row)].Text = Tmp_UTIME;
ws1.Range[myfunc.GetExcelPos(3, Tmp_row)].Text = Tmp_UDID;
ws1.Range[myfunc.GetExcelPos(4, Tmp_row)].Text = Tmp_SAPSTAT;
ws1.Range[myfunc.GetExcelPos(5, Tmp_row)].Text = Tmp_TXT04;
ws1.Range[myfunc.GetExcelPos(6, Tmp_row)].Text = Tmp_TXT30;
}; //end of for (var j = 0; j < dt2.Rows.Count; i++)
Tmp_old_SAPNO = Tmp_SAPNO;
} //end of for (var i = 0; i < dt1.Rows.Count; j++)
wk.ActiveSheetIndex = 0;
wk.SaveToStream(mstream, FileFormat.Version2007);
wk.SaveToFile(FileName1, FileFormat.Version2007);
dt1 = dt1.DefaultView.ToTable();
string Tmp_old_SAPNO="";
int Tmp_row = 0;
for (var i = 0; i < dt1.Rows.Count; i++)
{
Tmp_SAPNO = dt1.Rows[i]["SAPNO"].ToString();
if (Tmp_SAPNO == "TEST")
Tmp_SAPNO = "TEST";
if (Tmp_old_SAPNO == Tmp_SAPNO)
continue;
Tmp_SAPNO1 = myfunc.get_SAPNO(Tmp_SAPNO);
Tmp_Sql =" SELECT b.AUFNR,UDATE ,UTIME,USNAM,STAT "
+" FROM SAPR3.JCDS@SAP a,SAPR3.AUFK@SAP b "
+" WHERE a.MANDT = '999' "
+" AND b.MANDT = '999' "
+" AND a.INACT = ' ' "
+" AND a.OBJNR = b.OBJNR "
+" AND b.AUFNR ="+ myfunc.AA(Tmp_SAPNO1)
+" ORDER BY AUFNR,UDATE ,UTIME ,STAT ";
dt2 = myfunc.SqlOpen(dt2, Tmp_Sql);
for (var j = 0; j < dt2.Rows.Count; j++)
{
Tmp_row = Tmp_row + 1;
//string Tmp_SAPNO,Tmp_UDATE,Tmp_UTIME,Tmp_UDID,Tmp_STAT;
Tmp_UDATE = dt2.Rows[j]["UDATE"].ToString();
Tmp_UTIME = dt2.Rows[j]["UTIME"].ToString();
Tmp_UDID = dt2.Rows[j]["USNAM"].ToString();
Tmp_SAPSTAT = dt2.Rows[j]["STAT"].ToString();
//單況說明
Tmp_Sql = " SELECT TXT04, TXT30 "
+ " FROM SAPR3.TJ02T @SAP d "
+ " WHERE 1 = 1 "
+ " AND SPRAS = 'M' "
+ " AND ISTAT =" + myfunc.AA(Tmp_SAPSTAT);
Tmp_Str = myfunc.SqlValue(Tmp_Sql);
Tmp_TXT04 = myfunc.StrExtract(Tmp_Str, 1, ";");
Tmp_TXT30 = myfunc.StrExtract(Tmp_Str, 2, ";");
ws1.Range[myfunc.GetExcelPos(0, Tmp_row)].Text = Tmp_SAPNO;
ws1.Range[myfunc.GetExcelPos(1, Tmp_row)].Text = Tmp_UDATE;
ws1.Range[myfunc.GetExcelPos(2, Tmp_row)].Text = Tmp_UTIME;
ws1.Range[myfunc.GetExcelPos(3, Tmp_row)].Text = Tmp_UDID;
ws1.Range[myfunc.GetExcelPos(4, Tmp_row)].Text = Tmp_SAPSTAT;
ws1.Range[myfunc.GetExcelPos(5, Tmp_row)].Text = Tmp_TXT04;
ws1.Range[myfunc.GetExcelPos(6, Tmp_row)].Text = Tmp_TXT30;
}; //end of for (var j = 0; j < dt2.Rows.Count; i++)
Tmp_old_SAPNO = Tmp_SAPNO;
} //end of for (var i = 0; i < dt1.Rows.Count; j++)
wk.ActiveSheetIndex = 0;
wk.SaveToStream(mstream, FileFormat.Version2007);
wk.SaveToFile(FileName1, FileFormat.Version2007);
沒有留言:
張貼留言