D10myYicheng/坯布码单待检(PBMDDJ.dll)/U_DJBRKList.pas
2025-05-27 14:08:09 +08:00

1008 lines
30 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_DJBRKList;
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,
cxContainer, cxImage, cxDBEdit, cxMaskEdit, cxCurrencyEdit, cxLookAndFeels,
cxLookAndFeelPainters, cxNavigator, dxSkinsCore, dxSkinsDefaultPainters,
dxDateRanges, dxBarBuiltInMenu, U_BaseList;
type
TfrmDJBRKList = class(TfrmBaseList)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DS_1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
TBDel: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
TBAdd: TToolButton;
TBEdit: TToolButton;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column6: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
Label13: TLabel;
SPColor: TEdit;
Panel2: TPanel;
Picture4: TcxDBImage;
ADOQueryImage: TADOQuery;
DSImage: TDataSource;
v1Column21: TcxGridDBColumn;
ToolButton1: TToolButton;
cxGrid1: TcxGrid;
TvMX: TcxGridDBTableView;
cxGridDBColumn8: TcxGridDBColumn;
cxGridLevel2: TcxGridLevel;
CDS_MX: TClientDataSet;
DS_MX: TDataSource;
GPM_1: TcxGridPopupMenu;
v1Column5: TcxGridDBColumn;
ToolButton2: TToolButton;
Panel4: TPanel;
Label15: TLabel;
Label24: TLabel;
Label25: TLabel;
Label16: TLabel;
cxCurrencyEdit1: TcxCurrencyEdit;
Button1: TButton;
Button2: TButton;
cxCurrencyEdit2: TcxCurrencyEdit;
QTYUNIT: TComboBox;
JGC: TcxButtonEdit;
jgcno: TcxCurrencyEdit;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Tv1Column6: TcxGridDBColumn;
Tv1Column7: TcxGridDBColumn;
Tv1Column8: TcxGridDBColumn;
Tv1Column9: TcxGridDBColumn;
Tv1Column10: TcxGridDBColumn;
Tv1Column11: TcxGridDBColumn;
Label18: TLabel;
OrderNo: TEdit;
Tv1Column12: TcxGridDBColumn;
Tv1Column13: TcxGridDBColumn;
Tv1Column14: TcxGridDBColumn;
Tv1Column15: TcxGridDBColumn;
Tv1Column16: TcxGridDBColumn;
Tv1Column17: TcxGridDBColumn;
Label3: TLabel;
RCGangNo: TEdit;
Label4: TLabel;
Button6: TButton;
Edit1: TEdit;
procedure FormDestroy(Sender: TObject);
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 N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure SPIDKeyPress(Sender: TObject; var Key: Char);
procedure Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure FormResize(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure ToolButton2Click(Sender: TObject);
procedure JGCClick(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure JGCPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure CRTypeChange(Sender: TObject);
procedure Panel4MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure Button6Click(Sender: TObject);
private
canshu1, canshu2: string;
procedure InitGrid();
procedure InitImage(fsubID: string);
procedure InitMXGrid(MCRNO: string);
{ Private declarations }
public
{ Public declarations }
end;
var
frmDJBRKList: TfrmDJBRKList;
implementation
uses
U_DataLink, U_RTFun, U_DJBCKInPut, U_ZdyAttachGYS, U_ProductOrderSel;
{$R *.dfm}
procedure TfrmDJBRKList.InitMXGrid(MCRNO: string);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CRMX where CRNO=' + quotedstr(Trim(MCRNO)));
sql.Add(' order by MXID');
// showmessage(sql.text);
Open;
end;
SCreateCDS(ADOQueryTemp, CDS_MX);
SInitCDSData(ADOQueryTemp, CDS_MX);
end;
procedure TfrmDJBRKList.InitImage(fsubID: string);
begin
ADOQueryImage.close;
// IF fwbid='' then exit;
with ADOQueryImage do
begin
close;
sql.Clear;
sql.Add('select * from TP_File A');
sql.Add('inner join JYOrder_Sub B on B.HXFile=A.WBID');
sql.Add('where B.SubID=' + quotedstr(trim(fsubID)));
open;
end;
end;
procedure TfrmDJBRKList.FormDestroy(Sender: TObject);
begin
inherited;
frmDJBRKList := nil;
end;
procedure TfrmDJBRKList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
inherited;
Action := caFree;
end;
procedure TfrmDJBRKList.FormCreate(Sender: TObject);
begin
inherited;
//cxGrid1.Align:=alClient;
canshu1 := Trim(DParameters1);
canshu2 := Trim(DParameters2);
EndDate.DateTime := SGetServerDate(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
end;
procedure TfrmDJBRKList.InitGrid();
var
fwhere: string;
begin
fwhere := '';
fwhere := SGetFilters(Panel1, 1, 2);
try
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from CK_SXPB_CR A');
sql.add(' where A.CRTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''');
sql.Add(' and A.CRTime<''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + '''');
sql.Add(' and isnull(CKName,'''')=''<27><><EFBFBD>첼''');
SQL.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
sql.Add('AND ISNULL(CDANWEI,''<27><>'')=' + quotedstr(canshu2));
if fwhere <> '' then
SQL.Add(' and ' + fwhere);
Open;
// ShowMessage(SQL.Text);
end;
SCreateCDS(ADOQueryTemp, CDS_Main);
SInitCDSData(ADOQueryTemp, CDS_Main);
finally
end;
end;
procedure TfrmDJBRKList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmDJBRKList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmDJBRKList.CRTypeChange(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmDJBRKList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>2', TvMX, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmDJBRKList.FormShow(Sender: TObject);
begin
inherited;
if Trim(canshu2) = '<27>鿴' then
begin
TBAdd.Visible := False;
TBDel.Visible := False;
TBEdit.Visible := False;
end
else
begin
TBAdd.Visible := True;
TBDel.Visible := True;
TBEdit.Visible := True;
end;
ReadCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
ReadCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>2', TvMX, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
InitGrid();
end;
procedure TfrmDJBRKList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmDJBRKList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmDJBRKList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmDJBRKList.Panel4MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
ReleaseCapture;
SendMessage(Panel4.Handle, wm_SysCommand, $F012, 0);
end;
procedure TfrmDJBRKList.TBDelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('ssel', true, []) = false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
while CDS_Main.Locate('SSel', True, []) do
begin
if Trim(CDS_Main.fieldbyname('SPID').AsString) <> '' then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
if Trim(CDS_Main.fieldbyname('CRType').AsString) = 'ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
ADOQueryCmd.Connection.RollbackTrans;
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where FZSPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' and CRQtyFlag=-1');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
ADOQueryCmd.Connection.RollbackTrans;
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete CK_SXPB_CR where SPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
ExecSQL;
end;
end;
CDS_Main.Delete;
end;
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end;
procedure TfrmDJBRKList.TBAddClick(Sender: TObject);
begin
try
frmDJBCKInPut := TfrmDJBCKInPut.Create(Application);
with frmDJBCKInPut do
begin
FBCId := '';
CANSHU2 := SELF.canshu2;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmDJBCKInPut.Free;
end;
end;
procedure TfrmDJBRKList.TBEditClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if Trim(CDS_Main.fieldbyname('CRType').AsString) = 'ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
try
frmDJBCKInPut := TfrmDJBCKInPut.Create(Application);
with frmDJBCKInPut do
begin
FBCId := Trim(CDS_Main.fieldbyname('SPID').AsString);
CANSHU2 := SELF.canshu2;
TBDel.Visible := False;
TBAdd.Visible := False;
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmDJBCKInPut.Free;
end;
end;
procedure TfrmDJBRKList.SPIDKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
initgrid();
end;
end;
procedure TfrmDJBRKList.Tv1CellClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
// ADOQueryImage.Close;
// IF CDS_Main.IsEmpty then exit;
// InitImage(CDS_Main.fieldbyname('OrdSubIdRK').AsString);
end;
procedure TfrmDJBRKList.FormResize(Sender: TObject);
begin
Panel2.Left := self.Width - Panel2.Width - 30;
Panel2.Top := self.Height - Panel2.Height - 80;
end;
procedure TfrmDJBRKList.ToolButton1Click(Sender: TObject);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_Factory ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('CoCode').AsString)) + ',' + quotedstr(Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('CoName').AsString)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
// showmessage(sql.text);
execsql;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸ļӹ<C4BC><D3B9><EFBFBD>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭ<>ӹ<EFBFBD><D3B9><EFBFBD>:' + trim(Self.CDS_Main.FieldByName('FactoryName').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
end;
finally
frmZdyAttachGYS.Free;
end;
InitGrid();
end;
procedure TfrmDJBRKList.TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
FValue: string;
FBounds: TRect;
begin
FBounds := AViewInfo.Bounds;
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1);
FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1);
InflateRect(FBounds, -1, -1); //Platform specific. May not work on Linux.
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
procedure TfrmDJBRKList.ToolButton2Click(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
Panel4.Visible := True;
end;
procedure TfrmDJBRKList.JGCClick(Sender: TObject);
begin
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
JGC.Text := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('CoName').AsString);
jgcno.Text := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('Cocode').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmDJBRKList.Button2Click(Sender: TObject);
begin
JGC.Text := '';
jgcno.Text := '';
QTYUNIT.Text := '';
cxCurrencyEdit1.Text := '';
cxCurrencyEdit2.Text := '';
Panel4.Visible := false;
InitGrid();
end;
procedure TfrmDJBRKList.Button1Click(Sender: TObject);
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_Factory ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(JGCNO.Text)) + ',' + quotedstr(Trim(JGC.Text)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
// showmessage(sql.text);
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸ļӹ<C4BC><D3B9><EFBFBD>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭ<>ӹ<EFBFBD><D3B9><EFBFBD>:' + trim(Self.CDS_Main.FieldByName('FactoryName').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27>޸ijɹ<C4B3>!', '<27><>ʾ', 0);
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>޸<EFBFBD><DEB8>쳣!', '<27><>ʾ', 0);
Exit;
end;
// InitGrid();
end;
procedure TfrmDJBRKList.Button3Click(Sender: TObject);
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_unit ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(QTYUNIT.Text)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
// showmessage(sql.text);
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸ĵ<DEB8>λ')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭ<><D4AD>λ:' + trim(Self.CDS_Main.FieldByName('qtyunit').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27>޸ijɹ<C4B3>!', '<27><>ʾ', 0);
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>޸<EFBFBD><DEB8>쳣!', '<27><>ʾ', 0);
Exit;
end;
// InitGrid();
end;
procedure TfrmDJBRKList.Button4Click(Sender: TObject);
var
FFreal: Double;
begin
if Trim(cxCurrencyEdit1.Text) <> '' then
begin
if TryStrToFloat(cxCurrencyEdit1.Text, FFreal) = False then
begin
Application.MessageBox(<><C6A5><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_PS ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(cxCurrencyEdit1.Text)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸<EFBFBD>ƥ<EFBFBD><C6A5>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭƥ<D4AD><C6A5>:' + trim(Self.CDS_Main.FieldByName('piqty').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27>޸ijɹ<C4B3>!', '<27><>ʾ', 0);
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>޸<EFBFBD><DEB8>쳣!', '<27><>ʾ', 0);
Exit;
end;
// InitGrid();
end;
procedure TfrmDJBRKList.Button5Click(Sender: TObject);
var
FFREAL: Double;
begin
if Trim(cxCurrencyEdit2.Text) <> '' then
begin
if TryStrToFloat(cxCurrencyEdit2.Text, FFREAL) = False then
begin
Application.MessageBox(<><C6A5><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_QTY ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(cxCurrencyEdit2.Text)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸<EFBFBD>ƥ<EFBFBD><C6A5>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭƥ<D4AD><C6A5>:' + trim(Self.CDS_Main.FieldByName('piqty').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_SXPB_CR Set MXKCQty=(select sum(isnull(Qty,0)*CRQtyFlag) from CK_SXPB_CR A where A.FZSPID=CK_SXPB_CR.SPID)');
sql.Add(' where SPID=' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)));
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from CK_SXPB_CR where SPID=' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('MXKCQty').Value < 0 then
begin
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27>޸ijɹ<C4B3>!', '<27><>ʾ', 0);
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>޸<EFBFBD><DEB8>쳣!', '<27><>ʾ', 0);
Exit;
end;
// InitGrid();
end;
procedure TfrmDJBRKList.Button6Click(Sender: TObject);
begin
try
ADOQueryCmd.Connection.BeginTrans;
CDS_Main.DisableControls;
with CDS_Main do
begin
First;
while not Eof do
begin
if CDS_Main.FieldByName('SSel').AsBoolean = True then
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('exec P_CW_Judge_All @DataID=' + quotedstr(Trim(CDS_Main.fieldbyname('SPID').AsString)));
Open;
end;
if ADOQueryTemp.FieldByName('intReturn').AsInteger = -1 then
begin
Application.MessageBox(PChar(ADOQueryTemp.fieldbyname('ShowMsg').AsString), '<27><>ʾ', 0);
exit;
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('exec P_DJB_Up_lotno ' + quotedstr(trim(Self.CDS_Main.FieldByName('SPID').AsString)) + ',' + quotedstr(Trim(EDIT1.Text)));
sql.Add('exec P_CW_SXPB ''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
execsql;
// showmessage(sql.text);
end;
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('insert into SY_SysLog(operor,opertime,Model,acction,opevent,result) values( ');
sql.Add(' ' + quotedstr(trim(DName)));
sql.Add(',getdate() ');
sql.Add(',' + quotedstr(trim(self.Caption)));
sql.Add(',' + quotedstr(trim('<27>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>')));
sql.Add(',' + quotedstr(trim('<27><><EFBFBD><EFBFBD>ţ<EFBFBD>' + trim(Self.CDS_Main.FieldByName('SPID').AsString) + ' ԭ<><D4AD><EFBFBD><EFBFBD>:' + trim(Self.CDS_Main.FieldByName('lotno').AsString))));
sql.Add(',' + quotedstr(trim('<27>ɹ<EFBFBD>')));
sql.Add(')');
execsql;
end;
end;
Next;
end;
end;
CDS_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27>޸ijɹ<C4B3>!', '<27><>ʾ', 0);
except
CDS_Main.EnableControls;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27>޸<EFBFBD><DEB8>쳣!', '<27><>ʾ', 0);
Exit;
end;
end;
procedure TfrmDJBRKList.JGCPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZdyAttachGYS := TfrmZdyAttachGYS.Create(Application);
with frmZdyAttachGYS do
begin
if ShowModal = 1 then
begin
JGC.Text := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('CoName').AsString);
jgcno.Text := Trim(frmZdyAttachGYS.CDS_HZ.fieldbyname('Cocode').AsString);
end;
end;
finally
frmZdyAttachGYS.Free;
end;
end;
procedure TfrmDJBRKList.Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
FValue: string;
FBounds: TRect;
begin
FBounds := AViewInfo.Bounds;
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1);
FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1);
InflateRect(FBounds, -1, -1); //Platform specific. May not work on Linux.
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
procedure TfrmDJBRKList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if CDS_MX.IsEmpty then
Exit;
InitMXGrid(Trim(CDS_Main.fieldbyname('SPID').AsString));
end;
end.