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

📄 vw_wo.cpp

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

TfrmVW_Wo *frmVW_Wo;
//---------------------------------------------------------------------------
__fastcall TfrmVW_Wo::TfrmVW_Wo(TComponent* Owner)
    : TQueryBaseForm(Owner)
{
    FilterStr="";
    sSQL="";
    LateBillCode="";
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::tbQueryClick(TObject *Sender)
{
    if(!ShowQueryWindow())
       return;
    try{
       StartWaitForm("正在查询,请稍候...");
       FillGridWithData();
    }
    __finally
    {
       EndWaitForm();
    }
}
//---------------------------------------------------------------------------
bool __fastcall TfrmVW_Wo::ShowQueryWindow()
{
    TfrmQuForm *FQuery=new TfrmQuForm(this,this->Name);
    FQuery->ShowModal();
    if(FQuery->CancelQuery)
       return false;
    FilterStr=FQuery->CreateSqlString;
    delete FQuery;
    return true;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::ClearControl(bool BringToNext)
{
    return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::GetDataFromComObject()
{
    return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::WaitUserInput()
{
    return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::RefreshGridData(int mAction)
{
    return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::DisplayBill()
{
    return;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::GetBill(AnsiString BillID)
{
    return;
}
//---------------------------------------------------------------------------
//获取查询语句
AnsiString __fastcall TfrmVW_Wo::GetQueryStr()
{
    AnsiString Selectstr,Fromstr,Wherestr,Orderstr;
    Selectstr="select "
          +AnsiString("WoCode, ")      //工单单号
          +AnsiString("WoStatus1, ")   //工单状态
          +AnsiString("WoType1, ")     //工单类型
          +AnsiString("WoFrom1, ")     //工单来源
          +AnsiString("WoGoods, ")     //加工件码
          +AnsiString("WoUnit, ")      //计量单位
          +AnsiString("WoQty, ")       //要求数量
          +AnsiString("WoCQty, ")      //完工数量
          +AnsiString("WoEQty, ")      //合格数量
          +AnsiString("WoWQty, ")      //废品数量
          +AnsiString("WoRQty, ")      //返工数量
          +AnsiString("WoSQty, ")      //次品数量
          +AnsiString("WoSoCode, ")    //订单单号
          +AnsiString("WoSodLine, ")   //订单行号
          +AnsiString("WoDate, ")      //录入日期
          +AnsiString("WoRDate, ")     //要求日期
          +AnsiString("WoSDate, ")     //开始日期
          +AnsiString("WoMDate, ")     //MRP日期
          +AnsiString("WoCancel1, ")   //作废标志
          +AnsiString("WoCancelDate, ")//作废日期
          +AnsiString("WoCheck1, ")    //审核标志
          +AnsiString("WoChecker, ")   //审核人
          +AnsiString("WoCheckDate, ") //审核日期
          +AnsiString("WoClose1, ")    //结清标志
          +AnsiString("WoCloseDate "); //结清日期

    Fromstr=" from SDVW_Wo ";
    if(FilterStr=="")
       Wherestr="";
    else
       Wherestr=" where "+FilterStr;
    Orderstr=" order by WoDate desc,WoCode desc ";
    sSQL=Selectstr+Fromstr+Wherestr+Orderstr;
    return(sSQL);
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::FillGridWithData()
{
    TComResultSet *RsQuery;
    AnsiString ItemStr,sSql;
    //获取查询语句
    sSql=GetQueryStr();
    if(sSql=="")
       return;
    sgWo->RowCount=1;
    LateBillCode="";
    RsQuery=NewResultSet();
    RsQuery->Open(sSql,"");
    RsQuery->MoveFirst();
    while( RsQuery->Eof == 0)
    {
       ItemStr=RsQuery->FieldByName("WoCode")+
            "\t"+RsQuery->FieldByName("WoStatus1")+
            "\t"+RsQuery->FieldByName("WoType1")+
            "\t"+RsQuery->FieldByName("WoFrom1")+
            "\t"+RsQuery->FieldByName("WoGoods")+
            "\t"+RsQuery->FieldByName("WoUnit")+
            "\t"+RsQuery->FieldByName("WoQty")+
            "\t"+RsQuery->FieldByName("WoCQty")+
            "\t"+RsQuery->FieldByName("WoDate")+
            "\t"+RsQuery->FieldByName("WoRdate")+
            "\t"+RsQuery->FieldByName("WoSdate")+
            "\t"+RsQuery->FieldByName("WoCheck1")+
            "\t"+RsQuery->FieldByName("WoClose1")+
            "\t"+RsQuery->FieldByName("WoSoCode")+
            "\t"+RsQuery->FieldByName("WoSodLine");
       sgWo->AddItem(ItemStr);
       RsQuery->MoveNext();
    }
    RsQuery->Close();
    delete RsQuery;
}
//---------------------------------------------------------------------------

void __fastcall TfrmVW_Wo::muFirstClick(TObject *Sender)
{
   if(sgWo->RowCount > 1)
      sgWo->Row=1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::muNextClick(TObject *Sender)
{
   if(sgWo->RowCount > 1 && sgWo->Row < sgWo->RowCount-1)
      sgWo->Row=sgWo->Row+1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::muLastClick(TObject *Sender)
{
   if(sgWo->RowCount > 1)
      sgWo->Row=sgWo->RowCount-1;
}
//---------------------------------------------------------------------------
void __fastcall TfrmVW_Wo::tbRefreshClick(TObject *Sender)
{
    if(sSQL=="")
       return;
    FillGridWithData();
}
//---------------------------------------------------------------------------

void __fastcall TfrmVW_Wo::sgWoDblClick(TObject *Sender)
{
    int ARow=sgWo->Row;
    int ACol=sgWo->Col;
    if(ARow>0 && ACol==0)
    {
       try{
          frmVW_Wod =new TfrmVW_Wod(this);
          frmVW_Wod->WoCode=sgWo->Cells[ACol][ARow];
          frmVW_Wod->ShowModal();
       }
       __finally
       {
          delete frmVW_Wod;
       }
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmVW_Wo::muPreviousClick(TObject *Sender)
{
   if(sgWo->RowCount > 1 && sgWo->Row > 1)
      sgWo->Row=sgWo->Row-1;
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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