📄 u_main.~pas
字号:
begin
QuickSearch('','','');
end;
//显示用户相关信息
procedure TMCTIForm.Query1AfterOpen(DataSet: TDataSet);
begin
Memo1.Lines.Clear;
GetList;
ToolWindow971.Caption:='数据浏览 记录数:'+IntToStr(Query1.RecordCount);
end;
//条件查询
procedure TMCTIForm.SpeedButton2Click(Sender: TObject);
begin
If QForm.ShowModal=mrOK Then
Begin
Query1.Close;
While Query1.SQL.Count>1 Do Query1.SQL.Delete(1);
Query1.SQL.Add('Where 1>0');
Query1.SQL.AddStrings(QForm.MemoSQL.Lines);
Query1.SQL.Add('Order By 序号');
Query1.Open;
End;
end;
//显示用户信息
procedure TMCTIForm.SpeedButton5Click(Sender: TObject);
begin
If Not Query1.Active Then Exit;
//If Query1.FieldByName('用户名').AsString<>'' Then
Memo1.Lines.Clear;
QuickSearch(DBEditEh1.Text,DBEditEh2.Text,DBEditEh3.Text);
end;
procedure TMCTIForm.N16Click(Sender: TObject);
begin
With TAboutBox.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
//服务单查询
procedure TMCTIForm.N3Click(Sender: TObject);
begin
With TDataView.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
//是否一天第二次
Function TMCTIForm.CheckRepeat:Boolean;
begin
Result:=False;
// 电话 或 编号相同 且 序号不同的记录
If Not Query1.Active Then Exit;
If Query1.FieldByName('序号').IsNull Then Exit;
If Query1.FieldByName('电话').IsNull Then Exit;
DH:=Query1.FieldByName('电话').AsString;
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select Count(*) As SL From 服务单 Where 1>0');
QPub.SQL.Add('And 电话='+QuotedStr(DH));
QPub.SQL.Add('And To_Char(时间,''YYYY-MM-DD'')=To_Char(SysDate,''YYYY-MM-DD'')');
QPub.SQL.Add('And 序号<>'+Query1.FieldByName('序号').AsString);
QPub.Open;
If QPub.FieldByName('SL').AsInteger>0 Then Result:=True;
End;
//历史服务记录
procedure TMCTIForm.SpeedButton4Click(Sender: TObject);
Var DH,BH:String;
begin
// 电话 或 编号相同 且 序号不同的记录
If Not Query1.Active Then Exit;
If Query1.FieldByName('序号').IsNull Then Exit;
If ((Query1.FieldByName('电话').IsNull) AND (Query1.FieldByName('用户编码').IsNull)) Then
Begin
Application.MessageBox('电话及用户编号都为空,无法查询历史记录!','提示',MB_OK+MB_ICONSTOP);
Exit;
End;
DH:=Query1.FieldByName('电话').AsString;
BH:=Query1.FieldByName('用户编码').AsString;
With TDataView.Create(Application) Do
Begin
QueryCX.Close;
While QueryCX.SQL.Count>1 Do QueryCX.SQL.Delete(1);
QueryCX.SQL.Add('Where 1>0');
QueryCX.SQL.Add('And 服务类型=''报障''');
QueryCX.SQL.Add('And (');
QueryCX.SQL.Add('(电话='+QuotedStr(DH)+')');
QueryCX.SQL.Add('OR');
QueryCX.SQL.Add('(用户编码='+QuotedStr(BH)+')');
QueryCX.SQL.Add(')');
QueryCX.SQL.Add('And 序号<>'+Query1.FieldByName('序号').AsString);
QueryCX.Open;
ShowModal;
Free;
End;
end;
//广播消息
procedure TMCTIForm.N4Click(Sender: TObject);
begin
If SendMsg.ShowModal=mrOK Then
If Trim(SendMsg.MsgText.Text)<>'' Then
UserMsg:=Trim(SendMsg.MsgText.Text);
end;
//宽带申请派工 [用户部分]
procedure TMCTIForm.N5Click(Sender: TObject);
begin
With TKDSQXX.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
procedure TMCTIForm.SpeedButton6Click(Sender: TObject);
begin
ToolWindow971.Visible:=SpeedButton6.Down;
end;
procedure TMCTIForm.N18Click(Sender: TObject);
Var XH:String;
begin
If Not Query1.Active Then Exit;
If Query1.FieldByName('序号').IsNull Then Exit;
If Application.MessageBox('确认要删除当前记录吗?','提示',MB_YESNO+MB_ICONQUESTION+MB_DEFBUTTON2)<>IDYES Then Exit;
XH:=Query1.FieldByName('序号').AsString;
If XH='' Then Exit;
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Delete From 录音 Where 序号='+XH);
QPub.ExecSQL;
Query1.Delete;
Application.MessageBox('记录已删除!','提示',MB_OK+MB_ICONINFORMATION);
end;
procedure TMCTIForm.DBComboBoxEh2Change(Sender: TObject);
begin
If DBComboBoxEh2.Text='数字' Then
Begin
DBComboBoxEh4.Items.Assign(CSSZ.DBMemo12.Lines);
DBComboBoxEh6.Items.Assign(CSSZ.DBMemo13.Lines);
End
Else If DBComboBoxEh2.Text='宽带' Then
Begin
DBComboBoxEh4.Items.Assign(CSSZ.DBMemo10.Lines);
DBComboBoxEh6.Items.Assign(CSSZ.DBMemo11.Lines);
End
Else
Begin
DBComboBoxEh4.Items.Assign(CSSZ.DBMemo2.Lines);
DBComboBoxEh6.Items.Assign(CSSZ.DBMemo4.Lines);
End;
end;
procedure TMCTIForm.SpeedButton7Click(Sender: TObject);
Var YHBM:String;
begin
If Not Query1.Active Then Exit;
If Pos('修改业务信息',CZYQX)<=0 Then
Begin
Application.MessageBox('没有修改业务权限,不能办理该业务!','提示',MB_OK+MB_ICONSTOP);
Exit;
End;
If Query1.FieldByName('服务类型').AsString<>'宽带申请' Then
Begin
Application.MessageBox('只有宽带申请业务才能登记!','提示',MB_OK+MB_ICONINFORMATION);
Exit;
End;
YHBM:=Trim(Query1.FieldByName('用户编码').AsString);
If ((YHBM='') AND (Pos('无编码宽带用户登记',CZYQX)<=0)) Then
Begin
Application.MessageBox('没有登记权限,不能办理该业务!','提示',MB_OK+MB_ICONSTOP);
Exit;
End;
If Query1.FieldByName('修好日期').IsNull Then
Begin
MessageBox(Handle,'必须先输入完工日期!','提示',MB_OK+MB_ICONSTOP);
Exit;
End;
//登记宽带信息
With TIPYHDJ.Create(Application) Do
Begin
YHDM:=YHBM;
ShowModal;
Free;
End;
end;
procedure TMCTIForm.N20Click(Sender: TObject);
Var Lay_LF,Idx:Integer;
begin
With TYHDW.Create(Application) Do
Begin
Lay_LF:=NetMap1.GetLayerByName('楼房');
YHDM.Text:=DBEditEh1.Text;
If Lay_LF>0 Then
If ShowModal=mrOK Then
If NetMap1.LocateObjByID(Lay_LF,StrToInt(Caption),Idx) Then
Begin
If Not ToolWindowMap.Visible Then ToolWindowMap.Visible:=True;
NetMap1.DrawMap;
Application.MessageBox('定位成功!','提示',MB_OK+MB_ICONINFORMATION);
End;
Free;
End;
end;
procedure TMCTIForm.N22Click(Sender: TObject);
begin
ToolWindowMap.Visible:=Not ToolWindowMap.Visible;
end;
procedure TMCTIForm.ToolWindowMapResize(Sender: TObject);
begin
NetMap1.DrawMap;
end;
//拨出电话信息查询
procedure TMCTIForm.N23Click(Sender: TObject);
begin
With TBCCX.Create(Application) Do
Begin
ComboBoxCZY.Items.Assign(CZY.Items);
ShowModal;
Free;
End;
end;
//故障分类统计报表
procedure TMCTIForm.N26Click(Sender: TObject);
begin
With TGZFLTJ.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
//宽带安装派工查询
procedure TMCTIForm.N27Click(Sender: TObject);
begin
With TKDAZPGCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
Query1.Close;
While Query1.SQL.Count>1 Do Query1.SQL.Delete(1);
Query1.SQL.Add('Where 1>0');
Query1.SQL.AddStrings(MemoSQL.Lines);
Query1.Open;
//字段显示宽度调整
End;
Free;
End;
end;
//模拟故障派工查询
procedure TMCTIForm.N28Click(Sender: TObject);
begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Update 服务单 Set 维修用时=(修好日期-派单时间)*24*60 Where 维修用时 Is Null And 修好日期 Is Not Null');
QPub.ExecSQL;
With TMNGZPGCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
Query1.Close;
While Query1.SQL.Count>1 Do Query1.SQL.Delete(1);
Query1.SQL.Add('Where 1>0');
Query1.SQL.AddStrings(MemoSQL.Lines);
Query1.Open;
End;
Free;
End;
end;
//宽带故障维修派工查询
procedure TMCTIForm.N29Click(Sender: TObject);
begin
With TKDGZPGCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
Query1.Close;
While Query1.SQL.Count>1 Do Query1.SQL.Delete(1);
Query1.SQL.Add('Where 1>0');
Query1.SQL.AddStrings(MemoSQL.Lines);
Query1.Open;
End;
Free;
End;
end;
procedure TMCTIForm.Database1AfterConnect(Sender: TObject);
begin
Timer1.Enabled:=True;
end;
procedure TMCTIForm.BitBtn1Click(Sender: TObject);
Var XH,I:Integer;
LSH:Integer;
begin
Label41.Caption:=TMenuItem(Sender).Caption;
If Not Query1.Active Then Exit;
If Query1.FieldByName('序号').AsInteger<=0 Then Exit;
If Application.MessageBox('确认要打印派工单吗?','提示',MB_YESNO+MB_ICONQUESTION)<>IDYES Then Exit;
//某些情况下隐藏移动宽带安装竣工单
For I:=0 To PPanel2.ControlCount-1 Do
If PPanel2.Controls[I].Top>450 Then
PPanel2.Controls[I].Visible:=TMenuItem(Sender).Tag<>2;
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select 派工流水号 From 服务单 Where 序号='+Query1.FieldByName('序号').AsString);
QPub.Open;
If QPub.FieldByName('派工流水号').AsInteger<=0 Then
Begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select Max(派工流水号) As MaxLSH From 服务单');
QPub.Open;
LSH:=QPub.FieldByName('MaxLSH').AsInteger+1;
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Update 服务单 Set 派工流水号='+IntToStr(LSH)+' Where 序号='+Query1.FieldByName('序号').AsString);
QPub.ExecSQL;
XH:=Query1.FieldByName('序号').AsInteger;
Query1.Close;
Query1.Open;
While Not Query1.Eof Do
Begin
If Query1.FieldByName('序号').AsInteger=XH Then Break;
Query1.Next;
End;
End;
Label38.Caption:='';
LabelMac.Caption:='';
LabelMac2.Caption:='';
LabelSFZH.Caption:='';
LabelSFZH2.Caption:='';
If Query1.FieldByName('用户编码').AsString<>'' Then
Begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select MAC地址,身份证号 From '+DB_KD+'.用户信息 Where 用户代码='+QuotedStr(Query1.FieldByName('用户编码').AsString));
QPub.Open;
LabelMac.Caption:=QPub.FieldByName('MAC地址').AsString;
LabelMac2.Caption:=QPub.FieldByName('MAC地址').AsString;
LabelSFZH.Caption:=QPub.FieldByName('身份证号').AsString;
LabelSFZH2.Caption:=QPub.FieldByName('身份证号').AsString;
End;
PPanel2.Print(True)
end;
procedure TMCTIForm.N30Click(Sender: TObject);
begin
StringGrid1.Visible:=Not StringGrid1.Visible;
end;
procedure TMCTIForm.N25Click(Sender: TObject);
Var XH:Integer;
begin
If Not Query1.Active Then Query1.Open;
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select Max(序号) As MaxXH From 服务单');
QPub.Open;
XH:=QPub.FieldByName('MaxXH').AsInteger+1;
Query1.Append;
Query1.FieldByName('序号').AsInteger:=XH;
Query1.Post;
end;
procedure TMCTIForm.DBDateTimeEditEh3DblClick(Sender: TObject);
begin
//当前时间
If Query1.State<>dsEdit Then Query1.Edit;
Query1.FieldByName('派单时间').AsDateTime:=Now;
end;
procedure TMCTIForm.DBDateTimeEditEh2DblClick(Sender: TObject);
begin
If Query1.State<>dsEdit Then Query1.Edit;
Query1.FieldByName('修好日期').AsDateTime:=Now;
end;
procedure TMCTIForm.N33Click(Sender: TObject);
begin
With TJDHGZPGCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
Query1.Close;
While Query1.SQL.Count>1 Do Query1.SQL.Delete(1);
Query1.SQL.Add('Where 1>0');
Query1.SQL.AddStrings(MemoSQL.Lines);
Query1.Open;
End;
Free;
End;
end;
procedure TMCTIForm.N34Click(Sender: TObject);
begin
With TKDYLTJ.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
procedure TMCTIForm.N35Click(Sender: TObject);
begin
With TFWSCTJ.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -