Distribuzione di Project per il Web

Project per il Web è disponibile per l'uso nell'ambiente predefinito e negli ambienti Sandbox e Production Dataverse.

Project per il Web nell'ambiente predefinito consente ai clienti di iniziare rapidamente a creare progetti, gestire le pianificazioni e condividerle con altri utenti dell'organizzazione. Poiché tutti sono membri di questo ambiente per impostazione predefinita, consentire agli utenti di creare e gestire progetti richiede solo l'assegnazione di una licenza di Project.

Per alcune situazioni, è consigliabile distribuire Project in ambienti aggiuntivi. Si tratta di:

  • Personalizzazione di Project in modo che si comporti in modo diverso per business unit diverse

  • Gestione del ciclo di vita dell'applicazione (sviluppo/test/produzione)

Se si vuole eseguire la distribuzione in ambienti aggiuntivi, è necessario creare gli ambienti, distribuire Project e configurare l'accesso per gli utenti.

Altre informazioni sugli ambienti Dataverse.

Distribuzione nell'ambiente predefinito

La distribuzione di Project nell'ambiente predefinito viene eseguita automaticamente. Quando Project per il Web o Roadmap viene usato per la prima volta in un tenant Office 365, viene effettuato il provisioning di un'istanza dataverse predefinita per il tenant e vengono distribuite le soluzioni.

Provisioning di un nuovo ambiente

Nota

Questa sezione si applica solo agli amministratori interessati alla distribuzione di Project in un ambiente non predefinito.

Project è supportato nei tipi di ambienti seguenti:

  • Predefiniti
  • Produzione
  • Sandbox

Per poter eseguire la distribuzione in ambienti sandbox e di produzione, l'ambiente deve essere creato con un database e l'interruttore "Abilita app dynamics 365" deve essere disabilitato.

Interruttore dell'app D365.

Nota

Se si imposta un gruppo di sicurezza per l'ambiente, solo gli utenti di tale gruppo potranno visualizzare tali progetti e altre informazioni sull'ambiente. Inoltre, le attività possono essere assegnate solo agli utenti del gruppo.

Altre informazioni sulla creazione e la gestione degli ambienti.

Distribuzione di Project nell'ambiente

Dopo aver creato l'ambiente, è possibile distribuire Project nell'ambiente dall'interno di Power Platform Amministrazione Center (PPAC).

Aprire la pagina Risorse > delle app Dynamics 365 dal menu di spostamento a sinistra. Installare quindi il pacchetto Project Service Core nell'ambiente.

Pacchetto del progetto.

Nota

Se il pacchetto di installazione non viene visualizzato nell'elenco dei pacchetti disponibili, il tenant non dispone di una licenza di Project o l'ambiente è stato creato con l'interruttore "Abilita app dynamics 365" abilitato.

Altre informazioni sull'uso del PPAC per distribuire le applicazioni.

Configurazione di ruoli e sicurezza

Gli ambienti sandbox e di produzione richiedono una configurazione aggiuntiva. Assegnare i ruoli Project Common e Project User a chiunque creerà progetti nell'ambiente. Assicurarsi inoltre che questi utenti dispongano della licenza di Project appropriata.

Non è necessaria alcuna configurazione aggiuntiva per consentire agli utenti di gestire i progetti nell'ambiente predefinito. Gli utenti nell'ambiente predefinito necessitano solo di una licenza di Project per poter creare e gestire progetti.

Altre informazioni sui ruoli di sicurezza di Project.

Nota

I ruoli correlati al progetto sono disponibili solo dopo la distribuzione del pacchetto Project Service Core nell'ambiente.

Creazione e gestione di progetti in ambienti non predefiniti

Negli ambienti non predefiniti i progetti vengono creati e gestiti tramite Project Power App. Gli utenti con i ruoli Project User e Project Common visualizzeranno il riquadro Dell'app Project nella sezione Office.com - Tutte le app.

Distribuzione di un ambiente in un'area geografica diversa

Tutti gli ambienti verranno creati nell'area geografica in cui è stato inizialmente creato il tenant. Per creare un ambiente in un'area geografica diversa, è necessario contattare il rappresentante o il rivenditore Microsoft per abilitarlo.

Altre informazioni sulla gestione di più ambienti.

Risoluzione dei problemi

Requisiti di sistema

Per eseguire il provisioning e l'uso di Project per il Web, sono previsti prerequisiti di sistema attivati. Questi prerequisiti sono abilitati per impostazione predefinita. I dettagli di questi prerequisiti di sistema sono disponibili nella tabella seguente.

Applicazioni aziendali

È necessario abilitare le applicazioni aziendali seguenti:

Nome applicazione ID applicazione
Dynamics Provision 39e6ea5b-4aa4-4df2-808b-b6b5fb8ada6f
Common Data Service 000000007-0000-0000-c000-00000000000
Microsoft Flow 7df0a125-d3be-4c96-aa54-591f83ff541c
Microsoft PowerApps 475226c6-020e-4fb2-8a90-7a972cbfc1d4
Amministrazione online di Dynamics CRM 637fcc9f-4a9b-4aaa-8713-a2a3cfda1505
Project Online f53895d3-095d-408f-8e93-8f94b391404e

Verifica dello stato delle applicazioni aziendali

Per verificare se le applicazioni aziendali necessarie sono abilitate, seguire questa procedura:

  1. Accedere a come amministratore del tenant usando https://aad.portal.azure.com/

  2. Selezionare Applicazioni aziendali. Viene visualizzata la schermata Applicazioni aziendali .

    Schermata Applicazioni aziendali.

  3. Nell'elenco a discesa Tipo di applicazione scegliere Tutte le applicazioni e selezionare Applica.

    Schermata in cui viene scelto il valore Tutte le applicazioni.

  4. Usare la casella di testo visualizzata qui e cercare l'ID applicazione elencato nella tabella. Ad esempio, 39e6ea5b-4aa4-4df2-808b-b6b5fb8ada6f. L'applicazione Dynamics Provision viene visualizzata nel riquadro dei risultati.

    Schermata in cui viene visualizzata la casella di testo per l'ID applicazione da immettere.

  5. Selezionare Dynamics Provision. Verrà visualizzata la schermata Dynamics Provision .

    Schermata Dynamics Provision.

  6. Selezionare Proprietà nel riquadro sinistro.

    Schermata in cui viene visualizzata l'opzione Proprietà per Dynamics Provision.

  7. Assicurarsi che Abilitato per l'accesso degli utenti sia impostato su .

    Schermata in cui l'utente garantisce che l'accesso utente per Dynamics Provision sia abilitato.

  8. Ripetere i passaggi da 1 a 7 per ognuna delle applicazioni aziendali elencate in precedenza.

Verifica dello stato delle applicazioni aziendali necessarie tramite Azure Active Directory PowerShell per Graph

Per gli amministratori che preferiscono usare Azure Active Directory PowerShell per Graph anziché i passaggi manuali precedenti, possono usare lo script seguente per verificare se l'elenco precedente di applicazioni è abilitato. Verifica inoltre che siano presenti le app aziendali necessarie e che la proprietà AppRoleAssignmentRequired sia impostata correttamente:

Connect-AzureAd

$ProjectRequiredApps = Get-AzureADServicePrincipal -Filter " 
		                    AppId    eq '00000007-0000-0000-c000-000000000000'   
		                    or AppId eq '475226c6-020e-4fb2-8a90-7a972cbfc1d4'  
		                    or AppId eq '637fcc9f-4a9b-4aaa-8713-a2a3cfda1505' 
		                    or AppId eq '7df0a125-d3be-4c96-aa54-591f83ff541c' 
		                    or AppId eq '39e6ea5b-4aa4-4df2-808b-b6b5fb8ada6f' 
		                    or AppId eq 'f53895d3-095d-408f-8e93-8f94b391404e'
		                    "
		
$ProjectRequiredApps | Select DisplayName, AppID, ObjectID, AccountEnabled, AppRoleAssignmentRequired, ReplyURLs | ft
		
#Check that all required Enterprise Apps are present. Create hashtable to check that app exists and if so remove from list. Entries left behind means it's missing.  
[hashtable]$EntApps = [ordered]@{"Dataverse"                          = "00000007-0000-0000-c000-000000000000"
                                 "Microsoft Flow Service"             = "7df0a125-d3be-4c96-aa54-591f83ff541c"
                                 "Dynamics Provision"                 = "39e6ea5b-4aa4-4df2-808b-b6b5fb8ada6f"
                                 "Dynamics CRM Online Administration" = "637fcc9f-4a9b-4aaa-8713-a2a3cfda1505"
                                 "PowerApps Service"                  = "475226c6-020e-4fb2-8a90-7a972cbfc1d4"
                                 "Portfolios"                         = "f53895d3-095d-408f-8e93-8f94b391404e"
                                 }

Foreach ($App in $ProjectRequiredApps) #Remove from hashtable if app exist. 
{
    If ($EntApps.Item($App.DisplayName)) 
    {
        $EntApps.Remove($App.DisplayName)
    }
}

If ($EntApps.Count -gt 0)
{
   Write-Host "Check#1: One or more required Enterprise Apps are missing." -ForegroundColor Red
   Write-Host "Please check that you have 1 or more of the following subscriptions: Project Plan 1, Project Plan 3 or Project Plan 5." -ForegroundColor Red
   $EntApps | ft -a 
}
else
{
    Write-Host "Check#1: All required Enterprise Apps are present." -ForegroundColor Yellow 
}


#Check that required apps are enabled (AccountEnabled=True) if not display message to enable the required Enterprise Apps.
If ($ProjectRequiredApps | ? {$_.AccountEnabled -eq $false}) 
{ 
	Write-Host "Check#2: The following required AAD Enterprise App is disabled." 
	Write-Host "Instructions on how to enable the required app via Azure Active Directory Admin Center are at: https://learn.microsoft.com/project-for-the-web/deploying-project" -ForegroundColor Red
	Write-Host "If you prefer using Powershell, for each App in the list use the Powershell cmdlet ""Set-AzureADServicePrincipal"" to enable the app." -ForegroundColor Red
	Write-Host "Example:`n" -ForegroundColor Red
	Write-Host "    Set-AzureADServicePrincipal -ObjectId "“ObjectId GUID from below output."”-AccountEnabled `$true" -ForegroundColor Red
	Write-Host "`nMore info on the cmdlet ""Set-AzureADServicePrincipal can be found"" at: https://learn.microsoft.com/powershell/module/azuread/set-azureadserviceprincipal" -ForegroundColor Red
    $ProjectRequiredApps | Select DisplayName, AppID, ObjectID, AccountEnabled | ? {$_.AccountEnabled -eq $false} | ft
} 
Else 
{ 
	Write-Host "Check#2: All required Enterprise Apps are enabled." -ForegroundColor Yellow 
}


#Check that AppRoleAssignmentRequired for all required apps is set to False (AppRoleAssignmentRequired=False).
If ($ProjectRequiredApps | ? {$_.AppRoleAssignmentRequired -eq $true}) 
{ 
	Write-Host "Check#3: The AppRoleAssignmentRequired property for the specified Enterprise App is set to True." -ForegroundColor Red
	Write-Host "Out of box this setting should be set to False. If set to True, it can prevent Project for the Web from working correctly." -ForegroundColor Red
	Write-Host "This setting can only be modified via Powershell, for each App in the list use the Powershell cmdlet ""Set-AzureADServicePrincipal"" to change the AppRoleAssignmentRequired to False." -ForegroundColor Red
	Write-Host "Example:`n" -ForegroundColor Red
	Write-Host "    Set-AzureADServicePrincipal -ObjectId "“ObjectId GUID from below output."”-AppRoleAssignmentRequired `$false" -ForegroundColor Red
	Write-Host "`nMore info on the cmdlet ""Set-AzureADServicePrincipal can be found"" at: https://learn.microsoft.com/powershell/module/azuread/set-azureadserviceprincipal" -ForegroundColor Red
	$ProjectRequiredApps | Select DisplayName, AppID, ObjectID, AccountEnabled, AppRoleAssignmentRequired | ? {$_.AppRoleAssignmentRequired -eq $true} | ft -a
} 
Else 
{ 
	Write-Host "Check#3: The AppRoleAssignmentRequired property for all required Enterprise Applications are set correctly." -ForegroundColor Yellow 
}