RTFormwork/项目代码/RTBasicsV1/T02贸易汇总仓库/U_TradeClothTotalInList.pas
“ddf” 61630656e9 1
2024-07-07 09:35:27 +08:00

505 lines
14 KiB
ObjectPascal
Raw Permalink 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_TradeClothTotalInList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset,
RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit, cxPC,
cxLookAndFeels, cxLookAndFeelPainters, dxSkinsCore, dxSkinsDefaultPainters,
cxNavigator, dxDateRanges, dxBarBuiltInMenu, U_BaseList, dxSkinWXI,
dxScrollbarAnnotations, FrameDateSel, cxContainer, cxMaskEdit, 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, dxSkinXmas2008Blue;
type
TfrmTradeClothTotalInList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DS_1: TDataSource;
GPM_1: TcxGridPopupMenu;
CDS_1: TClientDataSet;
TBDel: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
TBAdd: TToolButton;
TBEdit: TToolButton;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
Label12: TLabel;
C_name: TcxTextEdit;
FromCoName: TcxTextEdit;
BCIOID: TcxTextEdit;
C_spec: TcxTextEdit;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
Label10: TLabel;
BatchNo: TcxTextEdit;
v1Column11: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v1Column20: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
ToolButton1: TToolButton;
Tv1Column1: TcxGridDBColumn;
ToolButton2: TToolButton;
Tv1Column2: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
ToolButton3: TToolButton;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
Label6: TLabel;
FromOrdNo: TcxTextEdit;
Tv1Column14: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Tv1Column18: TcxGridDBColumn;
Tv1Column19: TcxGridDBColumn;
Tv1Column20: TcxGridDBColumn;
Tv1Column21: TcxGridDBColumn;
frmFrameDateSel1: TfrmFrameDateSel;
IOType: TcxComboBox;
Tv1Column22: TcxGridDBColumn;
Tv1Column23: TcxGridDBColumn;
Tv1Column24: TcxGridDBColumn;
Tv1Column25: TcxGridDBColumn;
Tv1Column26: TcxGridDBColumn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure BCIOIDChange(Sender: TObject);
procedure C_specChange(Sender: TObject);
procedure FromCoNameChange(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure BCIOIDPropertiesChange(Sender: TObject);
private
canshu1, canshu2, canshu3: string;
procedure InitGrid();
procedure setStatus();
{ Private declarations }
public
FSTKName: string;
{ Public declarations }
end;
implementation
uses
U_DataLink, U_RTFun, U_LabelPrint, U_AttachmentUpload,
U_TradeClothTotalInInput;
{$R *.dfm}
procedure TfrmTradeClothTotalInList.setStatus();
begin
end;
procedure TfrmTradeClothTotalInList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmTradeClothTotalInList.FormCreate(Sender: TObject);
begin
inherited;
frmFrameDateSel1.EndDate.Date := SGetServerDate(ADOQueryTemp);
frmFrameDateSel1.BegDate.Date := frmFrameDateSel1.EndDate.Date - 30;
canshu1 := Trim(self.fParameters1);
canshu2 := Trim(self.fParameters2);
canshu3 := Trim(self.fParameters3);
end;
procedure TfrmTradeClothTotalInList.InitGrid();
var
SqlStr: string;
begin
SqlStr := ' select A.* ';
SqlStr := SqlStr + ',FJFlag=CAST((CASE WHEN (SELECT COUNT(X.FileName) FROM FJ_File X where X.TFType='<>׻<EFBFBD><D7BB>ܲ<EFBFBD>'' and X.WBID=A.BCIOID)>0 THEN 1 ELSE 0 END) AS BIT)';
SqlStr := SqlStr + ' from BS_Cloth_IO A';
SqlStr := SqlStr + ' where A.IOTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.BegDate.Date)) + '''';
SqlStr := SqlStr + ' and A.IOTime<''' + Trim(FormatDateTime('yyyy-MM-dd', frmFrameDateSel1.enddate.Date + 1)) + '''';
SqlStr := SqlStr + ' and isnull(STKNAME,'''')=''' + Trim(FSTKNAME) + '''';
SqlStr := SqlStr + ' and IOFlag=''<27><><EFBFBD><EFBFBD>'' ';
SqlStr := SqlStr + ' order by IOTime desc';
InitCDSData(ADOQueryMain, CDS_1, Tv1, SqlStr, SGetFilters(Panel1, 1, 2), 'BCIOID');
end;
procedure TfrmTradeClothTotalInList.TBRafreshClick(Sender: TObject);
begin
frmFrameDateSel1.BegDate.SetFocus;
InitGrid();
end;
procedure TfrmTradeClothTotalInList.ToolButton1Click(Sender: TObject);
begin
WriteCxGrid(Self.Caption, Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
end;
procedure TfrmTradeClothTotalInList.ToolButton2Click(Sender: TObject);
var
MBCIOID: string;
begin
if CDS_1.IsEmpty then
Exit;
if CDS_1.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
MBCIOID := '';
CDS_1.DisableControls;
with CDS_1 do
begin
First;
while CDS_1.Locate('SSel', True, []) do
begin
MBCIOID := MBCIOID + ',' + QuotedStr(Trim(CDS_1.fieldbyname('BCIOID').AsString));
Edit;
FieldByName('SSel').Value := False;
Post;
end;
end;
CDS_1.EnableControls;
try
frmLabelPrint := TfrmLabelPrint.Create(Application);
with frmLabelPrint do
begin
FLMType := 'TradeFinishClothInPrt1';
FFiltration1 := MBCIOID;
if ShowModal = 1 then
begin
// Self.InitGrid();
end;
end;
finally
frmLabelPrint.Free;
end;
end;
procedure TfrmTradeClothTotalInList.ToolButton3Click(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
try
frmAttachmentUpload := TfrmAttachmentUpload.Create(Application);
with frmAttachmentUpload do
begin
fkeyNO := Trim(Self.CDS_1.fieldbyname('BCIOID').AsString);
fType := <>׻<EFBFBD><D7BB>ܲ<EFBFBD>';
FEditAuthority := True;
if ShowModal = 1 then
begin
end;
end;
finally
frmAttachmentUpload.Free;
end;
end;
procedure TfrmTradeClothTotalInList.BCIOIDPropertiesChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeClothTotalInList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmTradeClothTotalInList.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmTradeClothTotalInList.FormShow(Sender: TObject);
var
mSql: string;
begin
inherited;
mSql := 'select distinct name=A.IOType from BS_Cloth_IO A where IOFlag=''<27><><EFBFBD><EFBFBD>'' and isnull(STKNAME,'''')=''' + Trim(FSTKNAME) + ''' ';
SInitTcxComBoxBySql(ADOQueryTemp, IOType, false, mSql);
ReadCxGrid(Self.Caption, Tv1, <>׻<EFBFBD><D7BB>ֿܲ<DCB2>');
setStatus();
InitGrid();
end;
procedure TfrmTradeClothTotalInList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel(FSTKName + '<27><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid1);
end;
procedure TfrmTradeClothTotalInList.TBFindClick(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 TfrmTradeClothTotalInList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_1, True);
end;
procedure TfrmTradeClothTotalInList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_1, False);
end;
procedure TfrmTradeClothTotalInList.TBDelClick(Sender: TObject);
var
MBCIOID: string;
begin
if CDS_1.IsEmpty then
Exit;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if CDS_1.IsEmpty then
Exit;
if CDS_1.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
MBCIOID := '';
CDS_1.DisableControls;
with CDS_1 do
begin
First;
while CDS_1.Locate('SSel', True, []) do
begin
MBCIOID := MBCIOID + ',' + Trim(CDS_1.fieldbyname('BCIOID').AsString);
CDS_1.Delete;
end;
end;
CDS_1.EnableControls;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_Fin_Flow_Judge ');
Sql.Add(' @FFIDS=' + quotedstr(MBCIOID));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
Sql.Clear;
sql.Add('insert into Finance_Need_Up(UType,UDataId,UOperation,UOperator,UModule,UDetails) ');
sql.Add('values('<>״<EFBFBD><D7B4><EFBFBD><ECB2BC><EFBFBD><EFBFBD>'' ');
sql.Add(',' + quotedstr(MBCIOID));
sql.Add(','<><C9BE>'' ');
sql.Add(',' + quotedstr(DName));
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(MBCIOID));
sql.Add(') ');
Sql.Add('exec P_BS_Cloth_In_Del ');
Sql.Add(' @BCIOIDS=' + quotedstr(MBCIOID));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
Open;
end;
if ADOQueryCmd.FieldByName('intReturn').AsInteger = -1 then
raise Exception.Create(pchar(trim(ADOQueryCmd.FieldByName('ShowMsg').AsString)));
ADOQueryCmd.Connection.CommitTrans;
CDS_1.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox(PChar(Exception(ExceptObject).Message), '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
InitGrid();
end;
end;
procedure TfrmTradeClothTotalInList.TBAddClick(Sender: TObject);
begin
try
frmTradeClothTotalInInput := TfrmTradeClothTotalInInput.Create(Application);
with frmTradeClothTotalInInput do
begin
FBCId := '';
frmTradeClothTotalInInput.canshu3 := Trim(Self.canshu3);
FSTKName := Self.FSTKName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmTradeClothTotalInInput.Free;
end;
end;
procedure TfrmTradeClothTotalInList.TBEditClick(Sender: TObject);
begin
if CDS_1.IsEmpty then
Exit;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_Fin_Flow_Judge ');
Sql.Add(' @FFIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString)));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
Close;
Sql.Clear;
Sql.Add('exec P_BS_Cloth_In_Edit ');
Sql.Add(' @BCIOIDS=' + quotedstr(Trim(CDS_1.fieldbyname('BCIOID').AsString)));
Sql.Add(',@DCode=' + quotedstr(Trim(DCode)));
Sql.Add(',@DName=' + quotedstr(Trim(DName)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
try
frmTradeClothTotalInInput := TfrmTradeClothTotalInInput.Create(Application);
with frmTradeClothTotalInInput do
begin
FBCId := Trim(CDS_1.fieldbyname('BCIOID').AsString);
TBDel.Visible := False;
TBAdd.Visible := False;
FSTKName := Self.FSTKName;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmTradeClothTotalInInput.Free;
end;
end;
procedure TfrmTradeClothTotalInList.BCIOIDChange(Sender: TObject);
begin
if Length(Trim(BCIOID.Text)) < 4 then
begin
if Trim(BCIOID.Text) <> '' then
Exit;
end;
TBFind.Click;
end;
procedure TfrmTradeClothTotalInList.C_specChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeClothTotalInList.FromCoNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmTradeClothTotalInList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
end.