You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
114 lines
2.7 KiB
114 lines
2.7 KiB
unit ufrmMovUsuarios;
|
|
|
|
interface
|
|
|
|
uses
|
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
|
|
System.Classes, Vcl.Graphics,
|
|
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, umstMaster, Data.DB, Vcl.StdCtrls,
|
|
Vcl.DBCtrls, Vcl.ComCtrls, System.UITypes, udtmSystem;
|
|
|
|
type
|
|
TfrmMovUsuarios = class(TmstMaster)
|
|
dtsGrupos: TDataSource;
|
|
lbl_text: TLabel;
|
|
btn_ok: TButton;
|
|
btn_cancel: TButton;
|
|
ComboBox1: TComboBox;
|
|
procedure btn_okClick(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
private
|
|
procedure WMMoving(var Msg: TWMMoving); message WM_MOVING;
|
|
{ Private declarations }
|
|
public
|
|
id_grupos: array of integer;
|
|
{ Public declarations }
|
|
end;
|
|
|
|
var
|
|
frmMovUsuarios: TfrmMovUsuarios;
|
|
|
|
implementation
|
|
|
|
{$R *.dfm}
|
|
|
|
uses ucadUsuarios;
|
|
|
|
procedure TfrmMovUsuarios.btn_okClick(Sender: TObject);
|
|
begin
|
|
inherited;
|
|
// verifica se já existe um usuário com esse nome. se sim não deixa transferir
|
|
if cadUsuarios.nome_grupmov = ComboBox1.Text then
|
|
begin
|
|
MessageDlg('O usuário já pertence a este grupo.', mtInformation, [mbok], 0);
|
|
frmMovUsuarios.ModalResult := mrCancel;
|
|
abort;
|
|
end
|
|
else
|
|
begin
|
|
cadUsuarios.id_grupomov := inttostr(id_grupos[ComboBox1.ItemIndex]);
|
|
end;
|
|
end;
|
|
|
|
procedure TfrmMovUsuarios.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
begin
|
|
inherited;
|
|
// with dtmSystem do
|
|
// begin
|
|
// tblGrupos.close;
|
|
// tblUsuarios.close;
|
|
// qryConsulta.close;
|
|
// end;
|
|
end;
|
|
|
|
procedure TfrmMovUsuarios.FormCreate(Sender: TObject);
|
|
var
|
|
i: integer;
|
|
begin
|
|
inherited;
|
|
|
|
with dtmSystem do
|
|
begin
|
|
// tblGrupos.Open;
|
|
// tblUsuarios.Open; // faz a consulta dos grupos pra preencher o combobox
|
|
i := 0;
|
|
qryConsulta.SQL.Text := 'Select * from SYS_GRUPOS ORDER BY TX_NOME';
|
|
qryConsulta.Open;
|
|
setlength(id_grupos, qryConsulta.RecordCount);
|
|
while not qryConsulta.Eof do
|
|
begin
|
|
ComboBox1.Items.Add(qryConsulta.FieldByName('tx_nome').AsString);
|
|
id_grupos[i] := qryConsulta.FieldByName('id_grupo').AsInteger;
|
|
inc(i);
|
|
qryConsulta.Next;
|
|
end;
|
|
qryConsulta.close;
|
|
ComboBox1.ItemIndex := tblUsuariosID_GRUPO.AsInteger - 1;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrmMovUsuarios.WMMoving(var Msg: TWMMoving);
|
|
var
|
|
workArea: TRect;
|
|
begin
|
|
workArea := Screen.WorkareaRect;
|
|
|
|
with Msg.DragRect^ do
|
|
begin
|
|
if left < workArea.left then
|
|
OffsetRect(Msg.DragRect^, workArea.left - left, 0);
|
|
|
|
if top < workArea.top then
|
|
OffsetRect(Msg.DragRect^, 0, workArea.top - top);
|
|
|
|
if Right > workArea.Right then
|
|
OffsetRect(Msg.DragRect^, workArea.Right - Right, 0);
|
|
|
|
if Bottom > workArea.Bottom then
|
|
OffsetRect(Msg.DragRect^, 0, workArea.Bottom - Bottom);
|
|
end;
|
|
|
|
end;
|
|
|
|
end.
|