学校工资管理系统程序设计
薪酬体系设计的步骤

薪酬体系设计的步骤步骤一:工作评价。
工作评价是薪酬体系设计的起点。
工作评价的目的是决定出每一工作相对于同一组织中其他工作而言,对组织的相对价值的大小。
工作评价过程的结果是得到一个工作等级一一从组织中具有最高价值的工作到最低价值的工作的一个严格的等级排序。
工作评价的计点法不仅可以确认工作之间的等级次序,而且还能提供每个工作的量化的价值,从而为薪酬体系设计者提供了工作之间的相对价值差距的数据。
例如,初级会计工作被评价为230点,而初级记账工作只被评价为185点,那么,初级会计工作对组织的价值就被认为比初级记账工作的价值要高。
但是,记账工作评价的点值和会计工作十分接近。
出于实际应用的目的,这两个工作可能被归入同一工资等级中。
工资等级被定义为从最低到最高的工作评价点值。
在这个例子中,被评价为150点到250点的工作都被分到同一个工资等级中。
每一个工资等级最终又被分配给一个工资范围(最高工资到最低工资)。
我们选择工作评价的计点法作为薪酬体系设计的起点,主要基于以下几个方面的原因。
第一,它是在美国最为通用的工作评价方法。
第二,经过数十年的研究,它已经建立起了一套有效度和信度的评价系统。
第三,在各种工作评价方法中,计点法能最好地解释评价工作的内在价值的逻辑。
通过学习这种方法,你能够很容易精通其他的适用于不同条件的工作评价方法。
并且,计点法对于通过薪资调查数据的引入将内部市场与外部市场联系起来有着特别的用处。
步骤二:工资调查分析。
工资调查分析是薪酬体系设计的第二步。
其目的是决定在相关的产品市场和劳动力市场上,其他组织对类似的工作支付了多少工资。
这一分析的结果是得出工资政策线。
它表达了工作评价点值(内部的工作价值)和市场工资(外部的工作价值)之间的简单的线性关系。
一旦工作等级建立起来以后,下一步就是要确定关键工作。
关键工作就是组织中能够直接与外部市场工作进行比较的工作。
这些工作的内容是相对稳定的,与其他组织中的工作是类似的。
工资管理信息系统设计

工资管理信息系统设计GL990525 彭卫兵一、可行性分析1.技术可行性:工资管理是一项琐碎、复杂而又十分细致的工作,不能发生差错,由于考虑到手工计算十分麻烦,又因为工资的发放必须按照规定的时间严格地进行;并且工资的发放具有重复性、规律性、时间性的特点,使工资的计算和发放采用计算机成为可能。
2.经济可行性:在手工的方式下,工资发放的反复抄写、计算、核对,不仅大量地花费时间,还很容易发生错误。
在计算机方式下,工资的发放与计算由计算机进行,大大提高了工资管理的时间性与准确性,工资管理的效率得到很大的提高。
计算机的核算具有相当的准确性,有利于企业及时地处理内部的成本、财务问题,提高本企业的劳动生产率和管理效率。
3.社会可行性:本次工资管理信息系统设计得到了领导和广大员工的支持,投入资金贰万元,为公司创建一个有效的工资管理系统。
二、数据分析本次工资管理信息系统设计的数据分析包括数据流程图和数据字典。
数据流程图用来描述本系统的处理过程和数据流向。
数据字典则用来描述系统中的元素。
二者都能为系统提供有用的信息。
三、功能模块设计本次工资管理信息系统设计的功能模块包括初始处理、工资核算、信息查询、统计分析、报表输出、系统维护、帮助、退出八项。
具体功能模块结构如下图:代码设计对管理信息系统是一个非常有利的事情,设计出一个好的代码方案对于系统内的许多机器处理变得十分的方便,不仅能提高数据维护、查询统计的及时性与准确性,还能把现阶段的一些计算机很难处理的工作变得简单的处理。
根据代码设计的原则,进行本次代码设计。
具体内容如下:1.性别:其中1代表性别,001表示男002表示女1001 男1002 女2.民族:其中2代表民族,001表示汉族,002表示少数民族2001 汉族2002少数民族3.文化程度:3表示文化程度,根据文化程度的高低依次排列3001文盲3002 小学3003初中3004中专3005 高中3006大专3007 大本3008硕士3009博士3010博士后4.技术职务:其中4表示技术职务,根据职务高低依次排列。
工资管理信息系统的分析与设计

目录1 绪论 ................................................................................................................. 错误!未定义书签。
1.1选题背景..............................................................................................................错误!未定义书签。
1。
2研究进展...........................................................................................................错误!未定义书签。
1.3研究目的和意义..................................................................................................错误!未定义书签。
2 系统规划 .......................................................................................................... 错误!未定义书签。
2.1可行性分析..........................................................................................................错误!未定义书签。
2.1。
1经济可行性....................................................................................................错误!未定义书签。
工资系统主要操作流程指南

系统主要操作流程指南当您第一次进入本工资管理系统,开始对本单位的人员和工资信息进行录入操作和日常管理时,您可按照下列流程进行。
一、进入系统运行《财政工资统一发放系统(单位版)》,如同运行其它应用软件一样,非常简单:单击“开始”,打开“程序”组,选择“财政工资统一发放系统(单位版)”项,然后单击图标,即开始运行,进入系统的登录窗口。
二、创建套帐一个账套组成一个单位的人事、工资数据系统。
本系统支持多套账的管理,这意味着本系统可以管理多个单位的人事、工资数据。
如果单位需要建立新的套账就单击“建套账”按钮。
并且可以在“系统管理”中“建立单位铺帐”,“整理套帐”是对套帐进行管理,可以对主、辅套帐进行删除。
三、获取基础数据获取基础数据包括导入系统编码表、导入数据结构文件、导入财政对单位数据和导入单位对单位的数据。
导入由财政部门提供的系统编码表、数据结构文件和财政对单位数据。
为设置单位信息、部门信息、设置人员档案、工资变动等提供原始的数据字典。
注意:只有在读入数据结构文件后,系统才能开始正常工作。
此操作一般只进行一次,在系统数据结构没有变化时可不再进行。
但当系统被初始化或单位信息因误操作而被修改时除外。
导入单位对单位的数据的目的:单位向财政上报单位数据,财政部门对该单位上报的单位数据进行审核,当财政部门在对该单位数据审核过程中发现不合理的数据时,而这时,某些单位上报人员不方便返回本单位进行修改数据,这种情况下,该单位上报人员就可以在财政部门特设的客户机上,通过“导入单位对单位的数据”对单位数据进行修改,修改完毕后,直接再上报给财政部门。
导入系统编码表:系统编码表是本系统首次使用时所必须的基础编码数据.对应的文件名称:CODE.ARJ(编码表)。
导入数据结构文件:数据结构文件是本系统首次使用时所必须的基础数据结构.对应文件名称:DWJG_单位编码.ARJ(单位结构_单位编码)。
导入财政对单位数据:导入财政对单位数据是从财政系统导出给单位的基础数据.对应文件名称:DWSJ_单位编码.ARJ(单位数据_单位编码)。
VFP程序设计工资管理系统

VFP程序设计工资管理系统首先,我们需要明确工资管理系统的需求和功能。
一个典型的工资管理系统应该包括以下功能:1.员工基本信息管理:包括员工姓名、工号、部门、岗位等基本信息的录入和修改功能;2.工资计算:根据员工的基本工资、绩效和奖金等因素,计算每个员工的实际工资;3.工资发放:记录每个员工的工资发放情况,包括发放日期和发放金额;4.工资查询:可以根据不同条件查询员工的工资情况,例如按部门查询、按工号查询等;5.报表生成:可以生成各种类型的工资报表,如员工工资表、工资总额统计报表等。
基于以上需求和功能,下面是一个简单的VFP程序设计示例:1.数据库设计:首先,我们需要设计一个适合存储员工信息和工资数据的数据库。
可以创建两个表,一个是员工表,一个是工资表。
员工表包含员工的基本信息,工资表包含员工的工资信息。
两个表的主键可以使用员工工号。
2. 界面设计:根据需求,我们可以设计一个简单而直观的用户界面。
可以使用Visual FoxPro的表单工具来进行界面设计,包括员工信息录入、工资计算、工资发放和工资查询等功能。
3.程序逻辑设计:根据需求和功能,设计程序的逻辑流程。
例如,当用户点击员工信息录入按钮时,程序应该弹出一个对话框,用户可以在对话框中输入员工的基本信息,并将数据保存到数据库中。
4.功能实现:根据程序的逻辑设计,开始编写代码实现功能。
例如,在员工信息录入功能中,可以使用VFP的数据访问类,通过SQL语句将用户输入的数据插入到员工表中。
5.测试和调试:在程序编写完成后,进行测试和调试。
测试可以分为单元测试和系统测试。
单元测试用于验证每个功能的正确性,系统测试用于验证整个系统的功能是否正常运行。
6.文档编写:编写系统使用手册和技术文档,用于系统的维护和后续升级。
文档应该包括系统的使用方法、功能说明、数据库设计和程序的逻辑设计等内容。
总结:本文通过VFP程序设计为基础,介绍了一个简单而实用的工资管理系统的设计和实现。
大学C语言程序设计大作业题目

1数据处理系统一、软件开发目的该软件主要是使用C语言设计开发数据处理程序,实现对数据的排序、查找、插入、计算、输出等功能。
二、数据结构定义一个11*10的二维数组。
三、软件功能说明1.生成100个随机数:调用库函数rand()或random()产生100个随机数,并存储在二维数组中的前十行。
2.选择法排序:用选择法将数据由小到大排序输出,保存在数组中,按行优先的原则存放(将小数先存满第一行,然后第二行….)。
3.冒泡法排序:用冒泡法将数据由小到大排序输出,保存在数组中,按行优先的原则存放(将小数先存满第一行,然后第二行….)。
4.插入法排序:用插入法将数据由小到大排序输出,保存在数组中,按行优先的原则存放(将小数先存满第一行,然后第二行….)。
5.查找数据:输入待查找数据, 在二维数组中逐个查找,若找到输出数据所在位置的行列号,若无该数值则输出“无此数”。
6.转换二进制:将数组中数据转换为二进制并转存到另一数组中输出。
7.转换为素数之和:对于原数组中的数进行判断:若为偶数,则表示成两个素数的和,并输出。
8.插入数据:输入一个数,将该数插入原数组中,使数组中的数仍然按从小到大排序,将数组中数据按从小到大顺序输出。
9.删除数据输入一个数,若原数组中存在该数,则删除该数,使数组中的数仍然按从小到大排序,将数组中数据按从小到大顺序输出。
10.退出系统,结束任务。
四、软件验收标准1.有较为美观简洁大方的菜单,能保证用户方便、直观、快捷的熟悉并使用软件的各项功能。
系统菜单功能项:1生成100个随机数2选择法排序3冒泡法排序4插入法排序5查找数据6转换二进制7转换为素数之和8插入数据9删除数据10退出系统注意:要求每执行一个具体的功能之后,程序将重新显示菜单。
2.系统要有一定的可靠性、稳定性,能够实现各功能模块。
2图书借阅管理系统一、软件开发目的该软件主要是使用C语言设计开发一个简单的图书借阅管理系统,实现对图书的借书,还书的管理和数据统计。
工资管理系统设计

工资管理系统设计一、背景随着企业经营规模的逐步扩大,管理变得更加复杂。
特别是关键的人事管理,工资管理,会计管理等环节对企业发展的影响越来越大。
为了更好地管理企业工资管理相关信息,我们设计了一个针对工资管理的系统。
二、系统架构我们的工资管理系统是基于客户端/服务器架构模式设计的。
客户端是企业管理人员使用的应用程序,服务器是负责存储和处理数据的计算机。
系统主要由以下模块组成:1. 用户权限管理模块:该模块包括用户注册,登录,权限控制等功能。
2. 员工信息管理模块:该模块包括员工档案、薪资设定、薪资调整等功能。
此模块包括按员工、部门及职位来设定相关薪资数据的功能。
3. 工资核算模块:该模块包括工资计算、交税、员工银行卡信息管理等功能。
此模块负责根据员工的设定的薪资标准来进行工资的自动计算。
4. 报表统计模块:该模块用于生成薪资报表以及一些业务分析数据。
三、系统特点1. 灵活度高:根据企业的特殊需求,可以根据具体情况为每个员工定制不同的薪资标准。
企业可以针对不同劳务性质的员工制定不同的薪资制度,减少手工操作和出错率。
2. 安全性高:系统加入了用户权限的管理模块,在用户登录后,只能查询和操作自己有权限的数据记录,避免了用户在操作时的误操作和信息泄露的风险。
3. 准确性高:采用计算机自动化计算,减少了人为因素和计算错误的发生。
4. 实时性高:系统将数据实时存储在服务器端,用户通过网络客户端在任何时刻可以获取最新的数据。
四、系统应用该系统可适用于各类企事业单位,对于人员众多、薪资标准复杂的企业来说,该系统就显得非常必要。
1. 独立企业:可以通过这个系统很好的管理自己企业内部的人员和薪资等信息,也能确保企业符合国家的相关法规。
2. 人力公司:有这个系统的存在可以有效消除账目复杂度、简化工资核算手续、降低工资核算风险,从而减少工作人员的负担和提高工作效率。
3. 政府:政府可以通过这个系统很好的管理自己管辖下的人员的工资和福利等信息。
系统功能设计说明书

系统功能设计说明书1 引言1.1 编写目的本说明的编写旨在为用户使用本系统提供详细指导,望用户及管理员仔细阅读。
1.2 背景系统名称;工资查询系统B.系统开发者:山东科技大学测绘科学与工程学院地理信息科学2014级(2)班刘东阁刘淑兴李承坤仇瑜玉C.系统用户:企业财会处及各部门管理人员。
D.开发平台:MySQL1.3 定义、缩写词、略语MySQL: SQL数据库数据字典:关于数据信息的集合,既是对数据流图中包含的元素的定义的集合。
数据流图:以图形来表达系统的的逻辑功能,数据在系统内部的逻辑流向和逻辑变换过程。
E-R图:用概念模型来描述信息世界中的常用概念。
1.4 参考资料《数据库系统概论》,王珊,萨师煊,高等教育出版社《SQL Server编程篇》,本书编委会编著,电子工业大学出版社《数据库原理与应用》,安忠,中国铁道出版社23 程序设计说明3.1 程序描述工资管理是学校信息管理中的重要内容。
以往的半人工管理方式往往不能很好的达到管理要求。
大学的员工数量较多,而且各部门职务较多,这样造成员工工资的计算标准多样化,给统计工作带来不便。
目前,该业务流程完全可以通过计算机系统自动管理完成,而该系统的开发正是为了解决这一问题。
3.2 功能1.管理员,员工通过输入用户名和密码即可进入[工资管理]功能窗体,在其中输入员工的相关信息,按[查询]就可查找信息。
2.点击[工资查询界面]功能窗体,输入员工号即可查询员工工资信息。
3.点击[津贴查询界面]功能窗体,输入员工号即可查询员工津贴信息。
4.点击[添加员工]功能窗体,输入员工号,点击快速添加即可添加员工。
5. 点击[删除员工]功能窗体,输入员工号,即可删除员工。
3.3 性能职工基本信息及相关工资输入:数据输入存储建立职工基本信息及工资表:数据集中职工基本信息修改:数据修改职工基本信息读取:数据读出3.4 输入输出项worker表(员工信息)Salary(薪金)表Jintie(津贴)表Usemen(管理员)表3.6 流程逻辑3.7 接口采用ODBC接口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面向对象程序设计班级:0703学号:2007115020311姓名:张娣完成时间:二00九年12 月22 日高校工资管理系统一、实验题目要求综合运用封装、继承、多态性、文件流、异常处理来设计和实现简单的信息管理系统二、实验任务设计和实现高校工资管理系统:高校中人员有:行政人员、教师、实验室人员、后勤人员、外聘人员。
通过本系统要求实现以下内容:1)添加职员的基本信息;2)校内人员调离学校删除信息;3)根据工作证号查询校内人员的工资,根据姓名查询外聘人员的工资;4)根据工资计算准则计算总工资;5)分类输出所有人员的信息;6)实现数据保存功能。
三、对象模型四、程序代表性代码#include <iostream.h>#include <string.h>#include <fstream.h>class Person { //人员基类protected:int no;char name[15];double salary;int flag; //标志人员的类型public:Person() {}virtual void setMessage() = 0; //键盘输入数据virtual void setMessage(ifstream& ifs) = 0; //文件输入数据virtual void showMessage() = 0; //输出数据virtual void showMessage(ofstream& ofs) = 0; //输出数据到文件virtual float incoming()=0; //计算收入virtual ~Person() {}virtual char *getName() = 0; // 返回名字virtual int getNo() = 0; //返回证件号码virtual int getFlag() = 0; //返回人员类型};class Teacher:virtual public Person { //教师protected:int workHour;public:Teacher() {flag=1; //标志教师类型salary = 1000; //教师的基本薪水}virtual ~Teacher() {}void setMessage() { //键盘输入教师的基本信息cout<<"工作证号: "; cin>>no;cout<<"姓名: "; cin>>name;cout<<"工作时间: "; cin>>workHour;}void setMessage(ifstream& ifs) { //文件读入教师的基本信息ifs>>flag>>no>>name>>workHour;}void showMessage() { //输出教师的信息cout<<" 工作证号:"<<no<<" 姓名:"<<name<<" 工作时间:"<<workHour<<" 薪水:"<<incoming()<<endl;}void showMessage(ofstream& ofs) {ofs<<flag<<"\t"<<no<<"\t"<<name<<"\t"<<workHour<<"\t"<<endl;}float incoming() { //计算教师的薪水return salary + workHour * 20;}char *getName() {return name;}int getNo() {return no;}int getFlag() {return flag;}};void add(); //增加一位职工void deletePerson(); //按证件号删除一位职工void inserchbyNo(); //根据证件号查询员工工资void inserchbyName(); //根据姓名查询员工工资void save(); //职工信息存盘void load(); //职工信息装入void print(); //分类输出职工信息void clearCollege(); //清除链表};void College::add() {Node *node = new Node; //在头结点head前插入新的结点作为新的头结点Person *person;int flag;cout<<"输入要添加人员的类别"<<endl;cout<<" 1-->普通教师2-->行政人员3-->实验员4-->后勤人员5-->外聘教师"<<endl;cout<<" 选择:";cin >> flag; cout << endl;switch (flag) {case 1:{Teacher *teacher = new Teacher;teacher->setMessage();person = teacher;}break;case 2:{Manager *manager = new Manager;manager->setMessage();person = manager;}break;case 3:{Assistant *assistant = new Assistant;assistant->setMessage();person = assistant;}break;case 4:{Waiter *waiter = new Waiter;waiter->setMessage();person = waiter;}break;case 5:{Employee_Teacher *employee_teacher = new Employee_Teacher;employee_teacher->setMessage();person = employee_teacher;}break;default :break;}node->data = person;if(head==0||head==NULL) {node->next = 0;}else{node->next = head;}head = node;}void College::deletePerson() {int deteleNo;Node *temp1, *temp2;temp1 = head;if(head==0||head->data==NULL) {cout<<"记录中没有员工了!"<<endl;return;}temp2 = head->next;cout <<"请输入职工的编号: ";cin>>deteleNo; cout <<endl;if(head->data->getNo()==deteleNo) {head = head->next;cout<<"删除成功!"<<endl;delete temp1;return;}while(temp2!=NULL) {if(temp2->data->getNo()==deteleNo) {temp1->next = temp2->next;cout<<"删除成功!"<<endl;delete temp2;return;}temp1 =temp2;temp2 = temp2->next;}cout<<"没有此职员!\n"<<endl;}void College::inserchbyNo() {int inserchNo;Node *temp;cout <<"请输入职工的编号: ";cin>>inserchNo; cout <<endl;temp = head;while(temp!=NULL) {if(temp->data->getNo()==inserchNo) {cout<<"职工"<<inserchNo<<"的工资为:"<<temp->data->incoming()<<endl;return;}temp = temp->next;}if(temp==NULL) {cout<<"不存在编号为:"<<inserchNo<<"的职工"<<endl;}}void College::print() {Node *temp;int i;for(i=1; i<=5; i++) { // i由1到5表示5类不同的人员temp = head;switch(i) {case 1:{cout<<"普通教师类信息:"<<endl;while(temp!=NULL) {if(temp->data->getFlag() == 1) {temp->data->showMessage();}temp = temp->next;}}break;case 2:{cout<<"行政人员信息:"<<endl;while(temp!=NULL) {if(temp->data->getFlag() == 2) {temp->data->showMessage();}temp = temp->next;}}break;case 3:{cout<<"实验员信息:"<<endl;while(temp!=NULL) {if(temp->data->getFlag() == 3) {temp->data->showMessage();}temp = temp->next;}}break;case 4:{cout<<"后勤人员信息:"<<endl;while(temp!=NULL) {if(temp->data->getFlag() == 4) {temp->data->showMessage();}temp = temp->next;}}break;case 5:{cout<<"外聘教师信息:"<<endl;while(temp!=NULL) {if(temp->data->getFlag() == 6) {temp->data->showMessage();}temp = temp->next;}}break;}}}void College::clearCollege() {Node *temp;if(head==0||head->data==NULL) {delete head;head = 0;return;}temp = head->next;while(temp!=NULL) {delete head;head = temp;temp = temp->next;}delete head;head = 0;}void College::save() {ofstream f("职工信息.dat",ios::unitbuf); //打开文件//遍历输出至文件Node *temp;temp = head;while(temp!=NULL&&temp!=0) {temp->data->showMessage(f);temp = temp->next;}f.close(); //关闭文件cout<<"职工信息成功保存在‘职工信息.dat’.\n"; }void College::load() {char buf[81]; //临时空间int flag; //人员类型Person *temp; //建立结点指针long t; //读写位置clearCollege(); //清除现有结点(保留头结点)ifstream f("职工信息.dat",ios::in); //打开文件while(true) {t=f.tellg(); //读取人员类型f>>flag;if(f) {switch(flag) {case 1:temp = new Teacher;break;case 2:temp = new Manager;break;case 3:temp = new Assistant;break;case 4:temp = new Waiter;break;case 6:temp = new Employee_Teacher;default :{f.close();cout<<"信息载入成功!"<<endl;return;}}Node *node = new Node;node->data = temp;if(head==NULL||head==0) {node->next = NULL;}else {node->next = head;}head = node;f.seekg(t);temp->setMessage(f);}else{cout<<"数据加载完毕!"<<endl;break;}}}#include <iostream.h>#include <string.h>void main(){char ch;College c; //定义大学对象//显示主菜单,接受选择,并分支调用大学类的相应功能的成员函数do{cout<<"\n**** 高校工资管理系统****\n";cout<<"** 1-增加职工**\n";cout<<"** 2-删除职工**\n";cout<<"** 3-按编号查询职工**\n";cout<<"** 4-按姓名查询职工**\n";cout<<"** 5-分类输出职工信息**\n";cout<<"** 6-数据存盘**\n";cout<<"** 7-数据装入**\n";cout<<"** 0-退出**\n";cout<<"**************************"<<endl;cout<<" 请选择(0-7): ";cin>>ch; cout<<endl;switch(ch){case '1': c.add(); break;case '2': c.deletePerson();break;case '3': c.inserchbyNo();break;case '4': c.inserchbyName();break;case '5': c.print(); break;case '6': c.save(); break;case '7': c.load(); break;default : cout<<"非正常退出!"; return;}}while(ch!='0');}五、运行部分结果六、实验心得本程序成功运用了类、继承、重载、多态以及文件流等面向对象的编程方法,对巩固面向对象编程水平的提高有很大帮助。