none
Função com constante RRS feed

  • Pergunta

  • ola, tenho esta função MOSTRA_MSG_SISTEMA

    Public Sub MOSTRA_MSG_SISTEMA(ByVal STATUS As Boolean, ByVal ERRO As String, ByVal MSG As String)

    end sub.

    Gostaria de colocar nela na variavel ERRO, uma lista de constantes. Desta forma quando chama esta fnção no codigo, ele abre estas constantes para escolha.

    tem como?


    Hellmann's (Joviano Pott)

    sábado, 31 de maio de 2014 22:01

Respostas

  • Porque você não passa uma lista de string, ao invés de uma string?

    Public Sub MOSTRA_MSG_SISTEMA(ByVal STATUS As Boolean, As List(Of String) ERRO As String, ByVal MSG As String)
    
    end sub.

    Se você quiser passar essa informação do client pro server tem que ser assim... 

    Outras opções são:

    • Passar do client uma string com diversos itens separados por um carácter especial, daí você usa o método .split para gerar um array de erros. 
    • Preencher esses valores diretamente no servidor
    • Exemplo:
    Private ReadOnly Teste As List(Of String)
    
    Public Sub New()
    	Teste = New List(Of String)()
    	Teste.Add("Teste1")
    	Teste.Add("Teste2")
    	Teste.Add("Teste3")
    End Sub


    sábado, 31 de maio de 2014 22:46
  • Isso Joviano, só com Enum.

    Tipo

    Public Enum Opcoes As Byte
        Nada = 0
        Primeiro = 1
        Segundo = 2
    End Enum

    Veja porém que são sempre números, não podem ser String.

    Se depois você precisar de uma constante String específica para o Enum, então coloque uma função para dar resposta.

    Public Function Opcao(ByRef Op As Opcoes) As String
        Select Case op
            Case Opcoes.Nada : Return "Nada"
            Case Opcoes.Primeiro : Return "Primeiro"
            Case Opcoes.Segundo : Return "Segundo"
            Case Else : Return ""
        End Select
    End Function

    Então na sua Sub você usa um argumento do tipo "Opcoes" (que é o enum) e na primeira linha da sua Sub, se você precisar da String chame a função "Opcao(Opcoes) String" em uma variável.

    terça-feira, 3 de junho de 2014 19:50

Todas as Respostas

  • Porque você não passa uma lista de string, ao invés de uma string?

    Public Sub MOSTRA_MSG_SISTEMA(ByVal STATUS As Boolean, As List(Of String) ERRO As String, ByVal MSG As String)
    
    end sub.

    Se você quiser passar essa informação do client pro server tem que ser assim... 

    Outras opções são:

    • Passar do client uma string com diversos itens separados por um carácter especial, daí você usa o método .split para gerar um array de erros. 
    • Preencher esses valores diretamente no servidor
    • Exemplo:
    Private ReadOnly Teste As List(Of String)
    
    Public Sub New()
    	Teste = New List(Of String)()
    	Teste.Add("Teste1")
    	Teste.Add("Teste2")
    	Teste.Add("Teste3")
    End Sub


    sábado, 31 de maio de 2014 22:46
  • Boa tarde Vinícius!

    Entendi como fazer, mas nao entendi como que a função vai entender no momento que chamo ela para abrir apenas as opções.

    Ex.

    MOSTRA_MSG_SISTEMA(true, OPÇÕES, ex.message)

    Um exemplo claro de funçãO com constante, é a função de formatação de numeros. Ele abre as opções de escolha.


    Hellmann's (Joviano Pott)

    terça-feira, 3 de junho de 2014 17:21
  • ola

    você pode fazer o que quer utilizando Enuns..

    veja

    http://www.dotnetperls.com/enum

    defina o enum e passe uma variável com este tipo, previamente definida..

    terça-feira, 3 de junho de 2014 18:37
  • Isso Joviano, só com Enum.

    Tipo

    Public Enum Opcoes As Byte
        Nada = 0
        Primeiro = 1
        Segundo = 2
    End Enum

    Veja porém que são sempre números, não podem ser String.

    Se depois você precisar de uma constante String específica para o Enum, então coloque uma função para dar resposta.

    Public Function Opcao(ByRef Op As Opcoes) As String
        Select Case op
            Case Opcoes.Nada : Return "Nada"
            Case Opcoes.Primeiro : Return "Primeiro"
            Case Opcoes.Segundo : Return "Segundo"
            Case Else : Return ""
        End Select
    End Function

    Então na sua Sub você usa um argumento do tipo "Opcoes" (que é o enum) e na primeira linha da sua Sub, se você precisar da String chame a função "Opcao(Opcoes) String" em uma variável.

    terça-feira, 3 de junho de 2014 19:50