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

📄 tiaoban2.cpp

📁 企业员工考勤和工资管理系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
                pAdd->FieldByName("sd22e")->Value = pWbc->sd22e;
              }
            if (pWbc->sds > 2)
              {
                sDateTemp2 = sDateTemp + " " + pWbc->sd31;
                pAdd->FieldByName("sd31")->Value =  sDateTemp2;
                pAdd->FieldByName("sd31s")->Value = pWbc->sd31s;
                pAdd->FieldByName("sd31e")->Value = pWbc->sd31e;
                if (pWbc->sd32 <= pWbc->sd31)
                sDateTemp2 = FormatDateTime("yyyy-mm-dd",daytemp + 1) + " " + pWbc->sd32;
                else sDateTemp2 = sDateTemp + " " + pWbc->sd32;
                pAdd->FieldByName("sd32")->Value = sDateTemp2;
                pAdd->FieldByName("sd32s")->Value = pWbc->sd32s;
                pAdd->FieldByName("sd32e")->Value = pWbc->sd32e;
              }
            LABEL_END:
            daytemp++;
            FormWait->ProgressBar1->Position++;
            nRow++;

          }
        pYg->Next();
      }
  pAdd->Post();

  ShowMessage("生成排班表成功!");
  Close();

  */
  pYg->UpdateBatch(arAll);
  BitBtnSave->Enabled = false;
  BitBtnCancel->Enabled = false;
  BitBtnQuit->Tag = 0;
}

//-------------------------------------------------------------------
bool pascal TFormTiaoBan2::CheckBanciNo(WBC *pWbc,AnsiString sBcmc)
{
     TLocateOptions Opts;
     Opts.Clear();
     bool bFlag;
     bFlag = pBc->Locate("bcmc", sBcmc, Opts);
     if (bFlag)
           {
             pWbc->bcmc = sBcmc;
             pWbc->xiuxi = pBc->FieldByName("xiuxi")->AsBoolean;
             pWbc->sds = pBc->FieldByName("sds")->AsInteger;
             pWbc->sd11 = pBc->FieldByName("sd11")->AsString;
             pWbc->sd11s = pBc->FieldByName("sd11s")->AsInteger;
             pWbc->sd11e = pBc->FieldByName("sd11e")->AsInteger;
             pWbc->sd12 = pBc->FieldByName("sd12")->AsString;
             pWbc->sd12s = pBc->FieldByName("sd12s")->AsInteger;
             pWbc->sd12e = pBc->FieldByName("sd12e")->AsInteger;
             pWbc->sd21 = pBc->FieldByName("sd21")->AsString;
             pWbc->sd21s = pBc->FieldByName("sd21s")->AsInteger;
             pWbc->sd21e = pBc->FieldByName("sd21e")->AsInteger;
             pWbc->sd22 = pBc->FieldByName("sd22")->AsString;
             pWbc->sd22s = pBc->FieldByName("sd22s")->AsInteger;
             pWbc->sd22e = pBc->FieldByName("sd22e")->AsInteger;
             pWbc->sd31 = pBc->FieldByName("sd31")->AsString;
             pWbc->sd31s = pBc->FieldByName("sd31s")->AsInteger;
             pWbc->sd31e = pBc->FieldByName("sd31e")->AsInteger;
             pWbc->sd32 = pBc->FieldByName("sd32")->AsString;
             pWbc->sd32s = pBc->FieldByName("sd32s")->AsInteger;
             pWbc->sd32e = pBc->FieldByName("sd32e")->AsInteger;

           }
    return bFlag;
}

//---------------------------------------------------------------------------


void __fastcall TFormTiaoBan2::BitBtnQuitClick(TObject *Sender)
{
  FormTiaoBan2->Close();
}
//---------------------------------------------------------------------------

void __fastcall TFormTiaoBan2::DBGrid1DblClick(TObject *Sender)
{
  AnsiString SelectDay,sWeek,sDateTemp2;
  int nWeek;
  WBC wbc,*pWbc;

  if (!(pYg->RecNo > 0)) return;
  //判断是否已统计,是否假日
  if (pYg->FieldByName("jiari")->AsBoolean)
    {
      if (Application->MessageBoxA("该天是假日,确定要进行调班吗?","询问",MB_YESNO) ==IDNO)
        return;
    }
  if (pYg->FieldByName("zt11")->AsString != "" ||pYg->FieldByName("zt12")->AsString != "" ||pYg->FieldByName("zt21")->AsString != "" ||pYg->FieldByName("zt22")->AsString != "" ||pYg->FieldByName("zt31")->AsString != "" ||pYg->FieldByName("zt32")->AsString != "")
    {
      Application->MessageBoxA("该天存在请假信息,如果进行调班将覆盖原来信息,所以不能进行调班!","错误",MB_OK);
      return;
    }
  SelectDay = pYg->FieldByName("riqi")->AsString;
  nWeek = DayOfWeek(StrToDateTime(SelectDay));
  switch (nWeek)
     {
       case 1: sWeek = "  星期日";break;
       case 2: sWeek = "  星期一";break;
       case 3: sWeek = "  星期二";break;
       case 4: sWeek = "  星期三";break;
       case 5: sWeek = "  星期四";break;
       case 6: sWeek = "  星期五";break;
       case 7: sWeek = "  星期六";break;
    }
  FormSelectBC->Caption = SelectDay + sWeek;
  FormSelectBC->ShowModal();
  if (nFlag == 1)
   {
    pYg->Edit();
    if(!CheckBanciNo(&wbc,sBcXz))
      {
        ShowMessage("查找基础班次失败!");
        return;
      }
    BitBtnQuit->Tag = 1;
    BitBtnSave->Enabled = true;
    BitBtnCancel->Enabled = true;
    pWbc = &wbc;
    pYg->FieldByName("jiari")->Value = 0;
   //******************
    pYg->FieldByName("sds")->Clear();
    pYg->FieldByName("sd11")->Clear();
    pYg->FieldByName("sd11s")->Clear();
    pYg->FieldByName("sd11e")->Clear();
    //pYg->FieldByName("sksj11")->Clear();
    pYg->FieldByName("zt11")->Clear();
    pYg->FieldByName("sd12")->Clear();
    pYg->FieldByName("sd12s")->Clear();
    pYg->FieldByName("sd12e")->Clear();
    //pYg->FieldByName("sksj12")->Clear();
    pYg->FieldByName("zt12")->Clear();
    pYg->FieldByName("sd21")->Clear();
    pYg->FieldByName("sd21s")->Clear();
    pYg->FieldByName("sd21e")->Clear();
    //pYg->FieldByName("sksj21")->Clear();
    pYg->FieldByName("zt21")->Clear();
    pYg->FieldByName("sd22")->Clear();
    pYg->FieldByName("sd22s")->Clear();
    pYg->FieldByName("sd22e")->Clear();
    //pYg->FieldByName("sksj22")->Clear();
    pYg->FieldByName("zt22")->Clear();
    pYg->FieldByName("sd31")->Clear();
    pYg->FieldByName("sd31S")->Clear();
    pYg->FieldByName("sd31e")->Clear();
    //pYg->FieldByName("sksj31")->Clear();
    pYg->FieldByName("zt31")->Clear();
    pYg->FieldByName("sd32")->Clear();
    pYg->FieldByName("sd32S")->Clear();
    pYg->FieldByName("sd32e")->Clear();
    //pYg->FieldByName("sksj32")->Clear();
    pYg->FieldByName("zt32")->Clear();

    pYg->FieldByName("banci")->Value = pWbc->bcmc;
    pYg->FieldByName("xiuxi")->Value = pWbc->xiuxi;
    if (pWbc->xiuxi == 1)
      {
        nFlag =0;
        pYg->Post();
        return;
      }
    pYg->FieldByName("sds")->Value = pWbc->sds;
    sDateTemp2 = SelectDay + " " + pWbc->sd11;
    pYg->FieldByName("sd11")->Value =  sDateTemp2;
    pYg->FieldByName("sd11s")->Value = pWbc->sd11s;
    pYg->FieldByName("sd11e")->Value = pWbc->sd11e;
    if (pWbc->sd12 <= pWbc->sd11)
    sDateTemp2 = FormatDateTime("yyyy-mm-dd",StrToDateTime(SelectDay) + 1) + " " + pWbc->sd12;
    else sDateTemp2 = SelectDay + " " + pWbc->sd12;
    pYg->FieldByName("sd12")->Value = sDateTemp2;
    pYg->FieldByName("sd12s")->Value = pWbc->sd12s;
    pYg->FieldByName("sd12e")->Value = pWbc->sd12e;
    if (pWbc->sds > 1)
    {
    sDateTemp2 = SelectDay + " " + pWbc->sd21;
    pYg->FieldByName("sd21")->Value =  sDateTemp2;
    pYg->FieldByName("sd21s")->Value = pWbc->sd21s;
    pYg->FieldByName("sd21e")->Value = pWbc->sd21e;
    if (pWbc->sd22 <= pWbc->sd21)
    sDateTemp2 = FormatDateTime("yyyy-mm-dd",StrToDateTime(SelectDay) + 1) + " " + pWbc->sd22;
    else sDateTemp2 = SelectDay + " " + pWbc->sd22;
    pYg->FieldByName("sd22")->Value = sDateTemp2;
    pYg->FieldByName("sd22s")->Value = pWbc->sd22s;
    pYg->FieldByName("sd22e")->Value = pWbc->sd22e;
    }
    if (pWbc->sds > 2)
    {
    sDateTemp2 = SelectDay + " " + pWbc->sd31;
    pYg->FieldByName("sd31")->Value =  sDateTemp2;
    pYg->FieldByName("sd31s")->Value = pWbc->sd31s;
    pYg->FieldByName("sd31e")->Value = pWbc->sd31e;
    if (pWbc->sd32 <= pWbc->sd31)
    sDateTemp2 = FormatDateTime("yyyy-mm-dd",StrToDateTime(SelectDay) + 1) + " " + pWbc->sd32;
    else sDateTemp2 = SelectDay + " " + pWbc->sd32;
    pYg->FieldByName("sd32")->Value = sDateTemp2;
    pYg->FieldByName("sd32s")->Value = pWbc->sd32s;
    pYg->FieldByName("sd32e")->Value = pWbc->sd32e;
    }
    nFlag =0;
    pYg->Post();
   }

}
//---------------------------------------------------------------------------


void __fastcall TFormTiaoBan2::BitBtnCancelClick(TObject *Sender)
{
  if (Application->MessageBoxA("决定要放弃所有修改吗?","询问",MB_YESNO) ==IDYES)
    {
      pYg->CancelBatch(arAll);
      BitBtnSave->Enabled = false;
      BitBtnCancel->Enabled = false;
      BitBtnQuit->Tag = 0;
    }
}
//---------------------------------------------------------------------------

void __fastcall TFormTiaoBan2::FormCloseQuery(TObject *Sender,
      bool &CanClose)
{
  int nValue;
  if (BitBtnQuit->Tag == 1)
    {
      nValue = Application->MessageBoxA("数据已修改,是否保存?","询问",MB_YESNOCANCEL);
      if (nValue == IDYES)
         BitBtnSaveClick(this);
      else if (nValue == IDCANCEL)
         CanClose = false;
    }
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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