arsaph.cpp

来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 507 行 · 第 1/2 页

CPP
507
字号
     break;

   }
*/
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::sgArsaphDblClick(TObject *Sender)
{
    int iRow;
    iRow=sgArsaph->Row;
    if (iRow == 0)
    {
       return;
    }
    comServer->LocateItemByKey(sgArsaph->TextMatrix[iRow][1]);
    if (comServer->ItemCount>0)
    {
       GetDataFromComObject(2);   // Detail
       sgArsaph->Visible=false;
       fpArsaphDetail->Visible=true;
    }
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::sgArsaphSelectCell(TObject *Sender, int ACol,
      int ARow, bool &CanSelect)
{
    if (ARow > 0)
       comServer->LocateItemByKey(sgArsaph->TextMatrix[ARow][1]);
    if (!comServer->Eof)
       GetDataFromComObject(2);    // Detail
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::btnOKClick(TObject *Sender)
{
   try
   {
    if (CurrentState==caAddDetail||CurrentState==caAddBill)
    {
       if(DetailState==caAddDetail)
         comServer->AddItem();
       SendDataToComObject(2);
       comServer->AddToObject();
       ClearControl(2,false);
       seArsapdLine->SetFocus();
    }
    else
      ChangeToBrowseState();
   }
   catch(Exception &e)
   {
     throw Exception(e.Message);
   }
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::btnCancelClick(TObject *Sender)
{
     CancelChange();
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::FormShow(TObject *Sender)
{
    ClearControl(1,false); // Head
    ClearControl(2,false); // Detail
    MoveToFirst();
    ChangeToBrowseState();
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::seArsapdArCodeButtonClick(TObject *Sender)
{
    AnsiString SqlStr;
    TfrmWnQuery *p;
    if(scArsapdArType->ItemIndex==-1)
      return;
    try
    {
        StartWaitForm("正在查询,请稍候...");
        if(scArsapdArType->ItemData[1]=="1")
        {
         SqlStr="004[应收发票号][日期][客户][币种]";
         SqlStr+=" select ArivhCode,ArivhDate,ArivhCLIENT,ArivhCurrency  from sdArivh ";
         SqlStr+=" where Arivhcheck=1 order by Arivhcode";
         p=new TfrmWnQuery(this,"应收发票查询",SqlStr);
        }
        if(scArsapdArType->ItemData[1]=="2")
        {
         SqlStr="005[应收单号][日期][客户][币种][金额]";
         SqlStr+=" select ArobCode,ArobDate,ArobClient,ArobCurrency,ArobAmt  from sdArob ";
         SqlStr+=" where Arobcheck=1 order by Arobcode";
         p=new TfrmWnQuery(this,"应收单查询",SqlStr);
        }
     }
     __finally
     {
       EndWaitForm();
     }
     if(p->ShowModal()==mrOk)
     {
      seArsapdArCode->Text=p->ColData[1];
      m_ArClient=p->ColData[3];
      scArsapdArCurrency->LocateKey(p->ColData[4]);
      scArsapdArCurrency->Text=scArsapdArCurrency->ItemData[0];
      if(scArsapdArType->ItemData[1]=="2")
      {
        seArsapdArLine->ButtonVisible=false;
        seArsapdArLine->Enabled=false;
        seArsapdArLine->Text="0";
        seArsapdArAmt->Text=p->ColData[5];
        seArsapdApCode->Text="";
        seArsapdApLine->Text="0";
        scArsapdApCurrency->ItemIndex=-1;
        seArsapdApAmt->Text="";
      }
      else
      {
        seArsapdArLine->ButtonVisible=true;
        seArsapdArLine->Enabled=true;
      }

     }
     delete p;
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::seArsapdApCodeButtonClick(TObject *Sender)
{
    AnsiString SqlStr;
    TfrmWnQuery *p;
    if(scArsapdApType->ItemIndex==-1)
      return;
    if(m_ArClient=="")
      return;
    try
    {
        StartWaitForm("正在查询,请稍候...");
        if(scArsapdApType->ItemData[1]=="1")
        {
         SqlStr="003[应付发票号][日期][币种]";
         SqlStr+=" select ApivhCode,ApivhDate,ApivhCurrency  from sdApivh ";
         SqlStr+=" where Apivhcheck=1 and ApivhSupply='"+m_ArClient+"' order by Apivhcode";
         p=new TfrmWnQuery(this,"应付发票查询",SqlStr);
        }
        if(scArsapdApType->ItemData[1]=="2")
        {
         SqlStr="004[应付单号][日期][币种][金额]";
         SqlStr+=" select ApobCode,ApobDate,ApobCurrency,Apobamt  from sdApob ";
         SqlStr+=" where Apobcheck=1  and ApobSupply='"+m_ArClient+"'order by Apobcode";
         p=new TfrmWnQuery(this,"应付单查询",SqlStr);
        }
     }
     __finally
     {
       EndWaitForm();
     }
     if(p->ShowModal()==mrOk)
     {
      seArsapdApCode->Text=p->ColData[1];
      scArsapdApCurrency->LocateKey(p->ColData[3]);
      scArsapdApCurrency->Text=scArsapdApCurrency->ItemData[0];
      if(scArsapdApType->ItemData[1]=="2")
      {
        seArsapdApLine->ButtonVisible=false;
        seArsapdApLine->Enabled=false;
        seArsapdApLine->Text="0";
        seArsapdApAmt->Text=p->ColData[4];
        AnsiString  ArAmt=seArsapdArAmt->Text;
        AnsiString  ApAmt=seArsapdApAmt->Text;
        seArsapdConv->Text=AnsiString(ArAmt.ToDouble()/ApAmt.ToDouble());

      }
      else
      {
        seArsapdApLine->ButtonVisible=true;
        seArsapdApLine->Enabled=true;
      }
     }
     delete p;
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::seArsapdArLineButtonClick(TObject *Sender)
{
    AnsiString SqlStr;
    TfrmWnQuery *p;
    if(seArsapdArCode->Text=="")
      return;
    if(scArsapdArType->ItemData[1]!="1")
      return;
     try
    {
         StartWaitForm("正在查询,请稍候...");
         SqlStr="003[应收发票行号][货物劳务][金额]";
         SqlStr+=" select ArivdLine,ArivdGoods,ArivdAmt from sdArivd ";
         SqlStr+=" where  ArivdCode='"+seArsapdArCode->Text +"' order by ArivdLine";
         p=new TfrmWnQuery(this,"应收发票明细查询",SqlStr);
     }
     __finally
     {
       EndWaitForm();
     }
     if(p->ShowModal()==mrOk)
     {
        seArsapdArLine->Text=p->ColData[1];
        seArsapdArAmt->Text=p->ColData[3];
        seArsapdApCode->Text="";
        seArsapdApLine->Text="0";
        scArsapdApCurrency->ItemIndex=-1;
        seArsapdApAmt->Text="";

     }
     delete p;
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::seArsapdApLineButtonClick(TObject *Sender)
{
    AnsiString SqlStr;
    TfrmWnQuery *p;
    if(seArsapdApCode->Text=="")
      return;
    if(scArsapdApType->ItemData[1]!="1")
      return;
     try
    {
         StartWaitForm("正在查询,请稍候...");
         SqlStr="003[应付发票行号][货物劳务][金额]";
         SqlStr+=" select ApivdLine,ApivdGoods,ApivdAmt from sdApivd ";
         SqlStr+=" where  ApivdCode='"+seArsapdApCode->Text +"' order by ApivdLine";
         p=new TfrmWnQuery(this,"应付发票明细查询",SqlStr);
     }
     __finally
     {
       EndWaitForm();
     }
     if(p->ShowModal()==mrOk)
     {
      seArsapdApLine->Text=p->ColData[1];
      seArsapdApAmt->Text=p->ColData[3];

     }
     delete p;
     AnsiString  ArAmt=seArsapdArAmt->Text;
     AnsiString  ApAmt=seArsapdApAmt->Text;
     seArsapdConv->Text=AnsiString(ArAmt.ToDouble()/ApAmt.ToDouble());
}
//---------------------------------------------------------------------------
void __fastcall TfrmArsaph::seArsaphCodeExit(TObject *Sender)
{
    if(CurrentState==caNormal&&seArsaphCode->Text!=GetHeadValue("ArsaphCode"))
    {
      comServer->LocateByKey(seArsaphCode->Text);
      DisplayBill();
    }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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