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

📄 epr_namebookeditunit.pas

📁 公交行业的管理系统
💻 PAS
📖 第 1 页 / 共 2 页
字号:
        end;

        try
        begin
                if (length(DbEdit12.Text)>12)
                then
                begin
                        ShowMessage('注册资本金字符太多了!');
                        check := false;
                end;
                if (DbEdit12.Text <> '')
                then
                        j := StrToFloat(DbEdit12.text);
        end
        except
        begin
                ShowMessage('企业注册资本金输入错误!');
                check := false;
        end
        end;

        {if (ComboBox1.Text = '')
        then
        begin
                ShowMessage('请选择主要业务活动!');
                check := false;
        end;}
end;


procedure TEprNameBookEdit.updateInfo();
var
        field, sqlstr : string;
begin
        sqlstr := 'select * from 主要业务活动表 where 企业代码='+''''+DbEdit3.Text+''''+ ' and 统计年份='+ DbEdit6.Text; //行业加类型判断
        AdoQuery1.Close;
        AdoQuery1.SQL.Clear;
        AdoQuery1.SQL.Add(sqlstr);
        AdoQuery1.Open;

        if (AdoQuery1.RecordCount = 0)
        then
        begin
                field := '';
        end
        else
        begin
                if (AdoQuery1.FieldByName('公共汽车、电车').AsString = '1')
                then
                        field := field + ' 公共汽车、电车;';
                if (AdoQuery1.FieldByName('出租汽车业').AsString = '1')
                then
                        field := field + ' 出租汽车业;';
                if (AdoQuery1.FieldByName('地铁').AsString = '1')
                then
                        field := field + ' 地铁;';
                if (AdoQuery1.FieldByName('轻轨').AsString = '1')
                then
                        field := field + ' 轻轨;';
                if (AdoQuery1.FieldByName('轮渡').AsString = '1')
                then
                        field := field + ' 轮渡;';

        end;
        sqlstr := 'update 公用事业单位基本情况表 set 主要业务活动='+''''+field+''''+' where 单位代码='+''''+DbEdit3.Text+''''+ ' and 统计年份='+ DbEdit6.Text; //行业加类型判断
        AdoQuery1.Close;
        AdoQuery1.SQL.Clear;
        AdoQuery1.SQL.Add(sqlstr);
        AdoQuery1.ExecSQL;

end;

procedure TEprNameBookEdit.DBComboBox9Change(Sender: TObject);
var
        sqlstr : string;
begin

        DbComboBox2.ItemIndex := DbComboBox9.ItemIndex;

        if (DbComboBox9.Text = '7511')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业类别').asstring := '公共汽车、电车业';

        if (DbComboBox9.Text = '7512')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业类别').asstring := '出租汽车业';

        if (DbComboBox9.Text = '7513')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业类别').asstring := '轨道交通业';

        if (DbComboBox9.Text = '7514')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业类别').asstring := '轮渡';

        //setvisible();
end;

procedure TEprNameBookEdit.DBComboBox2Change(Sender: TObject);
var
        sqlstr : string;
begin

        DbComboBox9.ItemIndex := DbComboBox2.ItemIndex;

        if (DbComboBox2.Text = '公共汽车、电车业')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业代码').asstring := '7511';

        if (DbComboBox2.Text = '出租汽车业')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业代码').asstring := '7512';

        if (DbComboBox2.Text = '轨道交通业')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业代码').asstring := '7513';

        if (DbComboBox2.Text = '轮渡')
        then    Epr_NameBook.ADOQuery1.FieldByName('行业代码').asstring := '7514';

        //setvisible();
end;

procedure TEprNameBookEdit.BitBtn1Click(Sender: TObject);
begin
        if (Epr_NameBook.ADOQuery1.State <> dsBrowse)then
                if (MessageBox(self.Handle,'保存按是,否则按否','',MB_YESNO)=6)
                then    Button1.Click;
        
        EprNameBookEdit.Close;
        Epr_NameBook.initbox();
        Epr_NameBook.ComboBox1Change(nil);
end;

procedure TEprNameBookEdit.Button1Click(Sender: TObject);
var
        sqlstr : string;
        itmp : integer;
        err : boolean;
begin
        ///////////////////////////处理主要业务活动
        DbEdit10.Text:='';
        if (DbCheckBox1.Checked) then
        begin
                DbEdit10.Text:='公交汽车、电车     ';
                Epr_NameBook.ADOQuery1.FieldByName('公共汽车、电车').AsString := '1';
        end
        else    Epr_NameBook.ADOQuery1.FieldByName('公共汽车、电车').AsString := '-1';

        if (DbCheckBox3.Checked) then
        begin
                DbEdit10.Text:=DbEdit10.Text+'地铁    ';
                Epr_NameBook.ADOQuery1.FieldByName('地铁').AsString := '1';
        end
        else    Epr_NameBook.ADOQuery1.FieldByName('地铁').AsString := '-1';

        if (DbCheckBox4.Checked) then
        begin
                DbEdit10.Text:=DbEdit10.Text+'轻轨    ';
                Epr_NameBook.ADOQuery1.FieldByName('轻轨').AsString := '1';
        end
        else    Epr_NameBook.ADOQuery1.FieldByName('轻轨').AsString := '-1';

        if (DbCheckBox5.Checked) then
        begin
                DbEdit10.Text:=DbEdit10.Text+'轮渡';
                Epr_NameBook.ADOQuery1.FieldByName('轮渡').AsString := '1';
        end
        else    Epr_NameBook.ADOQuery1.FieldByName('轮渡').AsString := '-1';

        ////////////////////////////////// 检查合法性
        if (length(DBEdit3.Text)<>12)
        then
        begin
                ShowMessage('单位代码长度规定为12位!');
                exit;
        end;

        if (DbEdit6.Text='') then
        begin
                ShowMessage('输入统计年份');
                exit;
        end ;
        try
                itmp := StrToInt(DbEdit6.Text);
        except
                ShowMessage('统计年份输入错误');
                exit;
        end;

        if ((itmp>3000) or (itmp < 1000)) then
        begin
                ShowMessage('统计年份输入范围在1000至3000间');
                exit;
        end;

        err := false;
        itmp:=StrToInt(DbComboBox9.Text);
        case itmp of
          7511 :
                begin
                        if ( not DBCheckBox1.Checked) then
                                err := true;
                        if (DBCheckBox3.Checked or DBCheckBox4.Checked or DBCheckBox5.Checked) then
                                err := true;
                end;
          7512 :
                begin

                        if (DBCheckBox1.Checked or DBCheckBox3.Checked or DBCheckBox4.Checked or DBCheckBox5.Checked) then
                                err := true;
                end;
          7513 :
                begin
                        if (( not DBCheckBox3.Checked) and (not DBCheckBox4.Checked )) then
                                err := true;
                        if (DBCheckBox1.Checked or DBCheckBox5.Checked) then
                                err := true;
                end;
          7514 :
                begin
                        if ( not DBCheckBox5.Checked) then
                                err := true;
                        if (DBCheckBox3.Checked or DBCheckBox1.Checked or DBCheckBox4.Checked) then
                                err := true;
                end;
        end;

        if (err) then
        begin
                ShowMessage('所输入的行业类型和业务活动的类型冲突!请保证两者的一致性!');
                exit;
        end;

        if (not check())
        then
                exit;

        if ( not checkblank())
        then
        begin
                Showmessage('必填项不能为空!');
                exit;
        end;

        if (DbEdit3.Text = '')
        then
        begin
                ShowMessage('单位代码是必填项!请输入!');
                exit;
        end
        else
        begin
                DbEdit16.Text := DateTostr(DateTimePicker1.date);
                DbEdit22.Text := DateToStr(DateTimePicker2.Date);
                if (Epr_NameBook.ADOQuery1.State = dsInsert)
                then
                begin
                        AdoQuery1.Close;
                        AdoQuery1.SQL.Clear;
                        sqlstr := 'select * from 公用事业单位基本情况表 where 单位代码='+''''+DbEdit3.Text+''''+' and 统计年份='+DbEdit6.Text;
                        AdoQuery1.SQL.Add(sqlstr);
                        AdoQuery1.Open;

                        if (AdoQuery1.RecordCount = 0)
                        then
                        begin
                                Epr_NameBook.ADOQuery1.UpdateBatch(arAll);
                          //updateInfo();             //更新主要业务活动项
                        end
                        else
                        begin
                                ShowMessage('此年的该企业名录信息已经存在,无法创建!');
                                exit;
                        end;
                end;

                if (Epr_NameBook.ADOQuery1.State = dsEdit)    then
                begin
                          Epr_NameBook.ADOQuery1.UpdateBatch(arAll);
                          //updateInfo();            //更新主要业务活动项
                end;
                showmessage('当前记录保存完毕!');
        end;

        Epr_NameBook.initbox();
        Epr_NameBook.ComboBox1Change(nil);
        EprNameBookEdit.Close;
end;

procedure TEprNameBookEdit.Button2Click(Sender: TObject);

begin
         Epr_NameBook.ADOQuery1.CancelUpdates;
end;

procedure TEprNameBookEdit.FormShow(Sender: TObject);

var
        sqlstr : string;
begin
        if (Epr_NameBook.ADOQuery1.State = dsEdit) then     //年份,代码不可改
        begin
                DbEdit3.Enabled := false;
                DbEdit6.Enabled := false;
        end;

        if (DbEdit16.Text<>'')
        then
                DateTimePicker1.Date := StrToDate(DbEdit16.Text);
        if (DbEdit22.Text<>'')
        then
                DateTimePicker2.Date := StrToDate(DbEdit22.Text);

        if (Epr_NameBook.ADOQuery1.State = dsInsert)
        then
        begin
                DbEdit9.Text := '022';
                DbCheckBox1.Checked := false;
                DbCheckBox3.Checked := false;
                DbCheckBox4.Checked := false;
                DbCheckBox5.Checked := false;

                DbEdit3.Enabled := true;
                DbEdit6.Enabled := true;
        end;

        if (Epr_NameBook.ADOQuery1.State = dsEdit) then        //设置上下键
        begin
                BitBtn2.Enabled:= true;
                BitBtn3.Enabled:= true;
        end;
        if (Epr_NameBook.ADOQuery1.State = dsInsert) then
        begin
                BitBtn2.Enabled := false;
                BitBtn3.Enabled := false;
        end;
end;


procedure TEprNameBookEdit.BitBtn2Click(Sender: TObject);
var
        sqlstr : string;
        itmp : integer;
        err : boolean;
begin
        Epr_NameBook.ADOQuery1.Edit;
        if (not DealCurItem()) then exit;          //只检查合法性不保存
        Epr_NameBook.ADOQuery1.Prior;
        Epr_NameBook.ADOQuery1.Edit;
        BitBtn2.Enabled := true;
        BitBtn3.Enabled := true;
        if (Epr_NameBook.ADOQuery1.Bof) then
        begin
        //EprNameBookEdit.Close;
                Epr_NameBook.ADOQuery1.First;
                BitBtn2.Enabled := false;
                Epr_NameBook.ADOQuery1.Edit;
        end;
end;

procedure TEprNameBookEdit.BitBtn3Click(Sender: TObject);
var
        sqlstr : string;
        itmp : integer;
        err : boolean;
begin
        Epr_NameBook.ADOQuery1.Edit;
        if (not DealCurItem()) then exit;          //只检查合法性,和保存的准备工作但不保存
        Epr_NameBook.ADOQuery1.Next;
        Epr_NameBook.ADOQuery1.Edit;
        BitBtn2.Enabled := true;
        BitBtn3.Enabled := true;
        if (Epr_NameBook.ADOQuery1.Eof) then
        begin
        //EprNameBookEdit.Close;
                Epr_NameBook.ADOQuery1.Last;
                BitBtn3.Enabled := false;
                Epr_NameBook.ADOQuery1.Edit;
        end;
end;
procedure TEprNameBookEdit.DBEdit2Exit(Sender: TObject);
begin
        label26.Caption := DbEdit2.Text;
end;

procedure TEprNameBookEdit.FormKeyPress(Sender: TObject; var Key: Char);
begin
        if (Key = char(13)) then
        begin
                key := char(0);
                selectnext(self.ActiveControl,true,true);
        end;
end;

end.

⌨️ 快捷键说明

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