D7wmguihua/桂华管理系统/U_OrdeFollower.pas
2026-02-05 17:09:07 +08:00

895 lines
26 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_OrdeFollower;
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, cxPC, cxCheckBox,
cxLookAndFeels, cxLookAndFeelPainters, cxNavigator, dxBarBuiltInMenu,
dxSkinsCore, 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, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue, dxSkinscxPCPainter;
type
TfrmOrdeFollower = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBDel: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
Label1: TLabel;
Label2: TLabel;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
Label3: TLabel;
ConNo: TEdit;
Label5: TLabel;
C_CodeName: TEdit;
TBExport: TToolButton;
Order_Main: TClientDataSet;
Label4: TLabel;
C_Color: TEdit;
ScrollBox1: TScrollBox;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1OrderNo: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1DeliveryDate: TcxGridDBColumn;
v1FactoryNo1Name: TcxGridDBColumn;
v1PRTSpec: TcxGridDBColumn;
v1PRTMF: TcxGridDBColumn;
v1PRTKZ: TcxGridDBColumn;
v1PRTOrderQty: TcxGridDBColumn;
v1OrderUnit: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
ClientDataSet3: TClientDataSet;
DataSource2: TDataSource;
DataSource3: TDataSource;
ClientDataSet2: TClientDataSet;
v1Qty1: TcxGridDBColumn;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
v1Column4: TcxGridDBColumn;
v1Column5: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
CDS_PRT: TClientDataSet;
Label6: TLabel;
FactoryNoName: TEdit;
cxTabControl1: TcxTabControl;
v1C_Unit: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
Tchk: TToolButton;
TNochk: TToolButton;
ToolButton1: TToolButton;
v1Qty2: TcxGridDBColumn;
v1C_Color: TcxGridDBColumn;
cxStyleRepository1: TcxStyleRepository;
cxStyle1: TcxStyle;
cxStyle2: TcxStyle;
cxStyle_gridRow: TcxStyle;
cxStyle_gridFoot: TcxStyle;
cxStyle_gridHead: TcxStyle;
cxStyle_gridGroupBox: TcxStyle;
cxStyle_yellow: TcxStyle;
cxStyle_Red: TcxStyle;
cxStyle_fontBlack: TcxStyle;
cxStyle_fontclFuchsia: TcxStyle;
cxStyle_fontclPurple: TcxStyle;
cxStyle_fontclGreen: TcxStyle;
cxStyle_fontclBlue: TcxStyle;
cxStyle_fontclTeal: TcxStyle;
cxStyle_fontclOlive: TcxStyle;
v1Ssel: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column14: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
ToolButton2: TToolButton;
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
Tv1Column3: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
Tv1Column5: TcxGridDBColumn;
Label7: TLabel;
CP_codename: TEdit;
Label8: TLabel;
JHPlace: TEdit;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure ConNoChange(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ToolButton5Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure cxTabControl1Change(Sender: TObject);
procedure TchkClick(Sender: TObject);
procedure TNochkClick(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
procedure ToolButton1Click(Sender: TObject);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
procedure Tv1CustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure ToolButton2Click(Sender: TObject);
private
FInt, PFInt: Integer;
procedure InitGrid();
procedure InitForm();
function DelData(): Boolean;
{ Private declarations }
public
fDParameters1: string;
{ Public declarations }
end;
var
frmOrdeFollower: TfrmOrdeFollower;
implementation
uses
U_DataLink, U_ClothContractInPut_TP, U_OrdeFollower_input, U_Fun,
U_ProductOrderList, U_OrdeFollower_inputCK, U_ZDYHelp;
{$R *.dfm}
procedure TfrmOrdeFollower.FormDestroy(Sender: TObject);
begin
frmOrdeFollower := nil;
end;
procedure TfrmOrdeFollower.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmOrdeFollower.FormCreate(Sender: TObject);
begin
ScrollBox1.Align := alClient;
end;
procedure TfrmOrdeFollower.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid(self.Caption, Tv1, ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
end;
procedure TfrmOrdeFollower.InitGrid();
var
strwhere, TconType: string;
begin
strwhere := '';
if cxTabControl1.TabIndex = 0 then
begin
TconType := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
end;
if cxTabControl1.TabIndex = 1 then
begin
TconType := '<27><><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6>';
end;
if cxTabControl1.TabIndex = 2 then
begin
TconType := <><C8AB>';
end;
// strwhere := strwhere + ' and isnull(A.status,''''0'''')=''''' + inttostr(cxTabControl1.TabIndex) + '''''';
// strwhere := strwhere + ' ''' + inttostr(cxTabControl1.TabIndex) + ''' ';
if (trim(fDParameters1) = '<27><>ѯ') then
strwhere := strwhere + ' and A.Filler=''''' + Trim(DName) + ''''' ';
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('exec P_Get_Contract_CRK');
sql.Add('@begdate=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''' ');
sql.Add(',@enddate=''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + ''' ');
sql.Add(',@conType= ''' + TconType + ''' ');
sql.Add(',@status=''0'' ');
// ShowMessage(sql.text);
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmOrdeFollower.InitForm();
begin
// if fDParameters1 = '<27><>ѯ' then
// begin
// TBADD.Visible := false;
// TBEdit.Visible := false;
// TBDel.Visible := false;
// Tchk.Visible := false;
// TNochk.Visible := false;
// // Tth.Visible:=false;
// //ToolButton1.Visible:=false;
// end;
TBEdit.Enabled := false;
TBDel.Enabled := false;
Tchk.Enabled := false;
TNochk.Enabled := false;
if cxTabControl1.TabIndex = 0 then
begin
TBEdit.Enabled := true;
TBDel.Enabled := true;
Tchk.Enabled := true;
end;
if cxTabControl1.TabIndex = 1 then
begin
TNochk.Enabled := true;
end;
end;
procedure TfrmOrdeFollower.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmOrdeFollower.TBEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if cxTabControl1.TabIndex = 0 then
begin
try
frmOrdeFollower_input := TfrmOrdeFollower_input.Create(Application);
with frmOrdeFollower_input do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FConType := Trim(Self.Order_Main.fieldbyname('ConType').AsString);
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmOrdeFollower_input.Free;
TBRafresh.Click;
end;
end;
if cxTabControl1.TabIndex = 1 then
begin
try
frmOrdeFollower_inputCK := TfrmOrdeFollower_inputCK.Create(Application);
with frmOrdeFollower_inputCK do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
FConType := Trim(Self.Order_Main.fieldbyname('ConType').AsString);
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmOrdeFollower_inputCK.Free;
TBRafresh.Click;
end;
end;
end;
procedure TfrmOrdeFollower.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
// with ADOQueryCmd do
// begin
// close;
// sql.Clear;
// sql.Add('select * from JYOrder_Sub_AnPai ');
// sql.Add('where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
// open;
// end;
// if not ADOQueryCmd.IsEmpty then
// begin
// Application.MessageBox('<27>ѻز֣<D8B2><D6A3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>Ͷ<EFBFBD><CDB6><EFBFBD>ƻ<EFBFBD><C6BB><EFBFBD>', '<27><>ʾ', 0);
// Exit;
// end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if trim(Order_Main.FieldByName('mainID').AsString) = 'CM001' then
exit;
if DelData() then
begin
Order_Main.Delete;
end;
end;
function TfrmOrdeFollower.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('delete YF_Money_CR where MainID=''' + Trim(Order_Main.fieldbyname('MainID').AsString) + '''');
// ExecSQL;
// end;
// with ADOQueryCmd do
// begin
// Close;
// sql.Clear;
// sql.Add('Update YF_Money_KC Set KCMoney=(select isnull(Sum(Money*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
// sql.Add(',KCBBMoney=(select isnull(Sum(BBMoney*QtyFlag),0) from YF_Money_CR A where A.CRID=YF_Money_KC.CRID)');
// // sql.Add(' where CRID='+CRID);
// ExecSQL;
// end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Sub where SubId=''' + Trim(Order_Main.fieldbyname('SubId').AsString) + '''');
ExecSQL;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Sub where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
ExecSQL;
end;
end;
if Trim(Order_Main.fieldbyname('SubId').AsString) = '' then
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Main where MainId=''' + Trim(Order_Main.fieldbyname('MainId').AsString) + '''');
ExecSQL;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result := False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
procedure TfrmOrdeFollower.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid1);
end;
procedure TfrmOrdeFollower.TBPrintClick(Sender: TObject);
var
fPrintFile, FConNoM: string;
begin
if Order_Main.IsEmpty then
Exit;
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD><EFBFBD>.rmf';
with ADOQueryTemp do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add('select *,fromConNo=(select Top 1 conNo from Contract_Main X where X.MainID=A.fromMainID) ');
sql.Add('from Contract_Main A');
sql.Add('inner join Contract_sub B on B.MainID=A.mainID ');
sql.Add('where A.FillTime>= ''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + ''' ');
sql.Add('and A.FillTime< ''' + Trim(FormatDateTime('yyyy-MM-dd', endDate.DateTime + 1)) + ''' ');
sql.Add('and A.mainID=' + quotedstr(trim(Order_Main.fieldbyname('MainID').AsString)));
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PRT);
SInitCDSData20(ADOQueryTemp, CDS_PRT);
if FileExists(fPrintFile) then
begin
RMVariables['dtxz'] := formatdateTime('yyyy-MM-dd', Now);
RMVariables['zdr'] := Trim(dName);
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD><EFBFBD>.rmf'), '<27><>ʾ', 0);
end;
end;
procedure TfrmOrdeFollower.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmOrdeFollower.TBAddClick(Sender: TObject);
begin
try
frmOrdeFollower_input := TfrmOrdeFollower_input.Create(Application);
with frmOrdeFollower_input do
begin
PState := 0;
FMainId := '';
FConType := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmOrdeFollower_input.Free;
TBRafresh.Click;
end;
end;
procedure TfrmOrdeFollower.ConNoChange(Sender: TObject);
var
str1: string;
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmOrdeFollower.FormShow(Sender: TObject);
begin
// InitForm();
ReadCxGrid(self.Caption, Tv1, ʾ<D6B8><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
BegDate.DateTime := SGetServerDate10(ADOQueryTemp);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
InitGrid();
end;
procedure TfrmOrdeFollower.Tv2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FInt := 2;
end;
procedure TfrmOrdeFollower.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
FInt := 1;
end;
procedure TfrmOrdeFollower.ToolButton5Click(Sender: TObject);
var
maxno: string;
begin
if ClientDataSet3.IsEmpty then
Exit;
if ClientDataSet2.IsEmpty then
Exit;
if Trim(ClientDataSet2.fieldbyname('MXId').AsString) = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δȷ<CEB4><C8B7><EFBFBD><EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if ClientDataSet3.Locate('OrderNo', null, []) then
begin
Application.MessageBox(<><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
BegDate.SetFocus;
try
ADOQueryCmd.Connection.BeginTrans;
//<2F><><EFBFBD><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>
with ClientDataSet3 do
begin
First;
while not eof do
begin
if Trim(ClientDataSet3.fieldbyname('ToId').AsString) = '' then
begin
if GetLSNo(ADOQueryCmd, maxno, 'To', 'Contract_Sub_MxTo', 4, 1) = False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡȥ<C8A1><C8A5><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
end
else
begin
maxno := Trim(ClientDataSet3.fieldbyname('ToId').AsString);
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from Contract_Sub_MxTo where ToId=''' + Trim(ClientDataSet3.fieldbyname('ToId').AsString) + '''');
Open;
end;
with ADOQueryCmd do
begin
if Trim(ClientDataSet3.fieldbyname('ToId').AsString) = '' then
Append
else
Edit;
FieldByName('MxId').Value := Trim(ClientDataSet2.fieldbyname('MxId').AsString);
FieldByName('ToId').Value := Trim(maxno);
FieldByName('OrdSubId').Value := Trim(ClientDataSet3.fieldbyname('OrdSubId').AsString);
FieldByName('TPDate').Value := ClientDataSet3.fieldbyname('TPDate').Value;
FieldByName('TPPerson').Value := ClientDataSet3.fieldbyname('TPPerson').Value;
FieldByName('TPNote').Value := ClientDataSet3.fieldbyname('TPNote').Value;
if Trim(ClientDataSet3.fieldbyname('TPQty').AsString) <> '' then
FieldByName('TPQty').Value := ClientDataSet3.fieldbyname('TPQty').Value
else
FieldByName('TPQty').Value := 0;
if Trim(ClientDataSet3.fieldbyname('Qty1').AsString) <> '' then
FieldByName('Qty1').Value := ClientDataSet3.fieldbyname('Qty1').Value
else
FieldByName('Qty1').Value := 0;
if Trim(ClientDataSet3.fieldbyname('Qty2').AsString) <> '' then
FieldByName('Qty2').Value := ClientDataSet3.fieldbyname('Qty2').Value
else
FieldByName('Qty2').Value := 0;
if Trim(ClientDataSet3.fieldbyname('Qty3').AsString) <> '' then
FieldByName('Qty3').Value := ClientDataSet3.fieldbyname('Qty3').Value
else
FieldByName('Qty3').Value := 0;
Post;
end;
with ClientDataSet3 do
begin
Edit;
FieldByName('ToId').Value := Trim(maxno);
Post;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ', 0);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
procedure TfrmOrdeFollower.ToolButton3Click(Sender: TObject);
begin
if FInt = 2 then
begin
if ClientDataSet2.IsEmpty then
Exit;
if ClientDataSet3.IsEmpty = false then
begin
Application.MessageBox('<27>Ѳ<EFBFBD><D1B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>', '<27><>ʾ', 0);
Exit;
end;
if Trim(ClientDataSet2.fieldbyname('MxId').AsString) <> '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Sub_Mx where MxId=''' + Trim(ClientDataSet2.fieldbyname('MxId').AsString) + '''');
ExecSQL;
end;
ClientDataSet2.Delete;
end
else if FInt = 3 then
begin
if ClientDataSet3.IsEmpty then
Exit;
if Trim(ClientDataSet3.fieldbyname('ToId').AsString) <> '' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete Contract_Sub_MxTo where ToId=''' + Trim(ClientDataSet3.fieldbyname('ToId').AsString) + '''');
ExecSQL;
end;
ClientDataSet3.Delete;
with ClientDataSet2 do
begin
Edit;
if ClientDataSet3.IsEmpty = False then
// FieldByName('KCSL').Value:=ClientDataSet2.fieldbyname('MxQty').Value-tv3.DataController.Summary.FooterSummaryValues[0]
else
FieldByName('KCSL').Value := ClientDataSet2.fieldbyname('MxQty').Value;
Post;
end;
end;
end;
procedure TfrmOrdeFollower.v2Column3PropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag := 'RKPlace';
flagname := '<27><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>';
if ShowModal = 1 then
begin
with ClientDataSet2 do
begin
Edit;
FieldByName('RKPlace').Value := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZDYName').AsString);
end;
end;
end;
finally
frmZDYHelp.Free;
end;
end;
procedure TfrmOrdeFollower.cxTabControl1Change(Sender: TObject);
begin
// initForm();
InitGrid();
end;
procedure TfrmOrdeFollower.TchkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if Order_Main.Locate('ssel', true, []) = false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with Order_Main do
begin
DisableControls;
First;
while not eof do
begin
if Fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update Contract_sub SET C_status=''1'' ');
sql.Add('where mainID =' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString)));
sql.Add('and subID =' + quotedstr(trim(Order_Main.fieldbyname('subID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
InitGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmOrdeFollower.TNochkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if Order_Main.Locate('ssel', true, []) = false then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
ADOQueryCmd.Connection.BeginTrans;
with Order_Main do
begin
DisableControls;
First;
while not eof do
begin
if Fieldbyname('ssel').AsBoolean then
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update Contract_sub SET C_status=''0'' ');
sql.Add('where mainID =' + quotedstr(trim(Order_Main.fieldbyname('mainID').AsString)));
sql.Add('and subID =' + quotedstr(trim(Order_Main.fieldbyname('subID').AsString)));
execsql;
end;
end;
next;
end;
First;
EnableControls;
end;
InitGrid();
ADOQueryCmd.Connection.CommitTrans;
except
ADOQueryCmd.Connection.RollbackTrans;
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmOrdeFollower.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ToolButton1.Click;
end;
procedure TfrmOrdeFollower.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
{ try
frmClothContractInPut_Tp := TfrmClothContractInPut_Tp.Create(Application);
with frmClothContractInPut_Tp do
begin
PState := 1;
tbsave.Enabled := false;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmClothContractInPut_Tp.Free;
end; }
if cxTabControl1.TabIndex = 0 then
begin
try
frmOrdeFollower_input := TfrmOrdeFollower_input.Create(Application);
with frmOrdeFollower_input do
begin
PState := 1;
tbsave.Enabled := false;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmOrdeFollower_input.Free;
end;
end;
if cxTabControl1.TabIndex = 1 then
begin
try
frmOrdeFollower_inputCK := TfrmOrdeFollower_inputCK.Create(Application);
with frmOrdeFollower_inputCK do
begin
PState := 1;
tbsave.Enabled := false;
FMainId := Trim(Self.Order_Main.fieldbyname('MainId').AsString);
if ShowModal = 1 then
begin
end;
end;
finally
frmOrdeFollower_inputCK.Free;
end;
end;
end;
procedure TfrmOrdeFollower.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
{ IF AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('N_Qty').Index]=0 then
begin
ACanvas.Brush.Color:=clSkyBlue;
end; }
if AViewInfo.GridRecord.Values[tv1.GetColumnByFieldName('IsZt').Index] = 0 then
begin
ACanvas.Brush.Color := Clred;
end;
end;
procedure TfrmOrdeFollower.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);
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
procedure TfrmOrdeFollower.ToolButton2Click(Sender: TObject);
begin
try
frmOrdeFollower_inputCK := TfrmOrdeFollower_inputCK.Create(Application);
with frmOrdeFollower_inputCK do
begin
PState := 0;
FMainId := '';
FConType := '<27><><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6>';
if ShowModal = 1 then
begin
TBRafresh.Click;
end;
end;
finally
frmOrdeFollower_inputCK.Free;
TBRafresh.Click;
end;
end;
end.