Rimuovi campi personalizzati dai progetti con una corretta pulizia e effetti a cascata


Elimina un Campo Personalizzato

Rimuove permanentemente un campo personalizzato da un progetto insieme a tutti i dati, valori e configurazioni associati. Questa operazione non può essere annullata e influenzerà tutti i record che utilizzano questo campo.

Esempio Base

mutation DeleteCustomField {
  deleteCustomField(id: "field_abc123")
}

Esempio Avanzato

mutation DeleteCustomFieldWithResponse {
  deleteCustomField(id: "field_abc123")
}

Parametri di Input

Parametro Tipo Richiesto Descrizione
id String! ✅ Sì L'identificatore unico del campo personalizzato da eliminare

Campi di Risposta

Campo Tipo Descrizione
deleteCustomField Boolean! Restituisce sempre true quando l'eliminazione ha successo

Permessi Richiesti

Solo i proprietari del progetto e gli amministratori possono eliminare campi personalizzati.

Ruolo Può Eliminare Campi Personalizzati
OWNER ✅ Sì
ADMIN ✅ Sì
MEMBER ❌ No
CLIENT ❌ No

Effetti a Cascata

Quando un campo personalizzato viene eliminato, le seguenti operazioni di pulizia avvengono automaticamente:

Pulizia Dati

  • Valori del campo personalizzato - Tutti i valori per questo campo vengono rimossi da tutti i record
  • Opzioni del campo - Tutte le opzioni a discesa e configurazioni vengono eliminate
  • Storico attività - Tutti i record di attività relativi a questo campo vengono rimossi
  • Configurazioni di ricerca - Qualsiasi riferimento a campi di ricerca viene pulito

Gestione Speciale per Campi Pulsante

Se il campo eliminato è di tipo BUTTON, si verifica una pulizia aggiuntiva:

  • Automazioni - Tutte le automazioni attivate da questo pulsante vengono eliminate
  • Storico automazione - L'attività di automazione correlata viene rimossa

Aggiornamenti in Tempo Reale

  • Grafici - I grafici del progetto sono contrassegnati per l'aggiornamento per riflettere le modifiche
  • Formule - Tutti i campi formula nel progetto vengono ricalcolati
  • Tracciamento del tempo - I calcoli della durata del tempo vengono aggiornati
  • Sottoscrizioni - Le notifiche in tempo reale vengono inviate ai client connessi
  • Webhook - I webhook di integrazione vengono attivati con eventi di eliminazione

Risposte di Errore

Campo Personalizzato Non Trovato

{
  "errors": [{
    "message": "Custom field was not found.",
    "extensions": {
      "code": "CUSTOM_FIELD_NOT_FOUND"
    }
  }]
}

Permessi Insufficienti

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

Note Importanti

Eliminazione Permanente

  • Nessun annullamento - I campi personalizzati eliminati non possono essere recuperati
  • Perdita di dati - Tutti i valori dei campi in tutti i record vengono rimossi permanentemente
  • Effetto immediato - Le modifiche hanno effetto immediato su tutti gli utenti del progetto

Considerazioni sulle Prestazioni

  • Progetti grandi - L'eliminazione potrebbe richiedere più tempo in progetti con molti record
  • Ricalcolo delle formule - I progetti con formule complesse potrebbero subire brevi ritardi di elaborazione
  • Aggiornamenti dei grafici - I grafici della dashboard si aggiorneranno per riflettere le modifiche

Migliori Pratiche

  1. Backup dei dati - Esporta i valori dei campi importanti prima dell'eliminazione
  2. Comunica le modifiche - Notifica i membri del team prima di eliminare i campi
  3. Controlla le dipendenze - Verifica che nessuna automazione o formula dipenda dal campo
  4. Rivedi i report - Aggiorna eventuali report che fanno riferimento al campo eliminato

Operazioni Correlate

Casi d'Uso Comuni

Rimozione di Campi Non Utilizzati

# First, list fields to identify unused ones
query ListCustomFields {
  customFields(projectId: "project_123") {
    id
    name
    type
    createdAt
    # Check usage in records
  }
}

# Then delete the unused field
mutation DeleteUnusedField {
  deleteCustomField(id: "field_to_remove")
}

Pulizia di Campi di Test

# Remove fields created during testing
mutation CleanupTestFields {
  field1: deleteCustomField(id: "test_field_1")
  field2: deleteCustomField(id: "test_field_2")
  field3: deleteCustomField(id: "test_field_3")
}

Ristrutturazione dei Campi di Progetto

# When reorganizing field structure
mutation RestructureFields {
  # Delete old fields
  deleteOldPriorityField: deleteCustomField(id: "old_priority_field")
  deleteOldStatusField: deleteCustomField(id: "old_status_field")
  
  # Note: Create new fields in separate mutations
}

Eventi Webhook

Quando un campo personalizzato viene eliminato, viene attivato il seguente evento webhook:

{
  "event": "CUSTOM_FIELD_DELETED",
  "projectId": "project_123",
  "timestamp": "2024-01-15T10:30:00Z",
  "previousValue": {
    "id": "field_abc123",
    "name": "Priority Level",
    "type": "SELECT_SINGLE",
    "projectId": "project_123"
  },
  "currentValue": null
}

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