class NsServerTransaction

La classe NsServerTransaction décrit une transaction active, c'est à dire une opération initiée par un agent client sur une sauvegarde : sauvegarde, restauration, suppression, ou réinitialisation.

Les transactions sont gérées par les agents clients dans le contexte de sessions (NsServerSession) préalablement ouvertes sur le serveur de sauvegarde.

SessionID : __int64 readonly

L'identificateur unique de session dans laquelle la transaction a été ouverte. Vous pouvez obtenir plus d'information sur la session en utilisant l'objet NsServerSession.

TransactionType : enum NsTransactionType readonly

Le type de la transaction (sauvegarde, restauration, etc.)

UserID : __int64 readonly

L'identifiant numérique de l'utilisateur (NsUser) ayant ouvert la transaction.

BackupID : __int64 readonly

L'identificateur numérique de la sauvegarde ((NsBackup)) traitée par la transaction.

State : long readonly

Le code d'état interne de la transaction.

ExecSource : enum NsExecSource readonly

La source ayant provoqué l'ouverture de la transaction.

StartDateTime : VARIANT readonly

La date de début de la transaction.

UpdatedFilesCount : __int64 readonly

Le nombre de fichiers créés et mis à jour durant l'opération.

DeletedFilesCount : __int64 readonly

Le nombre de fichiers supprimés durant l'opération.

Errors : __int64 readonly

Le nombre d'erreurs durant l'opération.

BytesSent : __int64 readonly

Le nombre d'octets envoyés.

BytesRecv : __int64 readonly

Le nombre d'octets reçus.

BytesPerSeconds : long readonly

La vitesse de transfert des données, en octets par secondes.

IsCDPOperation : VARIANT_BOOL readonly

Une variable booléenne indiquant si la sauvegarde est une opération de sauvegarde continue ou pas.

DeltaRatio : long readonly

Si le transfert Delta est activé, correspond au pourcentage (blocs de données réutilisés / nombre total de blocs) au niveau global de la transaction. Plus cette valeur tends vers 100, plus cela signifie que des données sur le serveur ont pu être réutilisées pour construire les fichiers à sauvegarder.

ProgressValue : long readonly

Un nombre entre 0 et 100 représentant le pourcentage d'avancement de l'opération.

Affichage du débit d'échange entre serveur et clients

Set connection = CreateObject("NsAPI.NsConnection")
Set sysutils = CreateObject("NsAPI.NsScriptUtils")

if connection.ConnectToLocalServer then
  set server = CreateObject("NsAPI.NsServer")
  
  if server.Load(connection) then ' Charger les informations serveur
    set transactions = server.ActiveTransactions(connection) ' Récupère la liste des transactions
    
    bytesPerSecs = 0
    
    for each transaction in transactions
      bytesPerSecs = bytesPerSecs + transaction.BytesPerSeconds ' Additionne tous les débits
    next
    
    MsgBox "Débit global : " & sysutils.SizeToStr(bytesPerSecs) & "/s" ' Affiche le résultat
  end if
  
  connection.Disconnect
else
  MsgBox "Connexion au serveur local impossible."
end if