Renders a multi-step progress tracker showing completed and pending steps as progress bars, with live polling for the current in-progress step.
PROGRESS — set as ReportType in def_report.
def Render(self, Param1="", Param2="", Param3="") -> str:
Parameters (Param1–Param9) are read from self.Param1–self.Param9 rather than the function arguments. The query must return rows of (step_name, min_value, max_value, progress_report_code, target_report_code). Each row renders as a labelled progress bar: completed steps show a success bar with a check icon; the first incomplete step is rendered as a link to its target report or form; subsequent incomplete steps show an empty square icon.
When a progress_report_code is provided on the first row, a JavaScript polling loop calls that report every second to update the progress bar width and percentage text in real time. When the progress value reaches max_value, the browser redirects to the target report or form URL.
Returns an HTML string.
Checks def_Report to determine whether the target_report_code refers to a report (redirects to /report/) or a form (redirects to /form/). The progress bar uses Bootstrap progress-bar-success for complete steps and progress-bar-primary active progress-bar-striped for the active step. Up to nine URL parameters (param1–param9) are forwarded to the target URL and the polling AJAX call.