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

📄 emhdl.cpp

📁 科思ERP部分源码及控件
💻 CPP
📖 第 1 页 / 共 5 页
字号:
    m_Query->SQL->Add(m_SqlStr);
    m_Query->Open();
    if(m_Query->RecordCount!=1)
    {
        m_Query->Close();
        return false;
    }
    else
    {
        BatchLetValue();
        m_Query->Close();
        return true;
    }
}//**************************************
//     TKSFaAe         附属设备
//**************************************
//--------------------------------------------------------------
void __fastcall TKSFaAe:: SetFaAeCode(AnsiString value)
{
    if (value.IsEmpty())
      throw Exception("设备编码不能为空");
    if(value.Length()>18)
      throw Exception("设备编码长度不能超过18");
    if (value!=m_FaAeCode)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT fadncode FROM sdfadn where fadndec=0 and fadndiscard=0 and fadncode='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<1 )
      {
        m_Query->Close();
        throw Exception("设备编码 '" +value+"'未定义或已减少报废");
      }
       m_Query->Close();
    }
       m_FaAeCode=value;
}
void __fastcall TKSFaAe:: SetFaAePFadn(AnsiString value)
{
    if (value.IsEmpty())
      throw Exception("设备编码不能为空");
    if(value.Length()>18)
      throw Exception("设备编码长度不能超过18");
    if (value!=m_FaAePFadn)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT fadncode FROM sdfadn where fadncode='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<1 )
      {
        m_Query->Close();
        throw Exception("设备编码 '" +value+"'未定义");
      }
       m_Query->Close();
    }
       m_FaAePFadn=value;
}
void __fastcall TKSFaAe:: SetFaAeDesc(AnsiString value)
{
    if(value.Length()>40)
      throw Exception("备注长度不能超过40");
       m_FaAeDesc=value;
}
//---------------------------------------------------------------------------
AnsiString TKSFaAe::GetFieldValue(euFaAe sdFieldName)
{
    switch(sdFieldName)
    {
      case fiFaAeCode:
           return FaAeCode;
      case fiFaAePFadn:
           return FaAePFadn;
      case fiFaAeDesc:
           return FaAeDesc;
      default:
           throw Exception("当前未定义可取值");
     }
}
//---------------------------------------------------------------------------
void TKSFaAe::SetFieldValue(euFaAe sdFieldName, AnsiString value)
{
    switch(sdFieldName)
     {
    case fiFaAeCode:
         FaAeCode=value;
          break;
    case fiFaAePFadn:
         FaAePFadn=value;
          break;
    case fiFaAeDesc:
         FaAeDesc=value;
          break;
    default:
         throw Exception("当前字段未定义可赋值");
      }
}
//---------------------------------------------------------------------------
TKSFaAe::TKSFaAe(TDataComm *DC)
                :TKSStandard(DC)
{
    try
    {
        EmptyValue(0);
        EmptyValue(1);
        QueryString="SELECT * FROM sdFaAe";
        FilterString="";
        OrderString="FaAeCode,FaAePFadn";
    }
    catch(Exception &e)
    {
        ShowMessage(e.Message);
    }
}
//---------------------------------------------------------------------------
TKSFaAe::TKSFaAe()
                :TKSStandard()
{
    try
    {
        EmptyValue(0);
        EmptyValue(1);
        QueryString="SELECT * FROM sdFaAe";
        FilterString="";
        OrderString="FaAeCode,FaAePFadn";
    }
    catch(Exception &e)
    {
        ShowMessage(e.Message);
    }
}
//---------------------------------------------------------------------------
TKSFaAe::~TKSFaAe()
{
  try{
    

     }
  catch(...)
    {
     throw Exception("析构函数出错");
    }
}
//---------------------------------------------------------------------------
void TKSFaAe::BackupValue()
{
      b_FaAeCode=m_FaAeCode;
      b_FaAePFadn=m_FaAePFadn;
      b_FaAeDesc=m_FaAeDesc;
}
//---------------------------------------------------------------------------
void TKSFaAe::RestoreValue()
{
      m_FaAeCode=b_FaAeCode;
      m_FaAePFadn=b_FaAePFadn;
      m_FaAeDesc=b_FaAeDesc;
}
//---------------------------------------------------------------------------
void TKSFaAe::EmptyValue(int Index)
{
   switch(Index)
   {
    case 0:
        m_FaAeCode="";
        m_FaAePFadn="";
        m_FaAeDesc="";
    break;
    case 1:
        b_FaAeCode="";
        b_FaAePFadn="";
        b_FaAeDesc="";
      break;
     }
}
//---------------------------------------------------------------------------
void TKSFaAe::BatchLetValue()
{
    m_FaAeCode=m_Query->FieldValues["FaAeCode"];
    m_FaAePFadn=m_Query->FieldValues["FaAePFadn"];
    m_FaAeDesc=m_Query->FieldValues["FaAeDesc"];
    BackupValue();
}
//---------------------------------------------------------------------------
void TKSFaAe::Update()
{
    if(CurStatus==0||CurStatus==1)
        throw Exception("当前不是编辑状态,不能进行存盘操作!");
    if(m_FaAeCode.IsEmpty()==true)
        throw Exception("单号不能为空!");
    m_StoredProc->Close();
    if(CurStatus==2||CurStatus==4)
      {
        m_StoredProc->ProcedureName="sdFaAe_Insert";
        m_StoredProc->Parameters->Clear();
        m_StoredProc->Parameters->CreateParameter("@FaAeCode",ftString,pdInput,18,m_FaAeCode);
        m_StoredProc->Parameters->CreateParameter("@FaAePFadn",ftString,pdInput,18,m_FaAePFadn);
        m_StoredProc->Parameters->CreateParameter("@FaAeDesc",ftString,pdInput,40,m_FaAeDesc);
 
        m_StoredProc->ExecProc();
        m_StoredProc->Close();

   }
  else
    {
        m_StoredProc->ProcedureName="sdFaAe_Update";
        m_StoredProc->Parameters->Clear();

        m_StoredProc->Parameters->CreateParameter("@W_FaAeCode",ftString,pdInput,18,b_FaAeCode);
        m_StoredProc->Parameters->CreateParameter("@W_FaAePFadn",ftString,pdInput,18,b_FaAePFadn);
        m_StoredProc->Parameters->CreateParameter("@FaAeCode",ftString,pdInput,18,m_FaAeCode);
        m_StoredProc->Parameters->CreateParameter("@FaAePFadn",ftString,pdInput,18,m_FaAePFadn);
        m_StoredProc->Parameters->CreateParameter("@FaAeDesc",ftString,pdInput,40,m_FaAeDesc);
 
       m_StoredProc->ExecProc();
       m_StoredProc->Close();
   }
  TKSFaAe *p=new TKSFaAe();
  if(CurStatus==2)
    {
     SetActionID(1);
     p->Assign(this);
     AddRecord((void *)p,p->FaAeCode+p->FaAePFadn);
     }
  else
    {
     SetActionID(1);
     p->Assign(this);
     ChangeRecord((void *)p,p->FaAeCode+p->FaAePFadn,this->b_FaAeCode+this->b_FaAePFadn);
    }
}
//---------------------------------------------------------------------------
void TKSFaAe::Delete()
{
    if(CurStatus!=1)
        throw Exception("当前状态不能进行删除操作!");
    if(m_FaAeCode.IsEmpty()==true)
        throw Exception("当前没有记录可以删除!");
    m_StoredProc->Close();
    m_StoredProc->ProcedureName="sdFaAe_Delete";
    m_StoredProc->Parameters->Clear();
    m_StoredProc->Parameters->CreateParameter("@W_FaAeCode",ftString,pdInput,18,b_FaAeCode);
    m_StoredProc->Parameters->CreateParameter("@W_FaAePFadn",ftString,pdInput,18,b_FaAePFadn);
    m_StoredProc->ExecProc();
    m_StoredProc->Close();
    DeleteRecord(this->b_FaAeCode+this->b_FaAePFadn);
}
//---------------------------------------------------------------------------
void TKSFaAe::Assign(TKSFaAe *p)
{
    this->SetActionID(p->CurStatus);
    this->m_FaAeCode=p->m_FaAeCode;
    this->m_FaAePFadn=p->m_FaAePFadn;
    this->m_FaAeDesc=p->m_FaAeDesc;
    this->BackupValue();
}
//---------------------------------------------------------------------------
void TKSFaAe::AssignValue()
{
    TKSFaAe *p=(TKSFaAe *)Records(CurRecNo);
    Assign(p);
}
//---------------------------------------------------------------------------
int TKSFaAe::Query()
{
    AnsiString m_SqlStr;
    m_SqlStr=QueryString;
    if(FilterString.IsEmpty()==false)
        m_SqlStr=m_SqlStr+" where  "+FilterString;
    if(OrderString.IsEmpty()==false)
        m_SqlStr=m_SqlStr+" Order by "+OrderString;
    m_Query->Close();
    m_Query->SQL->Clear();
    m_Query->SQL->Add(m_SqlStr);
    m_Query->Open();
    ClearRecord();
    if(m_Query->RecordCount>0)
    {
        m_Query->First();
        while(!m_Query->Eof)
        {
            BatchLetValue();
            TKSFaAe *p=new TKSFaAe();
            SetActionID(1);
            p->Assign(this);
            AddRecord((void *)p,p->FaAeCode);
            m_Query->Next();
        }
        MoveFirst();
    }
    m_Query->Close();
    return Count;
}
//---------------------------------------------------------------------------
bool TKSFaAe::Find(AnsiString WhereStr)
{
    AnsiString m_SqlStr;
    if(WhereStr.IsEmpty()==true)
        throw Exception("查找表达式不能为空");
    m_SqlStr="select * from sdFaAe where  "+WhereStr;
    m_Query->Close();
    m_Query->SQL->Clear();
    m_Query->SQL->Add(m_SqlStr);
    m_Query->Open();
    if(m_Query->RecordCount!=1)
    {
        m_Query->Close();
        return false;
    }
    else
    {
        BatchLetValue();
        m_Query->Close();
        return true;
    }
}
//**************************************
//     TKSFaDec  设备减少
//**************************************
//--------------------------------------------------------------
void __fastcall TKSFaDec:: SetFaDecCode(AnsiString value)
{
   if (value.IsEmpty())
       throw Exception("减少单号不能为空");
    if(value.Length()>18)
        throw Exception("减少单号长度不能大于18");
    if(value!=m_FaDecCode)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT Fadeccode FROM SDFadec WHERE fadeccode='" +value+"'");
      m_Query->Open();
      if(m_Query->RecordCount>0)
      {
        m_Query->Close();
        throw Exception("减少单号 '"+value+"' 已存在");
      }
      m_Query->Close();
    }
    m_FaDecCode=value;
}
void __fastcall TKSFaDec:: SetFaDecDate(AnsiString value)
{
    if (value.IsEmpty())
       throw Exception("减少日期不能为空");
    if(value.Length()>10)
       throw Exception("减少日期长度不能大于10");
     m_FaDecDate=Validate(value);
}
void __fastcall TKSFaDec:: SetFaDecFmonth(AnsiString value)
{
    if (value.IsEmpty())
      throw Exception("财务月份不能为空");
    if(value.Length()>6)
      throw Exception("财务月份长度不能超过6");
    if (value!=m_FaDecFmonth)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT Fcmonth FROM sdfc where Fcmonth='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<1 )
      {
        m_Query->Close();
        throw Exception("财务月份 '"+value+"' 未定义");
      }
      m_Query->Close();
    }
    m_FaDecFmonth=value;
}
void __fastcall TKSFaDec:: SetFaDecFadn(AnsiString value)
{
    if (value.IsEmpty())
      throw Exception("设备编码不能为空");
    if(value.Length()>18)
      throw Exception("设备编码长度不能超过18");
    if (value!=m_FaDecFadn)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT fadncode FROM sdfadn where fadncode='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<1 )
      {
        m_Query->Close();
        throw Exce

⌨️ 快捷键说明

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