Partager via


Admin.SetDatabaseTimeout - Méthode

Définit le délai d'attente SQL pour les bases de données Project Server core, en secondes.

Espace de noms :  WebSvcAdmin
Assembly :  ProjectServerServices (dans ProjectServerServices.dll)

Syntaxe

'Déclaration
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Admin/SetDatabaseTimeout", RequestNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Admin/",  _
    ResponseNamespace := "https://schemas.microsoft.com/office/project/server/webservices/Admin/",  _
    Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Sub SetDatabaseTimeout ( _
    timeoutType As DatabaseTimeoutType, _
    timeout As Integer _
)
'Utilisation
Dim instance As Admin
Dim timeoutType As DatabaseTimeoutType
Dim timeout As Integer

instance.SetDatabaseTimeout(timeoutType, _
    timeout)
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/office/project/server/webservices/Admin/SetDatabaseTimeout", RequestNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Admin/", 
    ResponseNamespace = "https://schemas.microsoft.com/office/project/server/webservices/Admin/", 
    Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public void SetDatabaseTimeout(
    DatabaseTimeoutType timeoutType,
    int timeout
)

Paramètres

  • timeoutType
    Type : WebSvcAdmin.DatabaseTimeoutType

    La seule valeur disponible dans Project Server 2010 est la constante Core (valeur = 0), qui spécifie les bases de données principale.

  • timeout
    Type : System.Int32

    Spécifie le délai d'attente (en secondes) pour les appels internes SQL pour les bases de données de Project Server core.

Remarques

Conseil

Dans certains déploiements de Project Server, le délai d'attente de la base de données par défaut n'est pas suffisamment. Si un travail de Project Server échoue en raison d'une erreur de délai d'attente SQL, un administrateur peut augmenter le paramètre de délai d'attente de base de données à l'aide de la méthode SetDatabaseTimeout , puis renouvelez l'opération.

La valeur par défaut et la valeur minimale sont de 30 secondes. La valeur maximale est la Int32 maximale ou 2147483647 secondes (15 ans).

Pour définir le délai d'attente de la commande SQL pour la file d'attente de projet ou de la file d'attente de feuille de temps, vous pouvez utiliser la méthode SetQueueConfiguration ou utilisez la page Paramètres de file d'attente de Project Web App (https://ServerName/ProjectServerName/_layouts/pwa/Admin/queuesettings.aspx).

Autorisations Project Server

Autorisation

Description

ManageServerConfiguration

Permet à un utilisateur de gérer les informations de configuration pour Project Server. Autorisation globale.

ManageSiteServices

Permet à un utilisateur d'administrer des services tels que les paramètres Active Directory et les délais d'attente de base de données. Autorisation globale.

Exemples

Pour utiliser le script Windows PowerShell suivant, enregistrez le script dans un fichier nommé, par exemple, Set-DatabaseTimeout.ps1. Exécutez la SharePoint 2010 Management Shell en tant qu'administrateur (dans le dossier Projets de Microsoft SharePoint 2010 du menu Démarrer ) et accédez au répertoire où vous avez enregistré le fichier Set-DatabaseTimeout.ps1 puis tapez la commande suivante, par exemple, pour définir la valeur de délai d'expiration de 60 secondes : .\Set-DatabaseTimeout 60

###############################################################################
## Set-DatabaseTimeout
## Uses the Admin web service of the PSI to call the SetDatabaseTimeout method.
## The script user must have Project Server administrator permissions.
## To run on your Project Server installation, change the $pwaUrl value.
## Argument:
##   Integer secTimeout    -- Timeout in seconds, 30 to 2147483647 (15+ years).
## Example: 
##   .\Set-DatabaseTimeout 1800
##               -- Sets the database timeout to 1800 seconds (30 minutes).
################################################################################

param([int]$secTimeout)
Set-StrictMode -version 2.0

$pwaUrl = "http://jcorbin8/pwa"
$svcAdminUrl = $pwaUrl + "/_vti_bin/PSI/Admin.asmx?wsdl"
[int]$timeoutType = 0
[bool]$runtimeErr = $false
[bool]$argErr = $false

if ($secTimeout -eq $null) 
{ 
    $argErr = $true 
}
else  # Validate the timeout value.
{    
    if ($secTimeout -lt 30 -or $secTimeout -gt 2147483647)
    {
        $argErr = $true
    }
}

if ($argErr)
{ 
    Write-Host "Usage:`tSet-DatabaseTimeout timeoutSeconds"
    Write-Host "`t`tTimeout minimum = 30; maximum = 2147483647 (over 15 years)"
    Write-Host "Example, to set 30 minutes: `n`t`t.\Set-DatabaseTimeout 1800"
    exit
}

$c = Get-Credential

try
{
    # Create a proxy for the Admin web service.
    $svcAdminProxy = New-WebServiceProxy -uri $svcAdminUrl # -credential $c

    $svcAdminProxy.SetDatabaseTimeout($timeoutType, $secTimeout) 
}
catch [System.Web.Services.Protocols.SoapException]
{
    Write-Host "A SoapException occurred."
    $runtimeErr = $true
}
catch [System.Net.WebException]
{
    Write-Host "A WebException occurred."
    $runtimeErr = $true
}
catch 
{
    Write-Host "An error occurred."
    $runtimeErr = $true
}
finally
{
    if (-not $runtimeErr)
    {
        Write-Host "Success! Set the core SQL database timeout value to $secTimeout seconds."
    }
}

Voir aussi

Référence

Admin classe

Admin - Membres

WebSvcAdmin - Espace de noms