D7myYunxiang/云翔财务(Money.dll)/U_ZZYSMXTaiToulist.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

314 lines
8.6 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_ZZYSMXTaiToulist;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxGraphics, cxCustomData, cxStyles, cxTL, cxMaskEdit, DB, ADODB,
cxInplaceContainer, cxDBTL, cxControls, cxTLData, ComCtrls, ToolWin,
StdCtrls, cxFilter, cxData, cxDataStorage, cxEdit, cxDBData, DBClient,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, ExtCtrls,
cxSplitter, cxGridLevel, cxClasses, cxGridCustomView, cxGrid,
cxGridCustomPopupMenu, cxGridPopupMenu, RM_Dataset, RM_System, RM_Common,
RM_Class, RM_GridReport, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP,ShellAPI,IniFiles, cxCheckBox, cxCalendar,
cxButtonEdit, cxTextEdit, cxDropDownEdit, RM_e_Xls, cxPC, BtnEdit;
type
TfrmZZYSMXTaiToulist = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBClose: TToolButton;
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
Panel1: TPanel;
ToolButton2: TToolButton;
ADOQueryMain: TADOQuery;
ToolButton1: TToolButton;
RM1: TRMGridReport;
RMDB_Main: TRMDBDataSet;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxCRTime: TcxGridDBColumn;
cxMoneyYe: TcxGridDBColumn;
cxQty: TcxGridDBColumn;
cxQtyUnit: TcxGridDBColumn;
cxGridLevel1: TcxGridLevel;
Label2: TLabel;
Label6: TLabel;
begdate: TDateTimePicker;
Enddate: TDateTimePicker;
cxGridPopupMenu2: TcxGridPopupMenu;
DS_HZ: TDataSource;
CDS_HZ: TClientDataSet;
v2Price: TcxGridDBColumn;
VMoney: TcxGridDBColumn;
v2BBMoney: TcxGridDBColumn;
v2MPRTCodeName: TcxGridDBColumn;
Label4: TLabel;
OrdDefNote3: TComboBox;
v2factoryName: TcxGridDBColumn;
v2MRPTspec: TcxGridDBColumn;
v2YFName: TcxGridDBColumn;
Label5: TLabel;
ToolButton3: TToolButton;
RMXLSExport1: TRMXLSExport;
v2Column1: TcxGridDBColumn;
v2note: TcxGridDBColumn;
Panetime: TPanel;
v2Column2: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
factoryName: TBtnEditA;
v2Column3: TcxGridDBColumn;
CheckBox1: TCheckBox;
v2Column5: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure factoryNameBtnClick(Sender: TObject);
procedure v2Column5CustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
procedure v2Column5PropertiesEditValueChanged(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
public
{ Public declarations }
RKFlag,FCYID:String;
fType,FMX:string;
Findex:Integer;
end;
var
frmZZYSMXTaiToulist: TfrmZZYSMXTaiToulist;
implementation
uses
U_DataLink,U_Fun,U_ZDYHelp, U_ProductOrderNewList,U_RTFun,
U_ZdyAttachment;
{$R *.dfm}
procedure TfrmZZYSMXTaiToulist.InitGrid();
begin
IF trim(factoryName.Text)='' then
begin
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͻ<EFBFBD><CDBB><EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
{screen.Cursor:=crsqlwait;
Panetime.Visible:=true;
Panetime.Left:=(Width-Panetime.Width) div 2;
Panetime.top:=(Height-Panetime.Height-200) div 2;
application.ProcessMessages; }
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered:=False;
Close;
SQL.Clear;
sql.Add(' exec P_Qry_Ysk_mx :begdate,:enddate,:factoryName');
if CheckBox1.Checked=True then
begin
Parameters.ParamByName('begdate').Value:=Trim(FormatDateTime('yyyy-MM-dd',begdate.DateTime));
Parameters.ParamByName('Enddate').Value:=Trim(FormatDateTime('yyyy-MM-dd',Enddate.DateTime+1));
end else
begin
Parameters.ParamByName('begdate').Value:='2000-01-01';
Parameters.ParamByName('Enddate').Value:='2500-01-01';
end;
Parameters.ParamByName('factoryName').Value:=Trim(factoryName.Text);
Open;
end;
SCreateCDS20(ADOQueryMain,CDS_HZ);
SInitCDSData20(ADOQueryMain,CDS_HZ);
finally
ADOQueryMain.EnableControls;
ToolButton2.Click;
Panetime.Visible:=false;
screen.Cursor:=crdefault;
end;
end;
procedure TfrmZZYSMXTaiToulist.FormDestroy(Sender: TObject);
begin
frmZZYSMXTaiToulist:=nil;
end;
procedure TfrmZZYSMXTaiToulist.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmZZYSMXTaiToulist.TBCloseClick(Sender: TObject);
begin
WriteCxGrid(self.Caption,Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmZZYSMXTaiToulist.FormShow(Sender: TObject);
begin
ReadCxGrid(self.Caption,Tv2,'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
if Trim(FMX)='' then
begin
Enddate.DateTime:=SGetServerDate(ADOQueryTemp);
begdate.DateTime:=SGetServerDateMBeg(ADOQueryTemp);
end else
begin
InitGrid();
end;
end;
procedure TfrmZZYSMXTaiToulist.TBRafreshClick(Sender: TObject);
begin
begdate.SetFocus;
InitGrid();
end;
procedure TfrmZZYSMXTaiToulist.ToolButton1Click(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then Exit;
SelExportData(Tv2,ADOQueryMain,self.Caption);
end;
procedure TfrmZZYSMXTaiToulist.FormCreate(Sender: TObject);
begin
{with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select distinct(ComTaiTou) from YF_Money_CR where CRFlag=''Ӧ<><D3A6><EFBFBD><EFBFBD>'' and ISNULL(ComTaiTou,'''')<>'''' ');
Open;
end;
cxTabControl1.Tabs.Clear;
with ADOQueryTemp do
begin
First;
while not Eof do
begin
cxTabControl1.Tabs.Add(ADOQueryTemp.fieldbyname('ComTaiTou').AsString);
Next;
end;
end;}
end;
procedure TfrmZZYSMXTaiToulist.ToolButton3Click(Sender: TObject);
var
filepath:string;
mBegdate,mEnddate:string;
begin
mbegdate:=FormatDateTime('yyyy-MM-dd',begdate.Date);
menddate:=FormatDateTime('yyyy-MM-dd',enddate.Date);
if CDS_HZ.IsEmpty then exit;
try
filepath:=ExtractFilePath(Application.ExeName) + 'report\Ӧ<>տ<EFBFBD><D5BF><EFBFBD><EFBFBD>˵<EFBFBD>.rmf';
if not FileExists(Pchar(filepath)) then
begin
application.MessageBox(pchar('<27>ļ<EFBFBD>['+filepath+']<5D><><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD>'),'<27><>ʾ<EFBFBD><CABE>Ϣ',MB_IConError);
exit;
end;
RMVariables['dtxz'] :=FormatDateTime('yyyy-mm-dd',date());
RMVariables['zdr'] :=trim(DName);
RmVariables['begDate'] :=FormatDateTime('yymmdd',begDate.Date)+'-'+FormatDateTime('yymmdd',enddate.Date);
CDS_HZ.First;
RmVariables['QCNum'] :=CDS_HZ.fieldbyname('MoneyYe').AsFloat - CDS_HZ.fieldbyname('YSMoney').AsFloat + CDS_HZ.fieldbyname('SKMoney').AsFloat ;
CDS_HZ.Last;
RmVariables['endNum'] :=CDS_HZ.fieldbyname('MoneyYe').AsString;
//RmVariables['ComTaiTou'] :=CDS_HZ.fieldbyname('ComTaiTou').AsString;
//RmVariables['ConNo'] :=CDS_HZ.fieldbyname('ConNo').AsString;
//RmVariables['KHConNo'] :=CDS_HZ.fieldbyname('KHConNo').AsString;
RM1.LoadFromFile(filepath);
RM1.ShowReport;
finally
end;
end;
procedure TfrmZZYSMXTaiToulist.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmZZYSMXTaiToulist.factoryNameBtnClick(Sender: TObject);
begin
try
frmZdyAttachment:=TfrmZdyAttachment.Create(Application);
with frmZdyAttachment do
begin
if ShowModal=1 then
begin
Self.factoryName.Text:=Trim(frmZdyAttachment.CDS_HZ.fieldbyname('ZdyNameZ').AsString);
end;
end;
finally
frmZdyAttachment.Free;
end;
end;
procedure TfrmZZYSMXTaiToulist.v2Column5CustomDrawCell(
Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
var
id:Integer;
begin
Id:=TV2.GetColumnByFieldName('DZFlag').Index;//;-TV1.GroupedItemCount;
if Id<0 then Exit;
if AViewInfo.GridRecord.Values[Id]=True then
begin
ACanvas.Brush.Color:=clRed;
end;
end;
procedure TfrmZZYSMXTaiToulist.v2Column5PropertiesEditValueChanged(
Sender: TObject);
var
mvalue:Boolean;
begin
mvalue:=TcxCheckBox(Sender).EditValue;
with CDS_HZ do
begin
Edit;
FieldByName('DZFlag').Value:=mvalue;
end;
if mvalue=True then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set DZFlag=1,DZTime=getdate(),DZPerson='''+Trim(DName)+'''');
sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+'''');
ExecSQL;
end;
end else
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update YF_Money_CR Set DZFlag=0,DZTime=getdate(),DZPerson='''+Trim(DName)+'''');
sql.Add(' where YFID='''+Trim(CDS_HZ.fieldbyname('YFID').AsString)+'''');
ExecSQL;
end;
end;
end;
end.