2025-08-20 16:06:38 +08:00
unit U_TatSCTLLIST;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCalendar, cxButtonEdit, cxSplitter, RM_Common, RM_Class,
RM_e_Xls, RM_Dataset, RM_System, RM_GridReport, cxTextEdit, cxCheckBox,
BtnEdit, RM_BarCode, cxPC, cxLookAndFeels, cxLookAndFeelPainters, cxNavigator,
dxDateRanges, dxBarBuiltInMenu, U_BaseList, Vcl. Menus, dxScrollbarAnnotations,
cxContainer, dxCore, cxDateUtils, cxMaskEdit, cxDropDownEdit, dxSkinsCore,
dxSkinsDefaultPainters, cxProgressBar, dxSkinOffice2013White, dxSkinSharpPlus,
dxSkinWXI;
type
TfrmSCTLLIST = class( TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
GPM_1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOQueryPrint: TADOQuery;
DS_1: TDataSource;
CDS_1: TClientDataSet;
ToolButton2: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
ToolButton5: TToolButton;
CDS_2: TClientDataSet;
DS_2: TDataSource;
GPM_2: TcxGridPopupMenu;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v3Column8: TcxGridDBColumn;
Tv1Column1: TcxGridDBColumn;
v3Column1: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
v3Column6: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
v3Column16: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
EndDate: TcxDateEdit;
BegDate: TcxDateEdit;
Label9: TLabel;
Label1: TLabel;
ConNo: TcxTextEdit;
C_CODE: TcxTextEdit;
Label4: TLabel;
2025-08-23 16:39:17 +08:00
Tv1GKBH: TcxGridDBColumn;
2025-11-12 17:32:44 +08:00
cxPageControl3: TcxPageControl;
cxTabSheet1: TcxTabSheet;
GroupBox1: TGroupBox;
Y_Note_PLJ: TMemo;
Panel2: TPanel;
cxPageControl2: TcxPageControl;
cxGrid2: TcxGrid;
cxGridDBTableView1: TcxGridDBTableView;
TV1Column7: TcxGridDBColumn;
cxGridDBColumn3: TcxGridDBColumn;
cxGridDBColumn4: TcxGridDBColumn;
TV1Column13: TcxGridDBColumn;
cxGridDBColumn8: TcxGridDBColumn;
TV1Column6: TcxGridDBColumn;
TV1Column14: TcxGridDBColumn;
cxGridDBColumn1: TcxGridDBColumn;
TV1Column2: TcxGridDBColumn;
cxGridDBColumn2: TcxGridDBColumn;
TV1Column8: TcxGridDBColumn;
TV1Column11: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
cxTabSheet2: TcxTabSheet;
GroupBox2: TGroupBox;
Y_Note_PLW: TMemo;
Panel3: TPanel;
cxPageControl1: TcxPageControl;
cxGrid3: TcxGrid;
Tv2: TcxGridDBTableView;
Tv2Column7: TcxGridDBColumn;
v2Column10: TcxGridDBColumn;
cxGridDBColumn5: TcxGridDBColumn;
Tv2Column13: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
Tv2Column6: TcxGridDBColumn;
Tv2Column14: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
Tv2Column11: TcxGridDBColumn;
Tv2Column8: TcxGridDBColumn;
Tv2Column12: TcxGridDBColumn;
cxGridLevel3: TcxGridLevel;
CDS_3: TClientDataSet;
DS_3: TDataSource;
2025-08-20 16:06:38 +08:00
procedure FormClose( Sender: TObject; var Action: TCloseAction) ;
procedure TBCloseClick( Sender: TObject) ;
procedure TBRafreshClick( Sender: TObject) ;
procedure ConNoChange( Sender: TObject) ;
procedure FormShow( Sender: TObject) ;
procedure cxTabControl1Change( Sender: TObject) ;
procedure ToolButton2Click( Sender: TObject) ;
procedure ToolButton1Click( Sender: TObject) ;
procedure N1Click( Sender: TObject) ;
procedure N2Click( Sender: TObject) ;
procedure ToolButton3Click( Sender: TObject) ;
procedure ToolButton5Click( Sender: TObject) ;
procedure ConNoPropertiesChange( Sender: TObject) ;
procedure cxPageControl1Change( Sender: TObject) ;
procedure FormCreate( Sender: TObject) ;
2025-11-12 17:32:44 +08:00
procedure Tv1FocusedRecordChanged( Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean ) ;
2025-08-20 16:06:38 +08:00
private
FInt, PFInt: Integer ;
FFMainID, BPFlag: string ;
procedure InitGrid( ) ;
2025-11-12 17:32:44 +08:00
procedure InitClothYarn( MC_Code: string ) ;
2025-08-20 16:06:38 +08:00
{ Private declarations }
public
canshu1: string ;
{ Public declarations }
end ;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_LabelPrint;
{$R *.dfm}
procedure TfrmSCTLLIST. FormClose( Sender: TObject; var Action: TCloseAction) ;
begin
inherited ;
Action : = caFree;
WriteCxGrid( 'DCG13' , Tv1, '<27> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ' ) ;
end ;
procedure TfrmSCTLLIST. FormCreate( Sender: TObject) ;
begin
inherited ;
EndDate. Date : = SGetServerDate( ADOQueryTemp) ;
BegDate. Date : = EndDate. Date - 9 0 ;
end ;
procedure TfrmSCTLLIST. TBCloseClick( Sender: TObject) ;
begin
Close;
end ;
procedure TfrmSCTLLIST. InitGrid( ) ;
begin
try
ADOQueryMain. DisableControls;
with ADOQueryMain do
begin
Close;
sql. Clear;
sql. Add( 'SELECT * FROM V_CON_TL ' ) ;
SQL. Add( 'WHERE ConDate>' + quotedstr( FormatDateTime( 'yyyy-MM-dd' , BegDate. Date) ) ) ;
SQL. Add( 'and ConDate<=' + quotedstr( FormatDateTime( 'yyyy-MM-dd' , enddate. Date + 1 ) ) ) ;
2025-11-12 17:32:44 +08:00
// ShowMessage(SQL.Text);
2025-08-20 16:06:38 +08:00
Open;
end ;
SCreateCDS( ADOQueryMain, CDS_1) ;
SInitCDSData( ADOQueryMain, CDS_1) ;
finally
ADOQueryMain. EnableControls;
end ;
end ;
2025-11-12 17:32:44 +08:00
procedure TfrmSCTLLIST. InitClothYarn( MC_Code: string ) ;
var
zsqtyValue: string ;
begin
with ADOQueryTemp do
begin
Close;
sql. Clear;
sql. Add( 'select A.*,MainId=cast(' '' ' as varchar(30)),SubId=cast(' '' ' as varchar(30)) from BS_Cloth_Yarn A inner join Bs_Cloth_Info B on A.BCIID=B.BCIID' ) ;
sql. Add( ' where A.YRType=' '<27> <> ˿' ' and B.C_Code=' '' + Trim( MC_Code) + '' '' ) ;
Open;
end ;
SCreateCDS( ADOQueryTemp, CDS_2) ;
SInitCDSData( ADOQueryTemp, CDS_2) ;
ClearCDSColumn( CDS_2, [ 'YRId' , 'SubId' , 'MainId' ] ) ;
zsqtyValue : = CDS_1. FieldByName( 'zsqty' ) . AsString;
if zsqtyValue = '' then
zsqtyValue : = '0' ;
with ADOQueryTemp do
begin
Close;
sql. Clear;
sql. Add( 'select A.*,MainId=cast(' '' ' as varchar(30)),SubId=cast(' '' ' as varchar(30))' ) ;
SQL. Add( ' ,allYarn=A.MeterQty*ISNULL(' + zsqtyValue + ',0)/100' ) ;
sql. Add( ' from BS_Cloth_Yarn A inner join Bs_Cloth_Info B on A.BCIID=B.BCIID' ) ;
sql. Add( ' where A.YRType=' 'γ˿' ' and B.C_Code=' '' + Trim( MC_Code) + '' '' ) ;
// ShowMessage(SQL.Text);
Open;
end ;
SCreateCDS( ADOQueryTemp, CDS_3) ;
SInitCDSData( ADOQueryTemp, CDS_3) ;
ClearCDSColumn( CDS_3, [ 'YRId' , 'SubId' , 'MainId' ] ) ;
end ;
2025-08-20 16:06:38 +08:00
procedure TfrmSCTLLIST. N1Click( Sender: TObject) ;
begin
SelOKNo( cds_1, true )
end ;
procedure TfrmSCTLLIST. N2Click( Sender: TObject) ;
begin
SelOKNo( cds_1, false ) ;
end ;
procedure TfrmSCTLLIST. TBRafreshClick( Sender: TObject) ;
begin
InitGrid( ) ;
end ;
procedure TfrmSCTLLIST. ToolButton1Click( Sender: TObject) ;
var
WSql: string ;
begin
if CDS_1. IsEmpty then
Exit;
Tv1. OnFocusedRecordChanged : = nil ;
if CDS_1. Locate( 'SSel' , True , [ ] ) = False then
begin
Application. MessageBox( 'û<> <C3BB> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !' , '<27> <> ʾ ' , 0 ) ;
Exit;
end ;
WSql : = SelcdsKey( CDS_1, [ 'PCID' ] ) [ 0 ] ;
try
frmLabelPrint : = TfrmLabelPrint. Create( Application) ;
with frmLabelPrint do
begin
FPreviewPrint : = False ;
FLMType : = 'TatPlanCard' ;
FFiltration1 : = WSql;
if ShowModal = 1 then
begin
Self. InitGrid( ) ;
with ADOQueryCmd do
begin
Close;
sql. Clear;
sql. Add( 'update Tat_Plan_Card ' ) ;
sql. Add( 'set PRTer=' + quotedstr( DName) ) ;
sql. Add( ', PRTCount=PRTCount+1' ) ;
sql. Add( ', PRTDate=getdate()' ) ;
sql. Add( 'where EXISTS(select X.RTValue from [dbo].[F_Tool_SplitString](' + QuotedStr( WSql) + ',' ',' ') X where Tat_Plan_Card.PCID=X.RTValue ) ' ) ;
ExecSQL;
end ;
end ;
end ;
finally
frmLabelPrint. Free;
end ;
end ;
procedure TfrmSCTLLIST. ToolButton2Click( Sender: TObject) ;
begin
WriteCxGrid( trim( self. Caption) + '1' , Tv1, '<27> <> ͬ' ) ;
end ;
procedure TfrmSCTLLIST. ToolButton3Click( Sender: TObject) ;
var
WSql: string ;
begin
if CDS_1. IsEmpty then
Exit;
Tv1. OnFocusedRecordChanged : = nil ;
if CDS_1. Locate( 'SSel' , True , [ ] ) = False then
begin
Application. MessageBox( 'û<> <C3BB> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !' , '<27> <> ʾ ' , 0 ) ;
Exit;
end ;
WSql : = '' ;
CDS_1. DisableControls;
with CDS_1 do
begin
First;
while not Eof do
begin
if CDS_1. fieldbyname( 'SSel' ) . AsBoolean then
begin
if WSql < > '' then
begin
WSql : = WSql + ',' + ( Trim( CDS_1. fieldbyname( 'PCID' ) . AsString) ) ;
end
else
begin
WSql : = ( Trim( CDS_1. fieldbyname( 'PCID' ) . AsString) ) ;
end ;
end ;
Next;
end ;
end ;
CDS_1. Locate( 'SSel' , True , [ ] ) ;
CDS_1. EnableControls;
try
ADOQueryCmd. Connection. BeginTrans;
with ADOQueryCmd do
begin
Close;
Sql. Clear;
Sql. Add( 'exec P_Tat_Card_Del ' ) ;
Sql. Add( '@PCIDS=' + quotedstr( Trim( WSql) ) ) ;
Sql. Add( ',@DCode=' + Quotedstr( DCode) ) ;
Sql. Add( ',@DName=' + Quotedstr( DName) ) ;
Open;
end ;
if ADOQueryCmd. FieldByName( 'intReturn' ) . AsInteger = - 1 then
begin
raise Exception. Create( pchar( trim( ADOQueryCmd. FieldByName( 'ShowMsg' ) . AsString) ) ) ;
end ;
ADOQueryCmd. Connection. CommitTrans;
InitGrid( ) ;
application. MessageBox( 'ɾ<> <C9BE> <EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> ' , '<27> <> ʾ <EFBFBD> <CABE> Ϣ' ) ;
except
ADOQueryCmd. Connection. RollbackTrans;
application. MessageBox( PChar( Exception( ExceptObject) . Message ) , '<27> <> ʾ <EFBFBD> <CABE> Ϣ' , 0 ) ;
end ;
end ;
procedure TfrmSCTLLIST. ToolButton5Click( Sender: TObject) ;
begin
if ADOQueryMain. Active = False then
Exit;
SDofilter( ADOQueryMain, SGetFilters( Panel1, 1 , 2 ) ) ;
SCreateCDS( ADOQueryMain, CDS_1) ;
SInitCDSData( ADOQueryMain, CDS_1) ;
end ;
2025-11-12 17:32:44 +08:00
procedure TfrmSCTLLIST. Tv1FocusedRecordChanged( Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean ) ;
begin
if CDS_1. IsEmpty then
begin
Exit;
end ;
InitClothYarn( CDS_1. FieldByName( 'C_Code' ) . AsString) ;
end ;
2025-08-20 16:06:38 +08:00
procedure TfrmSCTLLIST. 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 TfrmSCTLLIST. FormShow( Sender: TObject) ;
begin
inherited ;
ReadCxGrid( trim( self. Caption) + '1' , Tv1, '<27> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ' ) ;
InitGrid( ) ;
end ;
procedure TfrmSCTLLIST. ConNoPropertiesChange( Sender: TObject) ;
begin
ToolButton5. Click;
end ;
procedure TfrmSCTLLIST. cxPageControl1Change( Sender: TObject) ;
begin
InitGrid( ) ;
end ;
procedure TfrmSCTLLIST. cxTabControl1Change( Sender: TObject) ;
begin
InitGrid( ) ;
end ;
end .