Crea una copia completa di un dashboard esistente, inclusi tutti i grafici, segmenti e permessi


La mutazione copyDashboard crea una copia completa di un dashboard esistente, inclusi tutti i grafici, segmenti dei grafici, valori e permessi degli utenti. Questa operazione esegue una copia profonda con nuovi identificatori unici per tutti gli elementi copiati.

Esempio di Base

Crea una copia di un dashboard con un titolo personalizzato:

mutation CopyDashboard {
  copyDashboard(input: {
    dashboardId: "dashboard_123"
    title: "Q4 Sales Dashboard Copy"
  }) {
    id
    title
    createdAt
    charts {
      id
      title
      chartType
    }
    dashboardUsers {
      id
      role
      user {
        id
        email
      }
    }
  }
}

Esempio Avanzato

Copia un dashboard senza specificare un titolo (aggiunge automaticamente "(Copia)"):

mutation CopyDashboardAuto {
  copyDashboard(input: {
    dashboardId: "dashboard_456"
  }) {
    id
    uid
    title
    createdBy {
      id
      email
    }
    company {
      id
      name
    }
    charts {
      id
      title
      chartType
      position
      chartSegments {
        id
        title
        formula
        chartValues {
          id
          value
        }
      }
    }
    dashboardUsers {
      id
      role
      user {
        id
        email
        fullName
      }
    }
    createdAt
    updatedAt
  }
}

Parametri di Input

CopyDashboardInput

Parametro Tipo Richiesto Descrizione
dashboardId String! ✅ Sì ID del dashboard da copiare
title String No Titolo personalizzato per il dashboard copiato. Se non fornito, aggiunge "(Copia)" al titolo originale

Campi di Risposta

Risposta del Dashboard

La mutazione restituisce un oggetto Dashboard completo con tutti i dati copiati:

Campo Tipo Descrizione
id String! Identificatore unico per il nuovo dashboard
uid String! Identificatore unico utilizzato per il routing URL
title String! Titolo del dashboard copiato
createdBy User! L'utente che ha eseguito l'operazione di copia
company Company! L'azienda a cui appartiene il dashboard (stesso dell'originale)
project Project Associazione al progetto (stesso dell'originale, se presente)
charts [Chart!]! Tutti i grafici copiati dal dashboard originale
dashboardUsers [DashboardUser!]! Permessi utente copiati dall'originale (escludendo l'utente che copia)
createdAt DateTime! Quando è stata creata la copia
updatedAt DateTime! Quando è stata modificata l'ultima volta la copia

Comportamento di Copia del Dashboard

Processo di Copia Profonda

L'operazione copyDashboard esegue una copia profonda completa, inclusi:

  1. Metadati del Dashboard

    • Crea un nuovo dashboard con un nuovo ID e UID
    • Copia il titolo (o aggiunge "(Copia)" se non c'è un titolo personalizzato)
    • Imposta il creatore sull'utente che esegue la copia
    • Mantiene le associazioni aziendali e di progetto
  2. Grafici e Struttura

    • Copia tutti i grafici con nuovi ID e UID
    • Preserva i tipi di grafico, titoli e posizioni
    • Mantiene la configurazione e i metadati del grafico
  3. Segmenti e Valori dei Grafici

    • Copia tutti i segmenti dei grafici con nuovi ID e UID
    • Preserva i titoli dei segmenti, formule e configurazioni
    • Copia tutti i valori dei grafici e i loro dati
  4. Riferimenti alle Formule

    • Aggiorna i riferimenti alle formule per utilizzare nuovi UID
    • Mantiene la logica e i calcoli delle formule
    • Garantisce che le formule copiate facciano riferimento ai dati copiati
  5. Permessi Utente

    • Copia tutti i permessi utente del dashboard dall'originale
    • Esclude l'utente che copia (diventa il creatore)
    • Preserva le assegnazioni di ruolo VIEWER e EDITOR

Operazioni Post-Copia

Dopo aver creato la copia, il sistema automaticamente:

  • Pubblica eventi di creazione del dashboard per aggiornamenti in tempo reale
  • Attiva il ricalcolo dei risultati dei grafici per tutti i grafici copiati
  • Aggiorna eventuali sistemi o integrazioni dipendenti

Permessi Richiesti

La copia del dashboard richiede permessi specifici:

Ruolo Può Copiare il Dashboard
Dashboard Creator ✅ Sì
Dashboard EDITOR ✅ Sì
Dashboard VIEWER ❌ No
Utente non-dashboard ❌ No

Controllo dei Permessi: L'utente deve avere accesso EDITOR al dashboard originale attraverso:

  • Essere il creatore originale del dashboard
  • Avere un'assegnazione di ruolo EDITOR esplicita sul dashboard

Risposte di Errore

Dashboard Non Trovato

{
  "errors": [{
    "message": "Dashboard was not found.",
    "extensions": {
      "code": "DASHBOARD_NOT_FOUND"
    }
  }]
}

Permessi Insufficienti

{
  "errors": [{
    "message": "You don't have permission to access this dashboard",
    "extensions": {
      "code": "FORBIDDEN"
    }
  }]
}

Input Non Valido

{
  "errors": [{
    "message": "Dashboard ID is required",
    "extensions": {
      "code": "VALIDATION_ERROR"
    }
  }]
}

Casi d'Uso

1. Dashboard Template

Crea dashboard template che possono essere copiati per nuovi progetti o team:

mutation CreateProjectDashboard {
  copyDashboard(input: {
    dashboardId: "template_dashboard_id"
    title: "Project Alpha - Sales Dashboard"
  }) {
    id
    title
  }
}

2. Backup e Versioning

Crea backup prima di apportare modifiche significative:

mutation BackupDashboard {
  copyDashboard(input: {
    dashboardId: "production_dashboard"
    title: "Production Dashboard - Backup 2024-01-15"
  }) {
    id
    title
    createdAt
  }
}

3. Condivisione tra Team

Copia dashboard tra team mantenendo la struttura dei dati:

mutation ShareDashboardWithTeam {
  copyDashboard(input: {
    dashboardId: "marketing_dashboard"
    title: "Marketing Dashboard - Sales Team Copy"
  }) {
    id
    title
    dashboardUsers {
      role
      user {
        email
      }
    }
  }
}

Migliori Pratiche

Convenzioni di Nominazione

  • Usa titoli descrittivi che indicano lo scopo della copia
  • Includi nomi dei team, date o numeri di versione per chiarezza
  • Evita nomi generici come "Copia" o "Nuovo Dashboard"

Gestione dei Permessi

  • Rivedi i permessi del dashboard copiato dopo la creazione
  • Aggiungi o rimuovi utenti secondo necessità per il caso d'uso specifico
  • Considera se i visualizzatori devono diventare editor sulla copia

Integrità dei Dati

  • Verifica che formule e calcoli funzionino correttamente dopo la copia
  • Controlla che le fonti dati dei grafici siano appropriate per il nuovo contesto
  • Testa eventuali report o integrazioni automatizzate

Considerazioni sulle Prestazioni

  • Copiare grandi dashboard con molti grafici può richiedere diversi secondi
  • Il ricalcolo dei grafici avviene in modo asincrono dopo la copia
  • Considera di copiare durante le ore non di punta per dashboard molto grandi
  • Monitora le risorse di sistema quando copi più dashboard contemporaneamente

Limitazioni

  • Non è possibile copiare dashboard tra aziende diverse
  • I riferimenti alle formule sono limitati ai dati all'interno della stessa azienda
  • Alcune integrazioni esterne potrebbero necessitare di riconfigurazione
  • Permessi o ruoli personalizzati potrebbero necessitare di regolazioni manuali
  • I dati storici e le analisi non vengono preservati nella copia

Risorse Correlate

Assistente AI

Le risposte sono generate utilizzando l'IA e potrebbero contenere errori.

Come posso aiutarti?

Chiedimi qualsiasi cosa su Blue o su questa documentazione.

Invia per inviare • Maiusc+Invio per una nuova riga • ⌘I per aprire