D10SZKaiXiYa/A00通用窗体/U_SalesContract_ZZDSXSel.pas

251 lines
7.5 KiB
ObjectPascal
Raw Normal View History

2025-06-06 15:41:48 +08:00
unit U_SalesContract_ZZDSXSel;
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, dxSkinsCore, dxSkinsDefaultPainters, dxScrollbarAnnotations,
2025-06-07 17:31:25 +08:00
Clipbrd, dxSkinBasic, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel,
dxSkinCoffee, dxSkinDarkroom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast,
dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky,
dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinOffice2016Colorful,
dxSkinOffice2016Dark, dxSkinOffice2019Black, dxSkinOffice2019Colorful,
dxSkinOffice2019DarkGray, dxSkinOffice2019White, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringtime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinTheBezier, dxSkinValentine, dxSkinVisualStudio2013Blue,
dxSkinVisualStudio2013Dark, dxSkinVisualStudio2013Light, dxSkinVS2010,
dxSkinWhiteprint, dxSkinWXI, dxSkinXmas2008Blue;
2025-06-06 15:41:48 +08:00
type
TfrmSalesContract_ZZDSXSel = 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: TEdit;
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;
cxGridLevel1: TcxGridLevel;
TV1Column1: TcxGridDBColumn;
TV1Column3: 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: TEdit;
Label3: TLabel;
OrderNo: TEdit;
TV1Column8: TcxGridDBColumn;
TV1Column9: TcxGridDBColumn;
TV1Column10: TcxGridDBColumn;
TV1Column13: TcxGridDBColumn;
TV1Column14: TcxGridDBColumn;
N3: TMenuItem;
TV1Column15: TcxGridDBColumn;
TV1Column16: TcxGridDBColumn;
2025-06-07 17:31:25 +08:00
TV1Column2: TcxGridDBColumn;
TV1Column4: TcxGridDBColumn;
2025-06-06 15:41:48 +08:00
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 ConNoChange(Sender: TObject);
procedure N3Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
FCoType, FAuthority: string;
{ Public declarations }
end;
var
frmSalesContract_ZZDSXSel: TfrmSalesContract_ZZDSXSel;
implementation
uses
U_DataLink, U_RTFun;
{$R *.dfm}
procedure TfrmSalesContract_ZZDSXSel.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 TfrmSalesContract_ZZDSXSel.ConNoChange(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 TfrmSalesContract_ZZDSXSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ConNo.SetFocus;
Action := cahide;
end;
procedure TfrmSalesContract_ZZDSXSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
2025-07-05 09:59:21 +08:00
SQL.Add('SELECT A.*, B.*, C.*');
SQL.Add(', SXQty = round(OrdQty * C.MeterQty / 1000, 2)');
SQL.Add(', SQQty = (SELECT SUM(Y.Qty) FROM Pur_YarnPlan_Main X');
SQL.Add(' INNER JOIN Pur_YarnPlan_Sub Y ON X.PurMId = Y.PurMId');
SQL.Add(' WHERE ISNULL(X.LX, '''') = '<>쵥''');
SQL.Add(' AND X.OrderNo = A.OrderNo');
SQL.Add(' AND ISNULL(X.status, ''0'') = ''-1'')');
SQL.Add(', LYQty = (SELECT SUM(X.Qty) FROM BS_Yarn_IO X');
SQL.Add(' WHERE X.IOFlag = ''<27><><EFBFBD><EFBFBD>''');
SQL.Add(' AND X.ToOrdNo = A.OrderNo');
SQL.Add(' AND X.Y_Code = C.Y_Code)');
SQL.Add('FROM Tat_Plan_Main A');
SQL.Add('INNER JOIN Tat_Plan_Sub B ON A.Mainid = B.MainId');
SQL.Add('INNER JOIN Tat_Plan_Yarn C ON A.Mainid = C.MainId');
SQL.Add('WHERE A.Status = ''9''');
SQL.Add('AND C.Y_Code <> ''''');
2025-06-06 15:41:48 +08:00
Open;
end;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmSalesContract_ZZDSXSel.N1Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmSalesContract_ZZDSXSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmSalesContract_ZZDSXSel.N3Click(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Trim(CDS_1.fieldbyname(TV1.Controller.FocusedColumn.DataBinding.FilterFieldName).AsString)));
end;
procedure TfrmSalesContract_ZZDSXSel.FormShow(Sender: TObject);
begin
inherited;
InitGrid();
ReadCxGrid(Trim(self.Caption) + '1', TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmSalesContract_ZZDSXSel.TBCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmSalesContract_ZZDSXSel.TBSaveClick(Sender: TObject);
begin
WriteCxGrid(Trim(self.Caption) + '1', TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmSalesContract_ZZDSXSel.ToolButton1Click(Sender: TObject);
begin
ConNo.SetFocus;
ModalResult := 1;
end;
procedure TfrmSalesContract_ZZDSXSel.TV1DblClick(Sender: TObject);
begin
ModalResult := 1;
end;
procedure TfrmSalesContract_ZZDSXSel.FormDestroy(Sender: TObject);
begin
inherited;
frmSalesContract_ZZDSXSel := nil;
end;
end.