Link to home
Start Free TrialLog in
Avatar of Khan Consultoria
Khan ConsultoriaFlag for Brazil

asked on

How to return a DataPoint from a Method , I need a help on that issue

Hello Guys

I am working with DataPoint variable and my problem is being when I need to create a method ( function ) that can result a dataPoint.

I created a method this way:

public DataPoint[] GeraGraficoEstudoMes(String Situacao, String idTema){

        int i=0;

        String wSql = " SELECT strftime(''%d'',data) AS DIA,  Count(1) AS TOTAL_ACERTO  FROM CRTGRAFICOESTUDO " +
                      " WHERE ACERTOU='" + Situacao + "'" +
                      "   AND strftime(''%Y'',data)=strftime(''%Y'',''now'') " +
                      "   AND strftime(''%m'',data)=strftime(''%m'',''now'') ";


        if (!idTema.isEmpty()) {
            wSql = wSql + " AND TAB_TEMA_ID=" + idTema;
        }

        wSql = wSql + " GROUP BY strftime(''%d'',data) ";
        wSql = wSql + " ORDER BY strftime(''%d'',data) ";


        openDataBase();
        Cursor cs = mSQSqLiteDatabase.rawQuery(wSql, null);

        DataPoint[] points = new DataPoint[cs.getCount()];

        if (cs.getCount() > 0) {

            if (cs.moveToFirst()) {
                while (!cs.isAfterLast()) {
                    points[i] = new DataPoint(cs.getInt(0), cs.getInt(1));
                    cs.moveToNext();
                }
            }
        }

        cs.close();
        closeDataBase();

        return points;
    }

Open in new window


something is wrong when I try to get the result, that way:

DataPoint[] points1 = DB.GeraGraficoEstudoMes("A", "");

I am not sure how to work around with that, I am newbier in Java and Android studio

I appreciate a lot your help with some simple example

Regards
Alex
Avatar of ste5an
ste5an
Flag of Germany image

[..] something is wrong [..]
Well, any error message or exception? Stack trace?

p.s. your SQL string building allows a SQL injection attack.
Avatar of Khan Consultoria

ASKER

Hello ste5an,

The error happens when I return my datapoints.

I'd like a simple example how to return a datapoints from a method, so that I could follow it and understand how to do.

about the SQL, what should I do to avoid it?

Thanks a lot for your help
ASKER CERTIFIED SOLUTION
Avatar of ste5an
ste5an
Flag of Germany image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ste5an

I understood my mistake with your example and it worked. Thanks a lot for your help.

About the Query, I also got it, I didn't know about that, once more, thanks a lot.

Have a good day
Alex