1.���ڹ���Դ��
2.急求pb考勤管理系统(pb+access)论文
3.考勤管理系统
4.对生物识别考勤机的考勤考勤一次简单渗透
���ڹ���Դ��
传统的定制开发是找其他人弄,其实利用华创信息管理平台也可以自己搭建,管理管理就不用求别人了,源码源码而且自己可根据需要随时调。考勤考勤
该平台是管理管理一款综合性的信息管理软件,面向非专业人士,源码源码网易cc源码无需编程,考勤考勤能让用户自由建表、管理管理自定义字段,源码源码因此能管理各种数据。考勤考勤对你来说,管理管理在平台里把人力资源管理所要的源码源码表格建起来,再设置登录帐号及权限,考勤考勤大家就可录入数据、管理管理共享数据了。源码源码比如,员工信息表、薪资信息表、考勤信息表...等等。至于操作界面、数据存储等细节由平台自动完成。
给个实例截图,是Text源码上海一家公司利用它做的人力资源管理,供你参考:
其它几个功能对你也可能有用:
●支持多用户同时访问,具有完善的权限,各类人员的增删改及查看权均可详细控制;
●具有自动提醒功能,可用于合同到期提醒、薪资发放提醒等;
●可自由设置各种计算公式,可按照自己计算方式计算各薪资项目、社保金额等。
●支持excel数据的导入导出,现有的数据无需再次输入,可直接导入到本系统中。
希望对你有帮助。
急求pb考勤管理系统(pb+access)论文
文字自己想办法
一:变量说明
1:application :
test
2:窗体
login:登陆窗口
w_main:考勤管理系统的主界面,选择操作
w_chuli:个人考勤记录处理
w_shengding:缺勤类型设定
w_tongji:员工考勤统计
w_yuangong:员工基本信息
3:数据窗口
dw_chuli1:个人考勤记录处理
dw_shengding:缺勤类型设定
dw_chuli:员工考勤统计
w_yuangong:员工基本信息
二:函数说明
一:application test中的函数
1. 函数名:test::open( )
作用:将test这个数据库注册为当前机器的用户的数据源
代码:
String ls_odbc //数据库名
String currdir = Space(), key//数据库“test”的完整路径
Environment env
string gs_currdir = GetCurrentDirectory()//得到运行程序的当前路径
GetEnvironment(env)
ls_odbc = "test"//数据库名为“test”
currdir=GetCurrentDirectory() + "\" + ls_odbc + ".mdb"//当前运行程序路径加上数据库名就是数据库“test”的完整路径
RegistryGet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources", ls_odbc, RegString!, key)
if key="" then
CHOOSE CASE env.OSType//判断操作系统的类型,注册响应的数据源的驱动
CASE Windows!//为Windows
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources", ls_odbc, RegString!, "Microsoft Access Driver (*.mdb)")
CASE WindowsNT!//为WindowsNT
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\ODBC Data Sources", ls_odbc, RegString!, "Driver do Microsoft Access (*.mdb)")
CASE ELSE
END CHOOSE
// 将数据库test注册为用户的数据源
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "", RegString!, "")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "DBQ", RegString!, "" + currdir )
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "Driver", RegString!, "odbcjt.dll")
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "DriverId" , ReguLong!, )
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "FIL" , RegString!, "MS Access;" )
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "SafeTransactions", RegString!, "0" )
RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI\" + ls_odbc, "UID" , RegString!, "" )
end if
open(login)// 打开登陆窗口
二:登陆窗口中的函数
1:函数名:login.open()
作用:连接到本机器数据源为test的数据库
代码:
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=test;UID=;PWD='"
connect;
if sqlca.sqlcode<>0 then
Messagebox("错误!,无法连接数据库:",sqlca.sqlerrtext)
halt close
end if
2:函数名:cb1。Clicked() 即点击登陆按钮的事件
作用:当用户输入帐号和密码后,判断是否在“操作员表”中 ,存在就打开考勤管理系统主界面
代码:
//定义两个变量
string password,usename
// 数据库连接参数
//检索用户名和密码记录
SELECT 操作员表.用户名,
操作员表.密码
INTO :usename,
:password
FROM 操作员表
WHERE 操作员表.用户名 = :sle_1.text ;
//判断用户输入的用户名是否正确
if sle_1.text="" or sle_2.text="" then
messagebox("错误!","用户名或密码不能为空!",exclamation!,ok!,2)
else
if usename=sle_1.text and password=sle_2.text then
messagebox("通过验证!","用户名和密码正确,欢迎您使用本系统!",netflow源码Information!,ok!,2)
open(w_main)// 打开考勤管理系统主界面
close(parent)
else
messagebox("错误!","用户名或密码错误,请重新输入!",exclamation!,ok!,2)
end if
end if
3:函数名:cb2。Clicked() 即点击取消按钮的事件
作用:关闭窗口
代码:
close(parent)
二:主窗口中的函数
1:函数名:rb_1。Clicked()
作用:关闭当前窗口,打开员工基本信息窗口
代码:open(w_yuangong)
close(parent)
2:函数名:rb_2。Clicked()
作用:关闭当前窗口,打开考勤信息处理窗口
代码:open(w_chuli)
close(parent)
3:函数名:rb_3。Clicked()
作用:关闭当前窗口,打开缺勤类型设定窗口
代码:open(w_shengding)
close(parent)
4:函数名:rb_4。Clicked()
作用:关闭当前窗口,打开员工考勤统计窗口
代码:open(w_tongji)
close(parent)
5:函数名:pb_1。Clicked()
作用:关闭当前窗口
代码:close(parent)
三:考勤信息处理窗口中的函数
1:函数名:open( )
作用:将数据窗口和数据库连接,并且显示数据库存在的数据
代码:dw_1.settransobject(sqlca)
dw_1.retrieve()
2:函数名:pb_1。Clicked()
作用:插入一条新记录
代码:dw_1.insertrow(0)
3:函数名:pb_2。Clicked()
作用:删除一条当前记录
代码:dw_1.deleterow(0)
4:函数名:pb_3。Clicked()
作用:向数据库提交插入,删除和修改的操作,如果成功就发到数据库
代码:
integer returncode
returncode=dw_1.update()
if returncode>0 then
commit using sqlca;
else
rollback using sqlca;
end if
4:函数名:pb_4。Clicked()
作用:关闭当前窗口,回到主界面
代码:
open(w_main)
close(parent)
四:缺勤类型设定窗口中的函数
1:函数名:open( )
作用:将数据窗口和数据库连接,并且显示数据库存在的OTAKU源码数据
代码:dw_1.settransobject(sqlca)
dw_1.retrieve()
2:函数名:pb_1。Clicked()
作用:插入一条新记录
代码:dw_1.insertrow(0)
3:函数名:pb_2。Clicked()
作用:删除一条当前记录
代码:dw_1.deleterow(0)
4:函数名:pb_3。Clicked()
作用:向数据库提交插入,删除和修改的操作,如果成功就发到数据库
代码:
integer returncode
returncode=dw_1.update()
if returncode>0 then
commit using sqlca;
else
rollback using sqlca;
end if
4:函数名:pb_4。Clicked()
作用:关闭当前窗口,回到主界面
代码:
open(w_main)
close(parent)
五:员工基本信息窗口中的函数
1:函数名:open( )
作用:将数据窗口和数据库连接,并且显示数据库存在的数据
代码:dw_1.settransobject(sqlca)
dw_1.retrieve()
2:函数名:pb_1。Clicked()
作用:插入一条新记录
代码:dw_1.insertrow(0)
3:函数名:pb_2。Clicked()
作用:删除一条当前记录
代码:dw_1.deleterow(0)
4:函数名:pb_3。Clicked()
作用:向数据库提交插入,删除和修改的操作,如果成功就发到数据库
代码:
integer returncode
returncode=dw_1.update()
if returncode>0 then
commit using sqlca;
else
rollback using sqlca;
end if
4:函数名:pb_4。Clicked()
作用:关闭当前窗口,回到主界面
代码:
open(w_main)
close(parent)
六:员工考勤统计窗口中的函数
1:函数名:open( )
作用:将数据窗口和数据库连接,并且显示数据库存在的数据
代码:dw_1.settransobject(sqlca)
dw_1.retrieve()
2:函数名:ddlb_1。Selectchange()
作用: 改变数据窗口中数据的大小
代码:dw_1.modify('DataWindow.Zoom = '+ trim(ddlb_1.text))
3:函数名:cb1。Clicked()
作用: 回到数据窗口中上一页
代码:dw_1.scrollpriorpage()
4:函数名:cb2。Clicked()
作用: 回到数据窗口中下一页
代码:dw_1.scrollnextpage()
5:函数名:cb3。Clicked()
作用: 打印数据窗口
代码:dw_1.print()
6:函数名:cb4。Clicked()
作用: 打印设置
代码:printsetup()
7:函数名:cb5。Clicked()
作用: 打印预览
代码:
dw_1.Modify("DataWindow.Print.Orientation = '1'") //横向
dw_1.Modify("DataWindow.Print.Orientation = '2'") //纵向
dw_1.Modify("DataWindow.Print.Preview = yes")
dw_1.Modify("DataWindow.Print.Preview.Rulers = yes")
dw_1.modify('DataWindow.Print.Preview.Zoom = '+ trim(ddlb_1.text))
8:函数名:cb5。Hectorslam源码Clicked()
作用: 打印预览
9:函数名:ddlb_2。Selectchange()
作用: 改变打印预览窗口的大小
代码:
dw_1.modify('DataWindow.Print.Preview.Zoom = '+ trim(ddlb_2.text))
:函数名:cb6。Clicked()
作用: 将数据窗口中的数据保存为表格形式的文件
代码:string ls_path, ls_file
int li_rc
ls_path = sle_1.Text
li_rc = GetFileSaveName ( "Select File", ls_path, ls_file, "xls", "*.xls,*.xls" )
//得到路径名
IF li_rc = 1 Then
OLEObject ole_object , ole_workbooks
ole_object = CREATE OLEObject
//创建Excel对象
IF ole_object.ConnectToNewObject("Excel.Application") <> 0 THEN
MessageBox('OLE错误','OLE无法连接!')
return
END IF
ole_object.workbooks.add
ole_object.Visible = True
ole_workbooks = ole_object.Worksheets(1)
ole_workbooks.cells(1,1).value="员工号"
ole_workbooks.cells(1,2).value="时间"
ole_workbooks.cells(1,3).value="天数"
ole_workbooks.cells(1,4).value="类型"
ole_workbooks.cells(1,5).value="原因"
long l_row
for l_row = 2 to dw_1.rowcount()+1
ole_workbooks.cells(l_row,1).value=dw_1.getitemstring(l_row - 1,1)
ole_workbooks.cells(l_row,2).value=dw_1.getitemstring(l_row - 1,2)
ole_workbooks.cells(l_row,3).value=dw_1.getitemstring(l_row - 1,3)
ole_workbooks.cells(l_row,4).value=dw_1.getitemstring(l_row - 1,4)
ole_workbooks.cells(l_row,5).value=dw_1.getitemstring(l_row - 1,5)
next
ole_workbooks.SaveAs ( ls_path)
ole_object.quit()
Ole_Object.DisConnectObject()
Destroy Ole_Object
destroy ole_workbooks
messagebox("!","文件保存到"+ ls_path)
End If
:函数名:sel。modify()
作用: 将数据窗口中的数据按输入的员工号显示
代码:
string emp_no
string condition
if sle_1.text <> "" then
emp_no=trim(sle_1.text)
condition="emp_no="+"'"+ emp_no+"'"
dw_1.setfilter( condition)
filter(dw_1)
dw_1.retrieve()
end if
考勤管理系统
考勤系统,在包含薪资计算模块的情况下,可以灵活定义各个工资项目的计算公式,自动调用员工的出勤数据、人员资料、就餐等与工资相关的数据,计算出员工的工资情况,可提供银行代发工资所需的相关文件。同时提供丰富的统计分析报表,可即时掌握企业工资支出情况。
RQHR基于拥有自主版权的RQBuilder开发平台开发,它具有鲜明的技术特点及众多成熟的解决方案。
1. 真正在线式二次开发,面向对象的脚本语言,可视化开发环境,功能可无限扩充,客户可轻松摆脱对源代码的依赖;
2. 系统界面可自由定义,界面布局大方得体,操作方式全面符合Windows标准,操作灵活方便;
3. C/S体系架构, 具有强大的SQL Sever数据库管理功能;可以控制管理数据库, 表,索引,触发器,规则约束及存储过程等,我们提供的RQHR系统标准数据库具有详尽的数据完整性约束,杜绝非法数据进入系统。
4. 整个系统中所有的繁杂的计算工作全部交由SQL Server后台计算。
5. 多语言支持,自适应简体、繁体及英文操作系统等;
6. 录入资料方便快捷,全面支持批量录入资料;
7. 自定义的界面, 实现个性化的操作向导, 动态切换操作风格以满足不同的需求
8. 自定义的功能模块, 添加新的模块控制极为轻松愉快;
9. 自定义的报表与统计图,可对报表数据进行动态变换, 统计分析以及作图形输出;
. 自定义的代码表,使用各种人事资料的录入更为轻松;
. 强大快捷的动态化查询无处不在,自动保存历史查询,众多友好的操作向导;
. 所有的数据都可与Excel, Access等数据作双向导入导出;
. 全面严谨的系统权限及安全控制,审核机制完善;
. 支持多个帐套,可以动态切换帐套,方便集团化的企业管理。
. 万能适应各种人力资源管理模式,快速上线,可维护性很好;
. 全面支持无限层次的部门组织架构,可快速对任一层的数据进行统计报表
. 对各种人事资料进行分析、统计、预警;
. 全面、精确、快捷的考勤分析,包罗万象的上班模式,大大简化考勤效率;
. 考勤单据的录入全面支持人个,群组录入及反录入,大幅提升工作效率。
. 考勤规则全面,深入,细致,体贴。
. 自定义工资表,工资项目计算方法及形形色色的工资报表;
. 方便的厂牌、工卡制作,万能挂接各型号的刷卡机器;
. 考勤、就餐、门禁一卡通,支持IC卡消费卡模式;
. 自定义的统计结算周期
. 无限层次的组织架构图
. 工号,卡号的变更处理
. 照片的显示及打印处理
. 培训,绩效与考核的管理
. 动态的异动、离职资料处理方案
. 新员工的自动转正及定期调薪的处理方案
. 待聘员工资料库的管理
. 人才储备资料库的管理
. 工号变更,部门变更及离职对汇总报表影响的解决方案
. 薪资异动对薪资计算的影响解决方案
. 计件计时异动对考勤、薪资计算的影响解决方案
. 部门异动对考勤、薪资计算的影响解决方案
. 实时可靠采集刷卡数据的方案
. 累计项目(如按金,积假,年休)的薪资自动设置
. 超长时间上下班打卡的可靠解决方案
. 电脑自动化排班或不排班的解决方案
. 各种模式的轮班解决方案
. 无限制的加班类别及请假类别
. 动态的班别(如大夜班,小夜班等)的算法定义
. 对劳动法规的合理解决方案
. 薪资发放报表所需各种货币的数据报表
. 对薪资尾数的处理方案
. 自定义的个人所得税税率
. 多供应商的就餐汇总
. 可选的界面风格,报表风格
. 其它的子系统的如图书管理,水电管理,宿舍管理,停车管理,巡更管理等
对生物识别考勤机的一次简单渗透
在一次常规的红队行动中,我获得了客户授权,对一个基于生物信息的考勤设备进行渗透。设备用于日常考勤与特殊房间人员控制。尽管此前未接触该品牌机器,但通过初步检测,我成功掌握了其控制权。
设备运行于同一网络,已知其IP地址。使用nmap扫描后发现,设备开放了telnet和web服务。攻击策略主要围绕这两点展开,但telnet服务未暴露详细信息。转而关注Web服务,发现其为ZK Web Server 3.0。
深入了解后,发现Web服务存在大量漏洞,如访问控制缺失、会话固定与易受暴力破解。关键漏洞在于默认凭证(administrator:),借此我以管理员身份登录设备。
进入备份设备数据页面,发现数据可直接访问,无需身份验证。通过下载.dat文件,获取包含敏感信息的ZKConfig.cfg文件。以root身份登录telnet服务,检索系统文件,发现固件已被解压。
将文件系统挂载至本地机器,分析所有文件,发现webserver源代码,可用于深入研究。敏感数据包括所有用户照片与SQLite数据库记录的身份凭证、指纹等生物信息。利用这些信息,我可以修改数据库,赋予任意用户特殊房间访问权限。
进一步使用Firmwalker提取固件中敏感信息,了解设备数据备份至云服务器的机制。尽管未深入云主机渗透测试,但设备安全问题明显,配置缺陷使任何人都能通过简单漏洞获取敏感数据并完全控制。
结论是,物联网设备如考勤机常存在配置问题,易被利用。安全防护任重道远。本文由白帽汇整理翻译,不代表白帽汇立场。