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

📄 clientedit.cpp

📁 客户管理挂件
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "ClientEdit.h"
#include "ClientManager.h"
#include "ControlBase.h"
#include "LoginForm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "RzPanel"
#pragma link "RzButton"
#pragma link "RzCmboBx"
#pragma link "RzDBCmbo"
#pragma link "RzDBEdit"
#pragma link "RzEdit"
#pragma link "RzLabel"
#pragma link "RzBckgnd"
#pragma link "RzTabs"
#pragma resource "*.dfm"
TEditClient *EditClient;
TMainManager *MainForm;
//---------------------------------------------------------------------------
__fastcall TEditClient::TEditClient(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
__fastcall TEditClient::TEditClient(TComponent* Owner,String Title,String sSearchID,TADOQuery *Querytemp,int iFlag)
        : TForm(Owner)
{
       RzPanel7->Height = 1;
       iCount = 0; //子表新增计数赋初值
       QryTemp = new TADOQuery(NULL);
       QryTemp = Querytemp;
       QryTemp->LockType = ltBatchOptimistic;
       m_bSaveFlag = iFlag;
       DSource->DataSet = QryTemp;
       CurrentPath = ReturnPath() + "\\Pic\\";

    if(m_bSaveFlag ==1)
    {

        QryTemp->Append();
        String sSqlMaxID = "select max(ID) from ClientData ";
        sMaxSQL(QryTemp->Connection,sSqlMaxID,sMaxID);
        int ilength = IntToStr(StrToInt(sMaxID) + 1).Length();
        switch(ilength)
        {
          case 1: sTrueMaxID = "0000"+IntToStr(StrToInt(sMaxID) + 1);break;
          case 2: sTrueMaxID = "000"+IntToStr(StrToInt(sMaxID) + 1);break;
          case 3: sTrueMaxID = "00"+IntToStr(StrToInt(sMaxID) + 1);break;
          case 4: sTrueMaxID = "0"+IntToStr(StrToInt(sMaxID) + 1);break;
        }
        RzDBEdit1->Text = sTrueMaxID;
        RzDBComboBox1->Text = "男";
        RzDBComboBox1->ReadOnly = false;
    }
    else if(m_bSaveFlag ==0)
    {
       QryTemp->Edit();
       String m_Sex = QryTemp->FieldByName("Sex")->AsString;
       RzDBComboBox1->Text = m_Sex;
       String m_dPreTime1 = QryTemp->FieldByName("Birday")->AsString;
       String m_dPreTime2 = QryTemp->FieldByName("TakeTime")->AsString;
       try{RzDateTimeEdit1->Date = StrToDateTime(m_dPreTime1+" 00:00:00");} catch(...){ };
       RzDateTimeEdit2->Date = StrToDateTime(m_dPreTime2+" 00:00:00");
       try
       {
         ImgPic->Picture->LoadFromFile(CurrentPath + sSearchID+".bmp""");
       }
       catch(...)
       {
         MsgShow("还没有上传客户照片哦!","编辑提示");
       }
    }
    EditClient->Caption = Title;

    sID = sSearchID;
/*----------------------子表项目显示----------------------------------------*/
        ADOQItem->Active=false;
        ADOQItem->SQL->Clear();
        ADOQItem->SQL->Add("select * from CELL where ITEMID = '"+sSearchID+"'");
        ADOQItem->Open();
        ADOQItem->Active=true;
}
//---------------------------------------------------------------------------
void __fastcall TEditClient::RzBitBtn5Click(TObject *Sender)
{
   Close();
}
//---------------------------------------------------------------------------
void __fastcall TEditClient::RzBitBtn1Click(TObject *Sender)
{
     if(!MsgYN("是否保存!"))
     return;

  if(RzDBComboBox1->Text =="")
  {
    MsgShow("请输入客户性别!","编辑提示");
    return;
  }
try
{
        AConnection2 = new TADOConnection(NULL);
        AConnection2 = QryTemp->Connection;
        if(!AConnection2->InTransaction)
           AConnection2->BeginTrans();
       QryTemp->FieldByName("Sex")->AsString = RzDBComboBox1->Text;
          if(AConnection2->InTransaction)
         AConnection2->CommitTrans();
       QryTemp->UpdateBatch(arAll);

        AConnection1 = new TADOConnection(NULL);
        AConnection1 = ADOQItem->Connection;
        if(!AConnection1->InTransaction)
           AConnection1->BeginTrans();
        if(AConnection1->InTransaction)
         AConnection1->CommitTrans();
       ADOQItem->UpdateBatch(arAll);


   Close();
}
catch(...)
{
      if(AConnection2->InTransaction)
      AConnection2->RollbackTrans();
      if(AConnection1->InTransaction)
      AConnection1->RollbackTrans();
}
}
//---------------------------------------------------------------------------

void __fastcall TEditClient::RzBitBtn2Click(TObject *Sender)
{

    if(OpenPic->Execute())
    {
       ImgPic->Visible = true;
       ImgPic->Picture->LoadFromFile(OpenPic->FileName);
       if(m_bSaveFlag == 1)
       {
          ImgPic->Visible = true;
          ImgPic->Picture->SaveToFile(CurrentPath + sTrueMaxID+".bmp""");
       }
       else
       {
          ImgPic->Visible = true;
          String   iii=CurrentPath+ sID+".bmp""";
          ImgPic->Picture->SaveToFile(CurrentPath + sID+".bmp""");
       }
  }
}
//---------------------------------------------------------------------------

void __fastcall TEditClient::RzBitBtn3Click(TObject *Sender)
{
     if(!MsgYN("是否删除?"))
     return;
 if(m_bSaveFlag == 1)
 {
   DeleteFile(CurrentPath + sTrueMaxID+".bmp""");
   SetCurrentDir(CurrentPath + sTrueMaxID+".bmp""");
 }
 else
 {
   DeleteFile(CurrentPath + sID+".bmp""");
   SetCurrentDir(CurrentPath + sID+".bmp""");
 }
ImgPic->Visible = false;
}
//---------------------------------------------------------------------------


void __fastcall TEditClient::RzBitBtn7Click(TObject *Sender)
{
      RzPanel7->Height = 61;
      RzBitBtn6->Caption = "隐藏";
  ADOQItem->Active = true;
  String sSubMaxID ;
  if(iCount == 0)
  {
      sSubMaxID = "select max(CELLID) from CELL where ITEMID = '"+sID+"'";
      sMaxSQL(ADOQItem->Connection,sSubMaxID,sMaxSubID);
  }
  if (sMaxSubID == "")
      {
       sTrueMaxSubID = sID+"001";
       sMaxSubID = sTrueMaxSubID;
      }
  else
    {
        int iSublength = IntToStr(StrToInt(sMaxSubID.SubString(6,8)) + 1).Length();
        switch(iSublength)
        {
          case 1: sMaxSubID = sTrueMaxSubID = sID+"00"+IntToStr(StrToInt(sMaxSubID.SubString(6,8)) + 1);break;
          case 2: sMaxSubID = sTrueMaxSubID = sID+"0"+IntToStr(StrToInt(sMaxSubID.SubString(6,8)) + 1);break;
        }
    }

  iCount = iCount + 1;
//-----------------------存储数据--------------------------------------------
  ADOQItem->Append() ;
  ADOQItem->FieldByName("ITEMID")->AsString=sID ;
  ADOQItem->FieldByName("CELLID")->AsString=sTrueMaxSubID ;
  ADOQItem->Post();
}
//---------------------------------------------------------------------------

void __fastcall TEditClient::RzBitBtn6Click(TObject *Sender)
{
   if(RzBitBtn6->Caption == "隐藏")
   {
      RzPanel7->Height = 1;
      RzBitBtn6->Caption = "显示";
   }
   else if(RzBitBtn6->Caption == "显示")
   {
      RzPanel7->Height = 61;
      RzBitBtn6->Caption = "隐藏";
   }
}
//---------------------------------------------------------------------------

void __fastcall TEditClient::RzBitBtn4Click(TObject *Sender)
{
   ADOQItem->Delete();        
}
//---------------------------------------------------------------------------

void __fastcall TEditClient::RzDBEdit2Exit(TObject *Sender)
{
   TLocateOptions Opts;
   Opts.Clear();
   Opts<<loPartialKey;
   Variant locvalues[1];
   locvalues[0]=RzDBEdit2->Text.Trim();
   if(ADOSearch->Locate("Name",locvalues[0],Opts)==true)
   {
       MsgShow("客户姓名重复!","提示信息");
       return;
   }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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