Avatar of Khan Consultoria
Khan Consultoria
Flag 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
JavaAndroid

Avatar of undefined
Last Comment
Khan Consultoria

8/22/2022 - Mon
ste5an

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

p.s. your SQL string building allows a SQL injection attack.
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
ste5an

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
Khan Consultoria

ASKER
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
Your help has saved me hundreds of hours of internet surfing.
fblack61