Chamando Form no Delphi

05/02/2020

11

Bom dia Estou desenvolvendo um sistema de maquinario agricola onde a minha duvida é a seguinte estou utilizando o delphi 10.3 e banco de dados mysql com dbforge studio, quero que o meu sistema quando for iniciado ele verifique se a empresa já foi cadastrado pelo id do cadastro tipo assim

inicio
se id da tabela cadastro empresa for menor que 1 entao

aparece a menssagem "sua empresa não foi cadastrada! Deseja cadastrar?" com os botoes de confimarção yes e no

se o usuario clicar em yes ele abre um form de cadastro rapido onde terá somente os campos nome da empresa e cnpj

agora se o id da tabela cadastro empresa for maior ou igual a 1 entao

abre a tela de login e senha

como posso fazer este procedimento

a tela de login e senha já sei fazer tudo porem quero implementar este procedimento do cadastro rapido da empresa
Responder

Posts

05/02/2020

P2

No final da validação de login
// Uso para chamar forms

// Verifica se tem empresa cadastrada
dm.qryempresa.close;
dm.qryempresa.sql.clear;
dm.qryempresa.sql.text= 'select * from empresa';
dm.qryempresa.open;

if dm.qryempresa.recordcount =0 then
begin
if MESSAGEBOX(Application.Handle, PCHAR('Mensagem'), PCHAR('Título'), MB_ICONQUESTION + MB_YESNO + MB_DEFBUTTON1) = ID_YES then
//Chama seu form cadastro de empresa
Abrir_Form(Tfcadastro_empresa; fcadastro_empresa);

end
else
begin
Se já possui empresa cadastrada, abre o sistema normal
end;
end;


//Uso esta procedure para chamar os forms
procedure Abrir_Form(FormClasse: TformClass; NewForm: Tobject);
begin
try
NewForm := FormClasse.Create(Application);
TForm(NewForm).Position := poDesktopCenter;
TForm(NewForm).ShowModal;
except
ShowMessage('Falha na Chamada da Tela' + TForm(NewForm).Caption);
end;
end;
Responder
No final da validação de login
// Uso para chamar forms

// Verifica se tem empresa cadastrada
dm.qryempresa.close;
dm.qryempresa.sql.clear;
dm.qryempresa.sql.text= 'select * from empresa';
dm.qryempresa.open;

if dm.qryempresa.recordcount =0 then
begin
if MESSAGEBOX(Application.Handle, PCHAR('Mensagem'), PCHAR('Título'), MB_ICONQUESTION + MB_YESNO + MB_DEFBUTTON1) = ID_YES then
//Chama seu form cadastro de empresa
Abrir_Form(Tfcadastro_empresa; fcadastro_empresa);

end
else
begin

ok obrigado pela dica
mais uma pergunta transcrevo este codigo no botão do login, ou tambem posso colocar para verificar primeiro este procedimento se tem cadastro ou nao, e depois se tiver cadastro ele abrir o login
Se já possui empresa cadastrada, abre o sistema normal
end;
end;


//Uso esta procedure para chamar os forms
procedure Abrir_Form(FormClasse: TformClass; NewForm: Tobject);
begin
try
NewForm := FormClasse.Create(Application);
TForm(NewForm).Position := poDesktopCenter;
TForm(NewForm).ShowModal;
except
ShowMessage('Falha na Chamada da Tela' + TForm(NewForm).Caption);
end;
end;
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar