ACC Results Companion

Misc ACC Results Companion 1.24.0

Login or Register an account to download this content
Thanks, its uploaded.

-bx4wAhOlKx1FqzcJz59p2RF6n_p5klg_Td4UBP5Fng

Additionally, the bugfix where empty sector treated as fastest is not working for some entries as below
View attachment 494793
The issue with no last lap in practice might take a while to fix. Essentially it only happens when the last lap completes after the "session over" event happens, which is when all the laps are collected. I'll need to ensure that any fix doesn't break other session types, so it is going to require a fair bit of testing.

Regarding the empty sectors, it looks like there was another case I didn't cater for
 
Hello great tool. The bible of Aac. Im super glad with your program
but can‘t get the teams working. And thats an awesome feature.
when i create it and i looked it up again it isn’t ther any more.
what I’m I doing wrong.
Firstly, you need to make sure you are running V1.13.2 - I managed to break teams in earlier releases.

If you are still having problems, open up the help (press F1 or click the ? button under the title bar) and go to the Leaderboards->Teams section. This should tell you how it is supposed to work.

If that still doesn't help, can you explain exactly what isn't working (screenshots may help), and I'll have a look
Cheers,
Doug
 
Firstly, you need to make sure you are running V1.13.2 - I managed to break teams in earlier releases.

If you are still having problems, open up the help (press F1 or click the ? button under the title bar) and go to the Leaderboards->Teams section. This should tell you how it is supposed to work.

If that still doesn't help, can you explain exactly what isn't working (screenshots may help), and I'll have a look
Cheers,
Doug
1629374794691.png

new versie First i had ARC team But after delete the programm and a restart now that is also gone.
If i want to make a team. It does not save it.
I read the info and thats no problem only the saving from the created team.
 
Last edited:
Hello Doug i upload the diagnostics and here is the TqYqshVrXC0MR058H84CaRmEtTy24M3bMslw0BsHuRo Hope you can solve it..Maestro
There was a bug if you managed to create a team with no team code, then this would cause problems with the teams dialog. This is fixed in 1.13.3

All your teams should now be visible (including duplicates with no team code). You can either delete them or assign them a team code
 
There was a bug if you managed to create a team with no team code, then this would cause problems with the teams dialog. This is fixed in 1.13.3

All your teams should now be visible (including duplicates with no team code). You can either delete them or assign them a team code
Joehoeeeee. Great Mr Doug. It works. Great Great Great awesome.
 
Hi Doug,
I'm facing an issue with filtering on session tab.
FYI, I have updated ACCR to latest version (1.13.3) from 1.13.1 and using latest ACC 1.7.13
When I'm trying to set a filter on session tab for a track and a car, I have the following error in logs.

Code:
[00000001] 2021-08-23 15:42:58 ERROR LoggingSQLiteCommand.ExecuteReader : SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id AND s.track_id IN (@trackCode0, @trackCode1, @trackCode2)  ORDER BY s.session_date_time DESC LIMIT 1000
        @car_model_id=24
        @trackCode0=spa_2019
        @trackCode1=spa
        @trackCode2=spa_2020
[00000001] 2021-08-23 15:42:58 ERROR ResultsDB.retrieveSessionDetails : Error reading sesson details with query
 SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id AND s.track_id IN (@trackCode0, @trackCode1, @trackCode2)  ORDER BY s.session_date_time DESC LIMIT 1000
SQL logic error
ambiguous column name: car_model_id
   at ACCResults.DBModel.LoggingSQLiteCommand.ExecuteReader() in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\LoggingSQLiteCommand.cs:line 83
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId, List`1 seasonIds, Boolean showUnpairedOnly) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1521
Caused by :
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId, List`1 seasonIds, Boolean showUnpairedOnly) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1675
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1146
   at ACCResults.OLVHelpers.OLVControlSessions.populateSessionDetails(SessionFilter filter) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\OLVHelpers\OLVControlSessions.cs:line 1049
   at ACCResults.TabControls.TabControlSessions.populateSessionDetails(SessionFilter filter) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\TabControls\TabControlSessions.cs:line 219
   at ACCResults.TabControls.TabControlSessions.sessionFilterControl_FilterChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\TabControls\TabControlSessions.cs:line 294
   at ACCResults.Controls.SessionFilterControl.FireFilterChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\SessionFilterControl.cs:line 140
   at ACCResults.Controls.SessionFilterControl.cbCar_SelectedIndexChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\SessionFilterControl.cs:line 123
   at ACCResults.Controls.ComboBoxTemplate.FireSelectedIndexChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\ComboBoxTemplate.cs:line 26
   at ACCResults.Controls.ComboCarList.cbCar_SelectedValueChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\ComboCarList.cs:line 109
   at System.Windows.Forms.ListControl.OnSelectedValueChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedValueChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at System.Windows.Forms.Control.SendMessage(Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.Control.ReflectMessageInternal(IntPtr hWnd, Message& m)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.UserControl.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
   at System.Windows.Forms.Control.DefWndProc(Message& m)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.Run(Form mainForm)
   at ACCResults.Program.Main() in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Program.cs:line 19

If I select only a track, filtering is working fine but as soon as I select a car, error appears.
another example :
Code:
[00000001] 2021-08-23 15:48:50 ERROR LoggingSQLiteCommand.ExecuteReader : SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id ORDER BY s.session_date_time DESC LIMIT 1000
        @car_model_id=56
[00000001] 2021-08-23 15:48:50 ERROR ResultsDB.retrieveSessionDetails : Error reading sesson details with query
 SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id ORDER BY s.session_date_time DESC LIMIT 1000 
SQL logic error
ambiguous column name: car_model_id

I can export diagnostics if you want to.
 
Hi Doug,
I'm facing an issue with filtering on session tab.
FYI, I have updated ACCR to latest version (1.13.3) from 1.13.1 and using latest ACC 1.7.13
When I'm trying to set a filter on session tab for a track and a car, I have the following error in logs.

Code:
[00000001] 2021-08-23 15:42:58 ERROR LoggingSQLiteCommand.ExecuteReader : SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id AND s.track_id IN (@trackCode0, @trackCode1, @trackCode2)  ORDER BY s.session_date_time DESC LIMIT 1000
        @car_model_id=24
        @trackCode0=spa_2019
        @trackCode1=spa
        @trackCode2=spa_2020
[00000001] 2021-08-23 15:42:58 ERROR ResultsDB.retrieveSessionDetails : Error reading sesson details with query
SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id AND s.track_id IN (@trackCode0, @trackCode1, @trackCode2)  ORDER BY s.session_date_time DESC LIMIT 1000
SQL logic error
ambiguous column name: car_model_id
   at ACCResults.DBModel.LoggingSQLiteCommand.ExecuteReader() in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\LoggingSQLiteCommand.cs:line 83
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId, List`1 seasonIds, Boolean showUnpairedOnly) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1521
Caused by :
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId, List`1 seasonIds, Boolean showUnpairedOnly) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1675
   at ACCResults.ResultsDB.retrieveSessionDetails(String sessionId, String seasonId, Boolean useDateFilter, String dateFrom, String dateTo, String filterCar, String filterTrack, String filterSession, Boolean filterWet, Boolean filterEvent, String onlineFilter, String pbFilter, String carClass, String championshipId) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\DBModel\ResultsDB.cs:line 1146
   at ACCResults.OLVHelpers.OLVControlSessions.populateSessionDetails(SessionFilter filter) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\OLVHelpers\OLVControlSessions.cs:line 1049
   at ACCResults.TabControls.TabControlSessions.populateSessionDetails(SessionFilter filter) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\TabControls\TabControlSessions.cs:line 219
   at ACCResults.TabControls.TabControlSessions.sessionFilterControl_FilterChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\TabControls\TabControlSessions.cs:line 294
   at ACCResults.Controls.SessionFilterControl.FireFilterChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\SessionFilterControl.cs:line 140
   at ACCResults.Controls.SessionFilterControl.cbCar_SelectedIndexChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\SessionFilterControl.cs:line 123
   at ACCResults.Controls.ComboBoxTemplate.FireSelectedIndexChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\ComboBoxTemplate.cs:line 26
   at ACCResults.Controls.ComboCarList.cbCar_SelectedValueChanged(Object sender, EventArgs e) in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Controls\ComboCarList.cs:line 109
   at System.Windows.Forms.ListControl.OnSelectedValueChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedValueChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.OnSelectedIndexChanged(EventArgs e)
   at System.Windows.Forms.ComboBox.WmReflectCommand(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.SendMessage(HandleRef hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at System.Windows.Forms.Control.SendMessage(Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.Control.ReflectMessageInternal(IntPtr hWnd, Message& m)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.UserControl.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.CallWindowProc(IntPtr wndProc, IntPtr hWnd, Int32 msg, IntPtr wParam, IntPtr lParam)
   at System.Windows.Forms.NativeWindow.DefWndProc(Message& m)
   at System.Windows.Forms.Control.DefWndProc(Message& m)
   at System.Windows.Forms.Control.WmCommand(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ComboBox.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.Run(Form mainForm)
   at ACCResults.Program.Main() in E:\Users\Doug\OneDrive\Documents\Doug's Documents\VS Projects\TestApp\TestApp\Program.cs:line 19

If I select only a track, filtering is working fine but as soon as I select a car, error appears.
another example :
Code:
[00000001] 2021-08-23 15:48:50 ERROR LoggingSQLiteCommand.ExecuteReader : SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id ORDER BY s.session_date_time DESC LIMIT 1000
        @car_model_id=56
[00000001] 2021-08-23 15:48:50 ERROR ResultsDB.retrieveSessionDetails : Error reading sesson details with query
SELECT DISTINCT s.session_id, IFNULL(s.track_id, ''), s.session_date_time, s.season_id, s.date_hour, s.date_minute, s.race_day, s.time_multiplier, s.session_duration, s.round, s.session_type, s.is_wet_session, s.type_id, IFNULL(l.car_model_id, -1) car_model_id, s.event_online_reference, s.total_time, s.lap_count, s.session_position, s.ideal_line_grip, s.outside_line_grip, s.marbles_level, s.puddles_level, s.wet_dry_line_level, s.wet_level, s.ambient_temperature, s.road_temperature, s.wind_speed, s.wind_direction, s.cloud_level, s.rain_level, s.is_dynamic, s.ambient_temperature_mean, IFNULL(s.player_race_number, -101), IFNULL(p.points1, 0), IFNULL(p.points2, 0), IFNULL(p.points3, 0), IFNULL(p.points4, 0), IFNULL(p.points5, 0), s.is_online, s.player_ecu_mode, IFNULL(s.recorded_by, ""), IFNULL(s.peak_acceleration, -1), IFNULL(s.max_speed, -1), IFNULL(s.fuel_per_lap, 0), IFNULL(mean.avg_lap_time, -1), IFNULL(s.position_start_session, 0), IFNULL(notes.notes, ''), IFNULL(c.car_id, -1), IFNULL(s.dry_tyre_name, ''), IFNULL(s.wet_tyre_name, ''), IFNULL(s.replay_start_time, ''), IFNULL(s.pre_session_time, ''), IFNULL(s.penalty_time, 0) FROM session_def AS s LEFT OUTER JOIN ( SELECT laps.session_id, laps.car_id, laps.car_model_id, c.race_number, c.car_id FROM laps INNER JOIN session_cars c ON c.session_id = laps.session_id AND c.car_id = laps.car_id GROUP BY laps.session_id, laps.car_id, laps.car_model_id, c.race_number ) AS l ON s.season_id=l.session_id AND IFNULL(s.player_race_number, -101) != -999 AND ((s.player_race_number is null and l.car_id=0) OR IFNULL(s.player_race_number, -101)=l.race_number) LEFT OUTER JOIN session_points p ON s.season_id=p.session_id AND l.car_id=p.car_id LEFT OUTER JOIN session_avg_times mean ON s.season_id=mean.session_id LEFT OUTER JOIN session_notes notes ON s.session_id=notes.session_id LEFT OUTER JOIN session_cars c ON s.season_id=c.session_id AND s.player_race_number=c.race_number WHERE s.recorded_by !='ARC' AND car_model_id=@car_model_id ORDER BY s.session_date_time DESC LIMIT 1000
SQL logic error
ambiguous column name: car_model_id

I can export diagnostics if you want to.
Sorry about that - I made a data model change a few releases ago. I thought I'd updated all the queries but I obviously missed this one.

Fixed in 1.13.4
 
Hi Doug, when I blacklist a record, it sometimes blacklists a large set of users and records in bulk.
I have nothing in user or record blacklists, but when I blacklist a record, a bunch appear in the record and user blacklists.
When I remove one of the blacklisted records, they all go away too. Example below.

Before Blacklisting one record
Blacklist of users is empty
1629791005084.png

Blacklist of sessions empty
1629791023965.png



Blacklist this record
1629791080089.png


After Blacklisting Record
Blacklisted Sessions
1629791122031.png

Blacklisted Users
1629791154805.png
 
Hi Doug, when I blacklist a record, it sometimes blacklists a large set of users and records in bulk.
I have nothing in user or record blacklists, but when I blacklist a record, a bunch appear in the record and user blacklists.
When I remove one of the blacklisted records, they all go away too. Example below.

Before Blacklisting one record
Blacklist of users is empty
View attachment 498101
Blacklist of sessions emptyView attachment 498102


Blacklist this record
View attachment 498103

After Blacklisting Record
Blacklisted Sessions
View attachment 498104
Blacklisted Users
View attachment 498105
Hi,
When I implemented blacklisting, I hadn't considered the impact of trying to blacklist someone you raced against (as opposed to someone in the global leaderboard). When you do this, it will blacklist every result in that session.

I'm going to have to think about how I can cater for this scenario
 
Hi Doug, I'm trying to use the teams function but it isn't working when I apply the team filter to the leaderboard.

The log shows your SQL query used to apply the filter, and its being invalidating because INNER JOIN is used after the WHERE clause.

Cheers

Diagnostics have been uploaded:
-bx4wAhOlKx1FqzcJz59p2RF6n_p5klg_Td4UBP5Fng
 
Hi Doug, I'm trying to use the teams function but it isn't working when I apply the team filter to the leaderboard.

The log shows your SQL query used to apply the filter, and its being invalidating because INNER JOIN is used after the WHERE clause.

Cheers

Diagnostics have been uploaded:
-bx4wAhOlKx1FqzcJz59p2RF6n_p5klg_Td4UBP5Fng
I’ll have a look at this when I’m back. I’ll see if I can get it fixed for the next release

EDIT: This is fixed in 1.13.6, and I've added a bonus performance increase as the sub-query on teams was taking forever
 
Last edited:

Latest News

What's needed for simracing in 2024?

  • More games, period

  • Better graphics/visuals

  • Advanced physics and handling

  • More cars and tracks

  • AI improvements

  • AI engineering

  • Cross-platform play

  • New game Modes

  • Other, post your idea


Results are only viewable after voting.
Back
Top