JobProgress
TsgcHTMLComponent_JobProgress — renderiza una lista en vivo de barras de progreso de trabajos en segundo plano con insignias de estado, botones de cancelación y actualizaciones de fragmentos fuera de banda, en Delphi, C++ Builder y .NET.
TsgcHTMLComponent_JobProgress — renderiza una lista en vivo de barras de progreso de trabajos en segundo plano con insignias de estado, botones de cancelación y actualizaciones de fragmentos fuera de banda, en Delphi, C++ Builder y .NET.
Registra trabajos con AddJob, avánzalos con UpdateJob, y luego lee HTML para el renderizado inicial o envía una sola fila con GetJobFragmentHTML.
TsgcHTMLComponent_JobProgress
Lista de barras de progreso de Bootstrap 5 + CSS encapsulado
Delphi, C++ Builder, .NET
Llama a AddJob para registrar un trabajo, renderiza el HTML inicial, y luego en cada tick de progreso llama a UpdateJob y transmite GetJobFragmentHTML para actualizar solo esa fila.
uses
sgcHTML_Enums, sgcHTML_Component_JobProgress;
var
oJobs: TsgcHTMLComponent_JobProgress;
begin
oJobs := TsgcHTMLComponent_JobProgress.Create(nil);
try
oJobs.JobsID := 'exports';
oJobs.Title := 'Background Exports';
oJobs.ShowCompleted := False;
oJobs.AddJob('exp-42', 'Export customers.csv', 'Generating CSV export');
WebModule.Response := oJobs.HTML; // card + progress rows + cancel-form script
finally
oJobs.Free;
end;
end;
// On a later progress tick, push just that row over the WebSocket:
oJobs.UpdateJob('exp-42', 65, jsRunning);
Engine.BroadcastFragment(oJobs.GetJobFragmentHTML('exp-42'));
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_JobProgress.hpp
TsgcHTMLComponent_JobProgress *oJobs = new TsgcHTMLComponent_JobProgress(NULL);
try
{
oJobs->JobsID = "exports";
oJobs->Title = "Background Exports";
oJobs->ShowCompleted = false;
oJobs->AddJob("exp-42", "Export customers.csv", "Generating CSV export");
String html = oJobs->HTML; // card + progress rows + cancel-form script
}
__finally
{
delete oJobs;
}
// On a later progress tick, push just that row over the WebSocket:
oJobs->UpdateJob("exp-42", 65, jsRunning, "");
Engine->BroadcastFragment(oJobs->GetJobFragmentHTML("exp-42"));
using esegece.sgcWebSockets;
var jobs = new TsgcHTMLComponent_JobProgress();
jobs.JobsID = "exports";
jobs.Title = "Background Exports";
jobs.ShowCompleted = false;
jobs.AddJob("exp-42", "Export customers.csv", "Generating CSV export");
string html = jobs.HTML; // card + progress rows + cancel-form script
// On a later progress tick, push just that row over the WebSocket:
jobs.UpdateJob("exp-42", 65, TsgcHTMLJobStatus.jsRunning, "");
engine.BroadcastFragment(jobs.GetJobFragmentHTML("exp-42"));
Los miembros que más vas a usar.
AddJob(aId, aName, aDescription) registra un trabajo y devuelve su TsgcHTMLJobItem (Id, Name, Description, Percent, Status, StatusText, StartedAt).
UpdateJob(aId, aPercent, aStatus, aStatusText) actualiza un trabajo por id, limitando Percent entre 0 y 100.
TsgcHTMLJobStatus (jsQueued, jsRunning, jsCompleted, jsFailed, jsCancelled) controla el color de la insignia y de la barra de progreso, con rayas y animación mientras se ejecuta.
GetJobFragmentHTML/GetJobAppendFragmentHTML devuelven fragmentos de intercambio fuera de banda para PushFragment/BroadcastFragment, de modo que un tick actualiza una sola fila en lugar de toda la página.
ShowCompleted oculta los trabajos finalizados de la lista; AutoRemoveCompleted los elimina por completo de Jobs una vez completados.
ShowCancelButton, CancelCaption y CancelAction controlan el formulario de cancelación por fila, enviado mediante el mismo mecanismo que Grid y Chat.
| Ayuda en líneaReferencia completa de la API y guía de uso para este componente. | Abrir | |
| Todos los componentes de sgcHTMLExplora la matriz completa de más de 80 componentes. | Abrir | |
| Descargar prueba gratuitaLa prueba de 30 días incluye los proyectos de demostración 60.HTML. | Abrir | |
| PreciosLicencias Single, Team y Site con código fuente completo. | Abrir |