⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy_jypxxwh.pas

📁 省级集邮品管理ERP
💻 PAS
📖 第 1 页 / 共 4 页
字号:
    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 + -