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

📄 mmdoc.cpp

📁 邮 电 公 司 erp源码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
    if(value.IsEmpty()==false && value!=m_WcCc)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("select Cccode from sdCc where Cccode='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<=0)
      {
         m_Query->Close();
         throw Exception("成本中心:"+value+"的资料未定义!");
      }
      m_Query->Close();
    }
    m_WcCc = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcWxFlg(int value)
{
    if(value!=0 && value!=1)
      throw Exception("外协工作中心标志只能取值(0-非外协,1-外协.)");
    m_WcWxFlg = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcWoe(int value)
{
    if(value!=1 && value!=2)
      throw Exception("费用分摊方法只能取值(1-工时,2-机时.)");
    m_WcWoe = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcPer(double value)
{
    if(value<0)
      throw Exception("加工费率不能小于零!");
    m_WcPer = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcFer(double value)
{
    if(value<0)
      throw Exception("固定费率不能小于零!");
    m_WcFer = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcMer(double value)
{
    if(value<0)
      throw Exception("机器费率不能小于零!");
    m_WcMer = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcVer(double value)
{
    if(value<0)
      throw Exception("可变费率不能小于零!");
    m_WcVer = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcMhr(double value)
{
    if(value<0)
      throw Exception("工时费率不能小于零!");
    m_WcMhr = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcPrate(double value)
{
    if(value<0)
      throw Exception("计件费率不能小于零!");
    m_WcPrate = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcPeor(double value)
{
    if(value<0)
      throw Exception("加班费率不能小于零!");
    m_WcPeor = value;
}
//-----------------------------------------------------------------------------
void __fastcall TsdWc::SetWcUser(AnsiString value)
{
    if(value.IsEmpty())
       throw Exception("操作员代码不能为空!");
    if(value.Length()>18)
       throw Exception("操作员代码长度不能大于18!");
    if(value!=m_WcUser)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("select UserCode from sdUser where UserCode='"+value+"'");
      m_Query->Open();
      if(m_Query->RecordCount<=0)
      {
        m_Query->Close();
        throw Exception("操作员:"+value+"的资料未定义!");
      }
      m_Query->Close();
    }
    m_WcUser = value;
}
//-----------------------------------------------------------------------------
TsdWc::TsdWc(TDataComm *DC)
     :TsdStandard(DC)
{
    try
    {
        QueryString="SELECT * FROM sdWc";
        FilterString="";
        OrderString=" WcCode ";
        EmptyValue(0);
        EmptyValue(1);
    }
    catch(Exception &e)
    {
        throw Exception("初始化出错!");
    }
}
//---------------------------------------------------------------------------
TsdWc::TsdWc()
     :TsdStandard()
{
    try
    {
        QueryString="SELECT * FROM sdWc";
        FilterString="";
        OrderString=" WcCode ";
        EmptyValue(0);
        EmptyValue(1);
    }
    catch(Exception &e)
    {
        throw Exception("初始化出错!");
    }
}
//---------------------------------------------------------------------------

AnsiString TsdWc::GetFieldValue(euWc sdFieldName)
{
    switch(sdFieldName)
    {
      case fiWcCode:
        return WcCode;
      case fiWcName:
        return WcName;
      case fiWcDesc:
        return WcDesc;
      case fiWcReplWc:
        return WcReplWc;
      case fiWcShopCode:
        return WcShopCode;
      case fiWcCalFlg:
        return AnsiString(WcCalFlg);
      case fiWcKey:
        return AnsiString(WcKey);
      case fiWcPow:
        return AnsiString(WcPow);
      case fiWcWod:
        return AnsiString(WcWod);
      case fiWcHow:
        return AnsiString(WcHow);
      case fiWcMow:
        return AnsiString(WcMow);
      case fiWcEffi:
        return AnsiString(WcEffi);
      case fiWcUseRate:
        return AnsiString(WcUseRate);
      case fiWcCc:
        return WcCc;
      case fiWcWxFlg:
        return AnsiString(WcWxFlg);
      case fiWcWoe:
        return AnsiString(WcWoe);
      case fiWcPer:
        return AnsiString(WcPer);
      case fiWcFer:
        return AnsiString(WcFer);
      case fiWcMer:
        return AnsiString(WcMer);
      case fiWcVer:
        return AnsiString(WcVer);
      case fiWcMhr:
        return AnsiString(WcMhr);
      case fiWcPrate:
        return AnsiString(WcPrate);
      case fiWcPeor:
        return AnsiString(WcPeor);
      case fiWcUser:
        return WcUser;
      case fiWcSysDate:
        return WcSysDate;
      default:
        throw Exception("当前字段未定义可取值!");
    }
}
//---------------------------------------------------------------------------

void TsdWc::SetFieldValue(euWc sdFieldName, AnsiString Value)
{
    switch(sdFieldName)
    {
      case fiWcCode:
        WcCode=Value;
        break;
      case fiWcName:
        WcName=Value;
        break;
      case fiWcDesc:
        WcDesc=Value;
        break;
      case fiWcReplWc:
        WcReplWc=Value;
        break;
      case fiWcShopCode:
        WcShopCode=Value;
        break;
      case fiWcCalFlg:
        WcCalFlg=Value.ToInt();
        break;
      case fiWcKey:
        WcKey=Value.ToInt();
        break;
      case fiWcPow:
        WcPow=Value.ToDouble();
        break;
      case fiWcWod:
        WcWod=Value.ToInt();
        break;
      case fiWcHow:
        WcHow=Value.ToInt();
        break;
      case fiWcMow:
        WcMow=Value.ToInt();
        break;
      case fiWcEffi:
        WcEffi=Value.ToDouble();
        break;
      case fiWcUseRate:
        WcUseRate=Value.ToDouble();
        break;
      case fiWcCc:
        WcCc=Value;
        break;
      case fiWcWxFlg:
        WcWxFlg=Value.ToInt();
        break;
      case fiWcWoe:
        WcWoe=Value.ToInt();
        break;
      case fiWcPer:
        WcPer=Value.ToDouble();
        break;
      case fiWcFer:
        WcFer=Value.ToDouble();
        break;
      case fiWcMer:
        WcMer=Value.ToDouble();
        break;
      case fiWcVer:
        WcVer=Value.ToDouble();
        break;
      case fiWcMhr:
        WcMhr=Value.ToDouble();
        break;
      case fiWcPrate:
        WcPrate=Value.ToDouble();
        break;
      case fiWcPeor:
        WcPeor=Value.ToDouble();
        break;
      case fiWcUser:
        WcUser=Value;
        break;
      default:
        throw Exception("当前字段未定义可赋值!");
    }
}
//---------------------------------------------------------------------------

void TsdWc::Update()
{
    if(CurStatus==0||CurStatus==1)
       throw Exception("当前不是编辑状态,不能进行存盘操作!");
    m_StoredProc->Close();
    if(CurStatus==2||CurStatus==4)
    {
      m_StoredProc->ProcedureName="sdWc_Insert";
      m_StoredProc->Parameters->Clear();
      m_StoredProc->Parameters->CreateParameter("@WcCode",ftString,pdInput,18,m_WcCode);
      m_StoredProc->Parameters->CreateParameter("@WcName",ftString,pdInput,20,m_WcName);
      m_StoredProc->Parameters->CreateParameter("@WcDesc",ftString,pdInput,40,m_WcDesc);
      m_StoredProc->Parameters->CreateParameter("@WcReplWc",ftString,pdInput,18,m_WcReplWc);
      m_StoredProc->Parameters->CreateParameter("@WcShopCode",ftString,pdInput,18,m_WcShopCode);
      m_StoredProc->Parameters->CreateParameter("@WcCalFlg",ftInteger,pdInput,1,m_WcCalFlg);
      m_StoredProc->Parameters->CreateParameter("@WcKey",ftInteger,pdInput,1,m_WcKey);
      m_StoredProc->Parameters->CreateParameter("@WcPow",ftFloat,pdInput,10,m_WcPow);
      m_StoredProc->Parameters->CreateParameter("@WcWod",ftInteger,pdInput,10,m_WcWod);
      m_StoredProc->Parameters->CreateParameter("@WcHow",ftInteger,pdInput,10,m_WcHow);
      m_StoredProc->Parameters->CreateParameter("@WcMow",ftInteger,pdInput,10,m_WcMow);
      m_StoredProc->Parameters->CreateParameter("@WcEffi",ftFloat,pdInput,12,m_WcEffi);
      m_StoredProc->Parameters->CreateParameter("@WcUseRate",ftFloat,pdInput,12,m_WcUseRate);
      m_StoredProc->Parameters->CreateParameter("@WcCc",ftString,pdInput,18,m_WcCc);
      m_StoredProc->Parameters->CreateParameter("@WcWxFlg",ftInteger,pdInput,1,m_WcWxFlg);
      m_StoredProc->Parameters->CreateParameter("@WcWoe",ftInteger,pdInput,1,m_WcWoe);
      m_StoredProc->Parameters->CreateParameter("@WcPer",ftFloat,pdInput,12,m_WcPer);
      m_StoredProc->Parameters->CreateParameter("@WcFer",ftFloat,pdInput,12,m_WcFer);
      m_StoredProc->Parameters->CreateParameter("@WcMer",ftFloat,pdInput,12,m_WcMer);
      m_StoredProc->Parameters->CreateParameter("@WcVer",ftFloat,pdInput,12,m_WcVer);
      m_StoredProc->Parameters->CreateParameter("@WcMhr",ftFloat,pdInput,12,m_WcMhr);
      m_StoredProc->Parameters->CreateParameter("@WcPrate",ftFloat,pdInput,12,m_WcPrate);
      m_StoredProc->Parameters->CreateParameter("@WcPeor",ftFloat,pdInput,12,m_WcPeor);
      m_StoredProc->Parameters->CreateParameter("@WcUser",ftString,pdInput,18,m_WcUser);
      m_StoredProc->Parameters->CreateParameter("@WcSysDate",ftString,pdOutput,40,m_WcSysDate);
      m_StoredProc->ExecProc();
      m_WcSysDate=m_StoredProc->Parameters->ParamValues["@WcSysDate"];
      m_StoredProc->Close();

    }
    else
    {
      m_StoredProc->ProcedureName="sdWc_update";
      m_StoredProc->Parameters->Clear();
      m_StoredProc->Parameters->CreateParameter("@W_WcCode",ftString,pdInput,18,b_WcCode);
      m_StoredProc->Parameters->CreateParameter("@WcCode",ftString,pdInput,18,m_WcCode);
      m_StoredProc->Parameters->CreateParameter("@WcName",ftString,pdInput,20,m_WcName);
      m_StoredProc->Parameters->CreateParameter("@WcDesc",ftString,pdInput,40,m_WcDesc);
      m_StoredProc->Parameters->CreateParameter("@WcReplWc",ftString,pdInput,18,m_WcReplWc);
      m_StoredProc->Parameters->CreateParameter("@WcShopCode",ftString,pdInput,18,m_WcShopCode);
      m_StoredProc->Parameters->CreateParameter("@WcCalFlg",ftInteger,pdInput,1,m_WcCalFlg);
      m_StoredProc->Parameters->CreateParameter("@WcKey",ftInteger,pdInput,1,m_WcKey);
      m_StoredProc->Parameters->CreateParameter("@WcPow",ftFloat,pdInput,10,m_WcPow);
      m_StoredProc->Parameters->CreateParameter("@WcWod",ftInteger,pdInput,10,m_WcWod);
      m_StoredProc->Parameters->CreateParameter("@WcHow",ftInteger,pdInput,10,m_WcHow);
      m_StoredProc->Parameters->CreateParameter("@WcMow",ftInteger,pdInput,10,m_WcMow);
      m_StoredProc->Parameters->CreateParameter("@WcEffi",ftFloat,pdInput,12,m_WcEffi);
      m_StoredProc->Parameters->CreateParameter("@WcUseRate",ftFloat,pdInput,12,m_WcUseRate);
      m_StoredProc->Parameters->CreateParameter("@WcCc",ftString,pdInput,18,m_WcCc);
      m_StoredProc->Parameters->CreateParameter("@WcWxFlg",ftInteger,pdInput,1,m_WcWxFlg);
      m_StoredProc->Parameters->CreateParameter("@WcWoe",ftInteger,pdInput,1,m_WcWoe);
      m_StoredProc->Parameters->CreateParameter("@WcPer",ftFloat,pdInput,12,m_WcPer);
      m_StoredProc->Parameters->CreateParameter("@WcFer",ftFloat,pdInput,12,m_WcFer);
      m_StoredProc->Parameters->CreateParameter("@WcMer",ftFloat,pdInput,12,m_WcMer);
      m_StoredProc->Parameters->CreateParameter("@WcVer",ftFloat,pdInput,12,m_WcVer);
      m_StoredProc->Parameters->CreateParameter("@WcMhr",ftFloat,pdInput,12,m_WcMhr);
      m_StoredProc->Parameters->CreateParameter("@WcPrate",ftFloat,pdInput,12,m_WcPrate);
      m_StoredProc->Parameters->CreateParameter("@WcPeor",ftFloat,pdInput,12,m_WcPeor);
      m_StoredProc->Parameters->CreateParameter("@WcUser",ftString,pdInput,18,m_WcUser);
      m_StoredProc->Parameters->CreateParameter("@WcSysDate",ftString,pdOutput,40,m_WcSysDate);
      m_StoredProc->ExecProc();
      m_WcSysDate=m_StoredProc->Parameters->ParamValues["@WcSysDate"];
      m_StoredProc->Close();
    }
    TsdWc *p=new TsdWc();
    if(CurStatus==2)
    {
        SetActionID(1);
        p->Assign(this);
        AddRecord((void *)p,p->WcCode);
    }
    else
    {
        SetActionID(1);
        p->Assign(this);
        ChangeRecord((void *)p,p->WcCode,this->b_WcCode);
    }
}
//---------------------------------------------------------------------------

void TsdWc::Delete()
{
    if(CurStatus!=1)
      throw Exception("当前状态不能进行删除操作!");
    if(m_WcCode.IsEmpty()==true)
      throw Exception("当前没有记录可以删除!");
    m_StoredProc->Close();
    m_StoredProc->ProcedureName="sdWc_Delete";
    m_StoredProc->Parameters->Clear();
    m_StoredProc->Parameters->CreateParameter("@W_WcCode",ftString,pdInput,18,b_WcCode);
    m_StoredProc->ExecProc();
    m_StoredProc->Close();
    DeleteRecord(this->b_WcCode);
}
//---------------------------------------------------------------------------

void TsdWc::BackupValue()
{
    b_WcCode = m_WcCode;
    b_WcName = m_WcName;

⌨️ 快捷键说明

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