📄 sy_ndfpjhzd.pas
字号:
if SYZTS < 0 then
begin
CHQMsgBox('修改分配总套数的合计已超出总计划数,请修改!');
if SYZTS < 0 then
E_SYZTS.Font.Color := clRed
else
E_SYZTS.Font.Color := clBlack;
E_SYZTS.Text := IntToStr(SYZTS);
Exit;
end;
Sender.AsInteger := TextValue;
end;
procedure TFrmY_NDFPJHZD.Act_DeleteDWExecute(Sender: TObject);
begin
if Qry_JJNFPJH.IsEmpty then Exit;
Qry_JJNFPJH.Delete;
if SYZTS < 0 then
E_SYZTS.Font.Color := clRed
else
E_SYZTS.Font.Color := clBlack;
E_SYZTS.Text := IntToStr(SYZTS);
end;
procedure TFrmY_NDFPJHZD.Qry_JJNFPJHJHFPZSSetText(Sender: TField;
const Text: string);
var
TextValue: Integer;
begin
try
TextValue := StrToInt(Text);
except
CHQMsgBox('输入有误,可能输入数值过大,请重新输入!');
Exit;
end;
if TextValue < 0 then
begin
CHQMsgBox('输入有误,输入数值为负值,请重新输入!');
Exit;
end;
SYZTS := SYZTS - TextValue + Sender.AsInteger;
if SYZTS < 0 then
E_SYZTS.Font.Color := clRed
else
E_SYZTS.Font.Color := clBlack;
E_SYZTS.Text := IntToStr(SYZTS);
Sender.AsInteger := TextValue;
end;
procedure TFrmY_NDFPJHZD.BBt_AddFPJHClick(Sender: TObject);
var
ZHJJZB: Integer;
begin
if not Qry_JJNFPJH.IsEmpty then
begin
CHQMsgBox('已做分配计划!');
Exit;
end;
//******************************************************************************
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and ZT=''' + CG_YCL + '''';
if PY_IsExist(VG_SQLWhere) then
begin
CHQMsgBox('<<' + Qry_JHFPCSHB.FieldByName('YPMC').AsString + '>> 的分配计划已被使用!');
Exit;
end;
if Qry_JHFPCSHB.IsEmpty then
begin
CHQMsgBox('请选择要进行分配的分配计划号!');
Exit;
end;
{ if Qry_JHFPCSHB.FieldByName('JHFXL').AsInteger <= 0 then
begin
CHQMsgBox('此套票没有发行量!');
Exit;
end;}
//******************************************************************************
PS_SetStatus(False);
with Qry_JJNFPJH do
begin
Close;
SQL.Clear;
SQL.Add('select * from TY_YPFPJH');
SQL.Add('where JHH=''ZRJM'''); //打开一个空纪_计内_分配计划
Open;
end;
try
with Qry_JJNXQB do
begin
First;
while not Eof do
begin
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH =''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and DWDM =''' + Qry_JJNXQB.FieldByName('SQDWDM').AsString + '''';
if PY_IsExist(VG_SQLWhere) then
begin
Next;
Continue;
end;
ZHJJZB := Qry_JJNXQB.FieldByName('XQZTS').AsInteger;
///
with Qry_JJNFPJH do
begin
Append;
FieldByName('JHH').AsString := Qry_JHFPCSHB.FieldByName('JHH').AsString;
FieldByName('ND').AsString := Qry_JHFPCSHB.FieldByName('ND').AsString;
FieldByName('DWDM').AsString := Qry_JJNXQB.FieldByName('SQDWDM').AsString;
FieldByName('ZDRQ').AsString := FormatDateTime('yyyy-mm-dd', GetSysDate);
FieldByName('ZBR').AsString := VG_UserName;
FieldByName('PZR').AsString := CG_PZR;
FieldByName('YPMC').AsString := Qry_JHFPCSHB.FieldByName('YPMC').AsString;
FieldByName('BZ').AsString := '';
FieldByName('ZT').AsString := CG_WCL;
FieldByName('JHFPZS').AsInteger := ZHJJZB;
Post;
SYZTS := SYZTS - Qry_JJNFPJH.FieldByName('JHFPZS').AsInteger;
end;
Next;
end;
end;
except
BBt_CancelClick(nil);
end;
if SYZTS < 0 then
E_SYZTS.Font.Color := clRed
else
E_SYZTS.Font.Color := clBlack;
E_SYZTS.Text := IntToStr(SYZTS);
if Qry_JJNXQB.IsEmpty then
Act_AddDWExecute(nil);
end;
procedure TFrmY_NDFPJHZD.BBt_DeleteFPJHClick(Sender: TObject);
begin
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and ZT=''' + CG_YCL + '''';
if PY_IsExist(VG_SQLWhere) then
begin
CHQMsgBox('<<' + Qry_JHFPCSHB.FieldByName('YPMC').AsString + '>> 的分配计划已被使用!');
Exit;
end;
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and not SDate is NULL';
if PY_IsExist(VG_SQLWhere) then
begin
CHQMsgBox('<<' + Qry_JHFPCSHB.FieldByName('YPMC').AsString + '>> 的分配计划已发送!');
Exit;
end;
if Qry_JJNFPJH.IsEmpty then
begin
CHQMsgBox('请选择要进行分配的分配计划号!');
Exit;
end;
PS_SetStatus(False);
try
with Qry_JJNFPJH do
begin
First;
while not EOF do
Delete;
end;
except
BBt_CancelClick(nil);
end;
if SYZTS < 0 then
E_SYZTS.Font.Color := clRed
else
E_SYZTS.Font.Color := clBlack;
E_SYZTS.Text := IntToStr(SYZTS);
end;
procedure TFrmY_NDFPJHZD.BBt_ModifyClick(Sender: TObject);
begin
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and ZT=''' + CG_YCL + '''';
if PY_IsExist(VG_SQLWhere) then
begin
CHQMsgBox('<<' + Qry_JHFPCSHB.FieldByName('YPMC').AsString + '>> 的分配计划已被使用!');
Exit;
end;
VG_SQLWhere := 'select JHH from TY_YPFPJH '
+ ' where ND =''' + IntToStr(ND.Value) + ''' '
+ ' and JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + ''''
+ ' and not SDate is NULL';
if PY_IsExist(VG_SQLWhere) then
begin
CHQMsgBox('<<' + Qry_JHFPCSHB.FieldByName('YPMC').AsString + '>> 的分配计划已发送!');
Exit;
end;
if Qry_JJNFPJH.IsEmpty then
begin
CHQMsgBox('请选择要进行分配的分配计划号!');
Exit;
end;
PS_SetStatus(False);
Qry_JJNFPJH.Edit;
DBG_JJNFPJH.SetFocus;
end;
procedure TFrmY_NDFPJHZD.BBt_SaveClick(Sender: TObject);
begin
if SYZTS < 0 then
begin
if CHQMsgBox('输入数超出可分配量,是否保存所作分配计划?', 2) = idNo then
Exit;
end;
with Qry_JJNFPJH do
begin
DisableControls;
First;
while not Eof do
if FieldByName('JHFPZS').AsInteger <= 0 then
Delete
else
Next;
First;
EnableControls;
Database.StartTransaction;
try
ApplyUpdates;
Database.Commit;
except
Database.RollBack;
// CHQMsgBox('数据存储错误!', '错误', 1, Mb_IconError);
exit;
end;
CommitUpdates; //清除缓存的内容
end;
PS_SetStatus(True);
PS_CaculSYZTS(Qry_JHFPCSHB.FieldByName('JHH').AsString);
end;
procedure TFrmY_NDFPJHZD.BBt_CancelClick(Sender: TObject);
begin
with Qry_JJNFPJH do
begin
Database.StartTransaction;
try
CancelUpdates;
Database.Commit;
except
Database.RollBack;
CHQMsgBox('数据存储错误!');
exit;
end;
CommitUpdates; //清除缓存的内容
close;
Open;
end;
PS_SetStatus(True);
PS_CaculSYZTS(Qry_JHFPCSHB.FieldByName('JHH').AsString);
end;
procedure TFrmY_NDFPJHZD.BBt_SendClick(Sender: TObject);
begin
if Qry_JHFPCSHB.IsEmpty then
begin
CHQMsgBox('没有可发送的数据!');
exit;
end;
VG_SQLWhere := 'select * from TY_YPFPJH '
+ 'where SDATE IS NULL and JHH =''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + '''';
if SendData(VG_SQLWhere, 'TY_YPFPJH') = IDOK then
CHQMsgBox('信息发送成功!');
end;
procedure TFrmY_NDFPJHZD.BBt_PrintClick(Sender: TObject);
begin
if Qry_JJNFPJH.IsEmpty then Exit;
NDFPJHCX_RPT := TNDFPJHCX_RPT.Create(nil);
try
NDFPJHCX_RPT.Qry_Print.SQL.Text := 'select ROWNUM, T.*, G.DWJC DWMC from TY_YPFPJH T ,TGS_GXDWSJB G where G.DWDM=T.DWDM and t.JHH=''' + Qry_JHFPCSHB.FieldByName('JHH').AsString + '''';
NDFPJHCX_RPT.Qry_Print.Open;
NDFPJHCX_RPT.Preview;
NDFPJHCX_RPT.Destroy;
except
NDFPJHCX_RPT.Destroy;
end;
end;
procedure TFrmY_NDFPJHZD.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
SaveAllColWidth(Self);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -