Ver mensagens sem resposta | Ver tópicos ativos Hoje é 20 Nov 2019, 05:45



Este tópico está trancado, você não pode editar mensagens ou enviar respostas.  [ 6 Mensagens ] 
 [RESOLVIDO]Método no DAO não da certo mais na Activity da. 
Autor Mensagem
What is Android?
What is Android?

Data de registro: 10 Jun 2019, 11:29
Mensagens: 5
Mensagem [RESOLVIDO]Método no DAO não da certo mais na Activity da.
Porque quando tento colocar o método na classe DAO não da certo mais na activity da ?

Seguinte galera, to começando a programar agora e estou em dúvida em um método que estou tentando ultilizar. Estou trabalhando em um aplicativo de vendas, criei um banco de dados tudo certinho, fiz o CRUD tudo ok, ate ai tudo bem, porem queria pegar os valores de uma coluna, somar tudo e salvar o valor da soma em uma outra coluna, para isso ultilizei o SELECT SUM (preco) AS total FROM tabela_produtos.Acontece que quando executo ele direto na Activity, roda normal, e devolve realmente o valor da soma da coluna "preco", mas quando tento colocar ele na class DAO o resultado que me devolve é o valor 0, o que esta acontecendo?

segue os códigos

Activity que me retorna o valor correto:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_total);

        recyclerTotal = findViewById(R.id.recyclerTotal);
        textTotalResultado = findViewById(R.id.textTotalResultado);

        DBProdutos dbProdutos = new DBProdutos(getApplicationContext());

        ler = dbProdutos.getReadableDatabase();

        String sqlresult = "SELECT SUM (preco) AS total FROM " + TABELA_PRODUTOS + " ; " ;
        Cursor t = ler.rawQuery(sqlresult, null);

        while (t.moveToNext()){
            resultado = t.getInt(t.getColumnIndex("total"));
        }
        t.close();


        textTotalResultado.setText("Total de vendas R$ " + resultado);
 


metodo no DAO que me retorna o valor 0


public class ProdutosDAO implements iProdutosDAO{

    private SQLiteDatabase escreve;
    private SQLiteDatabase ler;

    public ProdutosDAO(Context context){
        DBProdutos db = new DBProdutos(context);
        escreve = db.getWritableDatabase();
        ler = db.getReadableDatabase();
    }

@Override // subescrevendo da interface iProdutosDAO
    public int resultadoTotal(int i) {

        String sqlresult = "SELECT SUM (preco) AS total FROM " + DBProdutos.TABELA_PRODUTOS + " ; " ;
        Cursor t = ler.rawQuery(sqlresult, null);

        while (t.moveToNext()){
            i = t.getInt(t.getColumnIndex("total"));
        }
        t.close();
       
        return i;
    }


Chamando o metodo a cima na activity
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_total);

        recyclerTotal = findViewById(R.id.recyclerTotal);
        textTotalResultado = findViewById(R.id.textTotalResultado);

        ProdutosDAO produtosDAO = new ProdutosDAO(getApplicationContext());
        produtosDAO.resultadoTotal(resultado);
       
        textTotalResultado.setText("Total de vendas R$ " + resultado);

    }
   

Alguem pode me dizer pq quando coloco o código direto na Activity devolve o valor certo, mas quando implemento o método no DAO ele me retorna o valor 0?

Desde já, obrigado.


Editado pela última vez por Stilovl em 10 Jul 2019, 00:46, num total de 1 vezes



09 Jul 2019, 20:34
Perfil
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Re: Método no DAO não da certo mais na Activity da.

    resultado = produtosDAO.resultadoTotal(resultado);
 

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


10 Jul 2019, 00:28
Perfil WWW
What is Android?
What is Android?

Data de registro: 10 Jun 2019, 11:29
Mensagens: 5
Mensagem Re: Método no DAO não da certo mais na Activity da.
jeffersonlanzieri escreveu:

    resultado = produtosDAO.resultadoTotal(resultado);
 


Não acredito que era só isso, tem uma semana que to quebrando a cabeça com isso kkk
Mto obrigado pela resposta, me ajudou bastante.

Iniciante é f*** :lol:


10 Jul 2019, 00:45
Perfil
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Re: Método no DAO não da certo mais na Activity da.
Normal isso :). Pergunta simples (pode parecer boba pra você), você entendeu o porque de ser 0 o valor?

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


10 Jul 2019, 00:48
Perfil WWW
What is Android?
What is Android?

Data de registro: 10 Jun 2019, 11:29
Mensagens: 5
Mensagem Re: Método no DAO não da certo mais na Activity da.
jeffersonlanzieri escreveu:
Normal isso :). Pergunta simples (pode parecer boba pra você), você entendeu o porque de ser 0 o valor?

Acho que sim, no caso é pq eu não estava definindo que a variavel resultado era igual o retorno do método certo? Dai qdo definia no .setText ele me retornava 0 (null) que é o valor inicial da variavel, certo?


10 Jul 2019, 15:57
Perfil
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Re: [RESOLVIDO]Método no DAO não da certo mais na Activity d
Sim, esse era o motivo de você não conseguir pegar o valor retornado, atribuir ele à variável resultado. O motivo de ele ser 0 é porque você declarou a variável no escopo da classe, então ela já tem um valor pré-definido. Nesse caso é zero porque era um primitivo numérico, só seria null se fosse um objeto/classe.
Você pode usar essa apostila se ainda estiver aprendendo Java: http://www.caelum.com.br/download/caelu ... s-fj11.pdf
Foi a que eu usei pra aprender, mas se você já souber ainda pode ser usada pra consulta, como eu faço as vezes.

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


10 Jul 2019, 23:20
Perfil WWW
Mostrar mensagens anteriores:  Organizar por  
Este tópico está trancado, você não pode editar mensagens ou enviar respostas.   [ 6 Mensagens ] 

Quem está online

Usuários vendo este fórum: ac0502, ademilson, Alan Unger, albinoneto, alexandrefett, Alexandrercarvalho, amarildolacerdas, andre.hebeler, andreluiz, andrigo, arquivo51, Biel, BiG_SerGiO, BloggerCaOS, blurkness, BornSlip, bravus, BTalhadas, carlosavasconcelos, cavenaghi, cesao, CKorneLL, claudioalfonso, Clone Trooper, Crazy_Droid, danielbfranco, danilosouza, dchechetto, Delão, dfreitas, difrene, digiwise, edson dias de gusmao, EduardoYC, elisa, eloilton, euguns, flashking, flaviolemos, frederico.affini, Google Android, guilhermepilotti, HanNiBaLSeTDf, hbarroco, hostdesigner, igor_meneguzzo, ixian, j-menezes, JackBlackJack, jandersonjc, Jar Jar Binks, jcdeveloper, jcorreajr, JMurray, jorgeFernandes, João Miguel Aguiar, jrsilva, Katia, klebersilvarocha, laurj, lazarodm, Lincoln, lkunta, luizcarlosvb, Mace Windu, maiconjunches, mapis, marcos_trb, marcosrogel, martins, masf_33, Mayara Trevisol, nakahara, NeruLL, neviim, o-raposa, paint-horse, paulabr, paulokiller, paulosantos, phfmendes, pyrobit, Qui-Gon Jinn, R2-D2, rananfu, rayberg, rdchaves, regeriob2br, renanpl, rguadagnini, ricardo, rixargolo, robertofonte, rodrigosalfer, rogerio, Roll, rotmeil, ruizsa, shibutani, sidnei.gs, skcratch, slackware, tassiovirginio, tavares767, tiagocordeiro, tonholis, Transtago, vilmartr, Vinicius, Wenceslau, wil e 12 visitantes


Você não pode criar novos tópicos neste fórum
Você não pode responder tópicos neste fórum
Você não pode editar suas mensagens neste fórum
Você não pode excluir suas mensagens neste fórum
Você não pode enviar anexos neste fórum

Procurar por:

© 2007 - 2016 Portal Android - Comunidade de Desenvolvedores Android

Estamos no Linkedin    Siga-nos no twitter


Powered by phpBB - Hospedado por Bemobi