D10SZKaiXiYa/B02基础纱线仓库/U_SXPrice.pas
DESKTOP-E401PHE\Administrator 53e8f4820d 11
2025-03-01 10:55:52 +08:00

106 lines
2.5 KiB
ObjectPascal

unit U_SXPrice;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, DB, ADODB, VclTee.TeeGDIPlus, VCLTee.TeEngine,
VCLTee.Series, VCLTee.TeeProcs, VCLTee.Chart, VCLTee.DBChart;
type
TfrmSXPrice = class(TForm)
Panel1: TPanel;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DBChart1: TDBChart;
Series1: TFastLineSeries;
ADOQueryBaseTemp: TADOQuery;
ADOQueryBaseCmd: TADOQuery;
procedure Button2Click(Sender: TObject);
procedure initDbChart();
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
FY_Code, FYarn_Name: string;
{ Public declarations }
end;
var
frmSXPrice: TfrmSXPrice;
implementation
{$R *.dfm}
procedure TfrmSXPrice.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TfrmSXPrice.FormShow(Sender: TObject);
begin
initDbChart();
end;
procedure TfrmSXPrice.initDbChart();
var
i, j: integer;
begin
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add(' select A.NewPrice,SJ= CONVERT(varchar(100), Filltime, 23) from Bs_Yarn_Info_Price A where A.Y_Code=' + quotedstr(FY_Code));
SQL.Add(' order by A.Filltime ');
// ShowMessage(sql.text);
Open;
end;
if ADOQueryTemp.isempty then
exit;
//------------------------------------------
//图表加载数据前清理数据
with DbChart1 do
begin
j := SeriesCount;
if j <= 0 then
exit;
for i := 0 to j - 1 do
begin
dbchart1.Series[i].Active := false;
dbchart1.Series[i].DataSource := nil;
dbchart1.Series[i].Clear;
dbchart1.Series[i].XLabelsSource := '';
dbchart1.Series[i].YValues.ValueSource := '';
end;
end;
//加载图表
if ADOQueryTemp.Active = false then
exit;
with DBChart1 do
begin
j := SeriesCount;
if j <= 0 then
exit;
for i := 0 to j - 1 do
begin {清除series数据源}
dbchart1.Series[i].Active := false;
dbchart1.Series[i].DataSource := nil;
dbchart1.Series[i].Clear;
dbchart1.Series[i].XLabelsSource := '';
dbchart1.Series[i].YValues.ValueSource := '';
end;
DBChart1.Title.Text.Text := FYarn_Name + ' 价格走势图';
Series[0].DataSource := ADOQueryTemp;
Series[0].Active := true;
Series[0].XLabelsSource := ADOQueryTemp.fieldbyname('SJ').FieldName;
Series[0].YValues.ValueSource := ADOQueryTemp.fieldbyname('NewPrice').FieldName;
Series[0].CheckDatasource;
end;
end;
end.