JobProgress
TsgcHTMLComponent_JobProgress — affichez une liste en direct de barres de progression de tâches en arrière-plan avec badges d'état, boutons d'annulation et mises à jour de fragments hors-bande, en Delphi, C++ Builder et .NET.
TsgcHTMLComponent_JobProgress — affichez une liste en direct de barres de progression de tâches en arrière-plan avec badges d'état, boutons d'annulation et mises à jour de fragments hors-bande, en Delphi, C++ Builder et .NET.
Enregistrez des tâches avec AddJob, faites-les avancer avec UpdateJob, puis lisez HTML pour le rendu initial ou poussez une seule ligne avec GetJobFragmentHTML.
TsgcHTMLComponent_JobProgress
Une liste de barres de progression Bootstrap 5 + CSS dédié
Delphi, C++ Builder, .NET
Appelez AddJob pour enregistrer une tâche, affichez le HTML initial, puis à chaque avancée appelez UpdateJob et diffusez GetJobFragmentHTML pour rafraîchir uniquement cette ligne.
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"));
Les membres que vous utilisez le plus souvent.
AddJob(aId, aName, aDescription) enregistre une tâche et renvoie son TsgcHTMLJobItem (Id, Name, Description, Percent, Status, StatusText, StartedAt).
UpdateJob(aId, aPercent, aStatus, aStatusText) met à jour une tâche par id, en limitant Percent entre 0 et 100.
TsgcHTMLJobStatus (jsQueued, jsRunning, jsCompleted, jsFailed, jsCancelled) détermine le badge et la couleur de la barre de progression, rayée et animée pendant l'exécution.
GetJobFragmentHTML/GetJobAppendFragmentHTML renvoient des fragments de remplacement hors-bande pour PushFragment/BroadcastFragment, de sorte qu'une avancée met à jour une seule ligne au lieu de toute la page.
ShowCompleted masque les tâches terminées de la liste ; AutoRemoveCompleted les retire complètement de Jobs une fois terminées.
ShowCancelButton, CancelCaption et CancelAction contrôlent le formulaire d'annulation par ligne, soumis via le même mécanisme que Grid et Chat.
| Aide en ligneRéférence API complète et guide d’utilisation pour ce composant. | Ouvrir | |
| Tous les composants sgcHTMLParcourez la matrice complète des fonctionnalités de plus de 80 composants. | Ouvrir | |
| Télécharger la version d'essai gratuiteLa version d'essai de 30 jours fournit les projets de démonstration 60.HTML. | Ouvrir | |
| TarifsLicences Single, Team et Site avec code source complet. | Ouvrir |