📄 sy_jypxxwh.pas
字号:
for i := 0 to DBGid_tao.Columns.Count - 1 do
if uppercase(DBGid_tao.Columns.Items[i].FieldName) = 'ZT' then
begin
DBGid_tao.Columns.Items[i].Visible := ((SubMod = 2) and (SelectedRowsCount = -1));
break;
end;
for i := 0 to DBGid_mei.Columns.Count - 1 do
if uppercase(DBGid_mei.Columns.Items[i].FieldName) = 'ZT' then
begin
DBGid_mei.Columns.Items[i].Visible := ((SubMod = 2) and (SelectedRowsCount = -1));
break;
end;
end;
GBo_tao.Visible := (vlp_FocusGrid = DBGid_tao);
GBo_mei.Visible := (vlp_FocusGrid = DBGid_mei);
//设置button状态
Act_add.Enabled := (SubMod = 0);
Act_delete.Enabled := (SubMod = 0);
Act_modify.Enabled := (SubMod = 0);
Act_print.Visible := false;
Act_send.Enabled := Act_modify.Enabled;
Act_save.Enabled := (SubMod = 1) or (SubMod = 3);
Act_cancel.Enabled := (SubMod = 1) or (SubMod = 3);
DBGid_tao.Enabled := (SubMod = 0) or (SubMod = 2);
DBGid_mei.Enabled := (SubMod = 0) or (SubMod = 2);
vl_b_tao := ((SubMod = 1) or (SubMod = 3) and (vlp_FocusGrid.Tag = 0));
for i := 0 to GBo_tao.ControlCount - 1 do
begin
if (GBo_tao.Controls[i] is TDBEdit) or
(GBo_tao.Controls[i] is TDBDateEdit) or
(GBo_tao.Controls[i] is TDBMemo) or {syz增加,控制备注字段是否有效} {}
// (GBo_tao.Controls[i] is TMyDBImage) or
(GBo_tao.Controls[i] is TSpeedButton) or
(GBo_tao.Controls[i] is TDBLookupComboBox) then
begin
(GBo_tao.Controls[i]).Enabled := vl_b_tao;
end;
end;
DBEdit1.Enabled := (vlp_FocusGrid = DBGid_tao) and (SubMod = 1);
CB_jkp.Enabled := DBEdit1.Enabled;
DBLCbox_DL.Enabled := DBEdit1.Enabled;
DBLookupComboBox1.Enabled := DBEdit1.Enabled;
DBLookupComboBox2.Enabled := DBEdit1.Enabled;
DBLookupComboBox3.Enabled := DBEdit1.Enabled;
vl_b_mei := ((SubMod = 1) or (SubMod = 3) and (vlp_FocusGrid = DBGid_mei));
for i := 0 to GBo_mei.ControlCount - 1 do
begin
if (GBo_mei.Controls[i] is TDBEdit) or
(GBo_mei.Controls[i] is TDBDateEdit) or
(GBo_mei.Controls[i] is TDBMemo) or {syz增加,控制备注字段是否有效} {}
// (GBo_mei.Controls[i] is TMyDBImage) or
(GBo_mei.Controls[i] is TSpeedButton) then
begin
(GBo_mei.Controls[i]).Enabled := vl_b_mei;
end;
end;
DBEdit13.Enabled := (vlp_FocusGrid = DBGid_mei) and (SubMod = 1);
end;
procedure TFrm_jyp.Act_addExecute(Sender: TObject);
procedure AddXX;
begin
SetEditStatus(1);
vlp_FocusGrid.DataSource.DataSet.Append;
if vlp_FocusGrid.Tag = 1 then
begin
Qry_mei.FieldByName('TDM').AsString := Qry_tao.FieldByName('TDM').AsString;
Qry_mei.FieldByName('ZH').AsString := Qry_tao.FieldByName('ZH').AsString;
end;
{新增的时候,将是否显示图案设置为必须显示}
CBo_tao.Checked := True;
CBo_tao.Enabled := False;
Target_Name := '';
case vlp_FocusGrid.Tag of
0:
DBEdit1.SetFocus;
1:
DBEdit13.SetFocus;
end;
end;
begin
{$IFDEF qmd}
AddXX;
{$ELSE}
if Tag = 41200 then
AddBaseZDJH
else
AddXX;
{$ENDIF}
{ if Lio_typ = io_yp then
begin
AddBaseZDJH;
exit;
end
else
begin
SetEditStatus(1);
vlp_FocusGrid.DataSource.DataSet.Append;
if vlp_FocusGrid.Tag = 1 then
begin
Qry_mei.FieldByName('TDM').AsString := Qry_tao.FieldByName('TDM').AsString;
Qry_mei.FieldByName('ZH').AsString := Qry_tao.FieldByName('ZH').AsString;
end;
// 新增的时候,将是否显示图案设置为必须显示
CBo_tao.Checked := True;
CBo_tao.Enabled := False;
Target_Name := '';
case vlp_FocusGrid.Tag of
0:
DBEdit1.SetFocus;
1:
DBEdit13.SetFocus;
end;
end;}
end;
procedure TFrm_jyp.AddBaseZDJH;
var
rtnOK: boolean;
procedure appzdxx;
begin
{ case vlp_FocusGrid.Tag of
0: //tao
begin
Qry_tao.FieldByName('YPLB').AsString := Query1.FieldByName('JYPLB').AsString;
Qry_tao.FieldByName('TZ').AsString := Query1.FieldByName('TZDM').AsString;
Qry_tao.FieldByName('MC').AsString := Query1.FieldByName('TMC').AsString;
Qry_tao.FieldByName('DW').AsString := Query1.FieldByName('DW').AsString;
Qry_tao.FieldByName('CB').AsString := Query1.FieldByName('CB').AsString;
Qry_tao.FieldByName('SJ').AsString := Query1.FieldByName('QTSJ').AsString;
Qry_tao.FieldByName('ZZDW').AsString := Query1.FieldByName('FXDWMC').AsString;
Qry_tao.FieldByName('FXDW').AsString := Query1.FieldByName('FXDWMC').AsString;
Qry_tao.FieldByName('FXRQ').Value := Query1.FieldByName('FXRQ').Value;
Qry_tao.FieldByName('FXL').Value := Query1.FieldByName('JHFXL').Value;
Qry_tao.FieldByName('BZ').AsString := Query1.FieldByName('BZ').AsString;
end;
1:
begin
Qry_mei.FieldByName('ZZDW').AsString := Qry_tao.FieldByName('ZZDW').AsString;
Qry_mei.FieldByName('FXDW').AsString := Qry_tao.FieldByName('FXDW').AsString;
Qry_mei.FieldByName('FXRQ').Value := Qry_tao.FieldByName('FXRQ').Value;
Qry_mei.FieldByName('MC').AsString := Query2.FieldByName('TUMC').AsString;
Qry_mei.FieldByName('DW').AsString := Query2.FieldByName('DW').AsString;
Qry_mei.FieldByName('CB').AsString := Query2.FieldByName('CB').AsString;
Qry_mei.FieldByName('SJ').AsString := Query2.FieldByName('SJ').AsString;
Qry_mei.FieldByName('FXL').Value := Query2.FieldByName('JHFXL').Value;
Qry_mei.FieldByName('BZ').AsString := Query2.FieldByName('BZ').AsString;
end;
end;}
end;
begin
with Tfrm_JYPXXWH_yd.Create(nil) do
try
ND := VarToStr(SpinEdit1.Value);
if jypxx_ydExEcute(Qry_tao.DataBase, vlp_FocusGrid.Tag) then
begin
rtnOK := (ShowModal = mrOK);
SetEditStatus(1);
vlp_FocusGrid.DataSource.DataSet.Append;
if vlp_FocusGrid.Tag = 1 then
begin
Qry_mei.FieldByName('TDM').AsString := Qry_tao.FieldByName('TDM').AsString;
Qry_mei.FieldByName('ZH').AsString := Qry_tao.FieldByName('ZH').AsString;
end;
{新增的时候,将是否显示图案设置为必须显示}
CBo_tao.Checked := True;
CBo_tao.Enabled := False;
Target_Name := '';
case vlp_FocusGrid.Tag of
0:
begin
DBEdit1.SetFocus;
if rtnOk then
begin
DBLCbox_DL.KeyValue := copy(Query1.FieldByName('JYPLB').AsString, 1, 1);
DBLCbox_DLCloseUp(nil);
Qry_tao.FieldByName('YPLB').AsString := Query1.FieldByName('JYPLB').AsString;
Qry_tao.FieldByName('TZ').AsString := Query1.FieldByName('TZDM').AsString;
Qry_tao.FieldByName('MC').AsString := Query1.FieldByName('TMC').AsString;
Qry_tao.FieldByName('DW').AsString := Query1.FieldByName('DW').AsString;
Qry_tao.FieldByName('ZZDW').AsString := Query1.FieldByName('FXDWMC').AsString;
Qry_tao.FieldByName('FXDW').AsString := Query1.FieldByName('FXDWMC').AsString;
Qry_tao.FieldByName('FXRQ').Value := Query1.FieldByName('FXRQ').Value;
Qry_tao.FieldByName('FXL').Value := Query1.FieldByName('JHFXL').Value;
Qry_tao.FieldByName('BZ').AsString := Query1.FieldByName('BZ').AsString;
end;
end;
1:
begin
DBEdit13.SetFocus;
if rtnOk then
begin
Qry_mei.FieldByName('ZZDW').AsString := Qry_tao.FieldByName('ZZDW').AsString;
Qry_mei.FieldByName('FXDW').AsString := Qry_tao.FieldByName('FXDW').AsString;
Qry_mei.FieldByName('FXRQ').Value := Qry_tao.FieldByName('FXRQ').Value;
Qry_mei.FieldByName('MC').AsString := Query2.FieldByName('TUMC').AsString;
Qry_mei.FieldByName('DW').AsString := Query2.FieldByName('DW').AsString;
Qry_mei.FieldByName('FXL').Value := Query2.FieldByName('JHFXL').Value;
Qry_mei.FieldByName('BZ').AsString := Query2.FieldByName('BZ').AsString;
end;
end;
end;
end;
finally
destroy;
end;
end;
procedure TFrm_jyp.Act_deleteExecute(Sender: TObject);
begin
if ((vlp_FocusGrid.tag = 0) and (DBGid_tao.DataSource.DataSet.IsEmpty)) or
((vlp_FocusGrid.tag = 1) and (DBGid_mei.DataSource.DataSet.IsEmpty)) then
begin
CHQMsgBox('当前没有可删除的记录。');
exit;
end;
if CHQMsgBox('确实要删除选中的记录吗?', 2) <> IDYes then
Exit;
{增建判断,看当前删除是否符合条件}
if vlp_FocusGrid.tag = 0 then
with Qry_super do
begin
Close;
SQL.Text := 'Select * from TB_JYPMTAXXB Where TDM=''' + Qry_mei.fieldbyname('TDM').AsString + '''';
Open;
if IsEmpty = False then
begin
CHQMsgBox('当前套中含有枚!要删除套,请先删除枚!');
Exit;
end;
end;
if DBGid_tao.SelectedRows.Count = 0 then
begin
DBGid_tao.SelectedRows.CurrentRowSelected := true;
end;
vlp_FocusGrid.DataSource.DataSet.Next;
if (VLp_FocusGrid.DataSource.DataSet.Eof) then
begin
VLp_FocusGrid.DataSource.DataSet.Prior;
vlp_stao_tdm := Qry_tao.fieldbyname('TDM').AsString;
if VLp_FocusGrid.Tag = 1 then
begin
vlp_smei_mdm := Qry_mei.fieldbyname('MDM').AsString;
end;
VLp_FocusGrid.DataSource.DataSet.Next;
end
else
begin
vlp_stao_tdm := Qry_tao.fieldbyname('TDM').AsString;
if vlp_FocusGrid.Tag = 1 then
begin
vlp_smei_mdm := Qry_mei.fieldbyname('MDM').AsString;
end;
vlp_FocusGrid.DataSource.DataSet.Prior;
end;
{ if (DBGid_tao.DataSource.DataSet.FieldByName('SDATEFX').AsString <> '') then
with Qry_super do
begin
vl_b_isold := true;
Close;
SQL.Clear;
SQL.Add('SELECT JSDWDM FROM TG_XTTXFSGNB WHERE CSDM =''sf_jhbd''');
Open;
vl_s_jsdwdm := trim(FieldByName('JSDWDM').AsString);
end
else
vl_b_isold := false;}
Qry_tao.DataBase.StartTransaction;
try
with Qry_super do
begin
case vlp_FocusGrid.tag of
0: //套
begin
{syz添加下面删除套地图信息地SQL}
Close;
SQL.Text := 'Delete From TB_JYPTTAXXB Where TDM=''' + Qry_tao.fieldbyname('TDM').AsString + '''';
ExecSQL;
Close;
SQL.Clear;
SQL.Add('DELETE FROM TB_JYPMXXB WHERE TDM =''' +
Qry_tao.fieldbyname('TDM').AsString + '''');
ExecSQL;
vlp_FocusGrid.DataSource.DataSet.Delete;
(vlp_FocusGrid.DataSource.DataSet as TQuery).ApplyUpdates;
end;
1: //图
begin
Close;
SQL.Text := 'Delete From TB_JYPMTAXXB Where TDM=''' + Qry_mei.fieldbyname('TDM').asstring + '''and MDM=''' + Qry_mei.fieldbyname('MDM').asstring + '''';
ExecSQL;
Close;
SQL.Text := 'Delete FROM TB_JYPMXXB WHERE TDM =''' + Qry_tao.fieldbyname('TDM').AsString + '''' +
' and MDM=''' + Qry_mei.FieldByName('MDM').AsString + '''';
ExecSQL;
vlp_FocusGrid.DataSource.DataSet.Delete;
{ Close;
SQL.Clear;
SQL.Add('Update tf_pfxjhtao set zbrq=(select sysdate from dual) where jhh=''' +
Qry_tao.fieldbyname('JHH').AsString + '''');
ExecSQL;
if ExistRecord('TF_PFXJHTULS','JHH=''' +
Qry_tao.fieldbyname('JHH').AsString + ''' and BBH=' +
inttostr(Qry_tao.fieldbyname('BBH').AsInteger-1) +
' and TX=' + Qry_mei.fieldbyname('TX').AsString +
' and XGZT<>''3''') then
begin //上次发送过,并且未被删除-->XGZT:=3
Close;
SQL.Clear;
SQL.Add('Update tf_pfxjhtu set(JHH,BBH,TZDM,TX,TBBH,QXBZ,PPLB,TUMC,TUJC,MZ,SJ,GG,WXGG,FXL,FXRQ,BZ,XGZT) = ' +
'(SELECT JHH,BBH+1,TZDM,TX,TBBH,QXBZ,PPLB,TUMC,TUJC,MZ,SJ,GG,WXGG,FXL,FXRQ,BZ,''3'' FROM TF_PFXJHTULS WHERE JHH=''' +
Qry_tao.fieldbyname('JHH').AsString + ''' AND BBH=' +
inttostr(Qry_tao.fieldbyname('BBH').AsInteger-1) +
' and TX=' + Qry_mei.fieldbyname('TX').AsString+') ' +
'where JHH= ''' + Qry_tao.fieldbyname('JHH').AsString +
''' and tx= ' + Qry_mei.fieldbyname('TX').AsString);
ExecSQL;
end
else
begin//上次没有该图记录-->delete}
// vlp_FocusGrid.DataSource.DataSet.Delete;
end;
end;
end;
Qry_tao.DataBase.Commit;
except
Qry_tao.DataBase.RollBack;
raise exception.Create('数据访问错误!');
end;
// (vlp_FocusGrid.DataSource.DataSet as TQuery).CommitUpdates;
vlp_FocusGrid.DataSource.DataSet.Close;
vlp_FocusGrid.DataSource.DataSet.Open;
case vlp_focusgrid.tag of
0: //套
Qry_tao.Locate('TDM', vlp_stao_tdm, [loPartialKey]);
1: //图
Qry_mei.Locate('TDM; MDM', VarArrayOf([vlp_stao_tdm, vlp_smei_mdm]), [loPartialKey]);
end;
end;
procedure TFrm_jyp.Act_modifyExecute(Sender: TObject);
begin
if vlp_FocusGrid.DataSource.DataSet.IsEmpty then
begin
CHQMsgBox('当前没有可修改的记录。');
exit;
end;
if DBGid_tao.SelectedRows.Count = 0 then
begin
DBGid_tao.SelectedRows.CurrentRowSelected := true;
end;
vlp_stao_tdm := Qry_tao.fieldbyname('TDM').AsString;
if vlp_focusgrid.tag = 1 then //图
begin
vlp_smei_mdm := Qry_mei.fieldbyname('MDM').AsString;
end;
vlp_FocusGrid.DataSource.DataSet.Edit;
SetEditStatus(3);
if vlp_FocusGrid.Tag = 1 then //tu
begin
ActiveControl := DBEdit14;
vlp_oldmeival.old_mei_tdm := Qry_mei.FieldByName('TDM').AsString;
vlp_oldmeival.old_mei_mdm := Qry_mei.FieldByName('MDM').AsString;
end
else //tao
begin
ActiveControl := DBEdit2;
end;
{修改的时候,将是否显示图案设置为必须显示}
CBo_tao.Checked := True;
CBo_tao.Enabled := False;
Target_Name := '';
end;
procedure TFrm_jyp.Act_saveExecute(Sender: TObject);
begin
case vlp_FocusGrid.Tag of
0:
begin
if (Trim(DBEdit1.Text) = '') then
begin
CHQMsgBox('“套代码”内容不能为空!');
ActiveControl := DBEdit1;
exit;
end;
if (Trim(DBLookupComboBox1.Text) = '') then
begin
CHQMsgBox('“票品类别”内容不能为空!');
ActiveControl := DBLookupComboBox1;
exit;
end;
if (Trim(DBEdit2.Text) = '') then
begin
CHQMsgBox('“志号”内容不能为空!');
ActiveControl := DBEdit2;
exit;
end;
if (Trim(DBEdit3.Text) = '') then
begin
CHQMsgBox('“名称”内容不能为空!');
ActiveControl := DBEdit3;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -