D7myYunxiang/云翔基础资料(BaseInfoYX.dll)/U_PBGYSInPutMain.pas
DESKTOP-E401PHE\Administrator 1011cb7292 1
2025-01-20 13:04:03 +08:00

368 lines
9.4 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_PBGYSInPutMain;
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, cxPC, BtnEdit;
type
TfrmPBGYSInPutMain = class(TForm)
ADOQueryTemp: TADOQuery;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
Panel2: TPanel;
KHNo: TEdit;
Label15: TLabel;
Label16: TLabel;
Label13: TLabel;
Label17: TLabel;
Label18: TLabel;
LabKHName: TLabel;
Label20: TLabel;
KHAdd: TMemo;
KHSJAdd: TMemo;
KHLXR: TEdit;
KHTel: TEdit;
KHName: TEdit;
KHNameJC: TEdit;
Note: TEdit;
Label1: TLabel;
KHWX: TEdit;
Label2: TLabel;
KHEmail: TEdit;
Label3: TLabel;
KHJYFanWei: TEdit;
ToolBar1: TToolBar;
TBSave: TToolButton;
TBClose: TToolButton;
DS_HZ3: TDataSource;
CDS_HZ3: TClientDataSet;
LabKHType: TLabel;
KHType: TBtnEditA;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBSaveClick(Sender: TObject);
procedure KHTypeBtnClick(Sender: TObject);
private
{ Private declarations }
procedure InitGrid();
function SaveData():Boolean;
procedure initBtnColor(panel12:TPanel);
public
{ Public declarations }
FKHMainid,FTSFlag,FKHFlag:String;
end;
var
frmPBGYSInPutMain: TfrmPBGYSInPutMain;
implementation
uses
U_DataLink,U_RTFun,U_ZDYHelp,U_FjList_RZ,U_SCPerson;
{$R *.dfm}
procedure TfrmPBGYSInPutMain.InitGrid();
begin
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from KH_Main where KHMainID='''+Trim(FKHMainid)+'''');
Open;
end;
//<2F><><EFBFBD><EFBFBD>
if ADOQueryTemp.IsEmpty=false then
SCSHDataNew(ADOQueryTemp,Panel2,2);
end;
procedure TfrmPBGYSInPutMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TfrmPBGYSInPutMain.TBCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmPBGYSInPutMain.FormShow(Sender: TObject);
begin
KHName.SetFocus;
InitGrid();
if TBSave.Visible=False then
begin
initBtnColor(Panel2);
end;
if Trim(FKHFlag)='GYS' then
begin
LabKHName.Caption:='<27><> Ӧ <20><>';
LabKHType.Visible:=True;
KHType.Visible:=True;
Self.Caption:='<27><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>Ϣ¼<CFA2><C2BC>';
end else
if Trim(FKHFlag)='KH' then
begin
LabKHName.Caption:='<27><> <20><>';
LabKHType.Visible:=False;
KHType.Visible:=False;
Self.Caption:='<27>ͻ<EFBFBD><CDBB><EFBFBD>Ϣ¼<CFA2><C2BC>';
end;
end;
procedure TfrmPBGYSInPutMain.initBtnColor(panel12:TPanel);
var
i:Integer;
begin
with panel12 do
begin
for i:=0 to panel12.ControlCount-1 do
begin
if Controls[i] is TEdit then
begin
TEdit(Controls[i]).Color:=clMenu;
TEdit(Controls[i]).ReadOnly:=True;
end else
if Controls[i] is TMemo then
begin
TMemo(Controls[i]).Color:=clMenu;
TMemo(Controls[i]).ReadOnly:=True;
end else
if Controls[i] is TComboBox then
begin
TComboBox(Controls[i]).Color:=clMenu;
TComboBox(Controls[i]).Enabled:=False;
end;
end;
end;
end;
function TfrmPBGYSInPutMain.SaveData():Boolean;
var
maxno,FGYSNO,maxnoYWY:String;
begin
result:=false;
try
ADOQueryCmd.Connection.BeginTrans;
if Trim(FKHMainid)='' then
begin
if GetLSNo(ADOQueryCmd,maxno,'KH','KH_Main',4,1)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD>IDʧ<44><CAA7>GYSKH<4B><48>','<27><>ʾ',0);
Exit;
end;
if Trim(FKHFlag)='GYS' then
begin
//if GetLSNo(ADOQueryCmd,FGYSNO,Trim(KHType.TxtCode),'KH_Main',4,0)=False then
if GetLSNo(ADOQueryCmd,FGYSNO,Trim('GY'),'KH_Main',4,0)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end else
if Trim(FKHFlag)='KH' then
begin
if GetLSNo(ADOQueryCmd,FGYSNO,'KH','KH_Main',4,0)=False then
begin
Result:=False;
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8A1>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>','<27><>ʾ',0);
Exit;
end;
end;
KHNo.Text:=Trim(FGYSNO);
end else
begin
maxno:=Trim(FKHMainid);
end;
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('select * from KH_Main where KHMainID='''+Trim(FKHMainid)+'''');
Open;
end;
with ADOQueryCmd do
begin
If IsEmpty then
begin
Append;
FieldByName('Filler').Value:=Trim(DName);
FieldByName('Fillercode').Value:=Trim(DCode);
FieldByName('FillTime').Value:=SGetServerDateTime(ADOQueryTemp);
end
else
begin
Edit;
FieldByName('Editer').Value:=Trim(DName);
FieldByName('EditerCode').Value:=Trim(DCode);
FieldByName('Edittime').Value:=SGetServerDateTime(ADOQueryTemp);
end;
FieldByName('KHMainID').Value:=Trim(maxno);
FieldByName('KHFlag').Value:=FKHFlag;
RTSetsavedata(ADOQueryCmd,'KH_Main',Panel2,2);
FieldByName('Valid').Value:='Y';
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_Main where KHName='''+Trim(KHName.Text)+'''');
sql.Add(' and KHFlag='''+Trim(FKHFlag)+''' and Valid=''Y'' ');
Open;
end;
if ADOQueryCmd.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C8AB><EFBFBD>ظ<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_Main where KHNameJC='''+Trim(KHNameJC.Text)+'''');
sql.Add(' and KHFlag='''+Trim(FKHFlag)+''' and Valid=''Y'' ');
Open;
end;
if ADOQueryCmd.RecordCount>1 then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD>!','<27><>ʾ',0);
Exit;
end;
if Trim(FKHMainid)='' then
begin
if GetLSNo(ADOQueryCmd,maxnoYWY,'ZD','KH_Owner',3,1)=False then
begin
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('ȡָ<C8A1><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('select * from KH_Owner where 1=2');
Open;
end;
with ADOQueryCmd do
begin
Append;
FieldByName('KHMainId').Value:=Trim(maxno);
FieldByName('KOID').Value:=Trim(maxnoYWY);
FieldByName('UserId').Value:=Trim(DCode);
FieldByName('UserName').Value:=Trim(DName);
FieldByName('KOType').Value:='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
FieldByName('FillerCode').Value:=Trim(DCode);
FieldByName('Filler').Value:=Trim(DName);
FieldByName('Valid').Value:='Y';
Post;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update KH_Main Set FZR=dbo.F_Get_HZStr(KH_Main.KHMainId,''FZR'')');
sql.Add(' where KHMainId='''+Trim(maxno)+'''');
ExecSQL;
end;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('Update CK_MYSC_CR Set KHName='''+trim(KHName.Text)+''' ');
sql.Add(' where KHCode='''+Trim(KHNo.Text)+'''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
FKHMainid:=maxno;
result:=true;
except
ADOQueryCmd.Connection.RollbackTrans;
Result:=false;
Application.MessageBox('<27><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>ʧ<EFBFBD><CAA7>!','<27><>ʾ',0);
Exit;
end;
end;
procedure TfrmPBGYSInPutMain.TBSaveClick(Sender: TObject);
begin
Panel2.SetFocus;
IF trim(KHName.Text)='' then
begin
application.MessageBox(<>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
if Trim(KHNameJC.Text)='' then
begin
application.MessageBox('<27><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
if Trim(FKHFlag)='GYS' then
begin
if Trim(KHType.Text)='' then
begin
application.MessageBox('<27><><EFBFBD>Ͳ<EFBFBD><CDB2><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>','<27><>ʾ<EFBFBD><CABE>Ϣ',MB_ICONERROR);
exit;
end;
end;
if Application.MessageBox(<><C8B7>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><>ʾ',32+4)<>IDYES then Exit;
if SaveData() then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>!','<27><>ʾ',0);
ModalResult:=1;
end;
end;
procedure TfrmPBGYSInPutMain.KHTypeBtnClick(Sender: TObject);
begin
{try
frmZDYHelp:=TfrmZDYHelp.Create(Application);
with frmZDYHelp do
begin
flag:='GYSType';
flagname:='<27><>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
ViewFlag:=True;
if ShowModal=1 then
begin
Self.KHType.Text:=Trim(ClientDataSet1.fieldbyname('ZdyName').AsString);
Self.KHType.TxtCode:=Trim(ClientDataSet1.fieldbyname('Note').AsString);
end;
end;
finally
frmZDYHelp.Free;
end; }
try
frmSCPerson:=TfrmSCPerson.Create(Application);
with frmSCPerson do
begin
FlagStr:='GYSType';
if ShowModal=1 then
begin
Self.KHType.Text:=Trim(FSDPerson);
end;
end;
finally
frmSCPerson.Free;
end;
end;
end.