Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

AMB

transformação de código vb ---> eclipse

Mensagens Recomendadas

AMB

Bom dia!!!

É o seguinte eu desenvolvi um código há algum tempo em visual basic mas agora queria faze-lo no eclipse, mas não estou sabendo como...

o código em vb é o seguinte:

'Acesso à base de dados
        Dim conn As New System.Data.OleDb.OleDbConnection
        conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='C:\Desktop\user2.accdb'"
        conn.Open()

        'Inserir valor do ParamNr manualmente
        Dim PNr As String
        PNr = TextBox1.Text

        'Mostrar ParamNr de forma automática
        Dim Param As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        Param.CommandText = " SELECT ParamNr FROM Parameter "

        Dim resu As Integer
        resu = Convert.ToInt32(Param.ExecuteScalar)

        TextBox1.Text = resu

        'Calculo do máximo por coluna de D (16* = nº de colunas)
        Dim selectD1 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD1.CommandText = " SELECT MAX(D1) AS DAP1 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP1 As Integer
        DAP1 = Convert.ToInt32(selectD1.ExecuteScalar)

        Dim selectD2 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD2.CommandText = " SELECT MAX(D2) AS DAP2 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP2 As Integer
        DAP2 = Convert.ToInt32(selectD2.ExecuteScalar)

        Dim selectD3 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD3.CommandText = " SELECT MAX(D3) AS DAP3 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP3 As Integer
        DAP3 = Convert.ToInt32(selectD3.ExecuteScalar)

        Dim selectD4 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD4.CommandText = " SELECT MAX(D4) AS DAP4 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP4 As Integer
        DAP4 = Convert.ToInt32(selectD4.ExecuteScalar)

        Dim selectD5 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD5.CommandText = " SELECT MAX(D5) AS DAP5 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP5 As Integer
        DAP5 = Convert.ToInt32(selectD5.ExecuteScalar)

        Dim selectD6 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD6.CommandText = " SELECT MAX(D6) AS DAP6 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP6 As Integer
        DAP6 = Convert.ToInt32(selectD6.ExecuteScalar)

        Dim selectD7 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD7.CommandText = " SELECT MAX(D7) AS DAP7 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP7 As Integer
        DAP7 = Convert.ToInt32(selectD7.ExecuteScalar)

        Dim selectD8 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD8.CommandText = " SELECT MAX(D8) AS DAP8 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP8 As Integer
        DAP8 = Convert.ToInt32(selectD8.ExecuteScalar)

        Dim selectD9 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD9.CommandText = " SELECT MAX(D9) AS DAP9 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP9 As Integer
        DAP9 = Convert.ToInt32(selectD9.ExecuteScalar)

        Dim selectD10 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD10.CommandText = " SELECT MAX(D10) AS DAP10 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP10 As Integer
        DAP10 = Convert.ToInt32(selectD10.ExecuteScalar)

        Dim selectD11 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD11.CommandText = " SELECT MAX(D11) AS DAP11 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP11 As Integer
        DAP11 = Convert.ToInt32(selectD11.ExecuteScalar)

        Dim selectD12 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD12.CommandText = " SELECT MAX(D12) AS DAP12 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP12 As Integer
        DAP12 = Convert.ToInt32(selectD12.ExecuteScalar)

        Dim selectD13 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD13.CommandText = " SELECT MAX(D13) AS DAP13 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP13 As Integer
        DAP13 = Convert.ToInt32(selectD13.ExecuteScalar)

        Dim selectD14 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD14.CommandText = " SELECT MAX(D14) AS DAP14 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP14 As Integer
        DAP14 = Convert.ToInt32(selectD14.ExecuteScalar)

        Dim selectD15 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD15.CommandText = " SELECT MAX(D15) AS DAP15 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP15 As Integer
        DAP15 = Convert.ToInt32(selectD15.ExecuteScalar)

        Dim selectD16 As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        selectD16.CommandText = " SELECT MAX(D16) AS DAP16 FROM MeasData WHERE ParamNr = " & PNr

        Dim DAP16 As Integer
        DAP16 = Convert.ToInt32(selectD16.ExecuteScalar)

        'Criação de vector com todos os máximos calculados
        Dim vector() As Integer

        ReDim vector(15)

        vector(0) = DAP1
        vector(1) = DAP2
        vector(2) = DAP3
        vector(3) = DAP4
        vector(4) = DAP5
        vector(5) = DAP6
        vector(6) = DAP7
        vector(7) = DAP8
        vector(8) = DAP9
        vector(9) = DAP10
        vector(10) = DAP11
        vector(11) = DAP12
        vector(12) = DAP13
        vector(13) = DAP14
        vector(14) = DAP15
        vector(15) = DAP16

        'Coloca vector por ordem crescente
        Array.Sort(vector)

        'Devolve-nos o último valor do vector --> valor máximo de todos os máximos calculados
        TextBox2.Text = vector(15)

        'Insere o valor na tabela Parameter
        Dim insertDAP As System.Data.OleDb.OleDbCommand = conn.CreateCommand()
        insertDAP.CommandText = " UPDATE Parameter SET DAP = ('" & vector(15) & "') WHERE ParamNr = " & PNr
        insertDAP.ExecuteNonQuery()

só que não queria que o PNr fosse inserido pelo utilizador, mas sim ele ir calculando para todos os PNr existentes na tabela.

alguém me dá uma ajudinha???

Obrigada

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Knitter

Por "eclipse" suponho que te estejas a referir ao IDE Eclipse? E pela secção talvez seja usando a linguagem Java? É que o IDE Eclipse permite programar em várias linguagens....

O que é o PNr e qual é o objectivo do programa?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
AMB

Sim é java!!!

O PNr é uma variavel que define um autonumber (primary-key) de uma tabela...e que também está presente numa outra que contem os D1, D2, ...

O objectivo é o seguinte: existem 16 colunas de D com vários valores e para um mesmo PNr podem existir n valores de um mesmo D1. Ou seja o PNr define a linha e posso ter 20 linhas com o mesmo PNr logo vou ter ( 20 linhas * 16 colunas ) de valores. e kero calcular o valor maximo de cada coluna (D1, D2,.... D16) e dp calcular o máximo dos máximos (ver qual o maximo entre D1 e D16 dos maximos anteriormente calculados). Espero ter-me feito entender

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Knitter

VB para mim é pior que chinês, não lhe percebo muito da sintaxe e por isso não sei bem o que estás a fazer. No entanto, sendo PNr um campo da base de dados, auto-incrementável, para o obteres automaticamente não bastará fazer um insert e depois ir buscar o número que acabou de ser criado?

Desculpa mas ainda não percebi qual é o problema ou o que estás a tentar fazer.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.