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

📄 system.cpp

📁 邮 电 公 司 erp源码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
      p->Assign(this);
      AddRecord((void *)p,p->TableName);
      m_Query->Next();
    }
    MoveFirst();
  }
  m_Query->Close();
  return Count;
}

bool TsdTable::Find(AnsiString WhereStr)
{
  AnsiString m_SqlStr;
  if(WhereStr.IsEmpty()==true)
    throw Exception("查找表达式不能为空");
  m_SqlStr="select * from sdTable 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_sdField->FilterString=" FieldTableName='"+m_TableName+"'";
    m_sdField->OrderString=" FieldNo ";
    m_sdField->Query();
    m_Query->Close();
    return true;
  }
}


AnsiString TsdTable::GetItemValue(euField FieldName)
{
  return m_sdField->GetFieldValue(FieldName);
}


void TsdTable::SetItemValue(euField FieldName, AnsiString Value)
{
    m_sdField->SetFieldValue(FieldName,Value);
}


int __fastcall TsdTable::GetItemCount()
{
  try
  {
    return m_sdField->Count;
  }
  catch(...)
  {
    return 0;
  }
}


int __fastcall TsdTable::GetCurItemNo()
{
  return m_sdField->CurRecNo;
}

char __fastcall TsdTable::GetCurItemStatus()
{
  return m_sdField->CurStatus;
}


AnsiString __fastcall TsdTable::GetItemBookMark()
{
  return m_sdField->BookMark;
}


//==========================================================================
//*************TsdModule)系统功能维护***************************************
//==========================================================================

void __fastcall TsdModule::SetModuleUpperCode(AnsiString value)
{
    if(value.Length()>18)
    {
       throw Exception("上级功能模块分类编码长度不能超过18.");
    }
    if (value!=m_ModuleUpperCode)
    {
       int mLevel;
       m_Query->Close();
       m_Query->SQL->Clear();
       m_Query->SQL->Add("select ModuleLevel from sdModule where ModuleCode='"+value+"'");
       m_Query->Open();
       if(m_Query->RecordCount>0)
       {
          mLevel = m_Query->FieldValues["ModuleLevel"];
          mLevel = mLevel+1;
          m_ModuleLevel = mLevel;
          m_Query->Close();
       }
       else
       {
          m_Query->Close();
          throw Exception("数据库中没有上级功能模块分类编码:+'"+value+"'");
       }
     }
     m_ModuleUpperCode = value;
}
//------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleItem(AnsiString value)
{
    if(value.IsEmpty() == true )
      throw Exception("功能模块分类序号不能为空");
    if(value.Length()>18)
      throw Exception("功能模块分类序号长度不能超过18");
    if (value!=m_ModuleItem)
    {
      m_Query->Close();
      m_Query->SQL->Clear();
      m_Query->SQL->Add("SELECT * FROM sdModule WHERE  ModuleCode='"+Trim(m_ModuleUpperCode)+"'+'"+Trim(value)+"'");
      m_Query->Open();
      if(m_Query->RecordCount>0)
      {
        m_Query->Close();
        throw Exception("功能模块分类序号已经已存在.");
      }
      m_Query->Close();
    }
    m_ModuleItem = value;
}

//------------------------------------------------------------------------
void __fastcall TsdModule::SetModuleCaption(AnsiString value)
{
    if(value.IsEmpty()==true)
    {
       throw Exception("功能模块编码名不能为空");
    }
    if(value.Length()>20)
    {
       throw Exception("功能模块编码长度不能超过20");
    }
    m_ModuleCaption = value;
}
//------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleDesc(AnsiString value)
{
    m_ModuleDesc = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleNo(int value)
{
    m_ModuleNo = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleLevel(int value)
{
    if(value<=0)
       throw Exception("模块维护的层级数不能小于和等于零");
    m_ModuleLevel = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleFormName(AnsiString value)
{
    m_ModuleFormName = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModulePicName(AnsiString value)
{
    m_ModulePicName = value;
}

//--------------------------------------------------------------------------
void __fastcall TsdModule::SetModuleSelPicName(AnsiString value)
{
    m_ModuleSelPicName = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleMovePic(AnsiString value)
{
  m_ModuleMovePic=value;
}

//--------------------------------------------------------------------------
void __fastcall TsdModule::SetModuleNavpic(AnsiString value)
{
  m_ModuleNavpic=value;
}
//--------------------------------------------------------------------------
void __fastcall TsdModule::SetModuleType(int value)
{
    m_ModuleType = value;
}
//--------------------------------------------------------------------------

void __fastcall TsdModule::SetModuleCheck(int value)
{
    m_ModuleCheck = value;
}

void __fastcall TsdModule::SetModulePost(int value)
{
  m_ModulePost=value;
}

void __fastcall TsdModule::SetModuleCancel(int value)
{
  m_ModuleCancel=value;
}

void __fastcall TsdModule::SetModuleVisible(int value)
{
  if(value!=0 && value!=1)
     throw Exception("可见标志只能为(0-不可见,1-可见)");
  m_ModuleVisible=value;
}

void __fastcall TsdModule::SetModuleLib(int value)
{

  m_ModuleLib=value;
}
//--------------------------------------------------------------------------

TsdModule::TsdModule(TDataComm *DC)
:TsdStandard(DC)
{
  try
  {
    QueryString="select * from sdModule ";
    FilterString="";
    OrderString="ModuleCode,ModuleLevel";
    EmptyValue(0);
    EmptyValue(1);
  }
  catch(Exception &e)
  {
    throw Exception("初始化出错");
  }
}

TsdModule::TsdModule()
:TsdStandard()
{
  try
  {
    QueryString="select * from sdModule ";
    FilterString="";
    OrderString="ModuleCode,ModuleLevel";
    EmptyValue(0);
    EmptyValue(1);
  }
  catch(Exception &e)
  {
    throw Exception("初始化出错");
  }
}

AnsiString TsdModule::GetFieldValue(euModule sdFieldName)
{
    switch(sdFieldName)
    {
      case fiModuleCode:
        return ModuleCode;
      case fiModuleCaption:
        return ModuleCaption;
      case fiModuleItem:
        return ModuleItem;
      case fiModuleDesc:
        return ModuleDesc;
      case fiModuleNo:
        return AnsiString(ModuleNo);
      case fiModuleUpperCode:
        return ModuleUpperCode;
      case fiModuleLevel:
        return AnsiString(ModuleLevel);
      case fiModuleFormName:
        return ModuleFormName;
      case fiModulePicName:
        return ModulePicName;
      case fiModuleSelPicName:
        return ModuleSelPicName;
      case fiModuleMovePic:
        return ModuleMovePic;
      case fiModuleNavpic:
        return ModuleNavpic;
      case fiModuleType:
        return AnsiString(ModuleType);
      case fiModuleCheck:
        return AnsiString(ModuleCheck);
      case fiModulePost:
        return AnsiString(ModulePost);
      case fiModuleCancel:
        return AnsiString(ModuleCancel);
      case fiModuleVisible:
        return AnsiString(ModuleVisible);
      case fiModuleRight:
        return ModuleRight;
      case fiModuleLib:
        return ModuleLib;
      default:
        throw Exception("当前字段未定义成可取值");
    }
}


void TsdModule::SetFieldValue(euModule sdFieldName, AnsiString Value)
{
    switch(sdFieldName)
    {
      case fiModuleCaption:
        ModuleCaption=Value;
        break;
      case fiModuleItem:
        ModuleItem=Value;
        break;
      case fiModuleDesc:
        ModuleDesc=Value;
        break;
      case fiModuleNo:
        ModuleNo=Value.ToInt();
        break;
      case fiModuleLevel:
        ModuleLevel=Value.ToInt();
        break;
      case fiModuleUpperCode:
        ModuleUpperCode=Value;
        break;
      case fiModuleFormName:
        ModuleFormName=Value;
        break;
      case fiModulePicName:
        ModulePicName=Value;
        break;
      case fiModuleSelPicName:
        ModuleSelPicName=Value;
        break;
      case fiModuleMovePic:
        ModuleMovePic=Value;
        break;
      case fiModuleNavpic:
        ModuleNavpic=Value;
        break;
      case fiModuleType:
        ModuleType=Value.ToInt();
        break;
      case fiModuleCheck:
        ModuleCheck=Value.ToInt();
        break;
      case fiModulePost:
        ModulePost=Value.ToInt();
        break;
      case fiModuleCancel:
        ModuleCancel=Value.ToInt();
        break;
      case fiModuleVisible:
        ModuleVisible=Value.ToInt();
        break;
      case fiModuleLib:
        ModuleLib=Value.ToInt();
        break;
      default:
        throw Exception("当前字段未定义成可赋值");
    }
}

void TsdModule::Update()
{
  if(CurStatus==0||CurStatus==1)
    throw Exception("当前不是编辑状态,不能进行存盘操作!");
  m_ModuleCode=Trim(m_ModuleUpperCode)+Trim(m_ModuleItem);
  if(m_ModuleCode.IsEmpty()==true)
    throw Exception("模块代码不能为空!");
  if(m_ModuleCaption.IsEmpty()==true)
    throw Exception("功能名称不能为空!");
  m_StoredProc->Close();
  if(CurStatus==2||CurStatus==4)
  {
    m_StoredProc->ProcedureName="sdModule_Insert";
    m_StoredProc->Parameters->Clear();
    m_StoredProc->Parameters->CreateParameter("@ModuleCode",ftString,pdInput,20,m_ModuleCode);
    m_StoredProc->Parameters->CreateParameter("@ModuleCaption",ftString,pdInput,40,m_ModuleCaption);
    m_StoredProc->Parameters->CreateParameter("@ModuleItem",ftString,pdInput,20,m_ModuleItem);
    m_StoredProc->Parameters->CreateParameter("@ModuleDesc",ftString,pdInput,255,m_ModuleDesc);
    m_StoredProc->Parameters->CreateParameter("@ModuleNo",ftInteger,pdInput,10,m_ModuleNo);
    m_StoredProc->Parameters->CreateParameter("@ModuleUpperCode",ftString,pdInput,20,m_ModuleUpperCode);
    m_StoredProc->Parameters->CreateParameter("@ModuleLevel",ftInteger,pdInput,10,m_ModuleLevel);
    m_StoredProc->Parameters->CreateParameter("@ModuleFormName",ftString,pdInput,30,m_ModuleFormName);
    m_StoredProc->Parameters->CreateParameter("@ModulePicName",ftString,pdInput,80,m_ModulePicName);
    m_StoredProc->Parameters->CreateParameter("@ModuleSelPicName",ftString,pdInput,80,m_ModuleSelPicName);
    m_StoredProc->Parameters->CreateParameter("@ModuleMovePic",ftString,pdInput,80,m_ModuleMovePic);
    m_StoredProc->Parameters->CreateParameter("@ModuleNavpic",ftString,pdInput,80,m_ModuleNavpic);
    m_StoredProc->Parameters->CreateParameter("@ModuleType",ftSmallint,pdInput,10,m_ModuleType);
    m_StoredProc->Parameters->CreateParameter("@ModuleCheck",ftSmallint,pdInput,10,m_ModuleCheck);
    m_StoredProc->Parameters->CreateParameter("@ModulePost",ftSmallint,pdInput,10,m_ModulePost);
    m_StoredProc->Parameters->CreateParameter("@ModuleCancel",ftSmallint,pdInput,10,m_ModuleCancel);
    m_StoredProc->Parameters->CreateParameter("@ModuleVisible",ftSmallint,pdInput,10,m_ModuleVisible);
    m_StoredProc->Parameters->CreateParameter("@ModuleLib",ftInteger,pdInput,10,m_ModuleLib);
    m_StoredProc->ExecProc();
    m_StoredProc->Close();
  }
  else
  {
    m_StoredProc->ProcedureName="sdModule_Update";
    m_StoredProc->Parameters->Clear();
    m_StoredProc->Parameters->CreateParameter("@W_ModuleCode",ftString,pdInput,20,b_ModuleCode);
    m_StoredProc->Parameters->CreateParameter("@ModuleCode",ftString,pdInput,20,m_ModuleCode);
    m_StoredProc->Parameters->CreateParameter("@ModuleCaption",ftString,pdInput,40,m_ModuleCaption);
    m_StoredProc->Parameters->CreateParameter("@ModuleItem",ftString,pdInput,20,m_ModuleItem);
    m_StoredProc->Parameters->CreateParameter("@ModuleDesc",ftString,pdInput,255,m_ModuleDesc);
    m_StoredProc->Parameters->CreateParameter("@ModuleNo",ftInteger,pdInput,10,m_ModuleNo);
    m_StoredProc->Parameters->CreateParameter("@ModuleUpperCode",ftString,pdInput,20,m_ModuleUpperCode);
    m_StoredProc->Parameters->CreateParameter("@ModuleLevel",ftInteger,pdInput,10,m_ModuleLevel);
    m_StoredProc->Parameters->CreateParameter("@ModuleFormName",ftString,pdInput,30,m_ModuleFormName);
    m_StoredProc->Parameters->CreateParameter("@ModulePicName",ftString,pdInput,80,m_ModulePicName);
    m_StoredProc->Parameters->CreateParameter("@ModuleSelPicName",ftString,pdInput,80,m_ModuleSelPicName);
    m_StoredProc->Parameters->CreateParameter("@ModuleMovePic",ftString,pdInput,80,m_ModuleMovePic);
    m_StoredProc->Parameters->CreateParameter("@ModuleNavpic",ftString,pdInput,80,m_ModuleNavpic);
    m_StoredProc->Parameters->CreateParameter("@ModuleType",ftSmallint,pdInput,10,m_ModuleType);
    m_StoredProc->Parameters->CreateParameter("@ModuleCheck",ftSmallint,pdInput,10,m_ModuleCheck);
    m_StoredProc->Parameters->CreateParameter("@ModulePost",ftSmallint,pdInput,10,m_ModulePost);
    m_StoredProc->Parameters->CreateParameter("@ModuleCancel",ftSmallint,pdInput,10,m_ModuleCancel);
    m_StoredProc->Parameters->CreateParameter("@ModuleVisible",ftSmallint,pdInput,10,m_ModuleVisible);
    m_StoredProc->Parameters->CreateParameter("@ModuleLib",ftInteger,pdInput,10,m_ModuleLib);
    m_StoredProc->ExecProc();
    m_StoredProc->Close();
  }
  TsdModule *p=new TsdModule();
  if(CurStatus==2)
  {
    SetActionID(1);
    p->Assign(this);
    AddRecord((void *)p,p->ModuleCode);
  }
  else
  {
    SetActionID(1);
    p->Assign(this);
    ChangeRecord(

⌨️ 快捷键说明

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