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

📄 wsalary_set.~cpp

📁 很经典的数据库代码
💻 ~CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "WSalary_Set.h"     //考勤工资参数设置窗体头文件
#include "DataModule.h"      //数据模块窗体头文件
#include "Archives_Query.h"  //数据记录查询窗体头文件
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "Inherit"
#pragma link "CSPIN"
#pragma resource "*.dfm"
TF_Set *F_Set;
//---------------------------------------------------------------------------
__fastcall TF_Set::TF_Set(TComponent* Owner)
        : TF_Inherit(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::CheckBox1Click(TObject *Sender)
{   /*****提取星期六星期天复选框单击事件*****/
    if(CheckBox1->Checked){
      int Record;
      TDateTime *Date = new TDateTime();
      *Date = StrToDate(MaskEdit1->Text+"-01");   //赋用户填写月份的第一天
      DM->AT_Count->Filter = "Count_Name='Set'";  //设置过滤器,提取应考勤日期信息表计数值
      DM->AT_Count->Filtered = true;              //开启过滤器
      DM->AT_Count->Open();                       //打开记录号计数器表
      Record = DM->AT_CountCount_Value->Value;    //提取计数值
      for(int i=0;i<31;i++){
        if(Date->DayOfWeek()==1||Date->DayOfWeek()==7){ //判断是否为星期六或星期天
          Record+=1;
          DM->AQ_WSet->Append();                    //在应考勤日期信息表中追加一条记录
          DM->AQ_WSetWSet_ID->Value = Record;       //记录编号赋值
          DM->AQ_WSetWSet_Date->Value = *Date; //应考勤日期赋值
          DM->AQ_WSet->Post();                      //提交数据值
          }
        Date->operator +=(1);                     //日期增加一天
        }
      DM->AT_Count->Edit();     //编辑记录号计数数据表
      DM->AT_CountCount_Value->Value = Record;  //记录编号赋值
      DM->AT_Count->Post();     //提交编辑数据
      DM->AT_Count->Close();    //关闭记录号计数数据表
      }
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::BitBtn1Click(TObject *Sender)
{   /*****考勤参数修改按钮单击事件*****/
    TIniFile *ini;  //申请一个TIniFile类对象
    //打开考勤工资管理系统Config.INI配置文件,如果不存在则创建
    ini = new TIniFile(ExtractFilePath(ParamStr(0))+"Config.INI");  //ExtractFilePath(ParamStr(0))取得当前工作路径
    ini->WriteString("WorkTime","Time1",MaskEdit2->Text);  //写入上午上班时间
    ini->WriteString("WorkTime","Time2",MaskEdit3->Text);  //写入上午下班时间
    ini->WriteString("WorkTime","Time3",MaskEdit4->Text);  //写入下午上班时间
    ini->WriteString("WorkTime","Time4",MaskEdit5->Text);  //写入下午下班时间
    delete ini;  //释放ini对象
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::BitBtn2Click(TObject *Sender)
{   /*****考勤参数恢复默认值按钮单击事件*****/
    MaskEdit2->Text = "08:00:00";  //恢复默认上午上班时间
    MaskEdit3->Text = "11:30:00";  //恢复默认上午下班时间
    MaskEdit4->Text = "13:30:00";  //恢复默认下午上班时间
    MaskEdit5->Text = "17:00:00";  //恢复默认下午下班时间
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::FormShow(TObject *Sender)
{   /*****考勤工资参数设置窗体创建事件*****/
    MaskEdit1->Text = FormatDateTime("yyyy-mm",Now()); //取得当前年月
    TIniFile *ini;  //申请一个TIniFile类对象
    //打开考勤工资管理系统Config.INI配置文件,如果不存在则创建
    ini = new TIniFile(ExtractFilePath(ParamStr(0))+"Config.INI");  //ExtractFilePath(ParamStr(0))取得当前工作路径
    MaskEdit2->Text = ini->ReadString("WorkTime","Time1","08:00:00");  //读取上午上班时间,如果不存则赋第三项默认值
    MaskEdit3->Text = ini->ReadString("WorkTime","Time2","11:30:00");  //读取上午下班时间
    MaskEdit4->Text = ini->ReadString("WorkTime","Time3","13:30:00");  //读取下午上班时间
    MaskEdit5->Text = ini->ReadString("WorkTime","Time4","17:00:00");  //读取下午下班时间
    CSpinEdit1->Text = ini->ReadInteger("SalaryParam","Salary1",10);   //读取基本工资单价
    CSpinEdit6->Text = ini->ReadInteger("SalaryParam","Salary2",20);   //读取加班工资单价
    CSpinEdit2->Text = ini->ReadInteger("SalaryParam","Salary3",100);  //读取出差工资单价
    CSpinEdit3->Text = ini->ReadInteger("SalaryParam","Salary4",50);   //读取迟到早退扣发单价
    CSpinEdit4->Text = ini->ReadInteger("SalaryParam","Salary5",100);  //读取旷工扣发单价
    delete ini;  //释放ini对象
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::BitBtn3Click(TObject *Sender)
{   /*****工资参数修改按钮单击事件*****/
    TIniFile *ini;  //申请一个TIniFile类对象
    ini = new TIniFile(ExtractFilePath(ParamStr(0))+"Config.INI");  //ExtractFilePath(ParamStr(0))取得当前工作路径
    ini->WriteInteger("SalaryParam","Salary1",CSpinEdit1->Text.ToInt());  //写入基本工资单价
    ini->WriteInteger("SalaryParam","Salary2",CSpinEdit6->Text.ToInt());  //写入加班工资单价
    ini->WriteInteger("SalaryParam","Salary3",CSpinEdit2->Text.ToInt());  //写入出差工资单价
    ini->WriteInteger("SalaryParam","Salary4",CSpinEdit3->Text.ToInt());  //写入迟到早退扣发单价
    ini->WriteInteger("SalaryParam","Salary5",CSpinEdit4->Text.ToInt());  //写入旷工扣发单价
    delete ini;  //释放ini对象
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::BitBtn4Click(TObject *Sender)
{   /*****工资参数恢复默认值按钮单击事件*****/
    CSpinEdit1->Text = "10";  //恢复默认正常工资单价
    CSpinEdit6->Text = "20";  //恢复默认加班工资单价
    CSpinEdit2->Text = "100"; //恢复默认出差工资单价
    CSpinEdit3->Text = "50";  //恢复默认迟到早退扣发单价
    CSpinEdit4->Text = "100"; //恢复默认旷工扣发单价
}
//---------------------------------------------------------------------------


void __fastcall TF_Set::ToolButton1Click(TObject *Sender)
{   /*****增加工具条快捷按钮单击事件*****/
    int Record;
    DM->AT_Count->Filter = "Count_Name='Set'";  //设置过滤器,提取正常休息日子信息表计数值
    DM->AT_Count->Filtered = true;              //开启过滤器
    DM->AT_Count->Open();                       //打开记录编号计数表
    Record = DM->AT_CountCount_Value->Value;    //提取计数值
    DM->AQ_WSet->AppendRecord(ARRAYOFCONST((Record+1,DateToStr(DateTimePicker1->Date))));  //增加一条正常休息日子记录
    DM->AT_Count->Edit();     //编辑记录号计数数据表
    DM->AT_CountCount_Value->Value = Record+1;  //记录号加1再赋值
    DM->AT_Count->Post();     //提交编辑数据
    DM->AT_Count->Close();    //关闭记录号计数数据表
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton2Click(TObject *Sender)
{   /*****编辑工具条快捷按钮单击事件*****/
    DM->AQ_WSet->Edit();     //编辑正常休息日子记录
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton3Click(TObject *Sender)
{   /*****删除工具条快捷按钮单击事件*****/
    DM->AQ_WSet->Delete();   //删除一条正常休息日子记录
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton4Click(TObject *Sender)
{   /*****提交工具条快捷按钮单击事件*****/
    DM->AQ_WSet->Post();    //提交正常休息日子记录的操作
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton6Click(TObject *Sender)
{   /*****取消工具条快捷按钮单击事件*****/
    DM->AQ_WSet->Cancel();  //取消正常休息日子记录的操作
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton10Click(TObject *Sender)
{   /*****查找工具条快捷按钮单击事件*****/
    TStringList *str1 = new TStringList();
    TStringList *str2 = new TStringList();
    F_Query->Q_Table = "WSalary_WSet";  //赋查找表名
    str1->Add("日期");           //添加正常休息日期查找字段
    str2->Add("WSet_Date");      //添加正常休息日期在数据表中的字段名
    F_Query->T_Field[0] = 2;     //添加正常休息日期字段类型代号,为日期类型
    F_Query->S_Field = str1;     //查询窗体上S_Field公有变量赋值
    F_Query->N_Field = str2;     //查询窗体上N_Field公有变量赋值
    F_Query->CBE_Field->Text="日期"; //查找字段赋值
    F_Query->Query = DM->AQ_WSet;//设定查找数据集为应到考勤日信息表
    F_Query->ShowModal();        //打开数据记录查询窗口
    delete str1,str2;            //释放str1,str2对象
}
//---------------------------------------------------------------------------

void __fastcall TF_Set::ToolButton12Click(TObject *Sender)
{   /*****关闭工具条快捷按钮单击事件*****/
    F_Set->Close();                  //关闭考勤工资参数设置管理窗口
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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