D10myBahong/T01贸易生产计划/U_ContractSel.pas
DESKTOP-E401PHE\Administrator 3e0a685b19 1
2025-02-14 17:29:15 +08:00

276 lines
7.5 KiB
ObjectPascal
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_ContractSel;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, ToolWin, ComCtrls, U_BaseHelp, cxGridCustomTableView,
cxGridTableView, cxGridDBTableView, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGrid, DBClient, ADODB, ImgList, StdCtrls, ExtCtrls,
cxTextEdit, cxGridCustomPopupMenu, cxGridPopupMenu, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxDateRanges, dxBarBuiltInMenu,
System.ImageList, U_BaseInput, cxButtonEdit, cxDropDownEdit, cxCheckBox,
Vcl.Menus, dxScrollbarAnnotations, cxImageList, cxContainer,
dxSkinWXI, dxSkinsCore, dxSkinsDefaultPainters, FrameDateSel, cxPC;
type
TfrmContractSel = class(TfrmBaseHelp)
ToolBar1: TToolBar;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
DS_1: TDataSource;
CDS_1: TClientDataSet;
TBSave: TToolButton;
TBClose: TToolButton;
ToolButton1: TToolButton;
ADOConnection1: TADOConnection;
Panel1: TPanel;
Label1: TLabel;
ConNo: TcxTextEdit;
GPM_1: TcxGridPopupMenu;
ImageList1: TImageList;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxGrid1: TcxGrid;
TV1: TcxGridDBTableView;
VC_SCSCode: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
cxGridDBColumn6: TcxGridDBColumn;
cxGridDBColumn7: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1OrderUnit: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
TV1Column1: TcxGridDBColumn;
TV1Column2: TcxGridDBColumn;
TV1Column3: TcxGridDBColumn;
TV1Column4: TcxGridDBColumn;
TV1Column5: TcxGridDBColumn;
TV1Column6: TcxGridDBColumn;
ThreeColorBase: TcxStyleRepository;
SHuangSe: TcxStyle;
SkyBlue: TcxStyle;
Default: TcxStyle;
QHuangSe: TcxStyle;
Red: TcxStyle;
FontBlue: TcxStyle;
TextSHuangSe: TcxStyle;
FonePurple: TcxStyle;
FoneClMaroon: TcxStyle;
FoneRed: TcxStyle;
RowColor: TcxStyle;
handBlack: TcxStyle;
cxBlue: TcxStyle;
SHuangSeCu: TcxStyle;
TV1Column7: TcxGridDBColumn;
PM_1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
Label2: TLabel;
C_Name: TcxTextEdit;
Label3: TLabel;
BuyName: TcxTextEdit;
TV1Column8: TcxGridDBColumn;
TV1Column9: TcxGridDBColumn;
TV1Column10: TcxGridDBColumn;
Label4: TLabel;
GC_Name: TcxTextEdit;
Label5: TLabel;
CraftCode: TcxTextEdit;
TV1Column11: TcxGridDBColumn;
TV1Column12: TcxGridDBColumn;
cxImageList_bar: TcxImageList;
ToolButton2: TToolButton;
frmFrameDateSel1: TfrmFrameDateSel;
ToolButton3: TToolButton;
cxTabControl1: TcxTabControl;
TV1Column13: TcxGridDBColumn;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TV1DblClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ConNoKeyPress(Sender: TObject; var Key: Char);
procedure ToolButton3Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
FCoType, FAuthority, FConNo, FC_Code: string;
{ Public declarations }
end;
var
frmContractSel: TfrmContractSel;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmContractSel.FormCreate(Sender: TObject);
begin
inherited;
try
with ADOConnection1 do
begin
Connected := false;
ConnectionString := DConString;
Connected := true;
end;
ADOQueryBaseCmd.Connection := ADOConnection1;
ADOQueryBaseTemp.Connection := ADOConnection1;
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
end;
end;
procedure TfrmContractSel.ConNoKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
InitGrid();
end;
end;
procedure TfrmContractSel.cxTabControl1Change(Sender: TObject);
begin
inherited;
initGrid();
end;
procedure TfrmContractSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ConNo.SetFocus;
Action := cahide;
end;
procedure TfrmContractSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,B.*,ShrinkageRate=(select ShrinkageRate from Bs_Cloth_Info E WHERE E.C_CODE=B.C_CODE)');
sql.Add(' ,SumOrdQty=ISNULL((select SUM(OrdQty) from Trade_Plan_Sub X where X.ConSid=B.ConSid ),0) ');
sql.Add(' from BS_Contract_Main A inner join BS_Contract_Sub B on A.ConMId=B.ConMId ');
sql.Add(' where isnull(A.status,''0'')=''9''');
sql.Add(' and A.ConType in (''<27><><EFBFBD><EFBFBD>'',''<27><><EFBFBD><EFBFBD>'') ');
if trim(fconNo) <> '' then
sql.Add(' and conNo=' + quotedstr(fconNo));
if trim(fC_Code) <> '' then
sql.Add(' and C_Code=' + quotedstr(fC_Code));
case cxTabControl1.TabIndex of
1:
begin
sql.Add(' and ISNULL((select SUM(OrdQty) from Trade_Plan_Sub X where X.ConSid=B.ConSid ),0)>=B.ConQty');
end;
2:
begin
sql.Add(' and ISNULL((select SUM(OrdQty) from Trade_Plan_Sub X where X.ConSid=B.ConSid ),0)<B.ConQty');
end;
end;
sql.add(' and A.ConDate>=' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date))));
sql.add(' and A.ConDate<' + quotedstr(Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1))));
// ShowMessage(SQL.text);
Open;
end;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmContractSel.N1Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmContractSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmContractSel.FormShow(Sender: TObject);
begin
inherited;
frmFrameDateSel1.BegDate.Date := SGetServerDate(ADOQueryTemp) - 180;
frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp);
InitGrid();
ReadCxGrid(Trim(self.Caption), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmContractSel.TBCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmContractSel.TBSaveClick(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmContractSel.ToolButton1Click(Sender: TObject);
begin
ConNo.SetFocus;
ModalResult := 1;
end;
procedure TfrmContractSel.ToolButton2Click(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
end;
procedure TfrmContractSel.ToolButton3Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmContractSel.TV1DblClick(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmContractSel.FormDestroy(Sender: TObject);
begin
inherited;
frmContractSel := nil;
end;
end.