D7YPDJlingyao/基础资料维护(BaseInfo.dll)/U_CFAdd.pas
DESKTOP-E401PHE\Administrator 43fbfa8db2 ~
2025-07-19 16:53:04 +08:00

221 lines
5.4 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_CFAdd;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxDataStorage, cxEdit, DB, cxDBData, ADODB, DBClient, cxGridLevel,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxClasses,
cxControls, cxGridCustomView, cxGrid, ComCtrls, ToolWin,
cxGridCustomPopupMenu, cxGridPopupMenu, cxTextEdit, cxButtonEdit,
StdCtrls, ExtCtrls, cxCurrencyEdit, cxDropDownEdit, cxCalendar, BtnEdit;
type
TfrmCFAdd = class(TForm)
ToolBar1: TToolBar;
ToolButton1: TToolButton;
TBClose: TToolButton;
ADOQueryMain: TADOQuery;
ADOQueryCmd: TADOQuery;
cxGrid1: TcxGrid;
Tv1: TcxGridDBTableView;
v1Column5: TcxGridDBColumn;
v1PRTColor: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
cxGrid1Level1: TcxGridLevel;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
Order_Sub: TClientDataSet;
ADOQuery1: TADOQuery;
ADOQueryTemp: TADOQuery;
ADOCmd: TADOQuery;
Label1: TLabel;
DataSource1: TDataSource;
Label2: TLabel;
procedure FormShow(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure CYCFBtnDnClick(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
procedure ToolButton3Click(Sender: TObject);
procedure v1PRTColorPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
private
canshu1:string;
Fint:Integer;
procedure InitSubGrid();
function SaveData():Boolean;
{ Private declarations }
public
FCYID,FCPID:String;
CopyInt:Integer;
{ Public declarations }
end;
var
frmCFAdd: TfrmCFAdd;
implementation
uses
U_DataLink,U_Fun,U_iniParam,U_ZDYHelp;
{$R *.dfm}
procedure TfrmCFAdd.InitSubGrid();
begin
try
ADOCmd.DisableControls;
with ADOCmd do
begin
Close;
SQL.Clear;
SQL.Add(' select * from CP_YDang_CF where mainid='''+FCPID+''' ');
Open;
end;
SCreateCDS20(ADOCmd,Order_Sub);
SInitCDSData20(ADOCmd,Order_Sub);
finally
ADOCmd.EnableControls;
end;
end;
procedure TfrmCFAdd.FormShow(Sender: TObject);
begin
InitSubGrid();
end;
procedure TfrmCFAdd.TBCloseClick(Sender: TObject);
begin
Close;
end;
function TfrmCFAdd.SaveData():Boolean;
var
Smaxno:String;
begin
try
ADOQueryCmd.Connection.BeginTrans;
with Order_Sub do
begin
First;
while not Eof do
begin
if Trim(Order_Sub.fieldbyname('Id').AsString)='' then
begin
if GetLSNo(ADOQueryCmd,Smaxno,'CF','CP_YDang_CF',4,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>ˮ<EFBFBD><CBAE>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
begin
Smaxno:=Trim(Order_Sub.fieldbyname('Id').AsString);
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from CP_YDang_CF where');
sql.Add(' ID='''+Trim(Smaxno)+'''');
Open;
end;
with ADOQueryCmd do
begin
if IsEmpty then
Append
else
Edit;
FieldByName('MainId').Value:=Trim(Label1.Caption);
FieldByName('Id').Value:=Trim(Smaxno);
FieldByName('CYCF').Value:=Order_Sub.FieldByName('CYCF').AsString;
fieldbyname('CYECF').Value:=Order_Sub.FieldByName('CYECF').AsString;
fieldbyname('account').Value:=Order_Sub.FieldByName('account').AsString;
Post;
end;
Next;
end;
end;
ADOQueryCmd.Connection.CommitTrans;
Result:=True;
except
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
end;
end;
procedure TfrmCFAdd.ToolButton1Click(Sender: TObject);
begin
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>','<27><>ʾ',0);
ModalResult:=1;
end;
end;
procedure TfrmCFAdd.CYCFBtnDnClick(Sender: TObject);
begin
TBtnEditC(Sender).Text:='';
TBtnEditC(Sender).TxtCode:='';
end;
procedure TfrmCFAdd.ToolButton2Click(Sender: TObject);
var
i:Integer;
begin
CopyAddRow(Tv1,Order_Sub);
with Order_Sub do
begin
Edit;
FieldByName('CYCF').Value:='';
FieldByName('CYECF').Value:='';
FieldByName('account').Value:='';
Post;
end;
end;
procedure TfrmCFAdd.ToolButton3Click(Sender: TObject);
begin
if Trim(Order_Sub.fieldbyname('ID').AsString)<>'' then
begin
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
with ADOCmd do
begin
Close;
sql.Clear;
sql.Add('delete from CP_YDang_CF where ID='''+Trim(Order_Sub.fieldbyname('ID').AsString)+'''');
ExecSQL;
end;
end;
Order_Sub.Delete;
end;
procedure TfrmCFAdd.v1PRTColorPropertiesButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='CYCF';
flagname:='<27>ɷ<EFBFBD>';
V1Name.Caption:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
V1Note.Caption:=<><D3A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
fnote:=True;
if ShowModal=1 then
begin
Self.Order_Sub.Edit;
Self.Order_Sub.FieldByName('CYCF').Value:=Trim(ClientDataSet1.fieldbyname('ZDYName').AsString);
Self.Order_Sub.FieldByName('CYECF').Value:=Trim(ClientDataSet1.fieldbyname('Note').AsString);
end;
end;
finally
frmZDYHelp.Free;
end;
end;
end.