📄 cls_wh_salaries.asp
字号:
<%
'文件功能:wh_salaries--数据逻辑(商业层)
'编写人员:阿房
'编写时间:2003-08-22 15:08:57
'开发平台:ASP3.0 + MSSQL2000
%>
<%
Class Cls_wh_salaries
'********************************************************************************************
function SaveData(pStr_PK_salary_id, pStr_salary_date, pStr_salary_month, pStr_employee_id, pStr_salary_info1, pStr_salary_info2, pStr_salary_memo)
'功能:存储详细数据
'参数:详细数据集合
'返回:错误信息或空
dim Str_ID '系统编码
dim Str_Sql 'SQL语句
Str_ID = trim(pStr_PK_salary_id)
if isdate(pStr_salary_date) then
pStr_salary_date = "'" + FormatDate(pStr_salary_date,"yyyy-mm-dd hh:nn:ss") + "'"
else
pStr_salary_date = "null"
end if
if (Str_ID = "") then
call checksalary(pStr_salary_month,pStr_employee_id,pStr_salary_date)
Str_Sql = "insert into wh_salaries (" _
+ vbCrlf + " salary_date" _
+ vbCrlf + " ,salary_month" _
+ vbCrlf + " ,employee_id" _
+ vbCrlf + " ,salary_info1" _
+ vbCrlf + " ,salary_info2" _
+ vbCrlf + " ,salary_memo" _
+ vbCrlf + " )"
Str_Sql = Str_Sql _
+ vbCrlf + " values (" _
+ vbCrlf + " " +(pStr_salary_date) + "" _
+ vbCrlf + " ,0" + cstr(Val(pStr_salary_month)) + "" _
+ vbCrlf + " ,0" + cstr(Val(pStr_employee_id)) + "" _
+ vbCrlf + " ,'" + ConvertSql(pStr_salary_info1) + "'" _
+ vbCrlf + " ,'" + ConvertSql(pStr_salary_info2) + "'" _
+ vbCrlf + " ,'" + ConvertSql(pStr_salary_memo) + "'" _
+ vbCrlf + " )"
else
Str_Sql = "Update wh_salaries Set" _
+ vbCrlf + " salary_date=" +(pStr_salary_date) + "" _
+ vbCrlf + " ,salary_month=0" + cstr(Val(pStr_salary_month)) + "" _
+ vbCrlf + " ,employee_id=0" + cstr(Val(pStr_employee_id)) + "" _
+ vbCrlf + " ,salary_info1='" + ConvertSql(pStr_salary_info1) + "'" _
+ vbCrlf + " ,salary_info2='" + ConvertSql(pStr_salary_info2) + "'" _
+ vbCrlf + " Where salary_id='" + ConvertSql(Str_ID) + "'"
end if
'response.write str_sql
'response.end
if (not gCls_DbProcess2.ExecuteSQL(Str_Sql)) then
SaveData = GetUpdateErrMSG
else
SaveData = ""
end if
dim lr
if (Str_ID = "") then
lr="<font color=green>"&now()&"</font> <font color=blue>"&session("name")&"</font>添加<font color=blue>员工(员工ID:"&cstr(Val(pStr_employee_id))&")"&cstr(Val(pStr_salary_month))&"月份工资记录 </font> IP:<font color=red>"&REQUEST.SERVERVARIABLES("REMOTE_ADDR")&"</font>"
else
lr="<font color=green>"&now()&"</font> <font color=blue>"&session("name")&"</font>修改<font color=blue>员工(员工ID:"&cstr(Val(pStr_employee_id))&")"&cstr(Val(pStr_salary_month))&"月份工资记录 </font> IP:<font color=red>"&REQUEST.SERVERVARIABLES("REMOTE_ADDR")&"</font>"
end if
call savelog("../pub/log.htm",lr)
end function
function GetData(pStr_PK_salary_id)
'功能:读取详细数据
'参数:数据系统编码
'返回:详细数据
dim Str_Sql 'SQL语句
dim Rec_Data '结果集
Str_Sql = "select *" _
+ vbCrlf + " from wh_salaries" _
+ vbCrlf + " where salary_id = '" + ConvertSql(pStr_PK_salary_id) + "'"
'response.write str_sql
'response.end
call gCls_DbProcess2.RunSQLSearch(Str_Sql,Rec_Data)
set GetData = Rec_Data
end function
'********************************************************************************************
function SearchData(pStr_OrderBy, pStr_salary_date, pStr_salary_month, pStr_employee_id, pStr_salary_info1, pStr_salary_info2)
'功能:查询资料
'参数:查询条件
'返回:查询结果
dim Str_Sql 'SQL语句
dim Rec_Data '结果集
Str_Sql="1=1 and employee_id="&session("emp")
if isdate(pStr_salary_date) then
Str_Sql = Str_Sql + vbCrlf + " and datediff(d,salary_date,'" + FormatDate(pStr_salary_date,"yyyy-mm-dd") + "')=0"
'ACCESS
'Str_Sql = Str_Sql + vbCrlf + " and datediff('d',salary_date,'" + FormatDate(pStr_salary_date,"yyyy-mm-dd") + "')=0"
end if
if isnumeric(pStr_salary_month) then
Str_Sql=Str_Sql + vbCrlf + " and salary_month = 0" + cstr(Val(pStr_salary_month)) + ""
end if
if isnumeric(pStr_employee_id) then
Str_Sql=Str_Sql + vbCrlf + " and employee_id = 0" + cstr(Val(pStr_employee_id)) + ""
end if
if trim(pStr_salary_info1) <> "" then
Str_Sql = Str_Sql + vbCrlf + " and salary_info1 like '%" + ConvertSql(pStr_salary_info1) + "%'"
end if
if trim(pStr_salary_info2) <> "" then
Str_Sql = Str_Sql + vbCrlf + " and salary_info2 like '%" + ConvertSql(pStr_salary_info2) + "%'"
end if
'排序处理
if trim(pStr_OrderBy) = "" then
pStr_OrderBy = "salary_date"
end if
Str_Sql = "select *" _
+ vbCrlf + " from wh_salaries" _
+ vbCrlf + " where " + Str_Sql _
+ vbCrlf + " order by " + pStr_OrderBy
'response.write str_sql
'response.end
call gCls_DbProcess2.RunSQLSearch(Str_Sql,Rec_Data)
set SearchData = Rec_Data
end function
'********************************************************************************************
function DeleteData(pStr_PK_salary_id)
'功能:删除资料
'参数:系统编码集合(如 'A01','A02','A03')
'返回:错误信息或空
dim Str_ID '编码集合
dim Str_Sql 'SQL语句
Str_ID = trim(pStr_PK_salary_id)
if (Str_ID = "") then Str_ID ="''"
if IsUsed(Str_ID) then
DeleteData = GetDeleteErrMSG
exit function
end if
Str_Sql = "delete from wh_salaries" _
+ vbCrlf + " Where salary_id in (" + Str_ID + ")"
'response.write str_sql
'response.end
if (not gCls_DbProcess2.ExecuteSQL(Str_Sql)) then
DeleteData = GetDeleteErrMSG
else
DeleteData = ""
end if
dim lr
Str_ID=replace(Str_ID,"'","")
lr="<font color=green>"&now()&"</font> <font color=blue>"&session("name")&"</font>删除工资(工资ID:"&Str_ID&")</font> IP:<font color=red>"&REQUEST.SERVERVARIABLES("REMOTE_ADDR")&"</font>"
call savelog("../pub/log.htm",lr)
end function
'********************************************************************************************
function Count()
'功能:查询数据记录总数
'参数:无
'返回:记录总数
dim Rec_Data '结果集
dim Int_Count '记数
dim Str_Sql 'SQL语句
Str_Sql = "select count(*) as allcount" _
+ vbCrlf + " from wh_salaries"
'response.write str_sql
'response.end
call gCls_DbProcess2.RunSQLSearch(Str_Sql,Rec_Data)
if (Rec_Data.eof) then
Int_Count = 0
else
Int_Count = Val(Rec_Data.fields("allcount") & "")
end if
Rec_Data.close
Count = Int_Count
end function
'********************************************************************************************
function IsUsed(pStr_PK_salary_id)
'功能:数据是否已开始使用
'参数:系统编码集合
'返回:是否使用
dim Rec_Data '结果集
dim Int_Count '记数
dim Str_Sql 'SQL语句
dim Str_ID
Str_ID = trim(pStr_PK_salary_id) '编码集合
if (Str_ID = "") then Str_ID="''"
'本句需要根据实际情况进行调整
Str_Sql = "select count(*) as allcount" _
+ vbCrlf + " from wh_salaries" _
+ vbCrlf + " where 1=2"
'response.write str_sql
'response.end
call gCls_DbProcess2.RunSQLSearch(Str_Sql,Rec_Data)
if (Rec_Data.eof) then
Int_Count = 0
else
Int_Count = Val(Rec_Data.fields("allcount") & "")
end if
Rec_Data.Close
if (Int_Count>0) then
IsUsed = true
else
IsUsed = false
end if
end function
'********************************************************************************************
function IsExist(pStr_PK_salary_id)
'功能:数据是否存在
'参数:系统编码集合
'返回:是否存在
dim Rec_Data '结果集
dim Str_Data
dim Int_Count1 '记数
dim Int_Count '记数
dim Str_Sql 'SQL语句
dim Str_ID
Str_ID = trim(pStr_PK_salary_id) '编码集合
if (Str_ID = "") then Str_ID="''"
'本句需要根据实际情况进行调整
Str_Sql = "select count(*) as allcount" _
+ vbCrlf + " from wh_salaries" _
+ vbCrlf + " where salary_id in ("+Str_ID+")"
'response.write str_sql
'response.end
call gCls_DbProcess2.RunSQLSearch(Str_Sql,Rec_Data)
if (Rec_Data.eof) then
Int_Count = 0
else
Int_Count = Val(Rec_Data.fields("allcount") & "")
end if
Rec_Data.Close
Str_Data = split(cstr(Str_ID),",")
Int_Count1 = ubound(Str_Data)+1
if (Int_Count=Int_Count1) then
IsExist = true
else
IsExist = false
end if
end function
'********************************************************************************************
function exname(FileNamm) '此函数用于取出一个文件名的扩展名
dim filenama,str
filenama=filenamm
filenama=right(filenama,6)
str=instr(filenama,".")
exname=right(filenama,len(filenama)-str)
end function
function ReadText(FileName)
'这是一个用于读出文本文件的函数
dim adf,path
if UCASE(exname(filename))<>"MDB" AND UCASE(exname(filename))<>"SWF" AND UCASE(exname(filename))<>"FLA" AND UCASE(exname(filename))<>"JPG" AND UCASE(exname(filename))<>"GIF" AND UCASE(exname(filename))<>"PSD" AND UCASE(exname(filename))<>"DOC" AND UCASE(exname(filename))<>"WPS" AND UCASE(exname(filename))<>"DLL" THEN
set adf=server.CreateObject("Adodb.Stream")
if instr(filename,":\")<>0 then
path=filename
else
path=server.MapPath(FileName)
end if
with adf
'response.write path
.Type=2
.LineSeparator=13
.Open
.LoadFromFile (path)
.Charset="GB2312"
.Position=2
ReadText=.ReadText
.Cancel()
.Close()
end with
set adF=nothing
end if
end function
sub savelog(filename,lr)
'记录操作及非法日志
dim filr
filr=readtext(filename)
filr=lr&"<br>"&chr(13)&chr(10)&filr
call savetext(filename,filr)
end sub
sub SaveText(FileName,Data)
'这是一个用于写文本文件的过程
dim fs,path,ts
set fs=createobject("scripting.filesystemobject")
if instr(filename,":\")<>0 then
path=filename
else
path=server.MapPath(FileName)
end if
set ts=fs.createtextfile(path,true)
ts.writeline(data)
ts.close
set ts=nothing
set fs=nothing
end sub
function checksalary(mon,emp,dat)
'检查该月份(mon)是否已发放给该员工(emp)工资
dim conn
dim connStr
Set Conn=Server.CreateObject("ADODB.Connection")
connStr=gStr_WebDSN
Conn.Open connstr
dim sql
sql = "select * from wh_salaries where salary_month="&mon&" and employee_id="&emp&" and salary_date like '%"&year(replace(dat,"'",""))&"%'"
'response.write sql
'response.end
set rs=conn.execute(sql)
if not rs.eof then
response.redirect("../error.asp?msg=3")
response.end
end if
end function
end Class
dim mCls_wh_salaries
set mCls_wh_salaries = new Cls_wh_salaries
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -