KoolReport's Forum

Official Support Area, Q&As, Discussions, Suggestions and Bug reports.
Forum's Guidelines

Creating a datastore causes an error. Why? #2829

Open Richb201 opened this topic on 6 days ago - 4 comments

Richb201 commented 6 days ago

What is wrong with this report.php code? Am I having a naming issue?

        SELECT srat.taxyear as taxyear, srat.employee_email as employee_email, employee_title, srat.cost_center_name as cost_center_name, srat.consultant, srat.w2_wages,srat.reason, srat.qualified_dollars,srat.key_year
        FROM survey_results_activities_temp srat

            ->pipe($this->dataStore("srat"))  ;

Richb201 commented 6 days ago

It seems that Mysql 8 is failing to create a temporary file. Therefore the above SELECT statement fails since survey_results_activities_temp doesn't exist. If the above query fails, I'd like to send the user to a "try later" page. Can I do a try/catch like below in a koolreport report file?

            ->pipe($this->dataStore("srat"))  ;
{go somewhere}
Richb201 commented 4 days ago

Can I break

       $sql="SELECT *
        FROM  BC_PR_list_temp as BPlt
       WHERE BPlt.taxyear='$taxyear' AND item<>'' AND type='BC'";

            ->pipe($this->dataStore("BPlt_BC"))  ;

Into a separate query and pipe so i can see where the error is?

Sebastian Morales commented 1 day ago

You have to catch your sql error around $report->run() instead of pipe(). The pipe method in report setup just define the data flow, there's no actual data processing there. If a report's run throws error you could create another report with a different sql query to show users.

Richb201 commented 18 hours ago

Thx. I think that the create of temporary is what is failing. Hard to say since the CREATE TEMPORARY is not returning an error, the table is not created. I am using codeigniter 3.

Build Your Excellent Data Report

Let KoolReport help you to make great reports. It's free & open-source released under MIT license.

Download KoolReport View demo
help needed