Pretoria, South AfricaTraining venue Kigali, RwandaTraining venue Nairobi, KenyaTraining venue Accra, GhanaTraining venue Kampala, UgandaTraining venue Dubai, United Arab EmiratesTraining venue

Training Events by Venue

Choose a training event and apply directly. Browse upcoming face-to-face training opportunities and apply directly for your preferred course.

Kigali, Rwanda

August 2026

Nairobi, Kenya

August 2026

Dubai, United Arab Emirates

August 2026

Pretoria, South Africa

August 2026

Accra, Ghana

August 2026

Zanzibar, Tanzania

August 2026

Kampala, Uganda

August 2026

Livingstone, Zambia

August 2026

Port Louis, Mauritius

August 2026

Vic Falls, Zimbabwe

August 2026

Debug

sql: SELECT a.Course_Title AS CourseID, COALESCE(c.Course_Title, CONCAT('Course #', a.Course_Title)) AS CourseName, c.Course_Code, c.Short_Description, a.Training_Dates, a.Month AS MonthID, COALESCE(m.Month, '') AS MonthName, a.Year, a.Venue AS VenueID, COALESCE(v.Venue, CONCAT('Venue #', a.Venue)) AS VenueName, a.Duration AS DurationID, CASE WHEN a.Duration = 1 THEN '1 Week' WHEN a.Duration = 2 THEN '2 Weeks' WHEN a.Duration IS NULL OR a.Duration = 0 THEN 'Duration Pending' ELSE CONCAT(a.Duration, ' Week(s)') END AS DurationName, COUNT(a.Application_ID) AS Applications, SUM(IFNULL(NULLIF(a.delegates,0),1)) AS Delegates, SUM(CASE WHEN a.Status = 1 THEN 1 ELSE 0 END) AS PendingApps, SUM(CASE WHEN a.Status = 2 THEN 1 ELSE 0 END) AS QuotedApps, SUM(CASE WHEN a.Status = 3 THEN 1 ELSE 0 END) AS MaybeApps, SUM(CASE WHEN a.Status = 4 THEN 1 ELSE 0 END) AS AttendingApps, SUM(CASE WHEN a.Status = 5 THEN 1 ELSE 0 END) AS PaidApps, SUM(CASE WHEN a.Status = 4 THEN IFNULL(NULLIF(a.delegates,0),1) ELSE 0 END) AS AttendingDelegates, SUM(CASE WHEN a.Status = 5 THEN IFNULL(NULLIF(a.delegates,0),1) ELSE 0 END) AS PaidDelegates, MIN(a.Application_ID) AS SampleApplicationID, MAX(a.Application_ID) AS LatestApplicationID, MAX(a.Created_Date) AS LatestAppliedDate FROM apply a LEFT JOIN courses c ON c.id = a.Course_Title LEFT JOIN venues v ON v.id = a.Venue LEFT JOIN months m ON m.Month_ID = a.Month WHERE a.TrainingType = 2 AND a.Course_Title IS NOT NULL AND a.Course_Title > 0 AND a.Venue IS NOT NULL AND a.Venue > 0 AND a.Venue <> 7 AND (a.Training_Dates IS NOT NULL AND TRIM(a.Training_Dates) <> '') AND a.Month = 8 AND a.Year = 2026 GROUP BY a.Course_Title, a.Training_Dates, a.Month, a.Year, a.Venue, a.Duration ORDER BY a.Year ASC, a.Month ASC, v.Venue ASC, c.Course_Title ASC, a.Training_Dates ASC, executionMS: 0.10460186004639

sql: SELECT v.id, v.Venue, COUNT(a.Application_ID) AS Applications, SUM(IFNULL(NULLIF(a.delegates,0),1)) AS Delegates FROM apply a INNER JOIN venues v ON v.id = a.Venue WHERE a.TrainingType = 2 AND v.id <> 7 GROUP BY v.id, v.Venue ORDER BY Applications DESC, Delegates DESC, v.Venue ASC, executionMS: 0.12067103385925

sql: SELECT DISTINCT m.Month_ID, m.Month FROM apply a LEFT JOIN months m ON m.Month_ID = a.Month WHERE a.TrainingType = 2 AND a.Venue <> 7 AND a.Month IS NOT NULL ORDER BY m.Month_ID ASC, executionMS: 0.10032796859741

sql: SELECT DISTINCT a.Year FROM apply a WHERE a.TrainingType = 2 AND a.Venue <> 7 AND a.Year IS NOT NULL ORDER BY a.Year ASC, executionMS: 0.085608005523682

sql: SELECT v.id, v.Venue AS VenueName, COUNT(a.Application_ID) AS Applications, SUM(IFNULL(NULLIF(a.delegates,0),1)) AS Delegates FROM apply a INNER JOIN venues v ON v.id = a.Venue WHERE a.TrainingType = 2 AND a.Venue <> 7 GROUP BY v.id, v.Venue ORDER BY Applications DESC, Delegates DESC, v.Venue ASC LIMIT 6, executionMS: 0.17635416984558