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

📄 pgd.cpp

📁 一个以前收集的基于C/S架构的ERP客户端源代码
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma link "RecBaseForm"
#pragma hdrstop
#include "Pgd.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "fpanel"
#pragma link "SDGrid"
#pragma link "SDEdit"
#pragma link "SDComboBox"
#pragma resource "*.dfm"
TfrmPgd *frmPgd;
AnsiString LastPgdSupply;
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::ClearControl(bool BringToNext)
{
    if(BringToNext)
    {
       return;
    }
//    StrFlg=                 false;
    sePgdCode->Text         ="";
    sePgdName->Text         ="";
    sePgdGoodsCode->Text    ="";
    sePgdGoodsName->Text    ="";
    sePgdPot->Text          ="0.00";
    sePgdPoc->Text          ="0.00";
    scPgdBuyer->ItemIndex   =-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::GetDataFromComObject()
{
  sePgdCode->Text =GetFieldValue("PgdCode");
  sgPgd->LocateGrid(1,GetFieldValue("PgdGoodsCode"));
  sePgdName->Text = GetFieldValue("PgdName");
  sePgdGoodsCode->Text=GetFieldValue("PgdGoodsCode");
  sePgdGoodsName->Text = GetFieldValue("GoodsName");
  sePgdPot->Text = GetFieldValue("PgdPot");
  sePgdPoc->Text = GetFieldValue("PgdPoc");
  scPgdBuyer->LocateKey(GetFieldValue("Pgdbuyer"));
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::SendDataToComObject()
{
    if(sePgdCode->Text=="")
     throw Exception("物料代码不能为空");
    if(sePgdGoodsCode->Text=="")
     throw Exception("供应商物料代码不能为空");
    if(sePgdPot->Text == "")
     throw Exception("请输入可供应时间期限");
    if(sePgdPoc->Text == "")
     throw Exception("请输入可供应能力大小");
    if(scPgdBuyer->ItemIndex ==-1)
     throw Exception("物料采购员不能为空,请在采购员资料中输入");
    SetFieldValue("PgdSupplyCode",scPgdSupplyCode->ItemData[1]);
    SetFieldValue("PgdCode",sePgdCode->Text);
    SetFieldValue("PgdName",sePgdName->Text);
    SetFieldValue("PgdGoodsCode",sePgdGoodsCode->Text);
    SetFieldValue("GoodsName",sePgdGoodsName->Text);
    SetFieldValue("PgdPot",sePgdPot->Text);
    SetFieldValue("PgdPoc",sePgdPoc->Text);
    SetFieldValue("PgdBuyer",scPgdBuyer->ItemData[1]);

}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::WaitUserInput()
{
   sePgdGoodsCode->SetFocus();
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmPgd::GetDataToGrid()
{
    AnsiString  s;
    s = "\t" +  GetFieldValue("PgdGoodsCode")+
        "\t" + GetFieldValue("PgdCode")  +
        "\t" + GetFieldValue("PgdName");
    return(s);
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::RefreshGridData(int mAction)
{
    AnsiString ItemStr;
    ItemStr = GetDataToGrid();
    if (mAction == 0)
    {
        sgPgd->AddItem(ItemStr);
    }else if(mAction == 1)
    {
        int i   =   sgPgd->Row;
        sgPgd->ChangeItem(ItemStr,i);
    }else if(mAction == 2)
    {
        sgPgd->RemoveItem(sgPgd->Row);
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::FillGridWithData()
{
    AnsiString ItemStr;
    comServer->MoveFirst();
    sgPgd->RowCount = 1;
    while(comServer->Eof == 0)
    {
        ItemStr = GetDataToGrid();
        sgPgd->AddItem(ItemStr);
        comServer->MoveNext();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::InitEditControl()
{
    ClientGroup->AddComponent(2,true,true,false, sgPgd,sgPgd->Name);
    ClientGroup->AddComponent(2,false,false,true, FloatPanel1,FloatPanel1->Name);
    ClientGroup->AddComponent(2,true,true,false, scPgdSupplyCode,scPgdSupplyCode->Name);
    //ClientGroup->AddComponent(2,true,true,true, sePgdGoodsName,sePgdGoodsName->Name);
    FillComboBox(Handle,scPgdSupplyCode,"SELECT SUPPLYCODE,supplyName FROM SDSUPPLY  where supplycancel=0  order by SupplyCode","supplyName","SUPPLYCODE");
    FillComboBox(Handle,scPgdBuyer,"Select Buyername,BuyerCode from sdBuyer order by buyercode","Buyername","BuyerCode");
    ClientGroup->AddComponent(2,true,true,true, scPgdBuyer,scPgdBuyer->Name);


}
//---------------------------------------------------------------------------

__fastcall TfrmPgd::TfrmPgd(TComponent* Owner, HWND chWnd, AnsiString MidCode,AnsiString WhereStr)
   : TRecBaseForm(Owner,chWnd,MidCode,WhereStr)

{

}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::FormShow(TObject *Sender)
{
    ClearControl(false);
    LastPgdSupply="";
    l_Query->Close();
    l_Query->Open("select goodsname,goodscode from  sdgoods","goodscode");
    scPgdSupplyCodeClick(Sender);

}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::scPgdSupplyCodeClick(TObject *Sender)
{
    AnsiString s;

    s = scPgdSupplyCode->ItemData[1];
    if(s.IsEmpty())
      return;
    if(LastPgdSupply==s)
      return;
    LastPgdSupply=s;
    s = "PgdSupplyCode = '" +s+"'";
    comServer->FilterString = WideString(s);
    comServer->Query();
    FillGridWithData();
    comServer->MoveFirst();
    if(comServer->Bof || comServer->Eof)
       GetDataFromComObject();
    StrFlg=true;
}
//---------------------------------------------------------------------------void __fastcall TfrmPgd::muAddDetailClick(TObject *Sender)
void __fastcall TfrmPgd::sePgdGoodsCodeButtonClick(TObject *Sender)
{
  AnsiString SqlStr;
  SqlStr=" goodscancel=0 ";
  l_Query->Close();
  l_Query->Open("select parametercode,parametervalue from sdparameter where parametercode = '10302' and parametervalue=1","Parametercode");
  if(l_Query->RecordCount>0)
  SqlStr+=" and goodsbuyer = '"+g_sdUserCode+"'";
  if(OpenGoodsForm(SqlStr)) //过滤条件
    {
      sePgdGoodsCode->Text=GetGoodsValue(gtOpenForm,"GoodsCode");
      sePgdGoodsName->Text=GetGoodsValue(gtOpenForm,"GoodsName");
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmPgd::sgPgdClick(TObject *Sender)
{
    AnsiString KeyStr;
    if (sgPgd->Row > 0)
    {
         KeyStr=scPgdSupplyCode->ItemData[1]+"\t"+sgPgd->TextMatrix[sgPgd->Row][1];
         comServer->LocateByKey(KeyStr);
         GetDataFromComObject();
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::RefreshUpdateData(int MsgSrc,int MsgType)
{
}
//---------------------------------------------------------------
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::sePgdGoodsCodeExit(TObject *Sender)
{
  if(sePgdGoodsCode->Text!="")
   {
      AnsiString SqlStr;
      l_Query->Close();
      l_Query->Open("select goodscode,goodsname from sdgoods where  goodscode = '"+sePgdGoodsCode->Text+"'","goodscode");
      sePgdGoodsCode->Text=l_Query->FieldByName("GoodsCode");
      sePgdGoodsName->Text=l_Query->FieldByName("GoodsName");
   }

}
//---------------------------------------------------------------------------
void __fastcall TfrmPgd::SupplyCodeButtonButtonClick(TObject *Sender)
{
if(OpenSupplyForm("")==true)
    {
    scPgdSupplyCode->LocateKey(GetSupplyValue(gtOpenForm,"SupplyName"));
    scPgdSupplyCodeClick(Sender);
    }
}
//---------------------------------------------------------------------------


void __fastcall TfrmPgd::muAddDetailClick(TObject *Sender)
{
  TRecBaseForm::muAddDetailClick(NULL);
  scPgdBuyer->LocateKey(g_sdUserCode);
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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