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

📄 umain.~pas

📁 一个小程序
💻 ~PAS
📖 第 1 页 / 共 3 页
字号:
end;

procedure TwMain.btnSaveClick(Sender: TObject);
begin
  if (iOper='I') or (iOper='M') then
    with tbl1 do
    begin
      edit;
      try
        FieldByName('dbname').AsString:=RzEditName.Text;
        FieldByName('dbalias').AsString:=RzEditAlias.Text;
        FieldByName('dbuser').AsString:=RzEditUser.Text;
        FieldByName('dbpass').AsString:=RzEditPass.Text;
        FieldByName('dbip').AsString:=RzEditIp.Text;
        FieldByName('dbport').AsString:=RzEditPort.Text;
        post;
        UpdateBatch;
      except
        Cancel;
        ErrorMsgBox('保存失败');
      end;
    end;
  if iOper='D' then
  begin
    try
      DmEl.ado1.CommitTrans;
    except
      DmEl.ado1.RollbackTrans;
      ErrorMsgBox('保存失败');
    end;
  end;
  iOper:='S';
  InforMsgBox('保存成功');
end;

procedure TwMain.FormKeyPress(Sender: TObject; var Key: Char);
begin
//  if key=#13 then
//  begin
//    key:=#0;
//    perform(WM_NEXTDLGCTL,0,0);
//  end;
end;

procedure TwMain.btnModifyClick(Sender: TObject);
begin
  iOper:='M';
end;

procedure TwMain.btnConnectClick(Sender: TObject);
var
  lCode,lCnt:Integer;
  lSql,lDbName:string;
  lQry:TADOQuery;
  lQry1:TOraQuery;
begin
  rztbsht3.TabVisible:=False;
  rztbsht4.TabVisible:=False;
  if not tbl1.Eof then
  begin
    lCode:=tbl1.FieldByName('dbid').AsInteger;
    lSql:='select dbname,dbalias,dbuser,dbpass,dbip,dbport from dbset '+
          ' where dbid='+inttostr(lCode);
    lQry:=TADOQuery.Create(Application);
    lQry.Connection:=DmEl.ado1;
    with lQry do
    try
      if AdoOpenQry(lQry,lSql)>0 then
      begin
        if not lQry.Eof then
        begin
          lDbName:=tbl1.FieldByName('dbname').AsString;
          gServerAlias:=tbl1.FieldByName('dbalias').AsString;
          gDbuserID:=tbl1.FieldByName('dbuser').AsString;
          gDbPassWd:=tbl1.FieldByName('dbpass').AsString;
          gServerIP:=tbl1.FieldByName('dbip').AsString;
          gServerPort:=tbl1.FieldByName('dbport').AsString;
          if ConnectOra then
            begin
              rzstspnInfo.Caption:='数据库【'+lDbName+'】连接成功!:)';
              gConnect:='Y';
              
            end
          else   
            begin
              rzstspnInfo.Caption:='数据库【'+lDbName+'】连接失败!:(';
              gConnect:='N';
            end;
        end;
      end;
    finally
      lQry.Free;
    end;
  end;
  //建表
  if gConnect='Y' then
  begin
    lQry1:=TOraQuery.Create(Application);
    lQry1.AutoCommit:=False;
    lQry1.FetchAll:=True;
    lQry1.Session:=DmEl.orsn1;
    try
      lsql:='select fgetappid mkt from dual';
      OraOpenQry(lQry1,lSql);
      if not lQry1.Eof then
        gMktid:=lQry1.FieldValues['mkt'];
      lSql:='select count(*) cnt from user_tables '+
            'where table_name=''ELTWOACC1''';
      OraOpenQry(lQry1,lSql);
      if not lQry1.Eof then
      begin
        lCnt:=lQry1.FieldValues['cnt'];
        if lCnt<1 then
        begin
          OraExecQry(gEltwoacc1);
          OraExecQry(gEltwoacc2); 
        end;
      end;
    finally
      lQry1.Free;
    end; 
    rztbsht3.TabVisible:=True;
    rztbsht4.TabVisible:=True;
  end;
  
end;

procedure TwMain.btnExitMouseEnter(Sender: TObject);
begin
  rzstspnInfo.Caption:='退出系统';
end;

procedure TwMain.btnExitMouseLeave(Sender: TObject);
begin
  rzstspnInfo.Caption:='欢迎使用';
end;

procedure TwMain.btn2MouseEnter(Sender: TObject);
begin
  rzstspnInfo.Caption:='系统注册';
end;

procedure TwMain.rzpgcntrl1Change(Sender: TObject);
var
  lqry:TOraQuery;
  lcnt:Integer;
  lsql:string;
begin
  if rzpgcntrl1.TabIndex=0 then
  begin
    RzEditName.SetFocus;
  end;  
  if rzpgcntrl1.TabIndex=1 then
  begin
    RzDBGrid2.SetFocus;
  end;
  if rzpgcntrl1.TabIndex=2 then
  begin
    RzEditSupid.SetFocus;
  end;     
  if rzpgcntrl1.TabIndex=3 then
  begin
    if gConnect='Y' then
    begin
      lqry:=TOraQuery.Create(Application);
      lqry.Session:=DmEl.orsn1;
      lqry.FetchAll:=True;
      lsql:='select max(jgldate) rq from jxcgoodslist';
      try
        lcnt:=OraOpenQry(lqry,lsql);
        if lcnt>0 then
          RzEdit1.Text:=lqry.fieldbyname('rq').AsString;
      finally
        lqry.Free;
      end;
      orqryRecord.Close;
      orqryRecord.Open;
    end;
    edtKsrq.SetFocus;
    edtKsrq.Text:=DateToStr(Now);
    edtJsrq.Text:=DateToStr(Now);
  end;

end;

procedure TwMain.FormShow(Sender: TObject);
begin   
  rzpgcntrl1.TabIndex:=0;
  rztbsht3.TabVisible:=False;
  rztbsht4.TabVisible:=False;
end;

procedure TwMain.btn1Click(Sender: TObject);
begin
  if gConnect<>'Y' then exit;
  if not DmEl.orsn1.Connected then exit;
  ortbl1.Close;
  ortbl1.Open;
  if not ortbl1.Eof then
  begin
    RzEditSupid.Text:=ortbl1.FieldByName('SUPID').AsString;
    cbbContid.Text:=ortbl1.FieldByName('CONTID').AsString;
    if ortbl1.FieldByName('TYPE').AsString='1' then
      RzRadioButtonJe.Checked:=True
    else
      RzRadioButtonBl.Checked:=True;

    RzEditWmid.Text:=ortbl1.FieldByName('WMID').AsString;
    RzEditMfid.Text:=ortbl1.FieldByName('MFID').AsString;
    RzNumericEditJe.Text:=ortbl1.FieldByName('je').AsString;
    RzNumericEditBl.Text:=ortbl1.FieldByName('bl').AsString;
  end;
  iOperOra:='S';
  RzEditSupid.SetFocus;
end;

procedure TwMain.btn3Click(Sender: TObject);
begin
  if gConnect<>'Y' then exit;
  if not DmEl.orsn1.Connected then exit;
  if not ortbl1.Active then exit;

  if iOperOra<>'S' then
  begin
    if not SaveList then
    begin
      ErrorMsgBox('保存失败了');   
      exit;
    end;
  end;
    
  RzEditSupid.Text:='';
  cbbContid.Text:='';
  cbbContid.Items.Clear;
  RzRadioButtonJe.Checked:=True;
  RzNumericEditJe.ReadOnly:=False;
  RzNumericEditBl.ReadOnly:=True;  
  RzNumericEditJe.Text:='0';//一点不留,留下的金额和比例
  RzNumericEditBl.Text:='0';
  RzEditWmid.Text:='';
  RzEditMfid.Text:='';

  ortbl1.Append;
  //ortbl1.Edit;
  iOperOra:='I';
  RzEditSupid.SetFocus;
  
end;

procedure TwMain.btn4Click(Sender: TObject);
begin
  if gConnect<>'Y' then exit;
  if not DmEl.orsn1.Connected then exit; 
  if not ortbl1.Active then exit;    
  if iOperOra<>'S' then
  begin
    if ConfirmDlg('确认删除该行记录么?') then
    begin
      if not SaveList then
      begin
        ErrorMsgBox('保存失败了');
        exit;
      end;
    end
    else
      btn7.Click;
  end;
  if not ConfirmDlg('确认删除该行记录么?') then exit;
  DmEl.orsn1.StartTransaction;
  ortbl1.Delete;
  iOperOra:='D';

end;

procedure TwMain.btn5Click(Sender: TObject);
begin  
  if gConnect<>'Y' then exit;
  if not DmEl.orsn1.Connected then exit; 
  if not ortbl1.Active then exit;
  if iOperOra='M' then Exit;
  iOperOra:='M';

end;

procedure TwMain.btn6Click(Sender: TObject);
begin
  if iOperOra='S' then exit;
  if gConnect<>'Y' then exit;
  if not DmEl.orsn1.Connected then exit;
  if not ortbl1.Active then exit;
  if SaveList then
  begin
    iOperOra:='S';
    InforMsgBox('保存成功');
  end
  else
    ErrorMsgBox('保存失败');
end;

procedure TwMain.edtBLChange(Sender: TObject);
begin
  //
  
end;

procedure TwMain.btnCancelClick(Sender: TObject);
begin
  //
  
end;

procedure TwMain.btn7Click(Sender: TObject);
begin
  ortbl1.Cancel;
  iOperOra:='S';
end;

procedure TwMain.ortbl1TYPEGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
  if ortbl1TYPE.AsString='1' then
  begin
    Text:='1-按金额';
    RzNumericEditJe.ReadOnly:=False;
    RzNumericEditBl.ReadOnly:=True;
  end;
  if ortbl1TYPE.AsString='2' then
  begin
    Text:='2-按比例';
    RzNumericEditJe.ReadOnly:=True;
    RzNumericEditBl.ReadOnly:=False;
  end;

end;

procedure TwMain.ortbl1TYPESetText(Sender: TField; const Text: String);
begin
  if Text='1-按金额' then
    ortbl1TYPE.Value:='1';
  if (Text='2-按比例') then
    ortbl1TYPE.Value:='2';
end;

procedure TwMain.cbbTYPEChange(Sender: TObject);
begin
  if ortbl1TYPE.AsString='1' then
  begin
    RzNumericEditJe.ReadOnly:=False;
    RzNumericEditBl.ReadOnly:=True;
  end;
  if ortbl1TYPE.AsString='2' then    
  begin
    RzNumericEditJe.ReadOnly:=True;
    RzNumericEditBl.ReadOnly:=False;
  end;  

end;

procedure TwMain.RzRadioButtonJeClick(Sender: TObject);
begin
  RzNumericEditJe.ReadOnly:=False;
  RzNumericEditBl.ReadOnly:=True;  
  RzNumericEditJe.Text:='0';//一点不留,留下的金额和比例
  RzNumericEditBl.Text:='0';
  RzNumericEditJe.SetFocus;
end;

procedure TwMain.RzRadioButtonBlClick(Sender: TObject);
begin
  RzNumericEditJe.ReadOnly:=True;
  RzNumericEditBl.ReadOnly:=False;
  RzNumericEditJe.Text:='0';//一点不留,留下的金额和比例
  RzNumericEditBl.Text:='0';
  RzNumericEditBl.SetFocus;
end;

procedure TwMain.ortbl1WMIDGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
  if ortbl1WMID.AsString='1' then
    Text:='1-经销';
  if ortbl1WMID.AsString='2' then
    Text:='2-成本代销';
  if ortbl1WMID.AsString='3' then
    Text:='3-扣率代销';

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -