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

📄 imreason.cpp

📁 速达开源ERP系统
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#include "ImReason.h"
//---------------------------------------------------------------------------
#pragma hdrstop
#pragma package(smart_init)
#pragma link "RecBaseForm"
#pragma link "fpanel"
#pragma link "SDComboBox"
#pragma link "SDEdit"
#pragma link "SDGrid"
#pragma resource "*.dfm"

TfrmImReason *frmImReason;
//---------------------------------------------------------------------------
__fastcall TfrmImReason::TfrmImReason(TComponent* Owner)
    : TRecBaseForm(Owner,euSdImReason,"")
{
}
//---------------------------------------------------------------------------

AnsiString __fastcall TfrmImReason::GetFieldValue(int FieldIndex)
{
    AnsiString S;
    S = ReadFieldValue(comServer,FieldIndex);
    return(S);
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::ClearControl(bool BringToNext)
{
    if(!BringToNext)
    {
        seImReasonCode->Text = "";
        memImReasonDesc->Text ="";
        scImReasonFrom->ItemIndex = 0;
        scImReasonType->ItemIndex = 0;
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::GetDataFromComObject()
{
    seImReasonCode->Text = GetFieldValue(fiImReasonCode);
    sgImReason->LocateGrid(1,GetFieldValue(fiImReasonCode));
    memImReasonDesc->Text = GetFieldValue(fiImReasonDesc);
    scImReasonFrom->LocateKey(GetFieldValue(fiImReasonFrom));
    scImReasonType->LocateKey(GetFieldValue(fiImReasonType));
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::SendDataToComObject()
{
    WriteFieldValue(comServer,fiImReasonCode,seImReasonCode->Text);
    WriteFieldValue(comServer,fiImReasonDesc,memImReasonDesc->Text);
    if(scImReasonFrom->ItemData[1] == "")
     throw Exception("请选择来源");
    WriteFieldValue(comServer,fiImReasonFrom,scImReasonFrom->ItemData[1]);
    if(scImReasonType->ItemData[1] == "")
     throw Exception("请选择类型");
    WriteFieldValue(comServer,fiImReasonType,scImReasonType->ItemData[1]);
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::WaitUserInput()
{
    seImReasonCode->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmImReason::GetDataToGrid()
{
    AnsiString  s;
    s = "\t" + GetFieldValue(fiImReasonCode) +
        "\t" + GetFieldValue(fiImReasonDesc);
    return(s);
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::RefreshGridData(int mAction)
{
    AnsiString ItemStr;
    ItemStr = GetDataToGrid();

    if (mAction == 0)      //Add
    {
        sgImReason->AddItem(ItemStr);
    }
    else if(mAction == 1)  //Edit
    {
        int i = sgImReason->Row;
        sgImReason->ChangeItem(ItemStr,i);
    }
    else if(mAction == 2)  //Del
    {
        sgImReason->RemoveItem(sgImReason->Row);
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::FillGridWithData()
{
    AnsiString ItemStr;

    comServer->MoveFirst();
    sgImReason->RowCount  = 1;
    while (comServer->Eof == 0)
    {
        ItemStr = GetDataToGrid();
        sgImReason->AddItem(ItemStr);
        comServer->MoveNext();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::InitEditControl()
{
    ClientGroup->AddComponent(2,true,true,false,sgImReason,sgImReason->Name);
    ClientGroup->AddComponent(2,false,false,true,FloatPanel1,FloatPanel1->Name);
//    ClientGroup->AddComponent(2,false,false,false,seImReasonCode,seImReasonCode->Name);

    scImReasonFrom->AddItems("1-采购","1");
    scImReasonFrom->AddItems("2-销售","2");
    scImReasonFrom->AddItems("3-生产","3");
    scImReasonFrom->AddItems("4-库存","4");
    scImReasonFrom->AddItems("5-质检","5");

    scImReasonType->AddItems("1-入库","1");
    scImReasonType->AddItems("2-出库","2");
    scImReasonType->AddItems("3-调拨","3");
    scImReasonType->AddItems("4-报废","4");
    scImReasonType->AddItems("5-盘点","5");
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::FormClose(TObject *Sender, TCloseAction &Action)
{
    TRecBaseForm::FormClose(Sender,Action);
}
//---------------------------------------------------------------------------
void __fastcall TfrmImReason::FormShow(TObject *Sender)
{
    FillGridWithData();
    comServer->MoveFirst();
    GetDataFromComObject();
}
//---------------------------------------------------------------------------

void __fastcall TfrmImReason::sgImReasonClick(TObject *Sender)
{
    int ARow=sgImReason->Row;
    if (ARow > 0)
       comServer->LocateByKey(WideString(sgImReason->TextMatrix[ARow][1]));
    if (!comServer->Eof)
       GetDataFromComObject();
}
//---------------------------------------------------------------------------


void __fastcall TfrmImReason::seImReasonCodeExit(TObject *Sender)
{
    if(CurrentState==caNormal)
    {
      comServer->LocateByKey(WideString(seImReasonCode->Text));
      GetDataFromComObject();
    }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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