Uxstj.pas
上传用户:jiete_yjc
上传日期:2010-02-11
资源大小:422k
文件大小:6k
源码类别:

医药行业

开发平台:

Delphi

  1. unit Uxstj;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, ComCtrls, Grids, DBGridEh, StdCtrls, Mask, DBCtrlsEh, Buttons,
  6.   PrnDbgeh;
  7. type
  8.   Tfxstj = class(TForm)
  9.     Label1: TLabel;
  10.     PrintDBGridEh1: TPrintDBGridEh;
  11.     TabControl2: TTabControl;
  12.     Label2: TLabel;
  13.     Label4: TLabel;
  14.     BitBtn3: TBitBtn;
  15.     fromdate: TDBDateTimeEditEh;
  16.     todate: TDBDateTimeEditEh;
  17.     BitBtn5: TBitBtn;
  18.     SpeedButton1: TSpeedButton;
  19.     SpeedButton2: TSpeedButton;
  20.     SpeedButton3: TSpeedButton;
  21.     SpeedButton4: TSpeedButton;
  22.     DBGridEh1: TDBGridEh;
  23.     procedure BitBtn5Click(Sender: TObject);
  24.     procedure SpeedButton2Click(Sender: TObject);
  25.     procedure SpeedButton4Click(Sender: TObject);
  26.     procedure SpeedButton3Click(Sender: TObject);
  27.     procedure SpeedButton1Click(Sender: TObject);
  28.     procedure BitBtn3Click(Sender: TObject);
  29.     procedure FormClose(Sender: TObject; var Action: TCloseAction);
  30.     procedure FormShow(Sender: TObject);
  31.   private
  32.     printtitle:string;
  33.     { Private declarations }
  34.   public
  35.     { Public declarations }
  36.   end;
  37. var
  38.   fxstj: Tfxstj;
  39. implementation
  40. uses Udm;
  41. {$R *.dfm}
  42. procedure Tfxstj.BitBtn5Click(Sender: TObject);
  43. begin
  44. printdbgrideh1.Title.Text:=' 销 售 统 计 ' +'('+fromdate.Text+'-'+todate.Text +'  '+printtitle+')' ;
  45. printdbgrideh1.AfterGridText.Text:=datetostr(date);
  46. printdbgrideh1.Preview;
  47. end;
  48. procedure Tfxstj.SpeedButton2Click(Sender: TObject);
  49. var sqlstr,wherestr:string;
  50. begin
  51.   
  52.   printtitle:=speedbutton2.Caption;
  53.  sqlstr:='select a.部门名称,sum(b.金额) as 销售金额 , sum(b.金额-b.成本金额) as 利润 from partment a,cr b ,ygb c where (b.类型=''零售'' or b.类型=''批发'' ) and b.开票人=c.ygid and c.所属部门=a.部门编号 ' ;
  54.  if (fromdate.Text='    -  -  ') and (todate.Text<>'    -  -  ') then
  55.    wherestr:=' and 日期<='''+trim(todate.Text)+'''' ;
  56.   if (fromdate.Text<>'    -  -  ') and (todate.Text<>'    -  -  ') then
  57.   wherestr:=' and 日期>='''+trim(fromdate.Text)+''' and 日期<='''+trim(todate.Text)+'''' ;
  58.   if (fromdate.Text<>'    -  -  ') and (todate.Text='    -  -  ') then
  59.   wherestr:=' and  日期>='''+trim(fromdate.Text)+'''' ;
  60.   if (fromdate.Text='    -  -  ') and (todate.Text='    -  -  ') then
  61.   wherestr:='  ';
  62.   sqlstr:=sqlstr+wherestr+'  group by a.部门名称 ';
  63.  dbgrideh1.Columns[0].FieldName:='部门名称';
  64.  adodm.txstj.Close;
  65.  adodm.txstj.CommandText:= sqlstr;
  66.  adodm.txstj.Open;
  67. end;
  68. procedure Tfxstj.SpeedButton4Click(Sender: TObject);
  69. var sqlstr,wherestr:string;
  70. begin
  71. printtitle:=speedbutton4.Caption;
  72.  sqlstr:='select c.姓名,sum(b.金额) as 销售金额 , sum(b.金额-b.成本金额) as 利润 from cr b ,ygb c where (b.类型=''零售'' or b.类型=''批发'' ) and b.开票人=c.ygid ' ;
  73.  if (fromdate.Text='    -  -  ') and (todate.Text<>'    -  -  ') then
  74.    wherestr:=' and 日期<='''+trim(todate.Text)+'''' ;
  75.   if (fromdate.Text<>'    -  -  ') and (todate.Text<>'    -  -  ') then
  76.   wherestr:=' and 日期>='''+trim(fromdate.Text)+''' and 日期<='''+trim(todate.Text)+'''' ;
  77.   if (fromdate.Text<>'    -  -  ') and (todate.Text='    -  -  ') then
  78.   wherestr:=' and  日期>='''+trim(fromdate.Text)+'''' ;
  79.   if (fromdate.Text='    -  -  ') and (todate.Text='    -  -  ') then
  80.   wherestr:='  ';
  81.   sqlstr:=sqlstr+wherestr+'  group by c.姓名 ';
  82.   dbgrideh1.Columns[0].FieldName:='姓名';
  83. adodm.txstj.Close;
  84.  adodm.txstj.CommandText:= sqlstr;
  85.  adodm.txstj.Open;
  86. end;
  87. procedure Tfxstj.SpeedButton3Click(Sender: TObject);
  88. var sqlstr,wherestr:string;
  89. begin
  90. printtitle:=speedbutton3.Caption;
  91.  sqlstr:='select 类型,sum(金额) as 销售金额 , sum(金额-成本金额) as 利润 from cr where (类型=''零售'' or 类型=''批发'' )  ' ;
  92.  if (fromdate.Text='    -  -  ') and (todate.Text<>'    -  -  ') then
  93.    wherestr:=' and 日期<='''+trim(todate.Text)+'''' ;
  94.   if (fromdate.Text<>'    -  -  ') and (todate.Text<>'    -  -  ') then
  95.   wherestr:=' and 日期>='''+trim(fromdate.Text)+''' and 日期<='''+trim(todate.Text)+'''' ;
  96.   if (fromdate.Text<>'    -  -  ') and (todate.Text='    -  -  ') then
  97.   wherestr:=' and  日期>='''+trim(fromdate.Text)+'''' ;
  98.   if (fromdate.Text='    -  -  ') and (todate.Text='    -  -  ') then
  99.   wherestr:='  ';
  100.   sqlstr:=sqlstr+wherestr+'  group by 类型';
  101.   dbgrideh1.Columns[0].FieldName:='类型';
  102.  adodm.txstj.Close;
  103.  adodm.txstj.CommandText:= sqlstr;
  104.  adodm.txstj.Open;
  105. end;
  106. procedure Tfxstj.SpeedButton1Click(Sender: TObject);
  107. var sqlstr,wherestr:string;
  108. begin
  109. printtitle:=speedbutton1.Caption;
  110.  sqlstr:='select c.名称,sum(b.金额) as 销售金额 , sum(b.金额-b.成本金额) as 利润, c.id as 药品标识号  from cr b ,ypzdk c where (b.类型=''零售'' or b.类型=''批发'' ) and b.ypid=c.id ' ;
  111.  if (fromdate.Text='    -  -  ') and (todate.Text<>'    -  -  ') then
  112.    wherestr:=' and 日期<='''+trim(todate.Text)+'''' ;
  113.   if (fromdate.Text<>'    -  -  ') and (todate.Text<>'    -  -  ') then
  114.   wherestr:=' and 日期>='''+trim(fromdate.Text)+''' and 日期<='''+trim(todate.Text)+'''' ;
  115.   if (fromdate.Text<>'    -  -  ') and (todate.Text='    -  -  ') then
  116.   wherestr:=' and  日期>='''+trim(fromdate.Text)+'''' ;
  117.   if (fromdate.Text='    -  -  ') and (todate.Text='    -  -  ') then
  118.   wherestr:='  ';
  119.   sqlstr:=sqlstr+wherestr+'  group by  c.id, c.名称';
  120. adodm.txstj.Close;
  121.  adodm.txstj.CommandText:= sqlstr;
  122.  adodm.txstj.Open;
  123.  dbgrideh1.Columns[0].FieldName:='名称';
  124. end;
  125. procedure Tfxstj.BitBtn3Click(Sender: TObject);
  126. begin
  127. close;
  128. end;
  129. procedure Tfxstj.FormClose(Sender: TObject; var Action: TCloseAction);
  130. begin
  131. adodm.txstj.Close;
  132. action:=cafree;
  133. end;
  134. procedure Tfxstj.FormShow(Sender: TObject);
  135. begin
  136.   adodm.txstj.Close;
  137.   
  138. end;
  139. end.