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

📄 iosearch.cpp

📁 供销存软件
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "ioSearch.h"
#include "iosearchEnd.h"
#include "DataModule.h"
#include "login.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TioSearchForm *ioSearchForm;
//---------------------------------------------------------------------------
__fastcall TioSearchForm::TioSearchForm(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TioSearchForm::FormCreate(TObject *Sender)
{
          ComboBox1->ItemIndex=0;
}
//---------------------------------------------------------------------------
void __fastcall TioSearchForm::searchBtnClick(TObject *Sender)
{
     if(LoginForm->Edituser->Text=="admin")
     {    AnsiString str="select * from (";
          if(ComboBox1->ItemIndex==0){
                    str+="select a.入库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.客户名称 as 仓库或出库单位,a.接收仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 入库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //入库
          }else if(ComboBox1->ItemIndex==1){
                    str+="select a.出库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.客户名称 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 出库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //销售(出库)
          }else if(ComboBox1->ItemIndex==2){
                    str+="select a.退库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.客户名称 as 仓库或出库单位,a.接收仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 退库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //退库
          }else if(ComboBox1->ItemIndex==3){
                     str+="select a.退货时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.客户名称 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 退货信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                    //退货
          }else if(ComboBox1->ItemIndex==4){
                     str+="select a.转库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.接收仓库 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 转库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                    //转库
          }else if(ComboBox1->ItemIndex==5){
                     str+="select a.报损时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额/2 as 合计金额,a.报损仓库 as 仓库或出库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 报损信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                     //报损
          }
          str+=")";
          str+=" where ";
          str+="时间>=#";
          str+=Date1->Date.DateString();
          str+="# and ";
          str+="时间<=#";
          str+=Date2->Date.DateString();
          str+='#';
          if(CB1->Checked)
                if(Dnum->Text==""){
                        ShowMessage("单号不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="流水号=";
                        str+=Dnum->Text.Trim().ToInt();
                        str+=" and ";
                }
          if(CB2->Checked)
                if(Dnum->Text==""){
                        ShowMessage("操作员不能为空!");
                        Pnum->SetFocus();
                }else{
                        str+="操作员='";
                        str+=Pnum->Text.Trim();
                        str+="' and ";
                }
          if(CB4->Checked)
                if(Money->Text==""){
                        ShowMessage("合计金额不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="合计金额=";
                        str+=Money->Text.Trim().ToDouble();
                        str+=" and ";
                }
          if(CB5->Checked)
                if(DWname->Text==""){
                        ShowMessage("单位名称不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="仓库或出库单位='";
                        str+=DWname->Text.Trim();
                        str+="'";
                }
          //ShowMessage(str);
          DM->ADOQ->Close();
          DM->ADOQ->SQL->Clear();
          DM->ADOQ->SQL->Add(str);
          DM->ADOQ->Open();
          TiosearchEndForm *iosearchEndForm=new TiosearchEndForm(this);
          iosearchEndForm->ShowModal();
          delete  iosearchEndForm;
          DM->ADOQ->Close();
     }else{
          AnsiString str="select * from (";
          if(ComboBox1->ItemIndex==0){
                    str+="select a.入库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.客户名称 as 仓库或出库单位,a.接收仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 入库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //入库
          }else if(ComboBox1->ItemIndex==1){
                    str+="select a.出库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.客户名称 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 出库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //销售(出库)
          }else if(ComboBox1->ItemIndex==2){
                    str+="select a.退库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.客户名称 as 仓库或出库单位,a.接收仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                    str+=" from 退库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                   //退库
          }else if(ComboBox1->ItemIndex==3){
                     str+="select a.退货时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.客户名称 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 退货信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                    //退货
          }else if(ComboBox1->ItemIndex==4){
                     str+="select a.转库时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.接收仓库 as 仓库或出库单位,a.出货仓库 as 仓库或入库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 转库信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                    //转库
          }else if(ComboBox1->ItemIndex==5){
                     str+="select a.报损时间 as 时间,a.编号 as 流水号,a.结算人 as 操作员,b.事务,a.总金额 as 合计金额,a.报损仓库 as 仓库或出库单位,a.结算方式,b.结算单号 as 帐务结算";
                     str+=" from 报损信息表 as a inner join 应收应付明细表 as b on a.编号=b.单号";
                     //报损
          }
          str+=")";
          str+=" where ";
          str+="时间>=#";
          str+=Date1->Date.DateString();
          str+="# and ";
          str+="时间<=#";
          str+=Date2->Date.DateString();
          str+='#';
          if(CB1->Checked)
                if(Dnum->Text==""){
                        ShowMessage("单号不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="流水号=";
                        str+=Dnum->Text.Trim().ToInt();
                        str+=" and ";
                }
          if(CB2->Checked)
                if(Dnum->Text==""){
                        ShowMessage("操作员不能为空!");
                        Pnum->SetFocus();
                }else{
                        str+="操作员='";
                        str+=Pnum->Text.Trim();
                        str+="' and ";
                }
          if(CB4->Checked)
                if(Money->Text==""){
                        ShowMessage("合计金额不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="合计金额=";
                        str+=Money->Text.Trim().ToDouble();
                        str+=" and ";
                }
          if(CB5->Checked)
                if(DWname->Text==""){
                        ShowMessage("单位名称不能为空!");
                        Dnum->SetFocus();
                }else{
                        str+="仓库或出库单位='";
                        str+=DWname->Text.Trim();
                        str+="'";
                }
          //ShowMessage(str);
          DM->ADOQ->Close();
          DM->ADOQ->SQL->Clear();
          DM->ADOQ->SQL->Add(str);
          DM->ADOQ->Open();
          TiosearchEndForm *iosearchEndForm=new TiosearchEndForm(this);
          iosearchEndForm->ShowModal();
          delete  iosearchEndForm;
          DM->ADOQ->Close();
     }
}
//---------------------------------------------------------------------------
void __fastcall TioSearchForm::closeBtnClick(TObject *Sender)
{
        Close();
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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