⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 empsel.asp

📁 财务管理系统 报账等基本功能实现 有完整的实现
💻 ASP
字号:
<!--#include file="../conndb.asp"-->
<html>

<head>
<title>选择员工</title>
<link href="../style.css" rel="stylesheet">
<base target="main">
<script language="JavaScript">
function exitWindows()
{	
  var s=false;
  var EmpId, n=0,EmpName,Salary=0; 
  var nn = self.document.all.item("EmpId"); //返回复选框EmpId的数量
  for (j=0; j<nn.length; j++) {
    if (self.document.all.item("EmpId",j).checked) {
      n = n + 1;
      s = true;
      EmpId = self.document.all.item("EmpId",j).id;
      EmpName = self.document.all.item("EmpId",j).value;
      Salary = self.document.all.item("EmpId",j).title;
    }
  }
  if(n>1){
    alert("只能选择一个员工!");
    s = false;
  }
  if(n==0) {
    alert("请选择员工!");
    s = false;
  }	
  if(s){
	  opener.document.all.item("empname").value = EmpName;
	  opener.document.all.item("empid").value = EmpId;
	  window.close();
	}
}
</script>
</head>
<body topmargin="4" leftmargin="4" bgcolor="#eeeeee">
<div align="center">
<table border="0" width="80%" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">
  <tr>
    <td width="100%" height="20" align="center"><p align="left"><font color="#000080">选择员工</font></p>
    </td>
  </tr>
  <%
  '读取参数
  dim Operid,nFlag,iUpperId,Sal
  Set rs = Server.CreateObject("ADODB.RecordSet")
  Operid = Request.QueryString("cid")
  nFlag = Request.QueryString("flag")
  '如果Flag=1表示选择二级部门,则提取此二级部门的上级部门编号
  If CInt(nFlag)=1 Then
    sql = "SELECT * FROM Departments WHERE DepId=" & CInt(Operid)
    Set rs = Conn.Execute(sql)
    iUpperId = rs("UpperId")  '读取上级部门编号
  End If
  Set rs = Nothing
  Set rs = Server.CreateObject("ADODB.RecordSet")
  '读取一级部门数据到记录集rs中
  sql = "SELECT * FROM Departments WHERE UpperId=0 ORDER BY DepId"
  rs.Open sql, conn, 1, 1
  If rs.EOF Then
    '如果记录集为空,则显示“目前还没有记录”
    Response.Write "<tr><td align=center><font style='COLOR:Red'>目前还没有记录。</font></td></tr></table>"
  Else
    '在表格中显示部门名称
    Do While Not rs.EOF
      '判断此部门是否包含下级部门
      Set RsSub = Server.CreateObject("ADODB.RecordSet")
      sqlSub = "SELECT * FROM Departments WHERE UpperId=" & rs("DepId")
      Set RsSub = Conn.Execute(sqlSub)
      If RsSub.EOF Then '如果没有下级部门
%>
  <tr>
    <td width="100%" align="left"><a href="EmpSel.asp?cid=<%=rs("DepId")%>&flag=0" target="_self"><%=rs("DepName")%></a></td>
  </tr>
<%
        If rs("DepId")=CInt(Operid) And CInt(nFlag)=0 Then
          '列出此部门所有员工
          Set RsEmp = Server.CreateObject("ADODB.RecordSet")
          sqlEmp = "SELECT * FROM Employees WHERE DepId=" & rs("DepId") & " ORDER BY EmpId"
          RsEmp.Open sqlEmp,conn,1,3
          Do While Not RsEmp.EOF 
            If IsNull(RsEmp("Salary")) Then
              Sal = 0
            Else
              Sal = RsEmp("Salary")
            End If
        %>
   <tr>
    <td width="100%" align="left">&nbsp;&nbsp;|--<%=RsEmp("EmpName")%>
    &nbsp;&nbsp;<input type="checkbox" name="EmpId" id="<%=RsEmp("EmpId")%>" value="<%=RsEmp("EmpName")%>" title="<%=Sal%>"></td>
  </tr>      
       
        <%
            RsEmp.MoveNext()
          Loop
        End If
      Else  ' 如果存在下级部门
 %>
  <tr>
    <td width="100%" align="left"><a href="EmpSel.asp?cid=<%=rs("DepId")%>&flag=0" target="_self"><%=rs("DepName")%></a></td>
  </tr>
<%
        If rs("DepId")=iUpperId Or (rs("DepId")=CInt(Operid) And CInt(nFlag)=0) Then  '显示二级部门信息
          If rs("DepId")=CInt(Operid) And CInt(nFlag)=0 Then
            sql1 = "SELECT * FROM Departments WHERE UpperId=" & Operid & " ORDER BY DepId"
          Else
            sql1 = "SELECT * FROM Departments WHERE UpperId=" & iUpperId & " ORDER BY DepId"
          End If
          Set Rsdep = Server.CreateObject("ADODB.RecordSet")
          '读取此部门下所有部门信息
'          Response.Write sql1
          Rsdep.Open sql1, conn,1,4
          Do While Not Rsdep.EOF 
            
%>
  <tr>
    <td width="100%" align="left">|--<a href="EmpSel.asp?cid=<%=Rsdep("DepId")%>&flag=1" target="_self"><%=Rsdep("DepName")%></a></td>
  </tr>      
        <%  If Rsdep("DepId")=CInt(Operid) Then
              '列出此部门所有员工
              Set RsEmp = Server.CreateObject("ADODB.RecordSet")
              sqlEmp = "SELECT * FROM Employees WHERE DepId=" & Rsdep("DepId") & " ORDER BY EmpId"
     '         Response.Write sqlEmp
              RsEmp.Open sqlEmp,conn,1,3
              Do While Not RsEmp.EOF 
                If IsNull(RsEmp("Salary")) Then
                  Sal = 0
                Else
                  Sal = RsEmp("Salary")
                End If
        %>
   <tr>
    <td width="100%" align="left">&nbsp;&nbsp;|--<%=RsEmp("EmpName")%>
    &nbsp;&nbsp;<input type="checkbox" name="EmpId" id="<%=RsEmp("EmpId")%>" value="<%=RsEmp("EmpName")%>" title="<%=Sal%>"></td>
  </tr>      
       
        <%
                RsEmp.MoveNext()
              Loop
            End If
            Rsdep.MoveNext()
          Loop      
        End If
        Set Rsdep = Nothing
      End If
      rs.MoveNext()
    Loop
   End If
%>
  <tr>
    <td width="100%" height="14"><input type="hidden" name="EmpId" ></td>
  </tr>
  <tr>
    <td width="100%" height="14">
      <p align="center"><font color="#0000FF">
      <input type="button" value="选  择" name="Sel" onclick="exitWindows()">&nbsp;&nbsp;
      <input type="button" value="关  闭"  onclick="window.close()" name="Dpch"></td>
  </tr>
</table>
</div>
</body>

</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -