D10myBiaoqi/T04贸易明细仓库/U_DeliTradePlanSel.pas
DESKTOP-E401PHE\Administrator 1251492f45 0113
2025-01-13 16:36:43 +08:00

267 lines
6.6 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_DeliTradePlanSel;
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, dxSkinsCore, dxSkinsDefaultPainters, cxNavigator,
dxDateRanges, dxBarBuiltInMenu, System.ImageList, U_BaseInput, cxCheckBox,
cxCalendar, Vcl.Menus, dxSkinWXI, dxScrollbarAnnotations;
type
TfrmDeliTradePlanSel = 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;
GPM_1: TcxGridPopupMenu;
ImageList1: TImageList;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column7: TcxGridDBColumn;
v1OrderNo: TcxGridDBColumn;
v1ConNo: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
v1OrdDefStr1: TcxGridDBColumn;
v1MPRTCodeName: TcxGridDBColumn;
v1MPRTSpec: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
v1MPRTMF: TcxGridDBColumn;
v1MPRTKZ: TcxGridDBColumn;
v1PRTColor: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1DeliveryDate: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Tv1Column2: TcxGridDBColumn;
Label3: TLabel;
Label2: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
OrderNo: TEdit;
C_Name: TEdit;
C_Color: TEdit;
C_ColorNo: TEdit;
C_Pattern: TEdit;
C_Code: TEdit;
ConNo: TEdit;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure OrderNoChange(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Tv1DblClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
procedure InitGrid();
{ Private declarations }
public
FCoType, FAuthority, FMainID: string;
{ Public declarations }
end;
var
frmDeliTradePlanSel: TfrmDeliTradePlanSel;
implementation
uses
U_DataLink, U_RTFun
//, U_RSTradePlanSel
;
{$R *.dfm}
procedure TfrmDeliTradePlanSel.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 TfrmDeliTradePlanSel.FormDestroy(Sender: TObject);
begin
inherited;
frmDeliTradePlanSel := nil;
end;
procedure TfrmDeliTradePlanSel.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := cahide;
end;
procedure TfrmDeliTradePlanSel.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.*,IOPS=ISNULL((select SUM(X.Piece) PS from Bs_Cloth_IO X');
sql.Add('where X.FromSubId=A.SubID and X.STKName='<>״<EFBFBD><D7B4>첼'' and IOFlag=''<27><><EFBFBD><EFBFBD>''), 0)');
sql.Add('from V_Trade_Plan_Fty A');
sql.add('where Status=''9'' ');
// sql.Add('select A.* from V_Trade_Plan_HJG A ');
// sql.add('where Status=''9'' AND WPQty<>0 AND GXS<>0');
// sql.add('Order by OrdDate Desc,subid');
// 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 TfrmDeliTradePlanSel.N1Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmDeliTradePlanSel.N2Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmDeliTradePlanSel.OrderNoChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS(ADOQueryMain, CDS_1);
SInitCDSData(ADOQueryMain, CDS_1);
end;
end;
procedure TfrmDeliTradePlanSel.FormShow(Sender: TObject);
begin
inherited;
ReadCxGrid('<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>' + Trim(FCoType), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
InitGrid();
end;
procedure TfrmDeliTradePlanSel.TBCloseClick(Sender: TObject);
begin
inherited;
Close;
end;
procedure TfrmDeliTradePlanSel.TBSaveClick(Sender: TObject);
begin
WriteCxGrid('<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>' + Trim(FCoType), TV1, '<27>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmDeliTradePlanSel.ToolButton1Click(Sender: TObject);
var
Count: Integer;
Value: string;
begin
Count := 1;
with ADOQueryMain do
begin
Close;
sql.Clear;
sql.Add('select A.* from Trade_Plan_Main A ');
sql.Add('Where MainId=''' + Trim(FMainId) + '''');
// ShowMessage(sql.Text);
Open;
end;
Value := ADOQueryMain.FieldByName('OrderNo').ASString;
with CDS_1 do
begin
First;
while not Eof do
begin
if CDS_1.fieldbyname('SSel').AsBoolean then
begin
if Value = '' then
begin
Value := FieldByName('OrderNo').AsString;
end;
if Value <> '' then
begin
if Value <> FieldByName('OrderNo').AsString then
begin
Count := Count + 1;
end;
end;
end;
Next;
end;
end;
if Count = 1 then
begin
ModalResult := 1;
end
else
begin
application.MessageBox('ѡ<><D1A1><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>ͬһ<CDAC>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
exit;
end;
end;
procedure TfrmDeliTradePlanSel.Tv1DblClick(Sender: TObject);
begin
ModalResult := 1;
end;
end.