Forum
See question

Validação Utilizador/Password no ERP Primavera v9   

120 views
Category:
0
0

Boa tarde, é possível fazer a validação de um utilizador + password através de vba, utilizando os motores do ERP? Ou seja, criar um formulário em que peça ao utilizador as credenciais e verificar se existem…

Faça login para poder traduzir
Integração
V10
Marked as spam
Created 5 years and 6 months ago brunogomes
brunogomes Responsiveness Member
Comments

Olá @bruno-gomes,
Podia ser mais detalhado no que pretende efetuar?
O objetivo é efetuar o login validando o utilizador e a password, reabrindo a empresa ou simplesmente validar se o utilizador tem acesso a aquela empresa?

5 years and 6 months ago
flavio-jardim

    Olá @flavio-jardim, não pretendo reabrir a empresa, apenas validar se o utilizador tem acesso. Obrigado

    5 years and 6 months ago
    brunogomes

      Boa tarde @bruno-gomes. Poderá utilizar o “Plataforma.Administrador.UtilizadorAcedeAplicacao” para verficar se o utilizador tem acesso a um determinado módulo.

      5 years and 6 months ago
      flavio-jardim

        @flavio-jardim mas desta forma apenas posso usar o utilizador que está logado certo? Visto que não tenho o parâmetro da password… A minha ideia era ter a possibilidade de escolher outro utilizador.

        5 years and 6 months ago
        brunogomes

          Bom dia @bruno-gomes. Não sabia que era essa a ideia. Neste caso deve utilizar o método sugerido pelo @sereno.

          5 years and 6 months ago
          flavio-jardim
            4 answers
            3
            Private answer

            @Bruno-gomes.

            O metodo que digo é o que está na interfaçe publica da plataforma, isto é tens de adicionar referencia ao StdPlatBS e chamar o AbrePlataforma().

            Dentro do VBA no maximo consegues validar o utilizador, a password não dá porque nós não disponiblizamos esse método publicamente por questões de segurança.

            Faça login para poder traduzir
            Marked as spam
            Created 5 years and 6 months ago sergiosereno
            sergiosereno Most Valuable Professional
              0
              Private answer
                      If User.Text = "" Then
                          MsgBox("Coloque o seu Nome de Utilizador", vbCritical, "GrupoLider")
                          GoTo SaltoUser
                      End If
                      If Pass.Text = "" Then
                          MsgBox("Coloque a sua Senha", vbCritical, "GrupoLider")
                          GoTo SaltoPass
                      End If
              
                      Try
                          motor = New ErpBS900.ErpBS()
                          motor.AbreEmpresaTrabalho(StdBE900.EnumTipoPlataforma.tpEmpresarial, PRIEmpresa, User.Text, Pass.Text)
                          Fecha()
                          PRIUser = User.Text
                          PRIPass = Pass.Text
                          PagP.Show()
                          Me.Close()
                          GoTo Salto
                      Catch
                          MsgBox("Nome de Utilizador ou Senha errados, por favor volte a tentar...", vbCritical, "GrupoLider")
                          User.Text = ""
                          Pass.Text = ""
                          User.Focus()
                          GoTo Salto
                      End Try
              
              SaltoUser:
                      User.Text = ""
                      User.Focus()
                      GoTo Salto
              
              SaltoPass:
                      Pass.Text = ""
                      Pass.Focus()
                      GoTo Salto
              
              Salto:
              

              Eu faço Login assim e funciona.

              Faça login para poder traduzir
              Marked as spam
              Created 5 years and 4 months ago jcdiniz
              j
              jcdiniz Iniciante
                1
                Private answer

                @sereno

                como invoco esse método? Por alguma razão não me está a aparecer…

                Faça login para poder traduzir
                Attachments:
                Marked as spam
                Created 5 years and 6 months ago brunogomes
                brunogomes Responsiveness Member
                  2
                  Private answer

                  @bruno-gomes

                  A forma de fazer isso é usar o PSO.AbrePlataforma(), este método válida utilizar e password.

                  Faça login para poder traduzir
                  Marked as spam
                  Created 5 years and 6 months ago sergiosereno
                  sergiosereno Most Valuable Professional