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

📄 pfm_yfkcl2.pas

📁 POS收银系统
💻 PAS
字号:
unit pfm_yfkcl2;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  Db, ADODB, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls, Ado_DM, Buttons,
  pvar_lib;

type
  Tfm_yfkcl2 = class(TForm)
    ADOQuery2: TADOQuery;
    DataSource2: TDataSource;
    ADOQuery3: TADOQuery;
    DataSource3: TDataSource;
    GroupBox4: TGroupBox;
    DBGrid3: TDBGrid;
    Panel1: TPanel;
    GroupBox3: TGroupBox;
    DBGrid2: TDBGrid;
    GroupBox1: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    BitnAdd: TBitBtn;
    ADOQuery2fkcause: TStringField;
    ADOQuery2gysmc: TStringField;
    ADOQuery2lsh: TIntegerField;
    ADOQuery2yfkje: TBCDField;
    ADOQuery2fkje: TBCDField;
    ADOQuery2sqje: TFloatField;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure RadioButton1Click(Sender: TObject);
    procedure RadioButton2Click(Sender: TObject);
    procedure ADOQuery2CalcFields(DataSet: TDataSet);
    procedure BitnAddClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
fm_yfkcl2: Tfm_yfkcl2;
strYfkmx:TStringList;
strYfkcl:TStringList;
strJhdmx:TstringList;

implementation

uses pfm_yfkcl;

{$R *.DFM}
const
strSqlAll='select tb_yfkmx.fkcause,tb_yfkmx.lsh,isnull(tb_yfkmx.yfkje,0) as yfkje ,isnull((select sum(fkje) from tb_yfkcl where tb_yfkmx.lsh=tb_yfkcl.lsh group by tb_yfkcl.lsh), 0) as fkje from tb_yfkmx order by tb_yfkmx.lsh desc';
const
strSqlNotAll1='select tb_yfkmx.fkcause,tb_yfkmx.lsh,isnull(tb_yfkmx.yfkje,0) as yfkje ,isnull((select sum(fkje) from tb_yfkcl where tb_yfkmx.lsh=tb_yfkcl.lsh group by tb_yfkcl.lsh), 0) as fkje from tb_yfkmx';
strSqlNotAll2=' where yfkje>isnull((select sum(fkje) from tb_yfkcl where tb_yfkmx.lsh=tb_yfkcl.lsh group by tb_yfkcl.lsh), 0) order by tb_yfkmx.lsh desc';
procedure Tfm_yfkcl2.FormCreate(Sender: TObject);
var
i:integer;
begin
    strYfkmx:=TStringList.Create;
    strYfkcl:=TStringlist.Create;
    strJhdmx:=TStringlist.create;
    strYfkmx.Add('fkcause=应付款原因');
    strYfkmx.Add('lsh=流水号');
    strYfkmx.Add('yfkje=应付款金额');
    strYfkmx.add('fkje=已付款金额');
    strYfkmx.add('sqje=尚欠金额');
    strYfkmx.add('gysmc=供应商代码');
    strYfkmx.add('gysname=供应商名称');
    strYfkcl.add('fkcause=付款原因');
    strYfkcl.add('lsh=流水号');
    strYfkcl.add('fkje=已付金额');
    strYfkcl.add('fkrq=付款日期');
    strYfkcl.add('fkfs=付款方式');
    strYfkcl.add('djhm=单据号码');
    strYfkcl.add('jsrm=经手人');
    strYfkcl.add('shrm=审核人');
    strJhdmx.add('sptxm=商品条形码');
    strJhdmx.add('spbm=商品编码');
    strJhdmx.add('jhnum=进货数量');
    strJhdmx.add('jhdj=进货单价');
    strjhdmx.add('spmc=商品名称');


    adoQuery2.Open;
    adoQuery3.open;

    for i:=0 to dbgrid2.columns.count-1 do
    begin
        dbgrid2.columns[i].title.caption:=strYfkmx.values[dbgrid2.Columns[i].FieldName];
    end;
        for i:=0 to dbgrid3.columns.count-1 do
    begin
        dbgrid3.columns[i].title.caption:=strJhdmx.values[dbgrid3.Columns[i].FieldName];
    end;

end;

procedure Tfm_yfkcl2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    strYfkmx.Free;
    strYfkcl.free;
     strJhdmx.Free;
    action:=caFree;

end;

procedure Tfm_yfkcl2.RadioButton1Click(Sender: TObject);
begin
       // adoquery2.close;
       // adoquery
        //所有的未付清的应付款项和已付款项
        adoQuery2.Close;
        adoQuery2.SQL.clear;
        adoquery2.SQL.Add(strSqlNotAll1+strSqlNotAll2);
        adoQuery2.open;
    //    for i:=0 to dbgrid2.columns.count-1 do
   // begin
    //    dbgrid2.columns[i].title.caption:=strYfkmx.values[dbgrid2.Columns[i].FieldName];
   // end;

end;

procedure Tfm_yfkcl2.RadioButton2Click(Sender: TObject);
begin
        adoQuery2.Close;
        adoQuery2.SQL.clear;
        adoquery2.SQL.Add(strSqlAll);
        adoQuery2.open;

end;

procedure Tfm_yfkcl2.ADOQuery2CalcFields(DataSet: TDataSet);
begin
        adoquery2.FieldByName('sqje').asfloat:=adoquery2.fieldbyname('fkje').asfloat-adoquery2.fieldbyname('yfkje').asfloat;
end;

procedure Tfm_yfkcl2.BitnAddClick(Sender: TObject);
begin
  fm_yfkcl:=tfm_yfkcl.create(application);
  fm_yfkcl.Edit10.Text:=adoquery2.fieldbyname('lsh').asstring;
  //流水号
  fm_yfkcl.edit3.text:=adoquery2.fieldbyname('yfkje').asstring;
  //总计金额
  fm_yfkcl.edit2.text:=adoquery2.fieldbyname('fkje').asstring;
  //已付金额
  fm_yfkcl.edit4.text:=floattostr(-adoquery2.fieldbyname('sqje').asfloat);
  //尚欠金额
  fm_yfkcl.edit1.text:=adoquery2.fieldbyname('gysmc').asstring;
  //供应商名称
  //fm_yfkcl.edit2.text:=edit2.text;
  AddOptRecord('应付款处理,流水号'+fm_yfkcl.Edit10.Text);
  fm_yfkcl.showmodal;
  fm_yfkcl.free;

end;

end.

⌨️ 快捷键说明

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