snapshot of https://github.com/twentyhq/twenty.git (main, 2026-09-17; blobs > 131072B omitted)
Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 2s

This commit is contained in:
upstream-mirror
2026-09-17 23:28:13 +05:00
commit e7da97194a
32688 changed files with 4208681 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
---
title: Agenți AI
description: Integrează capabilități AI direct în fluxurile de automatizare.
---
## Prezentare generală
Integrează capabilități AI direct în fluxurile de automatizare pentru procesarea inteligentă a datelor și luarea deciziilor.
## Capabilități
| Funcționalitate | Descriere |
| --------------------------- | ---------------------------------------------------------- |
| **Acțiuni AI** | Adaugă pași bazați pe AI în orice flux de lucru |
| **Îmbogățirea Datelor** | Îmbunătățește automat înregistrările cu date externe |
| **Clasificare** | Categorizează înregistrările pe baza analizei conținutului |
| **Rezumare** | Generează rezumate din câmpuri de text |
| **Prompturi personalizate** | Definește exact modul în care AI procesează datele |
## Cazuri de utilizare
* **Punctare leaduri**: Atribuie automat un scor și prioritizează leadurile primite
* **Curățare date**: Standardizează numele companiilor și informațiile de contact
* **Ciorne de email**: Generează ciorne de email de urmărire pe baza notițelor din întâlniri
* **Rutarea înregistrărilor**: Atribuie înregistrările membrului potrivit al echipei pe baza conținutului
## Conexe
* [Prezentare generală a fluxurilor de lucru](/l/ro/user-guide/workflows/overview) — elemente de bază ale automatizării
* [Permisiuni AI](/l/ro/user-guide/ai/capabilities/permissions-access-control) — controlul accesului pentru agenți AI

View File

@@ -0,0 +1,37 @@
---
title: Chatbot IA
description: Un asistent inteligent care te ajută să interacționezi cu datele tale din CRM folosind limbaj natural.
---
## Prezentare generală
Pune intrebari in limba naturala si cautarile asistentilor si explica datele dumneavoastra CRM.
## Capabilități
| Funcționalitate | Descriere |
| -------------------------------- | -------------------------------------------------------------------------------------------------- |
| **Interogări în limbaj natural** | Pune întrebări în engleză simplă în loc să creezi filtre |
| **Acces complet la date** | Interoghează înregistrări, relații și indicatori în întregul tău spațiu de lucru |
| **Contextul paginii** | Fă referire la "această companie" sau "această oportunitate" în funcție de vizualizarea ta curentă |
| **Conversațional** | Întrebările de continuare păstrează contextul din interogările anterioare |
## Exemple de interacțiuni
### Găsirea înregistrărilor
* "Arată-mi toate oportunitățile peste 50.000 $"
* "Găsește contactele cărora nu le-am trimis email de 2 săptămâni"
* "Listează companiile din industria sănătății"
### Obținerea de informații
* "Care este valoarea totală a pipeline-ului meu?"
* "Câte tranzacții s-au încheiat luna trecută?"
* "Care etapă are cele mai multe oportunități blocate?"
### Utilizarea contextului paginii
* "Rezumă interacțiunile mele cu această persoană" (pe o pagină de contact)
* "Ce oportunități sunt asociate acestei companii?" (pe o pagină de companie)
* "Când a fost actualizată ultima dată această oportunitate?" (pe o pagină de oportunitate)

View File

@@ -0,0 +1,137 @@
---
title: Server MCP
description: Conectați asistenți AI la spațiul dvs. de lucru Twenty folosind Model Context Protocol.
---
Twenty expune un server [MCP](https://modelcontextprotocol.io/) astfel încât asistenții AI — Claude Desktop, Claude Code, Cursor, ChatGPT și alții — să poată citi și scrie datele tale din CRM prin limbaj natural.
Folosește **URL-ul spațiului de lucru** (URL-ul pe care îl folosești pentru a accesa Twenty) drept punct final MCP. Pe Twenty Cloud, URL-ul spațiului tău de lucru poate fi `https://{mycompany}.twenty.com` sau un domeniu personalizat. Serverul este disponibil la:
| Mediu | Punct final MCP |
| -------------------- | ------------------------------------------------------------------------------ |
| **Cloud** | `https://{your-workspace-url}/mcp` (de ex. `https://mycompany.twenty.com/mcp`) |
| **Găzduire proprie** | `https://{your-domain}/mcp` |
## Metode de autentificare
Ai două moduri de a-ți autentifica clientul MCP: **OAuth** (recomandat) sau **Cheie API**.
### Opțiunea A — OAuth (Recomandat)
Cu OAuth, clientul tău MCP deschide o fereastră de browser pentru a te autentifica. Nicio informație secretă nu este stocată în fișierele de configurare, iar tokenurile se reîmprospătează automat.
<Note>
OAuth necesită un client MCP care suportă [specificația MCP Authorization](https://modelcontextprotocol.io/specification/2025-03-26/basic/authorization). Claude Desktop, Claude Code, Cursor și ChatGPT o suportă.
</Note>
Adaugă asta în configurația clientului tău MCP, înlocuind `{your-workspace-url}` cu gazda spațiului tău de lucru (de ex. `mycompany.twenty.com`):
```json
{
"mcpServers": {
"twenty": {
"type": "streamable-http",
"url": "https://{your-workspace-url}/mcp"
}
}
}
```
Atât — nu este necesară nicio cheie API. Când clientul se conectează pentru prima dată, acesta va:
1. Va descoperi metadatele OAuth ale Twenty prin `/.well-known/oauth-protected-resource` și `/.well-known/oauth-authorization-server`
2. Se va înregistra ca un client OAuth prin înregistrare dinamică a clientului (RFC 7591)
3. Îți va deschide browserul pentru a autoriza accesul
4. Va primi tokenurile și se va conecta la serverul MCP
Conexiunile ulterioare reutilizează tokenurile stocate și le reîmprospătează automat.
### Opțiunea B — Cheie API
Dacă clientul tău MCP nu suportă OAuth sau preferi acreditări statice, furnizează o cheie API în antetul `Authorization`:
```json
{
"mcpServers": {
"twenty": {
"type": "streamable-http",
"url": "https://{your-workspace-url}/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
```
<Warning>
Cheia ta API oferă acces la datele spațiului de lucru. Ține-o în afara controlului versiunilor și a dotfiles partajate.
</Warning>
Pentru a crea o cheie API, mergi la **Settings → MCP & APIs → API → + Create key**. Vezi [API-uri](/l/ro/developers/extend/api#create-an-api-key) pentru detalii.
## Pornire rapidă
### 1. Copiază configurația
Mergi la **Settings → MCP & APIs → MCP** în Twenty. Alege metoda de autentificare (OAuth sau Cheie API), copiază fragmentul JSON (va folosi deja URL-ul spațiului tău de lucru) și lipește-l în fișierul de configurare al clientului tău MCP.
| Client | Locația fișierului de configurare |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Claude Desktop** | `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) sau `%APPDATA%\Claude\claude_desktop_config.json` (Windows) |
| **Claude Code** | `~/.claude.json` (utilizator) sau `.mcp.json` (proiect) |
| **Cursor** | `.cursor/mcp.json` în proiectul tău sau `~/.cursor/mcp.json` global |
| **ChatGPT** | Activează Modul pentru dezvoltatori în **Settings → Apps & Connectors → Advanced settings**, apoi folosește **Create** în **Settings → Apps & Connectors** pentru a adăuga serverul MCP |
### 2. Conectează-te
Repornește clientul tău MCP (sau reîncarcă configurația). Dacă folosești OAuth, vei fi redirecționat către Twenty pentru a autoriza accesul. Dacă folosești o cheie API, conexiunea este imediată.
### 3. Începe să-l folosești
Roagă-ți asistentul AI să interacționeze cu CRM-ul tău:
* *"Arată-mi cele 5 companii create cel mai recent"*
* *"Creează o persoană nouă numită Jane Doe la Acme Corp"*
* *"Găsește toate oportunitățile deschise cu o valoare mai mare de $10k"*
## Instrumente disponibile
După conectare, serverul MCP expune instrumente care oglindesc API-ul Twenty. Fluxul de lucru recomandat este:
1. **`learn_tools`** — obține schema de intrare pentru instrumente specifice
2. **`execute_tool`** — rulează un instrument
Nu este nevoie să reții numele instrumentelor. Întreabă-ți asistentul AI ce poate face și va apela `learn_tools` automat.
## Permisiuni
Conexiunile MCP moștenesc permisiunile utilizatorului autentificat (OAuth) sau rolul atribuit cheii API. Pentru a restricționa ce poate face serverul MCP:
* **OAuth**: Se aplică rolul utilizatorului din spațiul de lucru.
* **Cheie API**: Atribuie un rol cheii API în **Settings → Members → Roles**. Vezi [Permisiuni](/l/ro/user-guide/permissions-access/capabilities/permissions).
## Configurație pentru auto-găzduire
Pentru instanțele auto-găzduite, înlocuiește `{your-workspace-url}` cu URL-ul serverului tău. Asigură-te că `SERVER_URL` din mediul tău corespunde URL-ului public al instanței tale Twenty — acesta este folosit pentru a genera metadatele de descoperire OAuth.
```bash
SERVER_URL=https://twenty.yourcompany.com
```
Punctul final MCP, punctele finale OAuth și metadatele de descoperire derivă toate din această valoare.
## Depanare
**Erori "Unauthorized" sau 401**
* OAuth: reautorizează ștergând tokenurile stocate din clientul tău MCP și reconectează-te.
* Cheie API: verifică dacă cheia este validă și nu a expirat. Regenereaz-o dacă este necesar.
**Fluxul OAuth nu deschide un browser**
* Asigură-te că clientul tău MCP suportă MCP Authorization. Dacă nu, revino la metoda cu Cheie API.
**Timeout de conexiune**
* Confirmă că URL-ul punctului final MCP este accesibil de pe calculatorul tău. Pentru instanțele auto-găzduite, verifică faptul că serverul rulează și că `SERVER_URL` este setat corect.

View File

@@ -0,0 +1,35 @@
---
title: Permisiuni și controlul accesului
description: Controlați la ce pot avea acces și ce pot modifica agenții AI în spațiul dvs. de lucru.
---
## Prezentare generală
Agenții AI respectă structura de permisiuni existentă. Acest lucru este deosebit de important pentru echipele care doresc să controleze exact la ce pot avea acces sau ce pot modifica procesele AI automatizate în spațiul lor de lucru.
## Atribuiți un Rol unui Agent AI
1. Accesați **Setări → Membri → Roluri**
2. Faceți clic pe rolul pe care doriți să-l atribuiți
3. Deschideți fila **Atribuire**
4. În **Agenți AI**, faceți clic pe **+ Atribuiți agentului AI**
5. Selectați agentul AI din listă
6. Confirmați atribuirea
## De ce să Atribuiți Roluri Agenților AI?
| Beneficiu | Descriere |
| ------------------ | ------------------------------------------------------------- |
| **Securitate** | Limitați ce date pot accesa sau modifica agenții AI |
| **Conformitate** | Asigurați-vă că AI prelucrează doar datele de care are nevoie |
| **Control** | Preveniți acțiunile neintenționate ale automatizărilor AI |
| **Auditabilitate** | Urmăriți ce acțiuni au fost efectuate de fiecare agent |
<Note>
Pentru agenții AI care rulează în cadrul fluxurilor de lucru, atribuirea unui Rol asigură că agentul nu poate accesa sau modifica date în afara scopului său — chiar dacă fluxul de lucru are permisiuni mai extinse.
</Note>
## Articole conexe
* [Permisiuni](/l/ro/user-guide/permissions-access/capabilities/permissions) — informații detaliate despre crearea și gestionarea rolurilor
* [Agenți AI](/l/ro/user-guide/ai/capabilities/ai-agents) — capabilități AI în fluxuri de lucru

View File

@@ -0,0 +1,31 @@
---
title: Întrebări frecvente despre IA
description: Întrebări frecvente despre funcționalitățile IA din Twenty.
---
<AccordionGroup>
<Accordion title="Ce capabilități IA sunt disponibile?">
Cele două capabilități principale ale IA sunt:
1. **Chatbot IA**: Un asistent conștient de context care poate accesa datele dvs. din Twenty și vă poate ajuta cu întrebări
2. **Agenți IA în fluxuri de lucru**: Automatizare inteligentă care poate procesa date, lua decizii și executa sarcini în cadrul fluxurilor dvs. de lucru
</Accordion>
<Accordion title="Au agenții IA acces la toate datele mele?">
Agenții AI operează în cadrul sistemului de permisiuni. Puteți atribui agenților IA roluri specifice în **Settings → Members → Roles**, oferindu-vă control total asupra datelor la care pot avea acces și a acțiunilor pe care le pot efectua.
</Accordion>
<Accordion title="Cum funcționează creditele IA?">
Acțiunile IA consumă credite pentru fluxuri de lucru în funcție de complexitatea sarcinii și de modelul IA utilizat.
</Accordion>
<Accordion title="Pot folosi propriile modele IA?">
În cloud, poți utiliza doar modelele IA furnizate de Twenty. Pe instanța ta self‑hosted, poți utiliza propriile modele IA după obținerea unei licențe Organization.
</Accordion>
<Accordion title="Nu văd un rol atribuit unui agent AI, unde este?">
În mod implicit, lista de roluri este filtrată pentru rolurile care pot fi atribuite membrilor spațiului de lucru. Dacă un rol poate fi atribuit doar agentului AI, trebuie să schimbi filtrul pentru a include rolurile agentului AI.
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,58 @@
---
title: AI
description: Funcționalități alimentate de IA în Twenty.
---
<Frame>
<img src="/images/user-guide/workflows/robot.png" alt="AI" />
</Frame>
## Funcționalități
În prezent, Twenty oferă:
### 1. Chatbot IA
Un asistent conversațional care îți înțelege contextul și are acces la toate datele tale din Twenty.
**Capabilități cheie:**
* **Acces complet la date**: Interoghează orice înregistrare, relație sau metrică din spațiul tău de lucru
* **Conștientizare a contextului paginii**: Fă referire la "această companie" sau "această oportunitate" în funcție de locul în care te afli în Twenty
* **Limbaj natural**: Pune întrebări și primește răspunsuri fără a naviga prin meniuri
**Exemple de prompturi:**
* "Ce oportunități se încheie luna aceasta?"
* "Care tranzacții au fost în Negociere de mai mult de 30 de zile?"
* "Rezumă interacțiunile mele cu această persoană"
### 2. Agenți IA în fluxuri de lucru
Extinde-ți fluxurile de lucru cu acțiuni bazate pe IA și agenți autonomi.
**Capabilități cheie:**
* **Acțiuni IA**: Folosește IA pentru a îmbogăți datele, a clasifica înregistrările, a genera rezumate și altele
* **Agenți autonomi**: Permite agenților să execute sarcini în mai mulți pași în cadrul unui flux de lucru
* **Prompturi personalizate**: Definește exact cum ar trebui IA să îți proceseze datele
**Cazuri de utilizare:**
* Categorizează automat lead-urile primite
* Îmbogățește datele companiei din surse publice
* Generează ciorne de email de urmărire pe baza notițelor din întâlniri
* Atribuie scor oportunităților pe baza tiparelor de implicare
## Permisiuni și control al accesului
Agenții IA sunt gestionați prin sistemul de permisiuni existent:
1. Accesați **Setări → Membri → Roluri**
2. Configurează la ce date poate avea acces fiecare agent IA
3. Stabilește permisiuni de citire/scriere pentru fiecare obiect
Astfel, agenții IA respectă politicile tale de guvernanță a datelor și accesează doar ceea ce le este necesar.
* Urmărește-ne pe [GitHub](https://github.com/twentyhq/twenty) pentru actualizări privind dezvoltarea
* Alătură-te serverului nostru pe [Discord](https://discord.gg/UfGNZJfAG6) pentru a împărtăși feedback și solicitări de funcționalități

View File

@@ -0,0 +1,74 @@
---
title: Credite
description: Un singur sold simplu care alimentează fluxurile dvs. de lucru, agenții AI și chatul AI — cât valorează un credit, cât de departe ajunge și cum să îl gestionați.
---
## Ce sunt creditele?
Creditele reprezintă un singur sold care alimentează tot ceea ce rulăm în numele dvs. și are un cost real: **automatizări ale fluxurilor de lucru**, **agenți AI** și **chatul AI**. În loc să jonglați cu cote separate pentru „rulări de automatizare” și „jetoane AI”, aveți un singur sold simplu de urmărit.
**1 credit = $1 de utilizare.** Un credit este doar un dolar de lucru, astfel încât soldul dvs. este ușor de înțeles — fără unități abstracte de convertit.
## Cât de departe ajunge un credit?
Costul variază în funcție de volumul de lucru. Automatizările de zi cu zi și mesajele AI rapide costă o fracțiune foarte mică dintr-un credit; sarcinile mari, cu mai mulți pași, executate de agenți AI costă mai mult. Iată o aproximare:
| Ce faceți | Cost aproximativ | Ce înseamnă asta |
| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------ | ------------------------------- |
| Rulează un pas standard de flux de lucru (căutare, crează sau actualizează înregistrări) sau declanșează o funcție logică a unei aplicații | $0.0001 | **10.000 de rulări per credit** |
| Apelați un API extern sau rulați un nod de cod | O mică fracțiune dintr-un credit | Mii per credit |
| Trimiteți un mesaj AI rapid sau un pas AI simplu | O fracțiune de cent | Sute per credit |
| Rulați o sarcină mare pentru un agent AI (de ex. „configurează 10 obiecte din spațiul de lucru”) | Poate ajunge la **~$1 sau mai mult** | Câteva per credit |
| Rulați o căutare web AI | Un cost fix pe căutare | Sute de căutări per credit |
<Note>
Pentru majoritatea echipelor, automatizările standard sunt practic gratuite — soldul va începe să scadă vizibil doar atunci când vă bazați pe funcțiile AI sau rulați noduri de cod intensive. Asta este intenția: creditele incluse sunt gândite astfel încât să puteți construi fără să urmăriți constant un contor.
</Note>
<Note>
Nu toate aplicațiile percep taxe pentru rulările lor. Apelează Înregistrator și Last Contact reacționează la fiecare e-mail și eveniment calendar importat în spațiul de lucru, astfel încât funcția lor logică rulează gratuit. Totuși, vi se percep în continuare taxe pentru activitatea măsurată pe care o realizează, cum ar fi minutele de convorbiri înregistrate.
</Note>
## Cum este contorizată utilizarea AI
Când o acțiune apelează un model AI, măsurăm exact jetoanele utilizate și le tarifăm la **tarifele publicate de furnizorul modelului**, apoi convertim suma respectivă în dolari direct în credite — astfel încât ceea ce cheltuiți să reflecte costul real al execuției, nu un tarif intern majorat. Un mesaj scurt în chat costă o fracțiune de cent. O sarcină de agent mare - să zicem, configurarea a 10 obiecte de spațiu de lucru - face multe apeluri de model peste un context în creștere, astfel încât să poată ajunge la un dolar sau mai mult. Plătiți pentru ceea ce folosiți efectiv, până la nivel de jeton.
Costul variază în funcție de model: un model ușor este considerabil mai ieftin pe mesaj decât un model de raționare de vârf. Puteți vedea defalcarea pe acțiuni — inclusiv ce model a fost folosit — în **Setări → Facturare**.
## Ce este inclus
Fiecare abonament include credite, iar cantitatea depinde de **ciclul de facturare**, nu de plan:
| Ciclu de facturare | Credite incluse | Utilizare echivalentă |
| ------------------ | --------------- | -------------------------------- |
| Lunar | 5 / lună | ~$5 de utilizare în fiecare lună |
| Anual | 50 / an | ~$50 de utilizare în fiecare an |
Aceste credite sunt concepute pentru a acoperi confortabil automatizările de zi cu zi. Cinci credite acoperă zeci de mii de etape standard de automatizare sau sute de mesaje rapide de interfață – deși o mână de mari, sarcinile de agent în mai multe etape le pot folosi mai repede. Puteți suplimenta în orice moment (vedeți mai jos).
## Reportare de credite
Creditele neutilizate se reportează automat în următoarea perioadă de facturare.
* **Cap**: Rollover este plafonat la alocarea completă a unei perioade, deci nu vei putea reporta niciodată mai mult decât oferă ciclul tău de facturare pe perioadă.
* **Vizibilitate**: Când există credite reportate, acestea apar ca o linie separată **Credite reportate** în **Setări → Facturare**, alături de soldul **Total disponibil**.
## Monitorizare utilizare
Urmăriți-vă soldul și destinația acestuia:
1. Accesați **Setări → Facturare**
2. Vedeți **creditele rămase** și **utilizarea pentru perioada curentă**
3. Explorați detalierea pentru a vedea care fluxuri de lucru și acțiuni AI consumă credite — și ce modele au fost utilizate de acțiunile AI
Revizuirea regulată a acestor date face ușoară identificarea din timp a unui flux de lucru intensiv și decizia dacă să îl optimizați sau să suplimentați creditele.
## Aveți nevoie de mai multe credite?
Dacă rămâneți fără credite — sau doriți un buffer înainte de o campanie mare de automatizare — puteți cumpăra oricând pachete suplimentare de credite:
1. Accesați **Setări → Facturare**
2. Faceți clic pe butonul **Creștere**
3. Selectați suma de care aveți nevoie și acceptați modificările
Creditele achiziționate sunt adăugate imediat la soldul disponibil.

View File

@@ -0,0 +1,100 @@
---
title: Planuri tarifare
description: Aflați despre planurile tarifare ale Twenty și cum să comutați între ele.
---
## Prezentare generală
Twenty oferă prețuri flexibile care se potrivesc echipelor de orice dimensiune, fie că preferați găzduirea în cloud sau autogăzduirea.
## Planuri Cloud
### Pro (Cloud)
Pentru echipe pregătite să se extindă:
* Toate funcționalitățile CRM de bază
* Sincronizare email și calendar
* Fluxuri de lucru și automatizări
* Asistență standard
<Note>
Funcționalitățile Premium (SSO, permisiuni la nivel de rând, date privind utilizarea AI și altele) nu sunt incluse în planul Pro.
</Note>
### Organization (Cloud)
Pentru echipe mai mari cu nevoi avansate:
* Tot ce include Pro
* **Funcționalități Premium**: integrare SSO, permisiuni la nivel de rând, date privind utilizarea AI și altele
* Suport prioritar
## Planuri autogăzduite
### Gratuit (Autogăzduit)
Găzduiți Twenty pe propria infrastructură, fără costuri:
* Toate funcționalitățile Pro incluse
* Asistență din partea comunității prin Discord
* Control deplin asupra datelor dumneavoastră
### Organization (Autogăzduit)
Pentru echipe care au nevoie de funcționalități premium în timp ce se autogăzduiesc:
* Toate funcționalitățile Pro
* **Funcționalități Premium**: integrare SSO, permisiuni la nivel de rând, date privind utilizarea AI și altele
* Asistență din partea echipei Twenty
* Fără obligația de a publica codul personalizat ca open-source înainte de distribuire
## Funcționalități premium
Funcționalitățile premium sunt disponibile doar în planurile Organization (Cloud sau Autogăzduit):
* **Integrare SSO**: autentificare unică (Single Sign-On) cu furnizorul dumneavoastră de identitate
* **Permisiuni la nivel de rând**: control de acces granular la nivel de înregistrare
* **Date privind utilizarea AI**: Urmăriți consumul de AI în spațiul de lucru
* **Jurnale de audit**: Verificați ce a făcut fiecare membru al spațiului de lucru
* **Campanii prin email**: Planificați ce emailuri să fie trimise (disponibil în curând)
* **Spații de lucru nelimitate**: Creați câte spații de lucru doriți (numai pentru auto-găzduire)
* **Codul sursă privată**: Nu este necesară publicarea modificărilor la un depozit accesibil publicului (doar prin autogăzduire)
## Schimbarea planurilor
### Faceți upgrade la Organization
1. Accesați **Setări → Facturare → Planuri**
2. Faceți clic pe **Schimbă la Organization**
3. Confirmați upgrade-ul
### Faceți downgrade la Pro
1. Accesați **Setări → Facturare → Planuri**
2. Faceți clic pe **Treceți la Pro**
3. Confirmați retrogradarea
### Treceți la facturarea anuală
1. Accesați **Setări → Facturare**
2. Faceți clic pe **Treceți la anual**
3. Economisiți cu facturarea anuală
### Treceți la facturarea lunară
1. Accesați **Setări → Facturare**
2. Faceți clic pe **Treceți la lunar**
3. Economisiți cu facturarea lunară
## Obțineți o cheie Enterprise pentru Organization (Self-Hosted)
Pentru a utiliza planul Organization (Self-Hosted), trebuie să obțineți o cheie Enterprise:
1. Mergeți la **Setări → Panou Admin → Enterprise**
<img src="/images/user-guide/billing/enterprise-key.png" alt="Cheie Enterprise" />
2. Faceți clic pe **Obțineți cheia Enterprise**
3. Când sunteți redirecționați către Stripe, introduceți detaliile de plată și confirmați
4. Când este afișată cheia Enterprise, lipiți-o în pagina de setări Enterprise și activați licența organizației

View File

@@ -0,0 +1,105 @@
---
title: Întrebări frecvente despre facturare
description: Întrebări frecvente despre prețurile și facturarea Twenty.
---
## Prețuri
<AccordionGroup>
<Accordion title="Pot folosi Twenty gratuit în timp ce găzduiesc pe cont propriu?">
Da, poți folosi Twenty gratuit în timp ce găzduiești pe cont propriu. Veți obține acces la tot ce este inclus în planul Pro (Clou), cu excepția sprijinului din partea echipei noastre de bază. Suportul este accesibil prin comunitatea noastră Discord.
Dacă vrei să găzduiești pe cont propriu și ai nevoie de funcțiile Premium (SSO, permisiuni la nivel de rând și altele), poți alege licența cu plată Organization (Self-Hosted). Aceasta include și asistență din partea echipei Twenty și elimină obligația de a publica codul personalizat ca open-source înainte de distribuire.
</Accordion>
<Accordion title="Care sunt funcțiile Premium?">
Funcțiile Premium sunt disponibile doar în planurile Organization (Cloud sau Self-Hosted):
* **Integrare SSO**: Autentificare unică cu furnizorul tău de identitate
* **Permisiuni la nivel de rând**: Control de acces granular la nivel de înregistrare
* **Date privind utilizarea AI**: Urmăriți consumul de AI în spațiul de lucru
* **Jurnale de audit**: Verifică ce a făcut fiecare membru al spațiului de lucru
* **Campanii de email**: Planifică ce emailuri ar trebui trimise (disponibil în curând)
* **Spații de lucru nelimitate**: Creează câte spații de lucru dorești (numai pentru auto-găzduire)
* **Codul sursă privată**: Nu este necesară publicarea modificărilor la un depozit accesibil publicului (doar prin autogăzduire)
</Accordion>
<Accordion title="Sunt cloudul și organizația auto-găzduită aceleași planuri?">
Oferă aceleași funcții Premium. Totuși, un abonament în cloud nu poate fi folosit pentru implementări autogăzduite. Varianta autogăzduită necesită o cheie Enterprise.
</Accordion>
<Accordion title="Oferiți locuri gratuite pentru utilizatorii care doar vizualizează?">
Nu oferim locuri gratuite. Prețul este per utilizator și fiecare utilizator are nevoie de o licență pentru a accesa Twenty.
</Accordion>
<Accordion title="Unde pot schimba abonamentul meu la planul Organization?">
Poți face acest lucru în `Settings → Billing → Plans`. Apoi, fă clic pe `Schimbă la Organization`.
</Accordion>
<Accordion title="Unde pot schimba abonamentul meu la planul Pro?">
Poți face acest lucru în `Settings → Billing → Plans`. Apoi, fă clic pe `Switch to Pro`.
</Accordion>
<Accordion title="Unde pot schimba abonamentul meu la facturarea anuală?">
Poți face acest lucru în `Setări → Facturare`. Apoi, fă clic pe `Upgrade to yearly`.
</Accordion>
<Accordion title="Unde pot schimba abonamentul meu la facturarea lunară?">
Poți face acest lucru sub `Setări → Facturare`. Apoi, fă clic pe `Downgrade to monthly`.
</Accordion>
<Accordion title="Unde pot vedea utilizarea mea de credite?">
Vei găsi acest lucru sub `Setări → Facturare`.
</Accordion>
<Accordion title="Câte credite de flux de lucru avem?">
Numărul de credite depinde de ciclul tău de facturare, nu de planul tău:
* **Abonamente lunare**: 5 credite pe lună
* **Abonamente anuale**: 50 de credite pe an
</Accordion>
<Accordion title="Cum funcționează consumul de credite de flux de lucru?">
Fiecare acțiune de flux de lucru consumă credite în funcție de complexitatea sa:
* **Operațiuni interne de bază** (cum ar fi căutarea, actualizarea sau crearea de înregistrări) consumă foarte puține credite
* **Operațiunile mai complexe** cum ar fi nodurile de cod și cererile către servicii externe consumă mai multe credite
* **Prompturile AI** consumă, de asemenea, mai multe credite în funcție de utilizare
* **Aplicații** consumă, de asemenea, mai multe credite în mod similar cu nodurile de cod
Creditele sunt retrase în timp real când se execută fluxurile de lucru sau aplicațiile. Poți monitoriza utilizarea ta în **Setări → Facturare** pentru a urmări consumul și creditele rămase.
</Accordion>
<Accordion title="Pot cumpăra mai multe credite de flux de lucru?">
Poți cumpăra credite suplimentare sub `Setări → Facturare`.
</Accordion>
<Accordion title="Pot cumpăra mai multe credite de flux de lucru doar pentru 1 lună?">
Da, mergi la `Settings → Billing`, apasă pe butonul `Increase`, alege câte credite doreşti, şi confirmă. Vor fi aplicate pentru perioada de facturare curentă. Apoi faceţi clic pe butonul `Increase` din nou, schimbaţi valoarea înapoi în original, și confirmă — retrogradarea va fi aplicată începând cu următoarea perioadă de facturare.
</Accordion>
</AccordionGroup>
## Facturare
<AccordionGroup>
<Accordion title="Unde pot gestiona detaliile de facturare?">
Poți face acest lucru sub `Setări → Facturare`.
</Accordion>
<Accordion title="Unde pot actualiza metoda de plată?">
Poți face acest lucru sub `Setări → Facturare`. Apoi, fă clic pe `Vizualizează detaliile de facturare`. Veți putea adăuga o nouă metodă de plată acolo.
</Accordion>
<Accordion title="Unde pot actualiza informațiile de facturare?">
Poți face acest lucru sub `Setări → Facturare`. Apoi, fă clic pe `Vizualizează detaliile de facturare`. Veți putea edita informațiile de facturare acolo.
</Accordion>
<Accordion title="Unde pot accesa facturile mele?">
Poți face acest lucru sub `Setări → Facturare`. Apoi, fă clic pe `Vizualizează detaliile de facturare`. Veți vedea toate facturile dvs. în partea de jos a ecranului.
</Accordion>
<Accordion title="De ce numărul de locuri este diferit de numărul de utilizatori din spațiul meu de lucru?">
Numărul de locuri din spațiul de lucru este sincronizat cu sistemul de plăți la fiecare 6 ore; facturile sunt ajustate pe baza diferenței.
</Accordion>
<Accordion title="De ce am primit o factură pentru un nou membru al spațiului de lucru?">
Atunci când un nou membru al spațiului de lucru este adăugat la spațiul de lucru, o factură este trimisă pentru a acoperi diferența. Când un membru al spațiului de lucru este eliminat, modificarea este aplicată în următoarea factură standard lunară/anuală.
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,39 @@
---
title: Facturare
description: Înțelegeți prețurile Twenty și gestionați-vă abonamentul.
---
Twenty oferă planuri de preț flexibile care se potrivesc nevoilor echipei dvs. Gestionați-vă abonamentul, urmăriți creditele pentru fluxuri de lucru și accesați facturile, toate din **Setări → Facturare**.
## Ce conține această secțiune
<CardGroup cols={2}>
<Card title="Planuri de preț" icon="tags" href="/l/ro/user-guide/billing/capabilities/pricing-plans">
Aflați despre planurile de preț ale Twenty și ce este inclus.
</Card>
<Card title="Întrebări frecvente" icon="circle-question" href="/l/ro/user-guide/billing/how-tos/billing-faq">
Întrebări frecvente despre prețuri și facturare.
</Card>
</CardGroup>
## Dintr-o privire
| Plan | Funcții cheie |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Gratuit (Autogăzduit)** | Toate funcțiile Pro, asistență din partea comunității |
| **Pro (Cloud)** | Totul, cu excepția funcțiilor Premium (SSO, permisiuni la nivel de rând și altele), asistență standard |
| **Organizație (Cloud)** | Tot ce include Pro + funcțiile Premium (SSO, permisiuni la nivel de rând și altele), asistență prioritară |
| **Organizație (Autogăzduit)** | Tot ce include Pro + funcțiile Premium (SSO, permisiuni la nivel de rând și altele), asistență din partea echipei Twenty, nu este necesar să publicați codul dvs. personalizat ca open-source înainte de distribuire |
## Răspunsuri rapide
**Unde gestionez facturarea?**
Accesați **Setări → Facturare** pentru a vă vedea planul, pentru a actualiza metodele de plată și pentru a accesa facturile.
**Pot folosi Twenty gratuit?**
Da! Găzduiți Twenty pe cont propriu și obțineți toate funcțiile Pro fără costuri.
**Cum fac upgrade?**
Mergeți la **Setări → Facturare** și faceți clic pe **Treceți la Organizație** sau **Treceți la Anual**.
Pentru mai multe întrebări, consultați [Întrebările frecvente despre facturare](/l/ro/user-guide/billing/how-tos/billing-faq).

View File

@@ -0,0 +1,43 @@
---
title: Calendar
description: Înțelegerea funcțiilor de integrare a calendarului în Twenty.
---
**Notă**: Pentru a vă conecta calendarul și a configura setările de sincronizare, vizitați [Configurare e-mail și calendar](/l/ro/user-guide/calendar-emails/overview).
## Cum funcționează integrarea calendarului
Twenty sincronizează automat evenimentele din calendarul dvs. și le leagă de înregistrările CRM relevante, oferindu-vă o imagine completă a istoricului întâlnirilor cu contacte și companii.
## Fila Calendar
Lângă fila E-mailuri, veți găsi o filă `Calendar` care conține istoricul întâlnirilor programate cu înregistrarea.
### Disponibil pentru
* **Persoane**: Vizualizați toate întâlnirile programate cu un contact specific
* **Companii**: Vizualizați toate întâlnirile legate de o companie și de angajații săi
* **Oportunități**: Istoricul ședințelor de acces legate de companie legat de oportunitate
### Vizualizarea istoricului întâlnirilor
1. Navigați la o înregistrare: Accesați înregistrarea oricărei persoane, companii sau oportunități
2. **Selectați fila Calendar**: Faceți clic pe fila `Calendar` lângă fila E-mailuri
3. **Răsfoiți istoricul întâlnirilor**: Vizualizați toate întâlnirile programate și detaliile acestora
4. **Accesați contextul întâlnirii**: Vizualizați participanții la întâlnire, orele și informațiile conexe
## Setări de vizibilitate
Datele din calendar urmează aceleași setări de vizibilitate ca e-mailurile, pentru a asigura controale de confidențialitate constante pe ambele canale de comunicare.
## Ce se sincronizează
* **Întâlniri externe**: Toate întâlnirile cu contacte din afara organizației
* **Conectare automată**: Întâlnirile se conectează la înregistrările existente de Persoane și Companii pe baza adreselor de e-mail ale participanților
* **Detalii întâlnire**: Subiect, oră, durată și participanți
* **Actualizări**: Evenimentele noi din calendar se sincronizează automat
## Ce nu se sincronizează
* **Întâlniri interne**: Întâlnirile între colegi (același domeniu) rămân private
* **Evenimente private**: Evenimentele marcate ca private în calendarul dvs.

View File

@@ -0,0 +1,102 @@
---
title: Căsuță poștală
description: Înțelegerea funcțiilor de integrare a emailului în Twenty.
---
**Notă**: Pentru a conecta conturile de e-mail și a configura setările de sincronizare, vizitați <a href="/l/ro/user-guide/calendar-emails/overview">Configurare e-mail și calendar</a>.
## Cum funcționează integrarea e-mailului
Twenty leagă automat e-mailurile din căsuțele poștale conectate la înregistrările CRM relevante, păstrând toate istoricul comunicațiilor într-un singur loc.
### Obiecte în care pot fi găsite emailuri
Conversațiile prin e-mail apar în trei obiecte principale:
* **Persoane**: Vizualizați toate e-mailurile schimbate cu un contact specific
* **Companii**: Vizualizați toate e-mailurile legate de o companie și de angajații săi
* **Oportunități**: Acces la teme de e-mail legate de firmă legate de oportunitate. Firurile de e-mail de la persoanele individuale din oportunitate nu sunt afișate încă.
### Vizualizarea conversațiilor prin e-mail
1. Navigați la o înregistrare: Accesați înregistrarea oricărei persoane, companii sau oportunități
2. **Selectați fila E-mailuri**: Faceți clic pe fila `E-mailuri` pentru a vizualiza e-mailurile sincronizate
3. **Deschideți un fir de e-mail**: Faceți clic pe orice e-mail pentru a deschide și a citi întreaga conversație
4. **Răsfoiți istoricul**: Derulați prin întregul istoric al e-mailurilor cu acel contact
<img src="/images/user-guide/emails/show-inbox.png" style={{width:'100%'}} />
## Ce veți vedea
### Vizualizarea firului de e-mail
Când deschideți un fir de e-mail, puteți:
* **Citiți conversații complete**: Vizualizați întregul schimb de e-mailuri
* **Vizualizați participanții**: Vedeți toate persoanele implicate în firul de e-mail
* **Verificați marcajele de timp**: Aflați exact când a fost trimis fiecare e-mail
* **Accesați contextul**: Înțelegeți întregul istoric al comunicațiilor
### Vizibilitatea e-mailurilor
În funcție de setările căsuței poștale, este posibil să vedeți:
* **Conținut complet**: Textul complet al e-mailului și detaliile
* **Subiect + Metadate**: Linia subiectului, expeditor, destinatar și marcaj de timp
* **Doar Metadate**: Informații de bază fără conținutul e-mailului
## Comportamentul sincronizării e-mailului
### Rată de sincronizare
Twenty importă e-mailuri cu aproximativ **400 de mesaje pe minut**. Această rată este în prezent limitată de restricțiile de rată ale API-ului Gmail (și se aplică în mod similar altor furnizori).
Pentru referință:
* 1,000 de e-mailuri → ~2.5 minute
* 10,000 de e-mailuri → ~25 minute
* 50,000 de e-mailuri → ~2 ore
### Ce se sincronizează
* **E-mailuri externe**: Toate e-mailurile cu contacte din afara organizației
* **Conectare automată**: E-mailuri care se leagă la înregistrări existente de persoane și companii
* **Adrese multiple**: E-mailurile de la orice adresă se corelează la aceeași înregistrare de contact
* **Actualizări**: Noile e-mailuri apar imediat
### Ce nu se sincronizează
* **E-mailuri interne**: În mod implicit, e-mailurile dintre colegi (același domeniu) rămân private (configurate în Setări → General → Securitate)
* **E-mailuri de grup**: Liste de distribuție și e-mailuri de grup sunt excluse
* **Foldere excluse**: Folderele pe care ați ales să nu le sincronizați (configurate sub Setări → Conturi → E-mail)
### E-mailuri interne
Alegeți dacă e-mailurile interne sunt sincronizate în Twenty:
1. Accesați **Setări → General → Securitate**
2. Comutați **Sincronizează e-mailurile interne** activat/dezactivat
### Sincronizare selectivă a folderelor
Controlați care foldere de e-mail se sincronizează cu Twenty:
1. Accesați **Setări → Conturi** și selectați contul dvs. de e-mail conectat
2. Configurați folderele în secțiunea Email
3. Alegeți foldere specifice de inclus sau exclus (Inbox, Trimise, Arhivă, foldere personalizate)
## Depanarea sincronizării e-mailurilor
### Probleme comune de sincronizare
* **Întârzieri la sincronizare**: E-mailurile apar imediat, dar importurile inițiale durează mai mult
* **E-mailuri lipsă**: Verificați dacă:
* Folderele sunt excluse în setările Folder Mesaje
* Crearea automată a contactelor este dezactivată (e-mailurile necesită existența înregistrărilor Twenty)
* E-mailul este de la colegi (același domeniu) sau liste de grup
* Căsuța poștală finalizează încă sincronizarea inițială
### Limitări ale e-mailului
* **Foldere de sistem**: Unele foldere de e-mail s-ar putea să nu fie disponibile pentru sincronizare
* **Aka**: Numai căsuțele reale de e-mail pot fi conectate (nu aliasurile de e-mail)

View File

@@ -0,0 +1,25 @@
---
title: Pot să programez întâlniri din Twenty?
description: Informații despre programarea întâlnirilor direct din Twenty.
---
## Starea actuală
Integrarea Twenty pentru calendar este concepută pentru a **sincroniza și afișa** evenimentele existente din calendarul dumneavoastră.
## Programarea întâlnirilor prin fluxuri de lucru
Cât timp nu este posibil să programezi ședințe manual, le poți programa în douăzeci folosind fluxuri de lucru.
1. Creați un nou flux de lucru
2. Selectați orice declanșator, în funcție de nevoile dumneavoastră
3. Adăugați nodul **Create Calendar Event**
4. Configurați toate datele necesare
5. Activați fluxul de lucru
## Ce puteți face
* **Vizualizați istoricul întâlnirilor** pe înregistrările Persoane, Companii și Oportunități
* **Vizualizați întâlnirile viitoare** cu contactele din CRM-ul dumneavoastră
* **Urmăriți contextul întâlnirilor** alături de comunicările prin e-mail
* **Creați automat contacte** din participanții la întâlniri

View File

@@ -0,0 +1,53 @@
---
title: Pot să trimit e-mailuri din Twenty?
description: Informații despre trimiterea e-mailurilor direct din Twenty.
---
## Starea actuală
Integrarea de e-mail a Twenty este concepută pentru a **sincroniza și afișa** istoricul e-mailurilor dumneavoastră, precum și pentru a redacta și trimite e-mailuri.
Când vizualizați un fir de discuție prin e-mail pe pagina unei înregistrări și faceți clic pe **Răspunde**, puteți redacta și trimite direct un e-mail.
## Cum să trimiteți un mesaj din Twenty
Premisă: un cont de e-mail conectat cu abilitatea de a trimite e-mailuri
1. Deschide meniul de comenzi cu comanda **Ctrl+K** sau **Cmd+K**
2. Faceți clic pe opțiunea "Compuneți e-mail"
3. Alegeți destinatarii, adăugați subiectul, corpul și atașamentele la e-mail
4. Faceți clic pe butonul "Send" pentru a trimite e-mail
## Ce puteți face astăzi
* **Vizualizați istoricul e-mailurilor** pe înregistrările Persoane, Companii și Oportunități
* **Citiți firele complete de e-mail** cu contactele din CRM-ul dumneavoastră
* **Urmăriți contextul comunicării** alături de evenimentele din calendar
* **Creați automat contacte** din interacțiunile prin e-mail
* **Răspundeți prin redirecționare** — faceți clic pe Răspunde pentru a ajunge în căsuța poștală
## Trimiterea e-mailurilor prin fluxuri de lucru
Poți trimite e-mailuri automat folosind fluxuri de lucru\*\*. Acest lucru este util pentru:
* Mesaje de urmărire automate
* Notificări către contacte
* Comunicări declanșate pe baza modificărilor în cadrul înregistrărilor
E-mailurile trimise prin fluxuri de lucru trec prin contul de e-mail conectat.
→ Aflați mai multe despre [acțiunea Trimite e-mail](/l/ro/user-guide/workflows/capabilities/workflow-actions#send-email)
## Secvențe de e-mail și buletine informative
Pentru secvențe de e-mail și buletine informative, recomandăm utilizarea fluxurilor de lucru pentru a conecta Twenty la un instrument dedicat de marketing prin e-mail.
<Warning>
E-mailurile în masă nu ar trebui trimise direct din căsuța poștală, pentru a proteja reputația domeniului. Folosiți un instrument dedicat pentru comunicări în masă.
</Warning>
→ Consultați [Cum să trimiteți e-mailuri din fluxuri de lucru](/l/ro/user-guide/workflows/capabilities/send-emails-from-workflows) pentru instrucțiuni de configurare
## Planuri viitoare
Redactarea nativă a e-mailurilor din Twenty se află pe foaia noastră de parcurs. Alăturați-vă [discuțiilor noastre pe GitHub](https://github.com/twentyhq/twenty/discussions) pentru a împărtăși cazul dvs. de utilizare și a ajuta la prioritizarea acestei funcționalități.

View File

@@ -0,0 +1,35 @@
---
title: Pot urmări activitatea e-mailurilor pe toate obiectele?
description: Înțelegerea urmăririi activității e-mailurilor în cadrul diferitelor obiecte.
---
## Obiecte acceptate
Urmărirea activității e-mailurilor este disponibilă în prezent pe **trei obiecte standard**:
| Obiect | Ce veți vedea |
| ---------------- | ----------------------------------------------------------------------------- |
| **Persoane** | Toate e-mailurile schimbate cu respectivul contact |
| **Companii** | Toate e-mailurile cu oricine din acea companie (pe baza domeniului de e-mail) |
| **Oportunități** | Toate e-mailurile legate de compania asociată oportunității |
## De ce doar aceste obiecte?
Persoane, Companii și Oportunități sunt obiectele esențiale de relație în care contextul e-mailului aduce cea mai mare valoare. Conversațiile prin e-mail sunt asociate automat pe baza:
* **Adresă de e-mail** → asociată cu înregistrările din Persoane
* **Domeniu de e-mail** → asociat cu înregistrările din Companii
* **Relație cu compania** → legată de Oportunități
## Obiecte personalizate
**Urmărirea e-mailurilor nu este disponibilă pe obiectele personalizate** în acest moment.
Dacă aveți nevoie de contextul e-mailului pe un obiect personalizat, luați în considerare:
* Folosirea unui câmp de relație pentru a lega obiectul personalizat de Persoane sau Companii
* Vizualizarea istoricului e-mailurilor în înregistrarea Persoane/Companie asociată
## Planuri viitoare
Se ia în considerare extinderea vizibilității e-mailurilor la obiectele personalizate. Împărtășiți cazul dvs. de utilizare în [discuțiile noastre pe GitHub](https://github.com/twentyhq/twenty/discussions) pentru a ajuta la prioritizarea acestei funcționalități.

View File

@@ -0,0 +1,42 @@
---
title: Conectați mai multe căsuțe poștale per utilizator
description: Conectați mai multe conturi de e-mail pentru un singur utilizator.
---
## Prezentare generală
Twenty acceptă **un număr nelimitat de conturi de e-mail pentru fiecare utilizator**. Acest lucru este util dacă gestionați mai multe căsuțe poștale, de exemplu:
* E-mail de serviciu personal + căsuță poștală de echipă partajată
* Mai multe adrese de e-mail pentru relația cu clienții
* Conturi de e-mail diferite pentru roluri diferite
## Cum să adăugați mai multe căsuțe poștale
1. Mergeți la **Setări → Conturi**
2. Faceți clic pe **Adăugați cont**
3. Conectaţi un cont Google sau Microsoft suplimentar sau orice alt furnizor de mail care suporta protocoale IMAP/SMTP
4. Configurați setările de sincronizare pentru această căsuță poștală
5. Repetați pentru fiecare căsuță poștală pe care doriți să o conectați
## Gestionarea mai multor conturi
Fiecare căsuță poștală conectată are propriile setări:
* **Vizibilitatea e-mailurilor**: Alegeți ce pot vedea membrii echipei
* **Creare automată a contactelor**: Activați/dezactivați pentru fiecare căsuță poștală
* **Selectarea folderelor**: Alegeți ce foldere să sincronizați
## Cum apar e-mailurile
E-mailurile din toate căsuțele poștale conectate sunt sincronizate cu Twenty și apar în:
* **Înregistrări persoane**: Pe baza adresei de e-mail a contactului
* **Înregistrări companii**: Pe baza domeniului adresei de e-mail
* **Oportunități**: Pe baza companiei asociate
<Note>Fiecare e-mail arată în care cutie poștală a fost trimisă sau primită, astfel încât să puteți urmări ce cont a fost folosit pentru fiecare comunicare.</Note>
## Note importante
<Warning>Doar căsuțele poștale propriu-zise pot fi conectate. Aliasurile de e-mail care redirecționează către o altă căsuță poștală nu pot fi conectate separat — se vor sincroniza prin căsuța poștală principală.</Warning>

View File

@@ -0,0 +1,53 @@
---
title: Nu văd e-mailuri în înregistrări
description: Depanarea e-mailurilor lipsă în înregistrări.
---
## Motive comune
### 1. Sincronizarea inițială este încă în desfășurare
Sincronizarea e-mailurilor necesită timp, în special pentru căsuțele poștale mari. Twenty importă e-mailuri cu aproximativ **400 de mesaje pe minut** (limitat de limitarea ratei a API-ului Gmail).
* **Sincronizarea calendarului**: Se finalizează în câteva minute
* **Sincronizarea e-mailurilor**: Depinde de dimensiunea căsuței poștale (de ex., 10.000 de e-mailuri ≈ 25 de minute, 50.000 de e-mailuri ≈ 2 ore)
**Soluție**: Așteptați finalizarea importului inițial. Puteți estima durata în funcție de dimensiunea căsuței poștale.
### 2. Contactul nu există în Twenty
E-mailurile apar doar pe înregistrările existente de tip Persoană. Dacă contactul nu a fost încă creat:
* Activați **Crearea automată a contactelor** în setările căsuței poștale
* Sau creați mai întâi manual înregistrarea Persoană
**Soluție**: Accesați **Setări → Conturi**, selectați căsuța poștală și activați crearea automată a contactelor.
### 3. E-mailurile interne sunt excluse
E-mailurile între colegi (același domeniu de e-mail) nu sunt niciodată sincronizate pentru a menține confidențialitatea.
**Soluție**: Acesta este comportamentul așteptat. Doar e-mailurile externe sunt sincronizate.
### 4. E-mailul provine de la un grup sau o listă de distribuție
E-mailurile de grup și listele de distribuție sunt excluse de la sincronizare.
**Soluție**: Acesta este comportamentul așteptat.
### 5. Folderul nu este selectat pentru sincronizare
Dacă utilizați funcția Message Folder, unele foldere pot fi excluse.
**Soluție**: Accesați **Setări → Conturi**, selectați căsuța poștală și verificați setările de sincronizare ale folderelor.
### 6. Adresă de e-mail incorectă în înregistrare
Înregistrarea Persoană ar putea avea o adresă de e-mail diferită de cea utilizată în e-mail.
**Soluție**: Adăugați adresa de e-mail corectă în înregistrarea Persoană.
## Încă nu funcționează?
1. Încercați să deconectați și să reconectați căsuța poștală
2. Contactați asistența dacă problemele persistă

View File

@@ -0,0 +1,58 @@
---
title: Limitați e-mailurile importate
description: Controlați ce e-mailuri sunt importate în Twenty.
---
## Prezentare generală
În mod implicit, Twenty sincronizează toate e-mailurile externe din căsuța poștală conectată. Puteți limita ce se importă folosind **selecția de dosare** și **setările de vizibilitate**.
## Metoda 1: Selecția dosarelor (recomandată)
Controlați care foldere de e-mail se sincronizează cu Twenty:
1. Mergeți la **Setări → Conturi**
2. Selectați contul de e-mail conectat
3. Alegeți ce dosare să sincronizați:
| Folder | Descriere |
| ------------------------ | ---------------------------------------- |
| **Inbox** | E-mailuri primare primite |
| **Trimise** | E-mailurile trimise de dvs. |
| **Arhivă** | Mesaje arhivate |
| **Dosare personalizate** | Orice dosare specifice pe care le doriți |
4. Excludeți dosarele pe care nu doriți să le sincronizați (Spam, Coș de gunoi, dosare personale)
<Note>Acest lucru vă oferă un control precis asupra e-mailurilor care apar în CRM-ul dvs., fără a sincroniza totul.</Note>
## Metoda 2: Setări pentru crearea automată a contactelor
Controlați când sunt create contactele din e-mailuri:
1. Mergeți la **Setări → Conturi**
2. Selectați căsuța poștală conectată
3. Alegeți o opțiune:
* **Dezactivat**: Nu se creează contacte, dar e-mailurile se sincronizează în continuare cu contactele existente
* **Trimise și primite**: Creați contacte din toate e-mailurile externe
* **Doar trimise**: Creați contacte numai din e-mailurile pe care le trimiteți
## E-mailuri interne
Mesajele dintre colegi (același domeniu) pot fi sincronizate în Twenty:
1. Accesați **Setări → General → Securitate**
2. Comutați **Sincronizează emailurile interne** activat/dezactivat
<Note>În mod implicit, această opțiune este dezactivată.</Note>
## Ce este întotdeauna exclus
Aceste e-mailuri nu sunt niciodată sincronizate, indiferent de setări:
* **E-mailuri de grup**: Liste de distribuție și mesaje de grup
* **Spam/Coș de gunoi**: Dosarele de sistem sunt de obicei excluse
## Notă importantă
<Note>Deocamdată nu oferim o adresă de e-mail CC pentru sincronizarea selectivă. Utilizați funcția de selecție a dosarelor de mai sus pentru a obține același nivel de control.</Note>

View File

@@ -0,0 +1,144 @@
---
title: Calendar și e-mailuri
description: Conectați-vă conturile de e-mail și calendar la Twenty.
---
## Opțiuni de Conexiune
### Cont Google (Gmail & Calendar Google)
1. Mergeți la **Setări → Conturi**
2. Faceți clic pe **Adăugați cont**
3. Selectați **Continuați cu Google**
4. Autorizați Twenty să acceseze Gmail și Calendarul Google
5. Configurați setările de sincronizare a e-mailului (vizibilitate, creare automată) → faceți clic pe **Următorul**
6. Configurați setările de sincronizare ale calendarului (vizibilitate, creare automată) → faceți clic pe **Adăugați cont**
7. E-mailurile și evenimentele dvs. din calendar vor începe să se sincronizeze automat
### Cont Microsoft (Outlook & Calendar Microsoft)
1. Mergeți la **Setări → Conturi**
2. Faceți clic pe **Adăugați cont**
3. Selectați **Continuați cu Microsoft**
4. Autorizați Twenty să acceseze Outlook și Calendarul Microsoft
5. Configurați setările de sincronizare a e-mailului (vizibilitate, creare automată) → faceți clic pe **Următorul**
6. Configurați setările de sincronizare ale calendarului (vizibilitate, creare automată) → faceți clic pe **Adăugați cont**
7. E-mailurile și evenimentele dvs. din calendar vor începe să se sincronizeze automat
### Configurarea IMAP/SMTP/CalDAV (Alți Furnizori)
Pentru alți furnizori de e-mail și calendar:
1. Mergeți la **Setări → Conturi**
2. Configurați setările IMAP pentru a sincroniza e-mailurile primite și setările SMTP pentru a trimite e-mailuri
3. Configurați setările CalDAV pentru calendar
4. Testați conexiunea
<Note>
**Autogăzduire pe o rețea izolată de internet sau internă**: În mod implicit, Twenty refuză conexiunile de ieșire către adrese IP private/interne (protecție SSRF). Dacă serverul dvs. de e-mail sau calendar rulează pe o adresă IP locală/privată (de ex. un server on-premise într-o rețea LAN), conexiunile către acesta vor fi blocate. Pentru a le permite, setați următoarea variabilă de mediu pe server:
```
OUTBOUND_HTTP_SAFE_MODE_ENABLED=false
```
Aceasta dezactivează modul de siguranță pentru **toate** solicitările de ieșire (acțiuni HTTP din fluxurile de lucru, webhook-uri și conexiuni IMAP/SMTP/CalDAV), așa că setați-l doar în rețele de încredere, izolate, unde protecția SSRF nu este necesară.
</Note>
### Căsuțe Poștale Multiple
* **Conturi Nelimitate**: Conectați multiple conturi de e-mail per utilizator
* **Gestionarea Contului**: Schimbați între diferite căsuțe poștale
* **Setări Sincronizare**: Configurați setări diferite per căsuță poștală
<Warning>
Numai căsuțele poștale adevărate pot fi conectate (de exemplu, support@domain.com cu propria căsuță). Aliasurile de e-mail care redirecționează către altă căsuță poștală nu pot fi conectate la Twenty.
</Warning>
## Configurarea E-mailului
### Vizibilitatea Mesajelor
Alegeți diferite niveluri de vizibilitate pentru e-mailurile dvs.:
* **Doar Metadate**: Partajați doar informații de bază (expeditor, destinatar, dată, oră)
* **Subiect și Metadate**: Partajați linia de subiect împreună cu metadatele
* **Toate Conținutul E-mailului**: Partajați întregul conținut al e-mailului, inclusiv atașamentele
### Creare Automată de Contacte
* **Dezactivat**: Fără creare automată de contacte
* **Pentru mesaje trimise și primite**: Creați contacte pentru toate interacțiunile externe prin e-mail
* **Doar pentru mesajele trimise**: Creați contacte numai pentru e-mailurile pe care le trimiteți
* **Notă**: Implicit, e-mailurile interne (când toți participanții folosesc același domeniu) nu sunt sincronizate pentru a proteja confidențialitatea
<Note>Când este activată, contactele sunt asociate automat cu înregistrările companiei lor, pe baza domeniului lor de e-mail. Dacă compania nu există încă, Twenty o creează pentru dvs.</Note>
<Note>
**Sincronizarea e-mailurilor interne**: Comportamentul "e-mailuri interne nesincronizate" este cel implicit, dar poate fi dezactivat. Comutatorul se află în setările avansate:
1. Deschideți **Setări** și activați comutatorul **Avansat** din partea de jos a paginii de setări
2. Accesați **General → Securitate**
3. Activați comutatorul **Sincronizează e-mailurile interne** pentru a include e-mailurile în care toți participanții folosesc același domeniu
Aceasta este o setare la nivel de spațiu de lucru (utilă pentru universități sau organizații care partajează același domeniu).
</Note>
### Controlați ce e-mailuri se sincronizează cu Selectarea dosarelor de mesaje
Controlați care foldere de e-mail se sincronizează cu Twenty:
1. Accesați **Setări → Conturi** și selectați contul dvs. de e-mail conectat
2. Alegeți ce dosare să sincronizați:
* **Inbox**: E-mailurile primare primite
* **Trimise**: E-mailurile trimise de dvs.
* **Dosare Personalizate**: Orice dosare specifice pe care doriți să le includeți
* **Excludeți Dosare**: Săriți dosare precum Spam, Coș de gunoi sau dosare personale
Acest lucru vă oferă control precis asupra a ceea ce apare în CRM-ul dvs. fără a sincroniza totul.
**Ce se Sincronizează:**
* **E-mailuri Externe**: Toate e-mailurile cu contacte externe din dosarele selectate
* **E-mailuri Interne**: Nu sunt sincronizate în mod implicit (e-mailurile de același domeniu rămân private). Activați comutatorul **Avansat** din partea de jos a secțiunii **Setări**, apoi activați **Sincronizează e-mailurile interne** în **General → Securitate** pentru a le include la nivel de spațiu de lucru.
* **Atașamente**: Va veni în H1 2026
**Notă**: Nu oferim o adresă de e-mail CC pentru sincronizarea selectivă. În schimb, utilizați funcția Dosar Mesaje de mai sus pentru a obține același nivel de control asupra sincronizării e-mailurilor cu Twenty.
## Configurarea Calendarului
### Vizibilitatea Evenimentelor
Alegeți ce va fi vizibil pentru alți utilizatori din workspace-ul dvs.:
* **Tot**: Toate detaliile evenimentului vor fi partajate cu echipa ta
* **Metadata**: Doar data si participantii vor fi impartiti cu echipa
### Creare Automată de Contacte pentru Întâlniri
* **Da**: Creați automat contacte pentru participanți la întâlniri care nu sunt în CRM-ul dvs.
* **Nu**: Legați doar întâlnirile de contacte existente
<Note>Când este activată, contactele sunt asociate automat cu înregistrările companiei lor, pe baza domeniului lor de e-mail. Dacă compania nu există încă, Twenty o creează pentru dvs.</Note>
### Controlează ce evenimente sunt sincronizate
* **Import Întâlniri**: Importați automat evenimente din calendar
* **Legare de Contacte**: Legați întâlnirile de fișele Persoanelor și Companiilor
**Ce se Sincronizează:**
* **Întâlniri**: Evenimente din calendar cu participanți externi
* **Legare de Contacte**: Evenimente legate automat de fișele CRM
* **Evenimente ale Echipelor**: Vizibilitatea calendarului partajat
## Frecvența Sincronizării
**Actualizări la fiecare 5 minute**: Atât e-mailurile cât și datele din calendar se sincronizează automat la fiecare 5 minute după importul inițial.
<Note>
**Timpul sincronizării inițiale**: Sincronizarea calendarului se finalizează rapid (de obicei în câteva minute), în timp ce sincronizarea e-mailurilor durează mai mult pentru căsuțele poștale mari. Twenty importă e-mailuri la aproximativ **400 de mesaje pe minut** (limitat de restricțiile de rată ale API-ului Gmail), astfel încât importul unei căsuțe poștale cu 10.000 de e-mailuri durează aproximativ 25 de minute. Nu vă faceți griji dacă vedeți contacte din evenimentele din calendar apărând înaintea contactelor din e-mail; acest lucru este un comportament normal.
</Note>
## Pașii următori
* [Capabilitățile căsuței poștale](/l/ro/user-guide/calendar-emails/capabilities/mailbox)
* [Depanați e-mailurile lipsă](/l/ro/user-guide/calendar-emails/how-tos/i-dont-see-emails-on-records)

View File

@@ -0,0 +1,275 @@
---
title: Setări pentru diagrame
description: Configurați diagramele pentru a afișa datele exact așa cum aveți nevoie.
---
import { ChartIcon } from '/snippets/chart-icon.mdx';
## Accesarea setărilor pentru diagrame
1. Faceți clic pe butonul **Editare** din colțul din dreapta sus al tabloului de bord
<img src="/images/user-guide/dashboard/dashboard-edit.png" alt="Mod editare" />
2. Tabloul de bord intră în modul de editare
3. Faceți clic pe orice widget pentru a-l selecta
4. Panoul de setări se deschide în dreapta
Setările sunt organizate în secțiuni:
* **Date**: Ce date să preluați și cum să le filtrați
* **Axa X**: Cum să grupați și să sortați categoriile (diagrame cu bare/linii)
* **Axa Y**: Ce să măsurați și cum să o afișați (diagrame cu bare/linii)
* **Stil**: Culori, etichete și opțiuni vizuale
<Note>
Unele setări apar doar când sunt configurate alte setări. De exemplu, **Granularitate dată** apare doar când selectați un câmp de tip dată.
</Note>
---
## Setări date
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="database" />Sursă </span>
Alegeți din ce obiect să preluați date.
1. Faceți clic pe **Sursă**
2. Selectați un obiect (Oportunități, Persoane, Companii etc.)
Toate obiectele standard și personalizate sunt disponibile. Schimbarea sursei resetează alte setări, deoarece opțiunile câmpului depind de obiectul selectat.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-source.png" alt="Sursă" />
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="filter" />Filtru </span>
Limitați ce înregistrări sunt incluse în diagramă.
1. Faceți clic pe **Filtru**
2. Se deschide constructorul de filtre
3. Faceți clic pe **+ Adaugă filtru**
4. Selectați un câmp, o condiție și o valoare
5. Adăugați mai multe filtre după necesități
Filtrele funcționează la fel ca în vizualizările de tabel. Folosiți-le pentru a vă concentra pe segmente specifice ale datelor.
**Exemplu**: Filtrați oportunitățile unde Etapa este egală cu "Câștigat" pentru a afișa doar tranzacțiile închise.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-filters.png" alt="Filtru" />
<Tip>
Pentru câmpurile de tip dată, încercați **Este relativ** pentru a crea filtre dinamice precum "Ultimele 7 zile" sau "Luna aceasta" care se actualizează automat.
</Tip>
<Tip>
Filtrele avansate sunt acceptate—adăugați mai multe reguli de filtrare și combinați-le cu logica **Și** sau **Sau**.
</Tip>
---
## Setări axa X
Aceste setări controlează axa orizontală a diagramelor cu bare și linii—de obicei modul în care datele sunt grupate în categorii.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="axis-x" />Date afișate </span>
Selectați câmpul după care să grupați datele. Aceasta determină categoriile afișate pe axa X.
**Exemplu**: Selectați "Etapă" pentru a vedea datele grupate după etapa din pipeline, sau "Data creării" pentru a vedea datele în timp.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-x-data-on-display.png" alt="Date afișate" />
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="calendar" />Granularitate dată </span>
Când grupați după un câmp de tip dată, alegeți perioada de timp pentru grupare.
| Opțiune | Grupează datele după | Exemplu de rezultat |
| --------------------- | ------------------------- | -------------------------------------------------------- |
| **Zi** | Fiecare zi calendaristică | 1 ian., 2 ian., 3 ian... |
| **Săptămână** | Săptămâni calendaristice | Săptămâna 1, Săptămâna 2, Săptămâna 3... |
| **Lună** | Luni calendaristice | Ianuarie, Februarie, Martie... |
| **Trimestru** | Trimestre fiscale | T1, T2, T3, T4 |
| **An** | Ani calendaristici | 2023, 2024, 2025 |
| **Ziua săptămânii** | Zi a săptămânii (agregat) | Luni, Marți... (toate zilele de luni combinate) |
| **Luna anului** | Lună (agregat) | Ianuarie, Februarie... (toate lunile ianuarie combinate) |
| **Trimestrul anului** | Trimestru (agregat) | T1, T2, T3, T4 (toate T1 combinate) |
Opțiunile "din săptămână/an" agregă pe întreaga perioadă de timp. Folosiți **Ziua săptămânii** pentru a vedea în ce zi din săptămână se obțin de obicei cele mai multe tranzacții. Folosiți **Lună** pentru a vedea tendințele lună de lună.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="arrows-sort" />Sortează după </span>
Controlați ordinea categoriilor pe axa X.
* **Poziție** – Folosește ordinea definită în setările câmpului Select
* **Alfabetic** – de la A la Z (sau cronologic pentru date)
* **După valoare** – Ordonat după metrică (mai întâi cele mai mari sau cele mai mici)
* **Manual** – Trageți pentru a stabili propria ordine
<img src="/images/user-guide/dashboard/dashboard-chart-settings-x-sort.png" alt="Sortează după" />
**Sfat**: Pentru etapele din pipeline, utilizați **Poziție** pentru a afișa etapele în ordinea procesului de vânzări (Potențial → Calificat → Ofertă → Câștigat).
<Note>
Opțiunile afișate depind de tipul câmpului. Câmpurile de tip Select au toate opțiunile; câmpurile de tip dată și text afișează mai puține.
</Note>
<Tip>
Cu sortarea **Manual**, trageți categoriile pentru a crea o ordine personalizată—perfect pentru a evidenția segmente specifice sau pentru a spune o poveste cu datele dvs.
</Tip>
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="eye-off" />Omite valorile zero </span>
Ascundeți categoriile care au valoare zero sau nu au date.
* **Activat**: Categoriile fără înregistrări sunt ascunse
* **Dezactivat**: Toate categoriile sunt afișate, chiar dacă sunt goale
Folosiți această opțiune pentru a curăța diagramele cu date rare.
---
## Setări axa Y
Aceste setări controlează ce măsurați și cum este afișat.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="axis-y" />Date afișate </span>
Selectați câmpul și operația pentru a calcula metrica.
* **Numărări** – Numără toate, Numără gol, Numără ne-gol, Numără valori unice
* **Matematică** – Sumă, Medie, Minim, Maxim (câmpuri numerice)
* **Procente** – Procent gol, Procent ne-gol
Câmpurile booleene adaugă Numără adevărat/fals. Diagramele agregate cu câmpuri de tip dată afișează Cel mai timpuriu/Cel mai târziu.
**Exemplu**: Selectați "Sumă" cu operația Sumă pentru a vedea valoarea totală a tranzacțiilor pe categorie, sau Numără toate pentru a vedea numărul de tranzacții.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-y-data-on-display.png" alt="Date afișate" />
<Note>
Opțiunile afișate depind de câmpul și tipul de diagramă. Dacă nu vedeți o operație așteptată, verificați tipul câmpului.
</Note>
### Raport
Pentru câmpuri de tip Select, Multi-select sau Boolean, puteți calcula procentul unei valori specifice.
1. Selectați un câmp de tip Select, Multi-select sau Boolean
2. Activați **Raport**
3. Alegeți opțiunea de măsurat
**Exemplu**: Afișați tranzacțiile "Câștigat" ca procent din toate oportunitățile. Dacă aveți 10 Câștigate dintr-un total de 50, diagrama afișează 20%.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="filters" />Grupează după </span>
Adăugați o a doua dimensiune pentru a crea mai multe serii (mai multe bare sau linii).
1. Stabiliți mai întâi câmpul pentru axa X
2. Faceți clic pe **Grupează după**
3. Selectați un al doilea câmp
**Exemplu**: Grupați tranzacțiile după Etapă (axa X) ȘI după Proprietar (Grupează după) pentru a vedea alăturat distribuția pipeline-ului fiecărei persoane.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-y-group-by.png" alt="Grupare după" />
Când Grupează după este setat, veți vedea mai multe culori în diagramă și apare o legendă.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="calendar" />Granularitate dată </span>
Când Grupează după este un câmp de tip dată, alegeți perioada de timp (aceleași opțiuni ca pentru axa X).
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="arrows-sort" />Sortează după </span>
Când **Grupează după** este setat, controlați ordinea seriilor grupate (de ex., bara cărui proprietar apare prima în fiecare categorie).
Aceleași opțiuni ca sortarea pe axa X—Poziție, Alfabetic și Manual—cu excepția faptului că **sortarea bazată pe valori nu este disponibilă** pentru gruparea secundară.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="chart-bar-popular" />Cumulativ </span>
Afișați totaluri cumulative în locul valorilor individuale.
* **Dezactivat**: Fiecare bară/punct își afișează propria valoare
* **Activ**: Fiecare bară/punct afișează suma tuturor valorilor anterioare plus propria valoare
**Exemplu**: Ianuarie = 10, Februarie = 15
* Cumulativ dezactivat: Afișează 10 și 15
* Cumulativ activ: Afișează 10 și 25 (10 + 15)
Folosiți opțiunea Cumulativ pentru a urmări progresul către un obiectiv în timp.
<img src="/images/user-guide/dashboard/dashboard-chart-settings-y-cumulative.png" alt="Cumulativ" />
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="math-min" />Interval minim / <ChartIcon icon="math-max" />Interval maxim </span>
Stabiliți valori minime și maxime fixe pentru axa Y.
* Lăsați necompletat pentru scalare automată
* Introduceți un număr pentru a fixa limita
**Când se folosește:**
* Setați Min la 0 pentru comparații vizuale corecte
* Setați ambele pentru scări consistente între mai multe diagrame
* Concentrați-vă pe un interval de valori specific setând ambele
---
## Setări de stil
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="color-swatch" />Culori </span>
Setați schema de culori pentru diagrama dvs. Alegeți dintr-o varietate de palete de culori.
<Note>
Când grupați după un câmp de tip Select, diagrama folosește automat culorile definite pentru fiecare opțiune în setările câmpului.
</Note>
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="gizmo" />Numele axei </span>
Alegeți ce etichete de axă să afișați: **Niciuna**, **Axa X**, **Axa Y**, sau **Ambele** (numai pentru diagrame cu bare și linii).
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="stack-2" />Bare stivuite / Linii stivuite </span>
Când Grupează după este setat, alegeți cum sunt afișate mai multe serii.
* **Dezactivat (Grupate)**: Seriile apar una lângă alta. Folosiți când comparați valori exacte între grupuri.
* **Activ (Stivuite)**: Seriile se stivuiesc una peste alta. Folosiți când arătați compoziția—cum părțile formează un întreg.
**Exemplu**: Tranzacții după etapă, grupate după proprietar
* Grupate: Vedeți numerele exacte ale fiecărui proprietar una lângă alta
* Stivuite: Vedeți totalul tranzacțiilor pe etapă, cu contribuția fiecărui proprietar stivuită
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="badge-2k" />Etichete de date </span>
Afișați valorile direct pe elementele diagramei (bare, puncte, segmente).
* **Activ**: Valorile apar pe diagramă
* **Dezactivat**: Nu se afișează valori (aspect mai curat)
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}> <ChartIcon icon="text-caption" />Legendă </span>
Afișați sau ascundeți legenda (apare doar când Grupează după este setat).
* **Activ**: Legenda arată ce reprezintă fiecare culoare
* **Dezactivat**: Nu se afișează legendă
<Tip>
**Treceți cursorul** peste un element al legendei pentru a evidenția acel grup. Faceți clic pentru a ascunde temporar acel grup din diagramă.
</Tip>
---
## Note specifice diagramelor
### Grafice circulare
* <span style={{ display: 'inline-flex', verticalAlign: 'middle' }}><ChartIcon icon="chart-pie" size={16} /></span> **Fiecare segment reprezintă** – Definiți cum sunt grupate segmentele
* <span style={{ display: 'inline-flex', verticalAlign: 'middle' }}><ChartIcon icon="eye-off" size={16} /></span> **Ascunde categoria goală** – Elimină segmentele cu valoare zero
* <span style={{ display: 'inline-flex', verticalAlign: 'middle' }}><ChartIcon icon="number-123" size={16} /></span> **Afișează valoarea în centru** – Afișează valoarea agregată (sumă, medie, număr etc.)
### Diagrame agregate
* <span style={{ display: 'inline-flex', verticalAlign: 'middle' }}><ChartIcon icon="caret-left" size={16} /></span> **Prefix** – Adăugați text înaintea numărului (de ex., `$`)
* <span style={{ display: 'inline-flex', verticalAlign: 'middle' }}><ChartIcon icon="caret-right" size={16} /></span> **Sufix** – Adăugați text după număr (de ex., `%`)

View File

@@ -0,0 +1,92 @@
---
title: Tablouri de Bord
description: Creați și organizați tablouri de bord cu file pentru a vizualiza datele dvs. din CRM.
---
## Prezentare generală
Tablourile de bord din Twenty sunt organizate într-o ierarhie: **Tablouri de bord → File → Widgeturi**. Fiecare tablou de bord poate conține mai multe file, iar fiecare filă conține widgeturi (grafice, numere, iFrames).
## Crearea unui tablou de bord
1. Accesați **Tablouri de bord** în navigare
2. Faceți clic pe **+ Înregistrare nouă**
<img src="/images/user-guide/dashboard/dashboard-create-new.png" alt="Creați un tablou de bord nou" />
3. Dați un nume tabloului de bord
4. Începeți să adăugați file și widgeturi
## Lucrul cu filele
Filele vă ajută să organizați tabloul de bord în secțiuni logice.
### Crearea filelor
1. În modul de editare, faceţi clic pe **+** în bara filelor şi un panou lateral se va deschide în dreapta
2. Denumiți fila (de ex., "Prezentare generală a pipeline-ului", "Performanța echipei")
3. Adăugați widgeturi în filă
### Reordonarea filelor
1. În modul de editare, faceți clic și mențineți apăsat pe fila pe care doriți să o mutați
2. Trageți și plasați în noua poziție
3. Puteți, de asemenea, să faceți clic pe filă și să folosiți meniul de comandă pentru a muta fila la stânga sau la dreapta
### Ștergerea filelor
1. În modul de editare, faceți clic pe fila pe care doriți să o ștergeți
2. Faceți clic pe butonul **Ștergere** din meniul de comenzi
### Duplicarea filelor
1. Faceți clic pe fila pe care doriți să o duplicați
2. Faceți clic pe butonul **Duplicare** din panoul lateral
<img src="/images/user-guide/dashboard/dashboard-tabs.png" alt="Filă de tablou de bord" />
## Aspectul tabloului de bord
### Aranjarea widgeturilor
* Trageți și plasați pentru poziționare
* Redimensionați pentru evidențiere
* Grupați împreună graficele asociate
### Duplicarea unui tablou de bord
1. Selectați tabloul de bord pe care doriți să îl duplicați
2. Deschideți bara de comenzi cu **Cmd + K** (sau **Ctrl + K** pe Windows)
3. Selectați **Duplicare tablou de bord**
<img src="/images/user-guide/dashboard/dashboard-duplicate.png" alt="Duplicați un tablou de bord" />
### Cele mai bune practici
* **Flux logic**: Aranjați de la prezentare generală la detaliu
* **Ierarhie vizuală**: Grafice mai mari pentru indicatorii cheie
* **Stilizare consecventă**: Folosiți culori și fonturi coerente
## Vizibilitate și acces
### Vizibilitatea tabloului de bord
Tablourile de bord sunt vizibile pentru toți cei care au acces la spațiul dvs. de lucru din Twenty. În acest moment nu există opțiunea unui tablou de bord privat.
### Favorite
Puteți adăuga tablouri de bord la favorite pentru acces rapid. Aceasta este o setare personală—favoritele dvs. nu sunt vizibile pentru alți utilizatori.
Pentru a adăuga un tablou de bord la favorite, deschideți tabloul de bord și faceți clic pe pictograma stea.
### Comportamentul fusului orar
Tablourile de bord afișează în prezent datele în funcție de fusul orar al celui care le vizualizează. Aceasta înseamnă că același tablou de bord poate afișa indicatori diferiți pentru membrii echipei din regiuni diferite (de ex., APAC vs. SUA).
<Note>
**În curând**: Vom adăuga posibilitatea de a seta un fus orar specific pentru un tablou de bord, astfel încât toți utilizatorii să vadă date consecvente indiferent de locația lor.
</Note>
<Note>
**În curând**: Filtrele la nivel de tablou de bord vă vor permite să aplicați filtre pe toate widgeturile simultan, făcând mai rapidă explorarea datelor.
</Note>

View File

@@ -0,0 +1,169 @@
---
title: Widgeturi
description: Explorați tipurile de widgeturi și opțiunile de vizualizare din Twenty.
---
import { ChartIcon } from '/snippets/chart-icon.mdx';
## Widgeturi disponibile
Twenty oferă diverse tipuri de widgeturi pentru a vă vizualiza datele CRM.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="chart-bar-popular" />Grafice cu bare</span>
Afișează datele sub formă de bare orizontale sau verticale.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-bar-chart.png" alt="Grafic cu bare" />
</Frame>
**Cel mai potrivit pentru:**
* Compararea valorilor între categorii
* Afișarea clasamentelor
* Urmărirea indicatorilor pe perioade de timp
**Exemple de utilizare:**
* Oportunități după stadiu
* Venituri după reprezentant de vânzări
* Contacte adăugate pe lună
<Note>
**Limite de afișare**: Graficele cu bare pot afișa maximum 100 de bare și 50 de grupuri pentru fiecare bară când se utilizează Group By. Dacă vedeți avertismentul "Date neafișate: max X bare pe grafic", adăugați filtre pentru a restrânge datele sau schimbați gruparea (de ex., grupați pe săptămână în loc de zile).
</Note>
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="chart-pie" />Grafice circulare</span>
Afișează proporțiile dintr-un întreg.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-pie-chart.png" alt="Grafic circular" />
</Frame>
**Cel mai potrivit pentru:**
* Afișarea compoziției sau distribuției
* Compararea părților cu întregul
* Evidențierea segmentelor principale
**Exemple de utilizare:**
* Distribuția oportunităților după sursă
* Defalcarea contactelor după industrie
* Compoziția pipeline-ului după proprietar
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="chart-line" />Grafice liniare</span>
Afișează tendințele în timp.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-line-chart.png" alt="Grafic liniar" />
</Frame>
**Cel mai potrivit pentru:**
* Urmărirea schimbărilor în timp
* Identificarea tendințelor
* Compararea mai multor indicatori
**Exemple de utilizare:**
* Tendința lunară a numărului de oportunități
* Creșterea veniturilor pe trimestre
* Nivelurile de activitate în timp
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="sum" />Diagrame agregate</span>
Afișează proeminent valori cheie unice.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-aggregate-chart.png" alt="Diagramă agregată" />
</Frame>
**Cel mai potrivit pentru:**
* Evidențierea indicatorilor cheie de performanță (KPI)
* Afișarea totalurilor sau mediilor
* Verificări rapide ale stării
**Exemple de utilizare:**
* Valoarea totală a pipeline-ului
* Numărul de oportunități deschise
* Rată de conversie
**Opțiuni avansate:**
* **Ratio**: Pentru câmpurile Select, calculați rapoarte între valori. Accesați **Data on display** → selectați câmpul → activați opțiunea **Ratio**.
* **Prefix și Sufix**: Adăugați text personalizat înainte sau după număr (de ex., prefix "$" sau sufix "%") pentru o lizibilitate mai bună.
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="frame" />iFrame-uri</span>
Încorporați instrumente externe și conținut extern direct în tabloul de bord.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-table.png" alt="Grafic tabele" />
</Frame>
**Cel mai potrivit pentru:**
* Căutarea elementelor individuale
* Verificarea valorilor exacte
* Audit sau referință
**Exemple de utilizare:**
* Oportunități care se închid în această lună
* Lead-uri noi în această săptămână
* Facturi restante
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="table" />Tabel</span>
Vedeți înregistrările filtrate direct în tabloul de bord.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-iframe.png" alt="iFrame" />
</Frame>
**Cel mai potrivit pentru:**
* Afișarea rapoartelor sau tablourilor de bord externe
* Integrarea instrumentelor de vânzări terțe
* Afișarea conținutului în timp real din alte sisteme
**Exemple de utilizare:**
* Indicatori din instrumentul de asistență
* Indicatori din dialer
* Conținut în timp real din instrumentul de secvențe de vânzări
### <span style={{ display: 'inline-flex', alignItems: 'center', gap: '8px' }}><ChartIcon icon="align-box-left-top" />Text îmbogățit</span>
Adăugați text formatat și conținut direct în tabloul de bord.
<Frame>
<img src="/images/user-guide/dashboard/dashboard-widget-rich-text.png" alt="Text îmbogățit" />
</Frame>
**Cel mai potrivit pentru:**
* Adăugarea de context sau instrucțiuni
* Descrieri ale tabloului de bord
* Note și adnotări
**Funcționalități:**
* Formatare de tip text îmbogățit (aldin, cursiv, liste etc.)
* Încărcarea imaginilor și fișierelor
* Editare în stil Markdown
<Note>
**În curând**: Graficele tip indicator (gauge) nu sunt încă disponibile, dar se află pe foaia noastră de parcurs.
</Note>
### Duplicarea widgeturilor
1. Faceți clic pe widget
2. Deschideți **Opțiuni**
3. Faceți clic pe **Duplicare widget**

View File

@@ -0,0 +1,54 @@
---
title: Întrebări frecvente despre Tablouri de Bord
description: Întrebări frecvente despre tablourile de bord din Twenty.
---
<AccordionGroup>
<Accordion title="Pot crea tablouri de bord private?">
Nu, tablourile de bord sunt vizibile în prezent pentru toți cei care au acces la spațiul tău de lucru din Twenty. Tablourile de bord private nu sunt încă disponibile.
</Accordion>
<Accordion title="De ce indicatorii mei arată diferit față de ai colegului meu?">
Tablourile de bord afișează în prezent datele în funcție de fusul orar al celui care le vizualizează. Dacă te afli în regiuni diferite (de ex., APAC vs. SUA), este posibil să vezi valori ușor diferite pentru același tablou de bord. Lucrăm la adăugarea unei setări de fus orar pentru fiecare tablou de bord, pentru a asigura date consistente între echipe.
</Accordion>
<Accordion title="Îmi pot exporta tabloul de bord?">
Exportarea tablourilor de bord nu este disponibilă în acest moment. Această funcționalitate este în planul nostru de dezvoltare.
</Accordion>
<Accordion title="Pot partaja tablouri de bord cu utilizatori externi?">
Nu, partajarea tablourilor de bord cu utilizatori din afara spațiului tău de lucru din Twenty (utilizatori non-Twenty) nu este acceptată în prezent.
</Accordion>
<Accordion title="Cum adaug un tablou de bord la favorite?">
Deschide tabloul de bord pe care vrei să îl adaugi la favorite, apoi dă clic pe pictograma stea. Favoritele sunt personale — nu îi vor afecta pe ceilalți utilizatori.
</Accordion>
<Accordion title="Care este diferența dintre file și widgeturi?">
* **Filele** organizează tabloul tău de bord în secțiuni (ca niște pagini în cadrul tabloului de bord)
* **Widgeturile** sunt vizualizările individuale (grafice, numere, iFrame-uri) din fiecare filă
Structură: Tablou de bord → File → Widgeturi
</Accordion>
<Accordion title="Pot filtra întregul tablou de bord deodată?">
Filtrele la nivel de tablou de bord nu sunt încă disponibile, dar această funcționalitate este în planul nostru de dezvoltare. În prezent, trebuie să aplici filtre fiecărui widget în mod individual.
</Accordion>
<Accordion title="Sunt disponibile grafice de tip indicator (gauge)?">
Încă nu. Graficele de tip indicator (gauge) sunt în planul nostru de dezvoltare și vor fi adăugate într-o versiune viitoare.
</Accordion>
<Accordion title="Cum duplic un tablou de bord?">
1. Asigură-te că ești în modul de vizualizare (nu în editare)
2. Deschide bara de comenzi cu **Cmd + K** (sau **Ctrl + K** pe Windows)
3. Selectează **Duplicare tablou de bord**
</Accordion>
<Accordion title="Cât de des se reîmprospătează datele din tabloul de bord?">
Widgeturile se actualizează automat pe măsură ce datele tale din CRM se modifică:
* Actualizări în timp real pentru majoritatea indicatorilor
* Folosește butonul de reîmprospătare pentru o actualizare manuală, dacă este necesar
* Datele istorice sunt păstrate pentru analiza tendințelor
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,67 @@
---
title: Întrebări frecvente despre widget
description: Întrebări comune și mesaje de eroare explicate.
---
<AccordionGroup>
<Accordion title="Cum afișez procente în loc de numărări?">
Trei opțiuni:
* **Procent gol/completat**: În Date afișate, selectează Procent gol sau Procent completat
* **Raport**: Pentru câmpurile Select sau Checkbox, activează Raport pentru a afișa o opțiune specifică drept procent din toate înregistrările
* **Sufix**: Pentru diagrame agregate, adaugă `%` ca Sufix în Setările de stil
</Accordion>
<Accordion title="Care este diferența dintre bare grupate și stivuite?">
Când folosești **Grupează după**, poți afișa seriile în două moduri:
* **Grupate**: Bare alăturate—cel mai bine pentru compararea valorilor exacte
* **Stivuite**: Bare una peste alta—cel mai bine pentru a arăta compoziția
Comută opțiunea **Stivuite** în Setările de stil.
</Accordion>
<Accordion title="De ce nu văd opțiunile Sumă sau Medie?">
Operațiunile disponibile depind de **tipul câmpului**:
* **Câmpuri numerice**: Sumă, Medie, Minim, Maxim
* **Câmpuri de tip dată**: Cel mai devreme, Cel mai târziu (doar pentru diagrame agregate)
* **Câmpuri Checkbox**: Număr valori adevărate, Număr valori false
Dacă nu vezi o opțiune, verifică dacă ai selectat un tip de câmp compatibil.
</Accordion>
<Accordion title="De ce unele setări sunt dezactivate sau lipsesc?">
Multe setări apar doar când sunt îndeplinite cerințele prealabile:
* **Granularitatea datei**: Selectează mai întâi un câmp de tip dată
* **Grupează după, Legendă, Stivuite**: Setează Sursa mai întâi
* **Comutatoarele Legendă și Stivuite**: Setează mai întâi Grupează după
Dacă lipsește o setare, configurează mai întâi cerința ei prealabilă.
</Accordion>
<Accordion title="Ce înseamnă „No data”?">
Diagrama nu a găsit înregistrări care să corespundă configurației tale.
**Pentru remediere:** Elimină sau ajustează filtrele, verifică dacă ai selectat obiectul Sursă corect sau verifică dacă există înregistrări pentru intervalul tău de date.
</Accordion>
<Accordion title="Ce înseamnă „Invalid configuration”?">
O setare obligatorie lipsește sau este incompatibilă.
**Pentru remediere:** Asigură-te că Sursa este setată, Datele afișate sunt configurate și orice câmpuri de grupare necesare sunt selectate.
</Accordion>
<Accordion title="Ce înseamnă „Undisplayed data”?">
Datele tale depășesc limitele de afișare (100 de bare, 100 de puncte de date sau 100 de felii).
**Pentru remediere:** Adaugă filtre pentru a restrânge datele sau schimbă granularitatea datei din Zi în Săptămână sau Lună.
</Accordion>
<Accordion title="De ce una dintre axe nu afișează date?">
Câmpul selectat nu are valori pentru înregistrările din filtrul tău sau tipul câmpului nu se potrivește cu datele așteptate.
**Pentru remediere:** Încearcă un alt câmp sau verifică dacă înregistrările au valori pentru câmpul selectat.
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,75 @@
---
title: Tablouri de Bord
description: Învățați noțiunile de bază despre raportare și tablouri de bord în Twenty.
---
## Înțelegerea tablourilor de bord
Tablourile de bord din Twenty oferă o modalitate vizuală de a urmări indicatorii cheie de performanță și de a obține informații din datele dvs. din CRM.
<img src="/images/user-guide/dashboard/dashboards_v2.png" alt="Tablouri de Bord" />
## Concepte cheie
### Tablouri de Bord
Un tablou de bord este o colecție de file care afișează dintr-o privire datele dvs. din CRM. Puteți crea mai multe tablouri de bord pentru scopuri diferite:
* Performanța vânzărilor
* Activitatea echipei
* Starea pipeline-ului
* Indicatori personalizați
### Taburi
Filele vă permit să organizați tabloul de bord în secțiuni. Fiecare filă conține unul sau mai multe widgeturi.
### Widgeturi
Widgeturile sunt vizualizări individuale care afișează date specifice. Tipurile includ:
* Grafice cu bare
* Grafice circulare
* Grafice liniare
* Diagrame agregate
* iFrames
* Text îmbogățit
<Note>
**Limitări actuale**:
* Exportarea tablourilor de bord și partajarea cu utilizatori externi (utilizatori non-Twenty) nu sunt disponibile în acest moment.
* Graficele de tip indicator (gauge) nu sunt încă disponibile.
</Note>
## Începeți
### Crearea primului dvs. tablou de bord
1. Navigați la secțiunea **Tablouri de bord**
2. Faceți clic pe **+ Tablou de bord nou**
3. Dați un nume tabloului de bord
4. Adăugați file pentru a vă organiza conținutul
5. Adăugați widgeturi pentru a vă afișa datele
6. Salvează
### Adăugarea de widgeturi
1. Deschideți o filă în tabloul de bord
2. Faceți clic pe **+ Adaugă widget**
3. Selectați tipul de widget
4. Alegeți sursa de date (obiect)
5. Configurați setările widgetului
6. Salvați și vizualizați widgetul
## Cele mai bune practici
* **Începeți simplu**: Începeți cu câțiva indicatori cheie și adăugați mai mulți în timp
* **Concentrați-vă pe date acționabile**: Afișați indicatori care stau la baza deciziilor
* **Revizuire periodică**: Verificați tablourile de bord în mod regulat pentru a identifica tendințele
* **Partajați cu echipa**: Faceți tablourile de bord vizibile membrilor relevanți ai echipei
## Pașii următori
* [Widgeturi și vizualizări](/l/ro/user-guide/dashboards/capabilities/widgets)
* [Referință pentru setările graficului](/l/ro/user-guide/dashboards/capabilities/chart-settings)
* [Întrebări frecvente despre tablourile de bord](/l/ro/user-guide/dashboards/how-tos/dashboards-faq)

View File

@@ -0,0 +1,76 @@
---
title: Gestionarea erorilor și validarea
description: Revizuiți și corectați erorile de import direct în UI înainte de confirmare.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Validare înainte de import
După ce încărcați fișierul și mapați câmpurile, Twenty vă validează datele **înainte** de import. Acest lucru vă permite să depistați și să corectați erorile fără a afecta datele existente.
## Cum Funcționează
1. **Încărcați** fișierul CSV
2. **Mapați** coloanele la câmpurile Twenty
3. **Revizuiți** erorile potențiale evidențiate cu galben
4. **Corectați erorile** direct în UI
5. **Confirmați** importul
<VimeoEmbed videoId="1145273857" title="Demonstrație video" />
## Afișarea erorilor
Rândurile cu probleme sunt evidențiate cu **galben**. Puteți:
* **Editați celula direct** pentru a corecta eroarea
* **Eliminați rândul** pentru a-l omite complet
Această editare în linie economisește timp — nu mai este nevoie să reveniți la foaia de calcul, să corectați erorile și să reîncărcați.
## Tipuri comune de erori
### Valori duplicate
**Cauză**: Un câmp unic (email, domeniu) există deja în Twenty sau apare de două ori în fișier.
**Remediere**:
* Editați valoarea duplicată în UI-ul de import
* Eliminați unul dintre rândurile duplicate
Consultați [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints) pentru mai multe detalii despre cum este aplicată unicitatea.
### Format invalid
**Cauză**: Datele nu corespund formatului așteptat (de ex., adresă de e-mail invalidă, format de dată greșit).
**Remediere**: Editați celula pentru a folosi formatul corect.
Consultați [Maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping) pentru formatul așteptat al fiecărui tip de câmp.
### Lipsesc câmpuri obligatorii
**Cauză**: Un câmp obligatoriu este gol.
**Remediere**: Introduceți o valoare în câmpul obligatoriu sau eliminați rândul.
### Relația nu a fost găsită
**Cauză**: Înregistrarea de referință nu există (de ex., un domeniu de Companie care nu a fost importat).
**Remediere**:
* Importați mai întâi înregistrările părinte
* Sau corectați valoarea de referință
Consultați [Importul relațiilor](/l/ro/user-guide/data-migration/capabilities/import-relations) pentru ordinea corectă de import și cum să legați înregistrările.
## Sfaturi pentru mai puține erori
1. **Descărcați șablonul** pentru a vedea formatul așteptat înainte de a importa fișierul dvs.
2. **Curățați datele** mai întâi în foaia de calcul
3. **Importați fișierele în ordinea corectă** pentru a importa relațiile (Companii → Persoane → Oportunități)
4. **Testați cu loturi mici** înainte de importul complet
5. **Verificați duplicatele** înainte de încărcare
6. **Limitați fiecare fișier la 10.000 de înregistrări**

View File

@@ -0,0 +1,198 @@
---
title: Maparea câmpurilor
description: Cum funcționează maparea câmpurilor în timpul importului de date.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Cum funcționează maparea câmpurilor
Când încărcați un fișier, Twenty analizează coloanele și încearcă să le potrivească cu câmpurile existente.
### Mapare automată
Twenty încearcă să potrivească coloanele pe baza:
* Numele antetelor de coloană (potriviri exacte sau similare)
* Detecția tipului de date (date, numere, e-mailuri)
* Tipare comune de câmp
<Note>**Sfat rapid:** Exportați câteva rânduri din obiectul pe care doriți să-l importați. Fișierul exportat va avea exact numele de coloane pe care Twenty le așteaptă, ceea ce face ca maparea automată să fie fără probleme în timpul importului.</Note>
### Opțiuni de mapare manuală
Pentru fiecare coloană, puteți:
* **Mapați la un câmp**: Selectați câmpul Twenty corespunzător dintr-un meniu derulant
* **Nu mapați**: Omiteți complet coloana (datele nu vor fi importate)
<Note>**Câmpurile trebuie să existe înainte de import.** Importul creează înregistrări, nu câmpuri. Creați câmpuri personalizate în **Setări → Model de date** înainte de import.</Note>
## Compatibilitatea tipurilor de câmp
Toate tipurile de câmp disponibile în Modelul de date sunt acceptate pentru import.
Puteți importa și valori `id` pentru a atribui un ID specific înregistrărilor noi sau pentru a le actualiza pe cele existente.
<img src="/images/user-guide/fields/all-field-types.png" style={{width:'100%'}} />
## Cerințe privind formatul datelor
<Note>**Unele câmpuri au o sintaxă specială.** Vă recomandăm să descărcați fișierul exemplu înainte de pregătirea importului, pentru a vedea sintaxa așteptată pentru fiecare tip de câmp.</Note>
### Câmpuri de adresă
Adresa este un câmp îmbricat cu mai multe coloane. Unele pot fi lăsate necompletate.
* **Adresă / Adresă 1**: Linia 1 a adresei stradale
* **Adresă / Adresă 2**: Linia 2 a adresei stradale
* **Adresă / Oraș**: Numele orașului
* **Adresă / Stat**: Stat sau provincie
* **Adresă / Țară**: Numele țării
* **Adresă / Cod poștal**: Cod poștal/ZIP
### Câmpuri de tip array
Folosiți următorul format:
```
["value1","value2"]
```
### Câmpuri booleene
Folosiți `TRUE` sau `FALSE` (cu majuscule) - nu `true` sau `false`
### Câmpuri de monedă
Moneda este un câmp îmbricat cu două coloane care trebuie ambele completate:
* **Sumă / Sumă**: Valoarea numerică (de ex., `1234.56`)
* **Sumă / Monedă**: Codul monedei (de ex., `USD`, `EUR`)
### Câmpuri de dată
Formate acceptate:
* `YYYY-MM-DD` (recomandat)
* `MM/DD/YYYY`
* `DD/MM/YYYY`
* Format ISO 8601
### Câmpuri de domeniu
* Este recomandat să folosiți formatul `https://domain.com` pentru a evita crearea de duplicate, deoarece acesta este formatul folosit pentru Companiile create de sincronizările cu căsuța poștală și calendarul
* Se pot completa un `Domain Label` și un `Domain URL`: cea mai bună practică este să completați `domain.com` în etichetă și `https://domain.com` în URL
* Domeniile trebuie să fie unice în obiectul Companii
* **Domeniile trebuie să fie unice în fișierul de importat**
### Câmpuri de e-mail
* Trebuie să fie în format de e-mail valid
* E-mailurile trebuie să fie unice în obiectul Persoane
* **E-mailurile trebuie să fie unice în fișierul de importat**
* Pentru e-mailuri suplimentare: folosiți **E-mailuri / E-mail principal** pentru e-mailul principal și **E-mailuri / E-mailuri suplimentare** cu acest format:
```
["jane@twenty.com","jane.doe@twenty.com"]
```
### Câmpuri ID
Specificarea unui `id` în timpul importului este opțională. Twenty generează automat unul dacă nu este furnizat.
Cazuri de utilizare pentru maparea unei coloane `id`:
* **Setați un ID specific**: Alegeți UUID-ul pentru înregistrările nou create
* **Actualizați înregistrările existente**: Potriviți cu înregistrările existente pentru a le actualiza în loc să creați duplicate. În acest caz, se recomandă să nu mapați celelalte câmpuri unice: maparea unui singur câmp unic asigură un import mai lin.
<Note>Dacă furnizați un `id`, acesta trebuie să fie în format UUID (de ex., `c776ee49-f608-4a77-8cc8-6fe96ae1e43f`).</Note>
### Câmpuri JSON
Folosiți un format JSON valid:
```
{"key":"value","key2":"value2"}
```
### Câmpuri pentru linkuri
Similar cu câmpurile de domeniu:
* Completați ambele coloane, eticheta și URL-ul: **Linkuri / URL link** și **Linkuri / Etichetă link**
* Folosiți formatul URL complet: `https://example.com`
* Pentru linkurile secundare, folosiți coloana **Linkuri / Linkuri secundare** cu acest format:
```
[{"url":"https://twenty.com","label":"Twenty"}]
```
### Câmpuri cu selecție multiplă
Folosiți **numele API** (nu etichetele de afișare) în următorul format:
```
["VALUE1","VALUE2"]
```
Consultați [aici](#finding-api-names-for-select-fields) unde puteți găsi numele API.
<Note>Opțiunile noi de selectare nu vor fi create automat de import. Acestea trebuie adăugate în **Setări → Model de date** înainte de import.</Note>
<Warning>
**Importă suprascrieri; nu adaugă.**
Dacă o înregistrare are deja selectate `VALUE2` și `VALUE3`, iar importați `["VALUE1"]`, înregistrarea va avea doar `VALUE1` după import. Selecțiile anterioare sunt înlocuite, nu îmbinate.
</Warning>
### Câmpuri numerice
* Doar numere
* Zecimalele folosesc punctul: `1234.56`
* Fără separatori pentru mii
### Câmpuri de telefon
Telefonul este un câmp îmbricat cu mai multe coloane care **trebuie completate**
* **Telefoane / Număr de telefon principal**: Numărul de telefon (de ex., `4159095555`)
* **Telefoane / Codul de țară al telefonului principal**: Codul de țară (de ex., `US`)
* **Telefoane / Prefixul de apelare al telefonului principal**: Prefixul de apelare (de ex., `+1`)
### Câmpuri de rating
Folosiți formatul numelui API: `RATING_1`, `RATING_2`, `RATING_3`, `RATING_4`, `RATING_5`
### Câmpuri de relație
Consultați articolul nostru dedicat: [Importul relațiilor dintre obiecte](/l/ro/user-guide/data-migration/capabilities/import-relations)
### Câmpuri de selectare
Folosiți **numele API** al opțiunii (nu eticheta de afișare):
```
VALUE1
```
Consultați [aici](#finding-api-names-for-select-fields) unde puteți găsi numele API.
<Note>Opțiunile noi de selectare nu vor fi create automat în urma importului. Acestea trebuie adăugate în **Setări → Model de date** înainte de import.</Note>
### Câmpuri text
* Nu este necesară nicio formatare specială
* Spațiile de la început și de la sfârșit sunt eliminate
## Găsirea numelor API
Pentru câmpurile Select, Multi-Select și Array cu opțiuni predefinite, trebuie să utilizați **numele API**, nu etichetele de afișare.
### Cum găsiți numele API
1. Accesați **Setări → Model de date**
2. Selectați obiectul și câmpul
3. Activați **Modul avansat** (comutator în dreapta jos a paginii de setări)
4. Vizualizați numele API pentru fiecare opțiune
<VimeoEmbed videoId="1144910809" title="Demonstrație video" />

View File

@@ -0,0 +1,48 @@
---
title: Formate de fișiere acceptate!
description: Formate de fișier acceptate pentru importul de date în Twenty.
---
## Formate acceptate
Twenty acceptă trei formate de fișier pentru import:
| Format | Extensie | Notițe |
| ----------------- | -------- | ------------------------------ |
| **CSV** | .csv | Recomandat, cel mai compatibil |
| **Excel** | .xlsx | Format Excel modern |
| **Excel (vechi)** | .xls | Format Excel mai vechi |
## Cerințe pentru fișiere
| Cerință | Valoare |
| -------------------------- | -------------------------------------------------- |
| **Codare** | Se recomandă UTF-8 |
| **Limită de înregistrări** | 10.000 de înregistrări pe fișier |
| **Structură** | Primul rând trebuie să conțină antetele coloanelor |
| **Conținut** | Un singur tip de obiect pe fișier |
## Cele mai bune practici pentru CSV
* **Delimitator**: utilizați virgula (`,`) sau punct și virgulă (`;`)
* **Calificator de text**: utilizați ghilimele duble (`"`) pentru text care conține virgule
* **Sfârșituri de linie**: Windows (CRLF) sau Unix (LF), ambele sunt acceptate
* **Valori goale**: Lăsați celulele necompletate, nu folosiți "NULL" sau "N/A"
## Cele mai bune practici pentru Excel
Când exportați din Excel:
* Eliminați formulele (exportați doar valorile)
* Ștergeți rândurile goale de la final
* Asigurați-vă că nu există celule îmbinate
* Folosiți doar prima foaie
## Seturi de date mari
Pentru seturi de date mai mari de 10.000 de înregistrări:
* Împărțiți în mai multe fișiere
* Sau folosiți [importul prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api) pentru un număr nelimitat de înregistrări
<Note>Pentru migrarea unor volume foarte mari (peste 100.000 de înregistrări), API-ul este semnificativ mai rapid și mai fiabil decât importurile CSV.</Note>

View File

@@ -0,0 +1,148 @@
---
title: Importați relațiile dintre obiecte
description: Importați relațiile dintre înregistrări prin CSV.
---
## Prezentare generală
Twenty acceptă importul relațiilor dintre obiecte în timpul importului CSV. Acest lucru vă permite să conectați înregistrări (de ex., să atașați Persoane la Companii) ca parte a migrării datelor.
<Note>**În prezent acceptat pentru import**: Relații de tip unu-la-mulți care indică spre un singur tip de obiect pe fiecare parte (de ex., Persoane → Companii). Relațiile care indică către mai multe tipuri de obiecte nu sunt încă acceptate pentru import/export.</Note>
## Cum funcționează relațiile în Twenty
### Unu la mulți / Mulți la unu
Twenty acceptă relații standard în care o înregistrare se leagă de multe altele:
* **O Companie → Multe Persoane**: O companie poate avea mai mulți angajați, dar fiecare persoană aparține unei singure companii
* **O Companie → Multe Oportunități**: O companie poate avea mai multe oportunități, dar fiecare oportunitate aparține unei singure companii
### Relații care pot indica către mai multe tipuri de obiecte
Unele relații se pot conecta la diferite tipuri de obiecte. Acest lucru funcționează în două moduri:
**Modelul 1: Multe înregistrări care se leagă fiecare de o singură înregistrare din tipuri de obiecte diferite**
Mai multe note sau sarcini pot fi atașate fiecăruia la mai multe tipuri de obiecte simultan:
* **Notele** pot fi legate simultan de o Persoană, o Companie și o Oportunitate
* **Sarcinile** pot fi legate simultan de o Persoană, o Companie și o Oportunitate
Aici, Notele/Sarcinile se află pe partea „mulți”. Fiecare se leagă de o singură înregistrare pentru fiecare tip de obiect.
<img src="/images/user-guide/fields/many-to-one-morph.png" style={{width:'100%'}} />
**Modelul 2: O înregistrare care primește legături de la multe înregistrări din tipuri de obiecte diferite**
Un Proiect poate primi legături de la multiple înregistrări din diferite tipuri de obiecte:
* **Un Proiect** poate avea multe Persoane legate de el, multe Companii legate de el și multe Note atașate la el
Aici, Proiectul se află pe partea „unu”. Mai multe înregistrări din obiecte diferite se pot conecta toate la același Proiect.
<img src="/images/user-guide/fields/one-to-many-morph.png" style={{width:'100%'}} />
<Warning>
**Limitare de import/export**: Relațiile care indică către mai multe tipuri de obiecte (cum ar fi Note → Persoane/Companii/Oportunități) nu sunt **încă acceptate** la importul sau exportul CSV.
* **Import**: Numai relațiile unu-la-mulți care indică spre un singur tip de obiect pe fiecare parte pot fi importate
* **Export**: Coloanele pentru relațiile care indică către mai multe tipuri de obiecte sunt în prezent lăsate necompletate
Această funcționalitate este în planul nostru de dezvoltare.
</Warning>
### Ce nu este acceptat astăzi
**Relațiile mulți-la-mulți** nu sunt încă disponibile. De exemplu, în prezent nu puteți crea o relație în care:
* Multe Persoane sunt legate de multe Proiecte
<Note>Multe relatii sunt planificate pentru H2 2026.</Note>
## Asocierea înregistrărilor în timpul importului
<Note>**Reamintire**: Doar relațiile unu-la-mulți care indică spre un singur tip de obiect pot fi importate (de ex., Persoane → Companii). Relațiile care indică către mai multe tipuri de obiecte (de ex., Note → Persoane/Companii/Oportunități) nu sunt încă acceptate.</Note>
### Pasul 1: Identificați părțile „unu” și „mulți”
Mai întâi, determinați care obiect se află pe partea „unu” și care pe partea „mulți” a relației.
**Exemplu**:
* **Compania** este partea „unu” (o companie are mulți angajați)
* **Persoane** este partea „mulți” (fiecare persoană aparține unei singure companii)
### Pasul 2: Asigurați existența înregistrărilor de pe partea „unu”
Înainte de a importa partea „mulți”, înregistrările de pe partea „unu” trebuie să existe deja în Twenty.
* Importați sau creați mai întâi înregistrările de pe partea „unu” (de ex., Companii)
* Validați identificatorul lor unic. Acesta poate fi:
* `id` (UUID-ul Twenty)
* Un câmp setat ca unic (de ex., `domain` pentru Companii sau un ID extern din sistemul dvs. anterior)
<Warning>Importul va eșua dacă se face referire la o înregistrare care nu există.</Warning>
### Pasul 3: Pregătiți fișierul CSV
Adăugați o coloană în fișierul CSV pentru partea „mulți” care face referire la înregistrarea de pe partea „unu”.
**Exemplu**: Pentru un fișier CSV cu Persoane care se leagă de Companii:
```
firstName,lastName,email,companyDomain
John,Smith,john@acme.com,https://acme.com
Jane,Doe,jane@widgets.co,https://widgets.co
```
**Important**:
* Valoarea trebuie să se potrivească **exact** cu câmpul unic din înregistrarea Companiei
* Pentru domenii, folosiți **URL-ul domeniului** (de ex., `https://acme.com`), nu eticheta domeniului
* Mapați doar **un** identificator unic per relație: acest lucru duce la un import mai lin
### Pasul 4: Verificați existența câmpului de relație
Înainte de a încărca fișierul, asigurați-vă că există câmpul de relație între obiectele dvs.
Dacă nu există:
1. Accesați **Setări → Model de date**
2. Selectați obiectul (de ex., Persoane)
3. Creați un câmp de relație care indică spre obiectul țintă (de ex., Companie)
### Pasul 5: Încărcați și mapați relația
1. Încărcați fișierul CSV prin interfața de import
2. În pasul de mapare a câmpurilor, găsiți coloana relației (de ex., `companyDomain`)
3. Mapați-o la câmpul de relație (de ex., Companie)
4. Twenty va lega automat fiecare înregistrare de părintele corespunzător
### Câmpuri unice disponibile pentru relații
| Obiect | Câmpuri unice disponibile |
| ------------------------------------------ | -------------------------------------------- |
| **Companii** | `id`, `domain`, orice câmp unic personalizat |
| **Persoane** | `id`, `email`, orice câmp unic personalizat |
| **Membri ai spațiului de lucru** | `id`, `email` (nu numele) |
| **Alte obiecte standard și personalizate** | `id`, orice câmp marcat ca unic |
<Note>**Conectarea la Membrii Workspace-ului**: Când relația indică către Membrii Workspace-ului (echipa dvs. care se autentifică în Twenty), referiți-vă la ei prin **adresa de email**, nu prin nume.</Note>
<Note>Recomandăm folosirea `domain` pentru Companii și `email` pentru Persoane, deoarece acestea sunt ușor de citit și ușor de întreținut în foi de calcul.</Note>
<Note>**Reamintire**: Înregistrările șterse soft (vizibile în Command Menu → See deleted records) se iau în calcul pentru criteriile de unicitate. Dacă importați o înregistrare cu aceeași valoare unică ca o înregistrare ștearsă, înregistrarea ștearsă va fi restaurată. Consultați [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints) pentru mai multe detalii.</Note>
## Regula ordinii de import
<Warning>
**Importați întotdeauna mai întâi partea „unu”!**
1. **Companii** mai întâi (fără dependențe)
2. **Persoane** în al doilea rând (legate de Companii)
3. **Oportunități** în al treilea rând (legate de Companii/Persoane)
4. **Obiecte personalizate** respectând dependențele lor
Înregistrarea părinte trebuie să existe înainte de a o putea referi.
</Warning>

View File

@@ -0,0 +1,72 @@
---
title: Constrângeri de unicitate
description: Cum impune Twenty unicitatea datelor în timpul importului.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Prezentare generală
Twenty impune unicitatea pentru anumite câmpuri pentru a preveni înregistrările duplicate și a asigura integritatea datelor. Înțelegerea acestor constrângeri este esențială pentru importuri reușite.
## Câmpuri unice implicite
| Obiect | Câmpuri unice |
| ------------------------- | -------------------- |
| **Persoane** | `id`, `email` |
| **Companii** | `id`, `domain` |
| **Obiecte personalizate** | doar `id` (implicit) |
<Note>Câmpul `id` este identificatorul intern al Twenty, generat automat pentru fiecare înregistrare. Acesta folosește formatul UUID (de ex., `c776ee49-f608-4a77-8cc8-6fe96ae1e43f`).</Note>
## Câmpuri unice personalizate
Puteți defini câmpuri unice suplimentare în **Setări → Model de date**:
1. Accesați **Setări → Model de date**
2. Selectați obiectul
3. Faceți clic pe un câmp
4. Activați **Unique** în setările câmpului
### Cazuri de utilizare pentru câmpuri unice personalizate
* **ID-uri externe**: Stocați ID-uri din alte sisteme (Salesforce ID, HubSpot ID)
* **Identificatori de afaceri**: Numere de angajat, coduri de client
* **Informații de contact alternative**: Profil LinkedIn, număr de telefon
<Note>Numele câmpului `id` este rezervat pentru ID-ul intern al Twenty. Folosiți un nume diferit, precum `externalId` sau `legacyId`, pentru identificatori externi.</Note>
## Comportamentul importului
### Crearea de înregistrări noi
Dacă valoarea unui câmp unic nu există, se creează o înregistrare nouă.
### Actualizarea înregistrărilor existente
Dacă valoarea unui câmp unic se potrivește cu o înregistrare existentă, acea înregistrare este **actualizată** cu noile date.
<Warning>Pentru a **actualiza înregistrările existente**, se recomandă să **potriviți un singur câmp unic**.</Warning>
### Înregistrări șterse logic
<Warning>
**Înregistrările șterse logic se iau în calcul pentru unicitate.**
Înregistrările șterse logic (vizibile în Command Menu → See deleted records) sunt incluse în verificările de unicitate. Dacă importați o înregistrare cu aceeași valoare unică ca o înregistrare ștearsă, înregistrarea ștearsă va fi **restaurată** cu noile date.
</Warning>
## Detectarea duplicatelor în timpul importului
În timpul etapei de validare:
* Duplicatele din fișier sunt evidențiate cu galben
* Puteți edita sau elimina rândurile duplicate din interfață înainte de a începe importul
<VimeoEmbed videoId="1145246326" title="Demonstrație video" />
## Cele mai bune practici
1. **Eliminați duplicatele** din fișier înainte de import
2. **Verificați dacă există înregistrări** în Twenty înainte de import
3. **Folosiți ID-uri externe** când migrați din alte sisteme
4. **Includeți câmpuri unice** dacă doriți să actualizați înregistrările existente

View File

@@ -0,0 +1,32 @@
---
title: Export întrebări frecvente
description: Întrebări frecvente despre exportul datelor.
---
<AccordionGroup>
<Accordion title="Putem exporta toate datele din spațiul de lucru înainte de anulare, inclusiv obiecte personalizate, câmpuri personalizate, relații, note, sarcini, oportunități, atașamente, fluxuri de lucru, permisiuni și istoricul auditului?">
Datele privind spațiul de lucru pot fi exportate înainte de anulare, cu unele excepții: tablourile de bord, fluxurile de lucru și permisiunile trebuie transferate manual; jurnalele de audit nu pot fi transferate.
</Accordion>
<Accordion title="Ce elemente nu pot fi exportate sau migrate în prezent?">
Majoritatea elementelor pot fi exportate sau migrate cu unele excepții:
* fluxuri de lucru, tablouri de bord și toate setările (chei API, webhooks, jurnale de audit, setări de utilizator etc.) trebuie să fie migrat manual
* Obiectele și câmpurile create de aplicații pot fi migrate prin instalarea aplicației respective într-un spațiu de lucru diferit. Nu ar trebui să fie migrate manual
* unele înregistrări, cum ar fi versiunile fluxului de lucru și rulările fluxului de lucru, nu sunt deloc transferabile și se preconizează că vor fi pierdute
* unele obiecte precum mesaje și obiecte legate de calendar nu ar trebui exportate deoarece sunt create atunci când un cont este conectat și sincronizat periodic. Vor fi sincronizate din nou odată ce vă conectați contul (atâta timp cât aveți acces la contul menționat, dacă este un cont al unui membru al echipei care a părăsit compania ta, atunci acele mesaje trebuie să fie exportate, altfel vor fi pierdute)
</Accordion>
<Accordion title="Există un cloud oficial pentru o procedură de migrație auto-găzduită sau un serviciu de migrație asistată?">
Până în prezent, nu există o procedură oficială de migrare „cloud-to-held”. Ideea generală este următoarea:
* în primul rând, instalați aplicații pentru a introduce obiecte și câmpuri deținute de aplicație
* reproduce obiecte și câmpuri personalizate adăugate de utilizatori
* utilizați un script cu chei API sau instrumente AI pentru a migra toate datele dintr-un spațiu de lucru în altul
* toate obiectele netransferabile trebuie să fie migrate manual
Vă rugăm să fiţi conştienţi de câteva lucruri:
* poți trimite până la 50 de cereri pe minut în planul Pro sau 100 de cereri pe minut în planul organizației înainte de a atinge o limită solicitare/min
* fiecare cerere API poate avea până la 200 de înregistrări
* unele date din câmpuri cum ar fi Create, Activități Cronologie și Actualizate de vor fi pierdute în timpul importului și suprascrise de sistem
</Accordion>
<Accordion title="Fișierele exportate sunt furnizate în formate deschise și documentate?">
Fișierele exportate în UI sunt în format Excel și toate cererile API pot fi salvate în format JSON.
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,209 @@
---
title: Exportați-vă datele
description: Ghid complet, pas cu pas, pentru exportul datelor din Twenty.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Prezentare generală
Exportați datele spațiului de lucru în CSV pentru copii de siguranță, raportare sau migrare.
**Cazuri de utilizare:**
* **Copii de siguranță regulate** — păstrați copii ale datelor dvs.
* **Raportare externă** — analizați datele în Excel, Google Sheets sau instrumente BI
* **Migrare** — mutați datele într-un alt sistem
* **Actualizări în masă** — exportați, editați și reimportați pentru a actualiza înregistrările
## Ce trebuie să știți
### Limite de export
* **Maxim 20.000 de înregistrări** pentru fiecare export
* Sunt exportate doar **coloanele vizibile**
* Sunt exportate doar **înregistrările filtrate** (pe baza vizualizării curente)
<Note>Pentru exporturi mai mari (20.000+ înregistrări), utilizați filtre pentru a exporta în loturi sau folosiți [API](/l/ro/developers/extend/api).</Note>
### Permisiuni
Aveți nevoie de permisiunea **"Export CSV"** pentru a exporta date. Contactați administratorul spațiului de lucru dacă nu aveți această opțiune.
## Pasul 1: Navigați la obiect
Accesați obiectul pe care doriți să-l exportați:
* **Persoane** — pentru contacte
* **Companii** — pentru organizații
* **Oportunități** — pentru tranzacții
* **Obiecte personalizate** — orice obiect pe care l-ați creat
## Pasul 2: Configurați vizualizarea
**Important:** Exportul include doar ceea ce este vizibil în vizualizarea curentă.
### Adăugați/Eliminați coloane
1. Faceți clic pe **Opțiuni → Câmpuri** (sau pe **+** la capătul coloanelor)
2. Bifați câmpurile pe care doriți să le exportați
3. Debifați câmpurile de care nu aveți nevoie
### Filtrați înregistrările (opțional)
Dacă aveți nevoie doar de un subset de date:
1. Faceți clic pe **Filtru**
2. Adăugați condiții de filtrare (de ex., "Created date > 1 ianuarie 2024")
3. Vor fi exportate doar înregistrările care se potrivesc
### Sortați înregistrările (opțional)
1. Faceți clic pe antetul unei coloane pentru a sorta
2. Exportul va respecta ordinea de sortare
<Note>**Creați o vizualizare dedicată pentru export.** Salvați o vizualizare configurată specific pentru exporturi, astfel încât să nu fie nevoie să reconfigurați de fiecare dată.</Note>
## Pasul 3: Exportați datele
1. Faceți clic pe pictograma **⋮** din dreapta sus a tabelului
2. Selectați **Exportați vizualizarea**
3. Alegeți unde să salvați fișierul CSV
4. Așteptați finalizarea descărcării
## Ce se exportă
| Incluse | Neincluse |
| ------------------------------------------------ | ----------------------------------- |
| Toate coloanele vizibile | Coloane ascunse |
| Înregistrări care se potrivesc filtrelor curente | Înregistrări excluse de filtre |
| Valori ale câmpurilor personalizate | Câmpuri care nu sunt în vizualizare |
| ID-uri ale înregistrărilor | Atașamente de fișiere |
| ID-uri de relație | Imagini |
### Câmpuri de relație
ID-urile relațiilor sunt exportate doar pe **partea "many"** a unei relații:
* **Exportul de Persoane** include o coloană `companyId` (relația Persoane → Companie)
* **Exportul de Companii** NU include `peopleIds` (Companii este partea "one")
Asta înseamnă că puteți folosi exportul de Persoane pentru a reimporta și menține legătura cu Compania, dar va trebui să reimportați Persoanele după Companii pentru a recrea relațiile.
## Export pentru scopuri specifice
### Pentru copii de siguranță
1. Creați o vizualizare cu **toate câmpurile** vizibile
2. Eliminați toate filtrele pentru a include toate înregistrările
3. Exportați fiecare tip de obiect separat
4. Stocați exporturile într-o locație sigură
5. Setați un memento recurent (săptămânal/lunar)
### Pentru raportare externă
1. Includeți doar câmpurile necesare pentru analiză
2. Aplicați filtre pentru a vă concentra pe datele relevante
3. Luați în considerare sortarea după câmpul pe care îl veți analiza
### Pentru actualizări în masă
1. Exportați înregistrările pe care doriți să le actualizați
2. Includeți identificatorul unic (`email`, `domain` sau `id`)
3. Editați fișierul exportat
4. Reimportați pentru a actualiza înregistrările
Consultați: [Cum să actualizați înregistrările existente](/l/ro/user-guide/data-migration/how-tos/update-existing-records-via-import)
### Pentru migrare
Dacă exportați pentru a migra către un alt sistem:
1. **Exportați fiecare obiect separat** — Persoane, Companii, Oportunități etc.
2. **Includeți câmpurile de ID** — acestea ajută la menținerea relațiilor
3. **Documentați mapările câmpurilor** — notați cum câmpurile Twenty corespund sistemului țintă
## Gestionarea seturilor de date mari (20.000+ înregistrări)
Limita de export este de 20.000 de înregistrări. Pentru seturi de date mai mari:
### Opțiunea 1: Export în loturi
1. Adăugați un filtru (de ex., intervale "Created date")
2. Exportați primul lot
3. Modificați filtrul
4. Exportați următorul lot
5. Combinați fișierele în foaia de calcul
**Exemple de filtre pentru lotizare:**
* După interval de date (ianuarie, februarie, martie...)
* După proprietar (Membru al echipei A, Membru al echipei B...)
* După statut (Activ, Inactiv...)
### Opțiunea 2: Utilizați API-ul
API-ul nu are limită de înregistrări:
1. Obțineți cheia API din **Setări → Dezvoltatori**
2. Utilizați API-ul GraphQL pentru a interoga înregistrări
3. Procesați rezultatele în aplicația dvs.
Consultați: [Documentație API](/l/ro/developers/extend/api)
## Sfaturi și bune practici
### Creați vizualizări pentru export
Salvați vizualizări configurate special pentru export:
1. Configurați coloanele și filtrele
2. Faceți clic pe **Opțiuni pentru vizualizare** → **Salvați ca vizualizare nouă**
3. Denumiți-o "Export - [Scop]"
### Securizați-vă exporturile
Fișierele exportate pot conține date sensibile:
* Stocați în locații sigure
* Ștergeți exporturile vechi când nu mai sunt necesare
* Aveți grijă când partajați fișierele de export
### Verificați înainte de export
<Check>Coloanele corecte sunt vizibile</Check>
<Check>Filtrele sunt setate corect (sau eliminate pentru export complet)</Check>
<Check>Aveți permisiunea de export</Check>
## Întrebări frecvente
<AccordionGroup>
<Accordion title="De ce lipsesc unele coloane din exportul meu?">
Sunt exportate doar coloanele vizibile. Adăugați coloanele de care aveți nevoie prin **Opțiuni → Câmpuri** înainte de export.
</Accordion>
<Accordion title="De ce nu conține exportul meu toate înregistrările?">
Verificați filtrele. Exportul include doar înregistrările care se potrivesc filtrelor vizualizării curente. Eliminați filtrele pentru a exporta toate înregistrările.
</Accordion>
<Accordion title="Pot exporta mai mult de 20.000 de înregistrări?">
Nu într-un singur export. Folosiți filtre pentru a exporta în loturi sau utilizați API-ul pentru seturi de date mai mari.
</Accordion>
<Accordion title="În ce format este fișierul de export?">
CSV (valori separate prin virgulă). Se deschide în Excel, Google Sheets sau orice aplicație de foi de calcul.
</Accordion>
<Accordion title="Sunt incluse ID-urile de relație?">
Da, dar numai pe partea "many" a relațiilor. De exemplu, un export de Persoane include `companyId`, dar un export de Companii nu include ID-urile persoanelor.
</Accordion>
<Accordion title="Pot automatiza exporturile?">
Nu direct prin interfața de utilizator. Utilizați API-ul pentru a construi fluxuri de lucru de export automatizate.
</Accordion>
</AccordionGroup>
## Pașii următori
* [Cum să actualizați înregistrările existente](/l/ro/user-guide/data-migration/how-tos/update-existing-records-via-import) — editați și reimportați exportul
* [Cum să importați date prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api) — pentru seturi de date mari
* [Documentație API](/l/ro/developers/extend/api) — creați fluxuri de lucru de export personalizate

View File

@@ -0,0 +1,430 @@
---
title: Remediați erorile de import
description: Ghid complet de depanare pentru remedierea erorilor de import CSV.
---
## Prezentare generală
Importul nu funcționează? Acest ghid vă ajută să identificați și să remediați, pas cu pas, erorile comune de import.
## Cum funcționează validarea
După încărcarea fișierului și cartografierea coloanelor, douăzeci validează datele:
1. **Se execută validarea** — Douăzeci de verificări pentru fiecare rând pentru erori
2. **Erorile sunt evidențiate** - în **galben** apar rânduri problematice
3. **Poți repara la locul tău** - editează celulele direct în interfața de import
4. **Sau eliminați rândurile** - săriți peste înregistrările problematice în întregime
<Note>**Repară erorile în UI.** Nu trebuie să te întorci la foaia de calcul. Editează celulele direct în timpul importului pentru a economisi timp.</Note>
## Depanare pas cu pas
### Pasul 1: Identifică tipul de eroare
Dă click pe un rând evidențiat pentru a vedea mesajul de eroare specific. Tipuri de erori comune:
| Mesaj de eroare | Ce înseamnă |
| ------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
| Valori duplicate evidențiate în galben | Valoarea există deja în 20 sau apare de două ori în fișierul dvs. |
| `{field} nu este un {type}` (planează pe celula galbenă) | Datele nu corespund formatului așteptat |
| Câmp obligatoriu evidențiat | Un câmp obligatoriu este gol |
| `Nu se poate conecta la {object}. Nu s-a găsit nicio înregistrare unică...` (import fails) | Nu exista inregistrare referita |
| \`Prea multe înregistrări. Până la 10000 permise" (încărcare blocată) | Fișierul are mai mult de 10.000 de înregistrări |
### Pasul 2: Repară eroarea
Urmați instrucțiunile specifice de mai jos pentru fiecare tip de eroare.
---
## Eroare: Valoare Duplicată
### Ce veți vedea
Rândurile cu valori duplicat sunt **evidențiate în galben** în interfața de import înainte de începerea importului.
### Ce înseamnă
Un câmp unic (e-mail, domeniu) fie:
* Există deja în douăzeci de ani
* Apare de două ori în fișier
### Cum să repari
**Opțiunea 1: Editare valoare duplicat**
1. Faceți clic pe celula cu eroare
2. Schimbă la o valoare unică
3. Continuă cu import
**Opțiunea 2: eliminarea rândului duplicat**
1. Faceți clic pe X de lângă rând
2. Rândul va fi omis în timpul importului
**Opțiunea 3: permiterea actualizării a douăzeci de înregistrări existente**
1. Asigurați-vă că fișierul dvs. include un identificator unic (`email`, `domain`, sau `id`)
2. Hartă câmp unic de identificator
3. Douăzeci de persoane vor actualiza înregistrarea existentă în loc să creeze un duplicat
<Note>
**Puteți actualiza și câmpurile unice.**
* Dacă păstrați `id` dar schimbați `e-mail` → e-mail-ul va fi actualizat
* Dacă păstraţi `e-mail` dar schimbaţi `id` → id-ul va fi actualizat
Atâta timp cât un identificator unic se potrivește, douăzeci actualizează înregistrarea.
</Note>
### Cum să preveniți această eroare
Înainte de import:
1. Sortează foaia de calcul după câmpul unic
2. Elimină rândurile duplicate
3. Verificați dacă înregistrările există deja în douăzeci
<Warning>
**Numar de inregistrari soft-eliminate catre unic.**
Verificaţi Meniul de Comenzi → Vezi înregistrările şterse. (Automatic Translation) Înregistrările de acolo trebuie încă să fie unice. Ștergeți definitiv sau restabiliți și actualizați.
</Warning>
Pentru mai multe detalii: [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints)
---
## Eroare: Format invalid
### Ce veți vedea
Valoarea celulei este evidențiată în galben. Apasă pentru a vedea mesajul de eroare:
```
{field name} is not a valid {field type}
```
### Ce înseamnă
Datele nu corespund formatului așteptat pentru tipul de câmp.
### Cum să repari — după tipul câmpului
#### Email
**Problemă:** Format e-mail nevalid
**Soluție:** Folosiți formatul `name@domain.com`
```
❌ john.smith@
❌ john smith@acme.com
✓ john.smith@acme.com
```
#### Domeniu
**Problemă:** Formatul consecvent poate cauza duplicate
**Soluție:** Folosiți formatul `https://domain.com` (recomandat)
```
⚠️ acme.com (valid, but not recommended)
⚠️ www.acme.com (valid, but not recommended)
✅ https://acme.com (recommended)
```
<Note>Toate formatele sunt valide, dar `https://domain.com` este recomandat pentru că se potrivește cu formatul folosit de sincronizarea e-mail/calendar. Utilizarea altor formate poate crea companii duplicate.</Note>
#### Dată
**Problemă:** Format de dată nerecunoscut
**Soluție:** Folosește formatul `YYYY-MM-DD` în mod consecvent în întregul fișier
```
✓ 2024-03-15 (YYYY-MM-DD)
❌ 03/15/2024 (MM/DD/YYYY)
❌ 15/03/2024 (DD/MM/YYYY)
```
#### Telefon
**Problemă:** Lipsește coloanele necesare
**Soluție:** Include toate coloanele de telefon
| Coloana | Exemplu |
| -------------------------------------------------------- | ------------ |
| **Telefon / Număr de telefon principal** | `4159095555` |
| **Codul de țară al telefonului principal / Telefonului** | `US` |
| **Cod telefon / apel telefonic** | `+1` |
#### Boolean
**Problemă:** Valoare booleană greșită
**Soluție:** Folosește majuscule `TRUE` sau `FALSE`
```
❌ true
❌ yes
❌ 1
✓ TRUE
✓ FALSE
```
#### Selectați / Multi-Selectare
**Problemă:** Valoarea nu corespunde cu opțiunile existente
**Soluție:** Folosiți **nume API**, nu afișați etichetele
Cum să găsești numele API:
1. Mergeți la **Setări → Modelul de date**
2. Selectați obiectul și câmpul
3. Activează **Mod avansat** (comutare în dreapta jos)
4. Utilizați numele API (de exemplu, `OPTION_1`, nu "Opțiunea 1")
```
❌ High Priority
✓ HIGH_PRIORITY
```
#### Monedă
**Problemă:** Lipsește suma sau codul monedei
**Soluție:** Umple ambele coloane
| Coloana | Exemplu |
| ----------------- | --------- |
| **Sumă / Sumă** | `1234.56` |
| **Sumă / Monedă** | `USD` |
#### Număr
**Problemă:** Caractere nenumărate
**Soluţie:** Doar numere, perioadă pentru zecimale
```
❌ $1,234.56
❌ 1,234.56
✓ 1234.56
```
Pentru trimiterea completă a formatului: [câmp Mapping](/l/ro/user-guide/data-migration/capabilities/field-mapping)
---
## Eroare: Câmpul obligatoriu lipsește
### Ce veți vedea
Rândul este evidențiat cu galben cu celula de câmp dorită.
### Ce înseamnă
Un câmp obligatoriu este gol pentru acest rând.
### Cum să repari
**Opțiunea 1: Introduceți o valoare**
1. Faceți clic pe celula goală
2. Introduceți o valoare
3. Continuă cu import
**Opțiunea 2: eliminarea rândului**
1. Dacă nu ai date, apasă X pentru a sări peste rând
### Cum să preveniți această eroare
Înainte de import, identificați câmpurile obligatorii:
1. Mergeți la **Setări → Modelul de date**
2. Selectează obiectul tău
3. Verificați care câmpuri sunt marcate ca obligatorii
---
## Eroare: Relația nu a fost găsită
### Ce veți vedea
Această eroare apare **după începerea importului** - importul eșuează cu un mesaj precum:
```
Can't connect to company. No unique record found with condition: id = 7776ee49-f608-4a77-8cc8-6fe96ae1e43f
```
Aceasta înseamnă că nu există nicio societate comercială în douăzeci de exemplare cu acest identificator specific.
<Note>Spre deosebire de alte erori, aceasta nu este prinsă în timpul pasului de revizuire a datelor. Importul va începe şi apoi va eşua atunci când se întâlneşte cu relaţia lipsă.</Note>
### Ce înseamnă
Încercați să vă conectați la o înregistrare care nu există în douăzeci de ani.
### Cum să repari
**Opțiunea 1: Importați mai întâi înregistrările părinte**
1. Anulează importul curent
2. Importă înregistrările părinte (de exemplu, societăți)
3. Apoi se importă înregistrările cu copii (de exemplu, oameni)
\*\*Opțiunea 2: Repararea valorii de referință
1. Verifică valoarea de referință din fișierul tău
2. Asigurați-vă că se potrivește exact cu o înregistrare existentă
3. Verificați formatul: domeniile ar trebui să fie `https://domain.com`
**Opțiunea 3: Eliminarea relației**
1. Curăță celula de importat fără legătură
2. Adaugă relația manual mai târziu
### Cum să preveniți această eroare
1. **Importă în ordinea corectă:**
* Societăți primele
* Persoane a doua (cu referința companiei)
* Oportunități a treia
2. **Verificați valorile de referință:**
* Exporta inregistrarile parinte pentru a obtine identificatori exacti
* Folosiți formatul de domeniu `https://domain.com`
* Verificați dacă există caractere și senzitivitatea carcaselor
<Warning>
**Importul va eşua dacă se face referire la o înregistrare inexistentă.**
Întotdeauna importă obiecte părinte înainte de obiecte copil.
</Warning>
Pentru mai multe detalii: [Importă Relații](/l/ro/user-guide/data-migration/capabilities/import-relations)
---
## Eroare: Fișier prea mare
### Ce veți vedea
Această eroare apare **la încărcarea fișierului** — încărcarea este blocată în întregime:
```
Too many records. Up to 10000 allowed
```
Nu veți putea trece la pasul de revizuire a datelor până când nu reduceți dimensiunea fișierului.
### Ce înseamnă
Fişierul are mai mult de 10.000 de înregistrări.
### Cum să repari
**Opțiunea 1: Împărțirea în mai multe fișiere**
1. Împărțiți datele în fișiere cu 10.000 de înregistrări sau mai puține
2. Importă fiecare fișier separat
3. Menține comanda de import (Companiile înainte de oameni)
**Opțiunea 2: Utilizați API import**
pentru seturi de date foarte mari, utilizați API-ul care nu are o limită de înregistrare.
Vedeți: [Cum să importați date prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api)
---
## Eroare: Câmpul nu este recunoscut
### Ce înseamnă
O coloană din fișierul dvs. nu poate fi cartografiată deoarece câmpul nu există în Twenty.
### Cum să repari
1. Mergeți la **Setări → Modelul de date**
2. Selectați obiectul pe care îl importați
3. Click \*\*+ Adauga cîmp \*\*
4. Creați câmpul personalizat cu tipul corespunzător
5. Reîncărcați fișierul
<Note>Importul CSV creează înregistrări, nu câmpuri. Toate câmpurile trebuie să existe înainte de import.</Note>
---
## Eroare: Relația utilizatorului este goală
### Ce înseamnă
Încercați să atribuiți o înregistrare unui utilizator (Owner, Assignee), dar relația nu este cartografiată.
### Frecvente Cauze
1. **Utilizatorul nu și-a acceptat invitația** — utilizatorul nu există încă în douăzeci de ani
2. **Folosind ID-ul utilizatorului din vechi** — Douăzeci de utilizatori nu se pot potrivi ID-urile din alt sistem
3. **Format de e-mail greșit** - e-mailul nu se potrivește cu contul de 20 de utilizatori
### Cum să repari
1. Asigurați-vă că toți utilizatorii și-au **acceptat invitația** în spațiul de lucru de douăzeci
2. Folosiți **adresa de e-mail a utilizatorului** (nu numele sau vechea ID-ul de sistem)
3. Folosiți același e-mail pe care l-au folosit pentru a se alătura celor douăzeci
<Warning>
**Utilizatorii trebuie să accepte invitațiile înainte de import.**
Dacă un utilizator nu a acceptat invitația, înregistrările cu privire la ei vor avea relații de utilizator goale.
</Warning>
---
## Lista de verificare pre-import
Evită erorile verificându-le înainte de import:
### Fişier Cerinţe
<Check>Fișierul este CSV, XLSX sau formatul XLS</Check>
<Check>Fișierul are mai puțin de 10.000 înregistrări</Check>
<Check>Fișierul folosește codificarea UTF-8</Check>
### Calitatea datelor
<Check>Nu există e-mailuri duplicate (pentru oameni)</Check>
<Check>Nu există domenii duplicate (pentru companii)</Check>
<Check>Toate datele folosesc formatul consistent</Check>
<Check>Toate domeniile folosesc \`https://domain. formatul</Check>
### Formate câmp
<Check>Câmpurile Boolean folosesc `TRUE` sau `FALSE` (majuscule)</Check>
<Check>Selectează câmpurile folosesc numele API, nu afișează etichetele</Check>
<Check>Câmpurile de telefon au toate coloanele obligatorii</Check>
<Check>Câmpurile valutare au atât Suma cât și Codul Valutar</Check>
### Relații
<Check>Înregistrările părinte importate înainte de înregistrările copil</Check>
<Check>Coloane de referință înregistrările existente</Check>
<Check>Formatul domeniului corespunde formatului Twenty exact</Check>
### Model de date
<Check>Toate câmpurile personalizate există în Setări → Modelul de date</Check>
<Check>Există opțiuni înainte de a importa</Check>
---
## Încă aveți probleme?
Dacă aţi încercat soluţiile de mai sus:
1. **Descarcă eșantionul de fișier** - vezi formatul exact pe care douăzeci îl așteaptă
2. **Exportă înregistrările existente** - compară fișierul cu datele de lucru
3. **Testează cu un lot mic** - încearcă mai întâi 5-10 rânduri
4. **Verificați articolele de referință:**
* [Mapare câmpuri](/l/ro/user-guide/data-migration/capabilities/field-mapping)
* [Constrângeri unice](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints)
* [Importă Relații](/l/ro/user-guide/data-migration/capabilities/import-relations)
* [Gestionare eroare](/l/ro/user-guide/data-migration/capabilities/error-handling)

View File

@@ -0,0 +1,201 @@
---
title: Importați companii via CSV
description: Ghid complet, pas cu pas, pentru importul companiilor în Twenty.
---
## Prezentare generală
Acest ghid vă arată cum să importați companiile în Twenty. **Companiile ar trebui importate mai întâi** deoarece Persoanele și Oportunitățile se leagă de Companii.
## Înainte de a începe
### Listă de verificare a condițiilor prealabile
<Check>
Fișierul este în format CSV, XLSX sau XLS
</Check>
<Check>
Fișierul are mai puțin de 10.000 de înregistrări
</Check>
<Check>
Niciun domeniu duplicat în fișierul dvs.
</Check>
<Check>
Toate câmpurile personalizate există în **Setări → Model de date**
</Check>
<Note>
Trebuie să importați mai mult de 10.000 de companii? Împărțiți în mai multe fișiere sau utilizați [importul prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api).
</Note>
## Pasul 1: Pregătiți datele companiei
### Câmpuri obligatorii și recomandate
| Câmp | Obligatoriu? | Format | Notițe |
| ------------------------- | ------------ | -------------------- | ------------------------------------ |
| **Name** | Recomandat | Text | Numele afișat al companiei |
| **Domeniu** | Recomandat | `https://domain.com` | Identificator unic |
| **Adresă** | Opțional | Mai multe coloane | Consultați mai jos |
| **Angajați** | Opțional | Număr | Număr de angajați |
| **Câmpuri personalizate** | Opțional | Variază | Trebuie să existe în Modelul de date |
### Formatul domeniului
<Warning>
**Folosiți formatul `https://domain.com` pentru domenii.**
Acesta corespunde formatului folosit când Companiile sunt create automat din sincronizarea emailului/calendarului, prevenind duplicatele ulterior.
</Warning>
**Coloane pentru domeniu:**
* **Domeniu / Etichetă de domeniu**: `acme.com`
* **Domeniu / URL domeniu**: `https://acme.com`
### Formatul adresei
Adresa este un câmp îmbricat cu mai multe coloane:
```
Address / Address 1,Address / City,Address / State,Address / Country,Address / Post Code
123 Main Street,San Francisco,CA,USA,94105
```
### Exemplu de structură CSV
```csv
name,Domain / Domain URL,Domain / Domain Label,Address / City,Address / Country,employees
Acme Corp,https://acme.com,acme.com,San Francisco,USA,250
Widget Co,https://widgets.co,widgets.co,New York,USA,50
```
<Note>
**Sfat profesional:** Faceți clic pe **Download sample file** în timpul importului pentru a vedea denumirile exacte ale coloanelor pe care le așteaptă Twenty.
</Note>
## Pasul 2: Accesați funcția de import
**Opțiunea 1: Din vizualizarea Companii**
1. Navigați la **Companii** în bara laterală stângă
2. Faceți clic pe pictograma **⋮** din dreapta sus
3. Selectați **Importă înregistrări**
**Opțiunea 2: Folosind meniul de comenzi**
1. Apăsați `Cmd + K` (Mac) sau `Ctrl + K` (Windows)
2. Tastați "import"
3. Selectați **Importă înregistrări**
4. Alegeți **Companii**
## Pasul 3: Încărcați fișierul
1. Faceți clic pe **Select file**
2. Alegeți fișierul CSV, XLSX sau XLS
3. Așteptați ca Twenty să analizeze fișierul
## Pasul 4: Mapați coloanele
Twenty încearcă automat să potrivească coloanele cu câmpurile. Revizuiți și ajustați:
1. **Verificați mapările automate** — confirmați că sunt corecte
2. **Corectați mapările incorecte** — faceți clic pe lista derulantă pentru a selecta câmpul corect
3. **Omiteți coloanele** — selectați **Do not map** pentru coloanele pe care nu doriți să le importați
### Reguli importante de mapare
* **Domeniu**: Mapați la **Domain / Domain URL** (nu la Domain Label)
* **Adresă**: Mapați fiecare parte la coloana sa specifică (City, State etc.)
* **Câmpuri Select**: Valorile trebuie să corespundă opțiunilor existente (sau le veți mapa în pasul următor)
<img src="/images/user-guide/import-export-data/match-columns.png" style={{width:'100%'}} />
## Pasul 5: Mapați valorile câmpurilor Select
Dacă aveți câmpuri Select sau Multi-Select:
1. Twenty afișează valorile dvs. alături de opțiunile existente
2. Asociați fiecare valoare din fișierul dvs. cu o opțiune Twenty
3. Sau creați opțiuni noi, dacă este necesar
<Note>
Opțiunile Select folosesc **nume API**, nu etichete de afișare. Accesați **Setări → Model de date** → activați **Mod avansat** pentru a vedea numele API.
</Note>
## Pasul 6: Revizuiți și remediați erorile
Înainte de a finaliza importul, Twenty vă validează datele:
1. Faceți clic pe **Pașii următori**
2. Rândurile cu erori sunt evidențiate cu **galben**
3. **Remediați erorile direct** — faceți clic pe o celulă și editați valoarea
4. **Eliminați rândurile problematice** — faceți clic pe X pentru a sări peste acel rând
### Erori frecvente la importul companiilor
| Eroare | Cauză | Soluție |
| ----------------------------- | ------------------------------ | ------------------------------------------------------------ |
| **Domeniu duplicat** | Domeniul există deja în Twenty | Eliminați din fișier sau actualizați înregistrarea existentă |
| **Format de domeniu invalid** | Format greșit | Folosiți `https://domain.com` |
| **Câmp obligatoriu lipsă** | Câmpul obligatoriu este gol | Completați valoarea sau eliminați rândul |
## Pasul 7: Finalizați importul
1. Revizuiți rezumatul importului
2. Faceți clic pe **Confirmă** pentru a importa
3. Așteptați finalizarea importului
4. Verificați consultând câteva înregistrări
## După importarea companiilor
Acum puteți importa înregistrări care se leagă de Companii:
1. **[Importați Persoane](/l/ro/user-guide/data-migration/how-tos/import-contacts-via-csv)** — legați-le de Companii folosind domeniul
2. **Importați Oportunități** — legați-le de Companii
3. **Verificați importul** — verificați punctual câteva înregistrări pentru a vă asigura că datele sunt corecte
## Actualizarea companiilor existente
Pentru a actualiza companiile în loc să creați unele noi:
1. Includeți coloana `domain` sau `id` în fișierul dvs.
2. Twenty potrivește înregistrările după acest identificator unic
3. Companiile existente sunt actualizate; cele noi sunt create
Consultați [Cum să actualizați înregistrările existente](/l/ro/user-guide/data-migration/how-tos/update-existing-records-via-import) pentru detalii.
## Întrebări frecvente
<AccordionGroup>
<Accordion title="De ce nu pot două companii să aibă același domeniu?">
Domeniul este un identificator unic în Twenty. Acest lucru previne companiile duplicate și asigură că sincronizarea emailului leagă corect emailurile de compania potrivită.
</Accordion>
<Accordion title="Ce fac dacă am companii fără domeniu?">
Puteți lăsa domeniul necompletat. Totuși, recomandăm să adăugați domenii atunci când este posibil, pentru o calitate mai bună a datelor și pentru legarea automată a emailurilor.
</Accordion>
<Accordion title="Pot importa companii fără nicio Persoană asociată?">
Da! Puteți importa mai întâi companiile, apoi să importați ulterior Persoane și să le asociați folosind domeniul companiei.
</Accordion>
<Accordion title="Ce se întâmplă dacă import un domeniu care există deja?">
Dacă includeți un identificator unic (domeniu sau id) care se potrivește unei companii existente, Twenty actualizează acea companie în loc să creeze un duplicat.
</Accordion>
<Accordion title="Cum remediez erorile 'duplicate domain'?">
Eliminați duplicatul din fișier sau includeți `id`-ul companiei pentru a actualiza în schimb înregistrarea existentă.
</Accordion>
</AccordionGroup>
## Depanare
Aveți probleme? Verificați:
* [Cum să remediați erorile de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors)
* [Referință pentru maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping)
* [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints)

View File

@@ -0,0 +1,242 @@
---
title: Importați contacte via CSV
description: Ghid complet, pas cu pas, pentru importul persoanelor/contactelor în Twenty.
---
## Prezentare generală
Acest ghid vă arată cum să importați contactele (Persoane) în Twenty.
## Înainte de a începe
### Listă de verificare a condițiilor prealabile
<Check>
Fișierul este în format CSV, XLSX sau XLS
</Check>
<Check>
Fișierul are mai puțin de 10.000 de înregistrări
</Check>
<Check>
Nicio adresă de e-mail duplicată în fișier
</Check>
<Check>
**Companiile importate mai întâi** (dacă legați Persoane de Companii)
</Check>
<Check>
Toate câmpurile personalizate există în **Setări → Model de date**
</Check>
<Warning>
**Importați Companiile înaintea Persoanelor**
Dacă doriți să legați Persoane de Companii, importați mai întâi Companiile. Compania trebuie să existe înainte de a o putea referi.
</Warning>
## Pasul 1: Pregătiți datele de contact
### Câmpuri obligatorii și recomandate
| Câmp | Obligatoriu? | Format | Notițe |
| ------------------------- | ------------ | ----------------- | ------------------------------------ |
| **Email** | Recomandat | `name@domain.com` | Trebuie să fie unică |
| **Prenume** | Recomandat | Text | |
| **Nume de familie** | Recomandat | Text | |
| **Companie** | Opțional | Domeniu sau ID | Leagă de Compania existentă |
| **Telefon** | Opțional | Mai multe coloane | Consultați mai jos |
| **Funcție** | Opțional | Text | |
| **Câmpuri personalizate** | Opțional | Variază | Trebuie să existe în Modelul de date |
### Format e-mail
* Trebuie să fie în format de e-mail valid: `name@domain.com`
* **Trebuie să fie unică** — fără duplicate în fișierul dvs. sau în Twenty
* Pentru e-mailuri suplimentare, folosiți coloana **Emails / Additional Emails**:
```
["jane@twenty.com","jane.doe@twenty.com"]
```
### Format telefon
Telefonul este un **câmp îmbricat** care necesită mai multe coloane:
| Coloană | Exemplu |
| --------------------------------------- | ------------ |
| **Phones / Primary Phone Number** | `4159095555` |
| **Phones / Primary Phone Country Code** | `US` |
| **Phones / Primary Phone Calling Code** | `+1` |
### Conectarea la Companii
Adăugați o coloană cu identificatorul unic al Companiei:
| Nume coloană | Format | Exemplu |
| --------------- | ---------- | -------------------------------------- |
| `companyDomain` | Format URL | `https://acme.com` |
| `companyId` | UUID | `c776ee49-f608-4a77-8cc8-6fe96ae1e43f` |
<Note>
**Folosiți formatul URL de domeniu** (`https://acme.com`), nu eticheta. Acest lucru corespunde modului în care Companiile sunt stocate în Twenty.
</Note>
### Exemplu de structură CSV
```csv
firstName,lastName,email,jobTitle,companyDomain,Phones / Primary Phone Number,Phones / Primary Phone Country Code
John,Smith,john@acme.com,CEO,https://acme.com,4159095555,US
Jane,Doe,jane@widgets.co,CTO,https://widgets.co,2125551234,US
```
<Note>
**Sfat profesional:** Faceți clic pe **Download sample file** în timpul importului sau exportați câteva Persoane existente pentru a vedea denumirile exacte ale coloanelor pe care le așteaptă Twenty.
</Note>
## Pasul 2: Accesați funcția de import
**Opțiunea 1: Din vizualizarea Persoane**
1. Navigați la **Persoane** în bara laterală stângă
2. Faceți clic pe pictograma **⋮** din dreapta sus
3. Selectați **Importă înregistrări**
**Opțiunea 2: Folosind meniul de comenzi**
1. Apăsați `Cmd + K` (Mac) sau `Ctrl + K` (Windows)
2. Tastați "import"
3. Selectați **Importă înregistrări**
4. Alegeți **Persoane**
## Pasul 3: Încărcați fișierul
1. Faceți clic pe **Select file**
2. Alegeți fișierul CSV, XLSX sau XLS
3. Așteptați ca Twenty să analizeze fișierul
## Pasul 4: Mapați coloanele
Twenty încearcă automat să potrivească coloanele cu câmpurile. Revizuiți și ajustați:
1. **Verificați mapările automate** — confirmați că sunt corecte
2. **Corectați mapările incorecte** — faceți clic pe lista derulantă pentru a selecta câmpul corect
3. **Omiteți coloanele** — selectați **Do not map** pentru coloanele pe care nu doriți să le importați
### Reguli importante de mapare
| Tip coloană | Mapați la | Notițe |
| ---------------------- | ------------------------------ | -------------------------------------- |
| Referință companie | Câmpul de relație **Company** | Folosiți domeniul SAU id-ul, nu ambele |
| Email | **Email** | Adresă de e-mail principală |
| E-mailuri suplimentare | **Emails / Additional Emails** | Format de array |
| Telefon | Coloane separate | Număr, Codul țării, Prefix de apelare |
<img src="/images/user-guide/import-export-data/match-columns.png" style={{width:'100%'}} />
### Maparea relației de Companie
Când mapați coloana companiei:
1. Găsiți coloana de referință a companiei (de ex., `companyDomain`)
2. Mapați-o la câmpul de relație **Company**
3. Twenty va lega fiecare Persoană de Compania corespunzătoare
<Warning>
**Mapați un singur identificator unic pentru relații.**
Nu mapați atât `companyId`, cât și `companyDomain`. Alegeți una — de preferat domeniul, deoarece este ușor de citit de către oameni.
</Warning>
## Pasul 5: Mapați valorile câmpurilor Select
Dacă aveți câmpuri Select sau Multi-Select (cum ar fi Sursa leadului):
1. Twenty afișează valorile dvs. alături de opțiunile existente
2. Asociați fiecare valoare din fișierul dvs. cu o opțiune Twenty
3. Sau creați opțiuni noi, dacă este necesar
<Note>
Opțiunile Select folosesc **nume API**, nu etichete de afișare. Accesați **Setări → Model de date** → activați **Mod avansat** pentru a vedea numele API.
</Note>
## Pasul 6: Revizuiți și remediați erorile
Înainte de a finaliza importul, Twenty vă validează datele:
1. Faceți clic pe **Pașii următori**
2. Rândurile cu erori sunt evidențiate cu **galben**
3. **Remediați erorile direct** — faceți clic pe o celulă și editați valoarea
4. **Eliminați rândurile problematice** — faceți clic pe X pentru a sări peste acel rând
### Erori frecvente la importul contactelor
| Eroare | Cauză | Soluție |
| ---------------------------- | ------------------------------------------- | ------------------------------------------------------------ |
| **Email duplicat** | Emailul există deja în Twenty sau în fișier | Eliminați duplicatul sau actualizați înregistrarea existentă |
| **Format de email invalid** | Formatul emailului este incorect | Corectați la `name@domain.com` |
| **Relația nu a fost găsită** | Compania nu există | Importați mai întâi Companiile sau corectați referința |
| **Câmp obligatoriu lipsă** | Câmpul obligatoriu este gol | Completați valoarea sau eliminați rândul |
## Pasul 7: Finalizați importul
1. Revizuiți rezumatul importului
2. Faceți clic pe **Confirmă** pentru a importa
3. Așteptați finalizarea importului
4. Verificați examinând câteva înregistrări și linkurile lor către Companie
## După importarea contactelor
Contactele dvs. sunt acum în Twenty! Pașii următori:
1. **Verificați linkurile către Companie** — deschideți câteva înregistrări de tip Persoană pentru a confirma că sunt legate de Compania corectă
2. **Importați Oportunități** — dacă este nevoie, legați-le de Persoane și Companii
3. **Configurați sincronizarea emailului** — conectați căsuța poștală pentru a vedea istoricul emailurilor în înregistrările de contact
## Actualizarea contactelor existente
Pentru a actualiza contactele în loc să creați unele noi:
1. Includeți coloana `email` sau `id` în fișierul dvs.
2. Twenty potrivește înregistrările după acest identificator unic
3. Contactele existente sunt actualizate; cele noi sunt create
Consultați [Cum să actualizați înregistrările existente](/l/ro/user-guide/data-migration/how-tos/update-existing-records-via-import) pentru detalii.
## Întrebări frecvente
<AccordionGroup>
<Accordion title="De ce nu pot două Persoane să aibă același email?">
Emailul este un identificator unic în Twenty. Acest lucru previne contactele duplicate și asigură că sincronizarea emailului leagă corect emailurile de persoana potrivită.
</Accordion>
<Accordion title="Ce fac dacă am Persoane fără email?">
Puteți lăsa câmpul email necompletat. Totuși, recomandăm să adăugați emailuri când este posibil, pentru o calitate mai bună a datelor și pentru o funcționalitate mai bună a sincronizării emailului.
</Accordion>
<Accordion title="Cum leg Persoanele de Companii în timpul importului?">
Adăugați o coloană cu domeniul Companiei (de ex., `https://acme.com`) sau ID-ul. În timpul mapării, conectați această coloană la câmpul de relație al Companiei.
</Accordion>
<Accordion title="Ce fac dacă Compania nu există încă?">
Importați mai întâi Companiile, apoi importați Persoanele. Compania trebuie să existe înainte de a o putea referi.
</Accordion>
<Accordion title="Pot importa ID-ul din CRM-ul meu anterior?">
Da! Creați un câmp personalizat marcat ca "unic" în modelul dvs. de date pentru a stoca ID-ul extern. Notă: numele câmpului `id` este rezervat pentru ID-ul intern al Twenty.
</Accordion>
<Accordion title="Cum remediez erorile 'relation not found'?">
Compania la care faceți referire nu există. Importați mai întâi Compania sau verificați că domeniul/ID-ul corespunde exact unei Companii existente.
</Accordion>
</AccordionGroup>
## Depanare
Aveți probleme? Verificați:
* [Cum să remediați erorile de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors)
* [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv)
* [Referință pentru maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping)

View File

@@ -0,0 +1,176 @@
---
title: Importați date prin API
description: Când și cum să utilizați API-urile Twenty pentru importuri de date la scară mare.
---
## Prezentare generală
Twenty oferă atât **GraphQL**, cât și **API-uri REST** pentru importul programatic de date. Utilizați API-ul când importul CSV nu este practic pentru volumul dvs. de date sau când aveți nevoie de importuri automate, recurente.
## Când să utilizați importul prin API
| Scenariu | Metodă recomandată |
| -------------------------------- | -------------------------------- |
| Sub 10.000 de înregistrări | Import CSV |
| 10.000 - 50.000 de înregistrări | Import CSV (împărțit în fișiere) |
| **Peste 50.000 de înregistrări** | **Import prin API** |
| Migrare unică | Oricare (în funcție de volum) |
| **Importuri recurente** | **Import prin API** |
| **Sincronizare în timp real** | **Import prin API** |
| **Integrare cu alte sisteme** | **Import prin API** |
<Note>Pentru seturi de date de ordinul sutelor de mii, API-ul este semnificativ mai rapid și mai fiabil decât importurile CSV multiple.</Note>
## Limitări de rată API
Twenty impune limitări de rată pentru a asigura stabilitatea sistemului:
| Limită | Valoare |
| -------------------------------- | ------------------------- |
| **Cereri pe minut** | 100 |
| **Înregistrări per apel de lot** | 60 |
| **Debit maxim** | ~6.000 înregistrări/minut |
<Warning>
**Planificați importul în jurul acestor limite.**
Pentru 100.000 de înregistrări la debit maxim, așteptați-vă la aproximativ 17 minute de timp de import. Adăugați timp tampon pentru gestionarea erorilor și reîncercări.
</Warning>
## Începeți
### Pasul 1: Obțineți cheia API
1. Accesați **Setări → Dezvoltatori**
2. Faceți clic pe **+ Creați cheie API**
3. Dați cheii un nume descriptiv
4. Copiați imediat cheia API (nu va mai fi afișată).
5. Stocați-o în siguranță
<Warning>
**Păstrați cheia API secretă.**
Oricine are cheia dvs. API poate accesa și modifica datele din spațiul dvs. de lucru. Nu o includeți niciodată în repozitorii de cod și nu o distribuiți public.
</Warning>
### Pasul 2: Alegeți API-ul
Twenty acceptă două tipuri de API:
| API | Cel mai potrivit pentru | Documentație |
| ----------- | --------------------------------------------------------------------- | ------------------------------------------ |
| **GraphQL** | Interogări flexibile, preluarea datelor asociate, operațiuni complexe | [Documentație API](/l/ro/developers/extend/api) |
| **REST** | Operațiuni CRUD simple, tipare REST familiare | [Documentație API](/l/ro/developers/extend/api) |
Ambele API-uri acceptă:
* Crearea, citirea, actualizarea și ștergerea înregistrărilor
* **Operațiuni în lot** — creați sau actualizați până la 60 de înregistrări per apel
**Pentru importuri, utilizați operațiuni în lot** pentru a maximiza debitul în limitele de rată.
### Pasul 3: Planificați ordinea de import
La fel ca la importurile CSV, **ordinea contează** pentru relații:
1. **Companii** mai întâi (fără dependențe)
2. **Persoane** în al doilea rând (pot fi legate de Companii)
3. **Oportunități** în al treilea rând (pot fi legate de Companii și Persoane)
4. **Sarcini/Note** (pot fi legate de oricare dintre cele de mai sus)
5. **Obiecte personalizate** (respectând dependențele lor)
## Cele mai bune practici
### Grupați cererile în loturi
* Nu trimiteți înregistrările una câte una
* Grupați până la **60 de înregistrări per apel API**
* Aceasta maximizează debitul în limitele de rată
### Gestionați limitările de rată
* Implementați întârzieri între cereri (minim 600 ms pentru importuri susținute)
* Utilizați backoff exponențial când atingeți limitele
* Monitorizați răspunsurile 429 (Too Many Requests)
### Validați datele mai întâi
* Curățați și validați datele înainte de import
* Verificați ca câmpurile obligatorii să fie completate
* Verificați că formatele corespund cerințelor Twenty (consultați [Maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping))
### Jurnalizați totul
* Jurnalizați fiecare înregistrare importată (inclusiv ID-urile)
* Jurnalizați erorile cu tot contextul
* Acest lucru ajută la depanarea problemelor și la verificarea finalizării
### Testați mai întâi
* Testați cu un lot mic (10-20 de înregistrări)
* Verificați că datele apar corect în Twenty
* Apoi rulați importul complet
### Upsert pentru a evita duplicatele
API-ul GraphQL acceptă **upsert în lot** — actualizați dacă înregistrarea există, creați dacă nu. Acest lucru previne duplicatele când rulați din nou importurile.
## Găsirea numelor de obiecte și câmpuri
Pentru a vedea obiectele și câmpurile disponibile:
1. Accesați **Setări → API și webhook-uri**
2. Explorați **Metadata API**
3. Vizualizați toate obiectele standard și personalizate cu câmpurile lor
Documentația prezintă toate obiectele standard și personalizate, câmpurile acestora și tipurile de date așteptate.
## Servicii Profesionale
Pentru migrații API complexe, partenerii noștri vă pot ajuta:
| Serviciu | Ce este inclus |
| --------------------------------- | ---------------------------------------- |
| **Proiectarea modelului de date** | proiectați structura optimă a datelor |
| **Scripturi de migrare** | scrieți și rulați scripturile de import |
| **Transformare de date** | gestionați maparea complexă și curățarea |
| **Validare și QA** | verificați că migrarea este completă |
**Cel mai potrivit pentru:**
* Migrări de peste 100.000 de înregistrări
* Transformări complexe ale datelor
* Termene strânse
* Echipe fără resurse de dezvoltare
Contactați-ne la [contact@twenty.com](mailto:contact@twenty.com) sau explorați [Serviciile noastre de implementare](/l/ro/user-guide/getting-started/capabilities/implementation-services).
## Întrebări frecvente
<AccordionGroup>
<Accordion title="Care este diferența dintre GraphQL și REST?">
GraphQL vă permite să solicitați exact datele de care aveți nevoie într-o singură interogare și este mai potrivit pentru operațiuni complexe. REST folosește metode HTTP standard (GET, POST, PUT, DELETE) și poate fi mai familiar dacă ați lucrat cu API-uri tradiționale.
</Accordion>
<Accordion title="Pot actualiza înregistrările existente prin API?">
Da! Utilizați mutații de tip update (GraphQL) sau cereri PUT/PATCH (REST) cu `id`-ul înregistrării.
</Accordion>
<Accordion title="Cum gestionez duplicatele?">
Interogați mai întâi înregistrările existente folosind identificatori unici (email, domeniu). Actualizați dacă există, creați dacă nu.
</Accordion>
<Accordion title="Pot șterge înregistrări prin API?">
Da, utilizați mutații de tip delete (GraphQL) sau cereri DELETE (REST).
</Accordion>
<Accordion title="Există un SDK pentru Python sau Node.js?">
În prezent nu, dar ambele API-uri funcționează cu orice client HTTP, în orice limbaj.
</Accordion>
</AccordionGroup>
## Documentație API
Pentru detalii complete de implementare, exemple de cod și referință de schemă:
* [Documentație API](/l/ro/developers/extend/api)

View File

@@ -0,0 +1,225 @@
---
title: Importați relațiile dintre obiecte prin CSV
description: Ghid complet, pas cu pas, pentru asocierea înregistrărilor în timpul importului CSV.
---
## Prezentare generală
Acest ghid vă arată cum să importați relațiile dintre obiecte — de exemplu, să asociați Persoane la Companii sau Oportunități la Persoane.
<Note>**Ce poate fi importat:** Doar relații de tip unu-la-mulți care indică către un singur tip de obiect. Relațiile care indică către mai multe tipuri de obiect (cum ar fi Notele care se leagă de Persoane ȘI Companii) nu sunt încă acceptate pentru import.</Note>
## Înțelegerea relațiilor
### Ce este o relație "unu-la-mulți"?
Într-o relație unu-la-mulți:
* **O** companie are **multe** persoane (angajați)
* **O** companie are **multe** oportunități
* **O** persoană are **multe** sarcini
Partea "unu" este **părintele**. Partea "mulți" este **copilul**.
### Relații obișnuite în Twenty
| Relație | Partea "unu" (părinte) | Partea "mulți" (copil) |
| ----------------------- | ---------------------- | ---------------------- |
| Companii → Persoane | Companie | Persoane |
| Companii → Oportunități | Companie | Oportunități |
| Persoane → Sarcini | Persoană | Sarcini |
| Persoane → Note | Persoană | Notițe |
## Pasul 1: Identificați părțile „unu” și „mulți”
Înainte de import, stabiliți care obiect este părinte și care este copil.
**Întrebați-vă:** "Are UN [Obiect A] MULTE [Obiect B]?"
* O companie → Multe persoane ✓ (Compania este părinte)
* O persoană → Multe companii ✗ (Greșit — o persoană aparține unei singure companii)
## Pasul 2: Importați mai întâi înregistrările părinte
Înregistrarea părinte (partea „unu”) trebuie să existe în Twenty înainte de a o putea referi.
**Ordinea importului:**
1. **Companii** mai întâi (fără dependențe)
2. **Persoane** în al doilea rând (legate de Companii)
3. **Oportunități** în al treilea rând (legate de Companii și/sau Persoane)
4. **Sarcini/Note** (legate de oricare dintre cele de mai sus)
<Warning>
**Dacă înregistrarea părinte nu există, importul va eșua.**
Verificați întotdeauna că companiile au fost importate înainte de a importa persoane cu referințe la companie.
</Warning>
## Pasul 3: Notați identificatorul unic al părintelui
Trebuie să faceți referire la înregistrarea părinte folosind un **identificator unic**. Opțiuni disponibile:
| Obiect părinte | Identificatori unici disponibili |
| -------------------------------- | ------------------------------------------------------------------- |
| **Companii** | `id` (UUID), `domain` (recomandat) sau orice câmp unic personalizat |
| **Persoane** | `id` (UUID), `email` sau orice câmp unic personalizat |
| **Membri ai Spațiului de Lucru** | `id` (UUID), `email` (nu numele) |
| **Obiecte personalizate** | `id` (UUID) sau orice câmp marcat ca unic |
<Note>**Recomandat:** Folosiți `domain` pentru Companii și `email` pentru Persoane. Acestea sunt ușor de citit de către oameni și ușor de verificat în foaia de calcul.</Note>
### Găsirea identificatorului
Dacă aveți nevoie de `id`:
1. Exportați înregistrările părinte din Twenty
2. Exportul include coloana `id`
3. Folosiți aceste ID-uri în fișierul cu înregistrări copil
## Pasul 4: Verificați existența câmpului de relație
Înainte de import, asigurați-vă că există câmpul de relație între obiectele dvs.
**Pentru a verifica sau crea:**
1. Accesați **Setări → Model de date**
2. Selectați obiectul copil (de ex., Persoane)
3. Căutați un câmp de relație care indică către părinte (de ex., Companie)
4. Dacă nu există, creați-l:
* Faceți clic pe **+ Adaugă câmp**
* Selectați tipul **Relație**
* Alegeți obiectul părinte
## Pasul 5: Pregătiți fișierul CSV
Adăugați o coloană în CSV-ul obiectului copil care face referire la părinte folosind identificatorul său unic.
### Exemplu: Persoane asociate cu Companii
**CSV-ul dvs. cu Persoane:**
```csv
firstName,lastName,email,jobTitle,companyDomain
John,Smith,john@acme.com,CEO,https://acme.com
Jane,Doe,jane@widgets.co,CTO,https://widgets.co
Bob,Johnson,bob@techstart.io,Developer,https://techstart.io
```
Coloana `companyDomain` face referire la domeniul companiei.
### Cerințe de format
| Identificator | Format | Exemplu |
| ------------- | -------------- | -------------------------------------- |
| Domeniu | Format URL | `https://acme.com` |
| Email | Email standard | `john@acme.com` |
| ID | UUID | `c776ee49-f608-4a77-8cc8-6fe96ae1e43f` |
<Warning>
**Formatul domeniului contează!**
Folosiți `https://domain.com` (nu doar `domain.com`). Acest lucru corespunde modului în care Twenty stochează domeniile companiilor și previne erorile de potrivire.
</Warning>
### Reguli importante
1. **Potrivire exactă necesară** — valoarea trebuie să corespundă exact înregistrării părinte
2. **Mapați doar UN identificator unic** — nu includeți atât `companyId`, cât și `companyDomain`
3. **Sensibil la majuscule/minuscule** — `Acme.com` ≠ `acme.com`
## Pasul 6: Încărcați și mapați relația
1. Navigați la obiectul copil (de ex., Persoane)
2. Faceți clic pe **⋮** → **Import records**
3. Încărcați fișierul CSV
4. În etapa de mapare a câmpurilor:
* Găsiți coloana relației (de ex., `companyDomain`)
* Mapați-o la câmpul de relație **Company**
5. Finalizați maparea rămasă
6. Revizuiți erorile și confirmați
Twenty va lega automat fiecare înregistrare copil de părintele corespunzător.
## Pasul 7: Verificați importul
După import:
1. Deschideți câteva înregistrări copil (de ex., Persoane)
2. Verificați că câmpul de relație arată părintele corect (de ex., Companie)
3. Deschideți o înregistrare părinte și verificați secțiunea de înregistrări asociate
## Greșeli comune de evitat
| Greșeală | Problemă | Soluție |
| -------------------------------------- | ---------------------------------------------------- | ------------------------------------------------------------------------------ |
| **Ordine greșită a importului** | Importarea Persoanelor înaintea Companiilor | Importați întotdeauna mai întâi părinții, apoi copiii |
| **Format de domeniu greșit** | Folosirea `acme.com` în loc de `https://acme.com` | Folosiți formatul URL complet cu `https://` |
| **Câmpuri unice multiple** | Maparea atât a `companyId`, cât și a `companyDomain` | Mapați un singur identificator unic |
| **Câmp de relație lipsă** | Câmpul de relație nu există în modelul de date | Creați-l în **Setări → Model de date** înainte de import |
| **Înregistrări inexistente** | Înregistrarea părinte nu există în Twenty | Importați mai întâi înregistrările părinte sau verificați greșelile de tastare |
| **Nepotrivire de majuscule/minuscule** | `Acme.com` în fișier, dar `acme.com` în Twenty | Asigurați potrivirea exactă a majusculelor/minusculelor |
## Legarea la membrii spațiului de lucru
Când legați la membrii spațiului de lucru (echipa dvs.):
* Folosiți **adresa de email**, nu numele
* Exemplu: `owner@yourcompany.com`, nu "John Smith"
```csv
taskName,assignedTo
Follow up with client,john@yourcompany.com
Review proposal,jane@yourcompany.com
```
## Întrebări frecvente
<AccordionGroup>
<Accordion title="Ce se întâmplă dacă înregistrarea mea părinte nu are un domeniu sau un email?">
Aveți două opțiuni:
1. Folosiți `id`-ul Twenty (exportați înregistrările părinte pentru a obține ID-urile lor)
2. Creați un câmp unic personalizat în modelul dvs. de date pentru a stoca un ID extern din sistemul anterior
</Accordion>
<Accordion title="Pot să actualizez relațiile la înregistrările existente?">
Da! Includeți identificatorul unic al înregistrării copil (de ex., `email` pentru Persoane) și noua valoare a relației. Importul va actualiza relația.
</Accordion>
<Accordion title="Pot să import relații de tip mulți-la-mulți?">
Relațiile mulți-la-mulți nu sunt încă acceptate pentru import. Aceasta este planificată pentru S1 2026.
</Accordion>
<Accordion title="Pot să leg la mai multe tipuri de obiecte (cum ar fi Note la Persoane ȘI Companii)?">
Relațiile care indică către mai multe tipuri de obiecte nu sunt încă acceptate pentru import/export. Această funcționalitate este în planul nostru de dezvoltare.
</Accordion>
<Accordion title="Ce se întâmplă dacă o înregistrare părinte nu există?">
Importul va afișa o eroare pentru acel rând. Puteți fie să:
* Importați mai întâi înregistrarea părinte, apoi reimportați
* Corectați valoarea de referință
* Eliminați rândul din import
</Accordion>
<Accordion title="De ce relația mea nu se leagă corect?">
Cauze comune:
* Format greșit (folosiți `https://domain.com` pentru domenii)
* Nepotrivire de majuscule/minuscule (verificați ortografia exactă)
* Părintele nu există (importați mai întâi părinții)
* Maparea mai multor identificatori (folosiți doar unul)
</Accordion>
</AccordionGroup>
<Warning>
**Rețineți: Înregistrările șterse logic se iau în calcul pentru unicitate.**
Dacă primiți erori „not found”, dar înregistrarea pare să existe, verificați Command Menu → See deleted records. Este posibil ca părintele să fi fost șters logic.
</Warning>
## Depanare
Aveți probleme? Verificați:
* [Cum să remediați erorile de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors)
* [Capabilități de import al relațiilor](/l/ro/user-guide/data-migration/capabilities/import-relations)
* [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints)

View File

@@ -0,0 +1,289 @@
---
title: Migrarea de la alte CRM-uri
description: Ghid pas cu pas pentru migrarea datelor din orice CRM către Twenty.
---
## Prezentare generală
Acest ghid vă ghidează prin procesul de migrare a datelor din orice CRM către Twenty. Procesul implică auditarea datelor, pregătirea spațiului de lucru Twenty, exportul din sistemul curent și importul în Twenty.
<Note>Vizualizările, fluxurile de lucru și permisiunile trebuie recreate manual după migrare. Planificați timp pentru această muncă de configurare.</Note>
## Pasul 1: Auditați datele curente
Migrarea este o oportunitate pentru un nou început. Nu transferați date inutile.
**Ce să păstrați:**
* Contacte și companii active
* Oportunități și tranzacții deschise
* Note și activități importante
* Câmpuri personalizate pe care le utilizați efectiv
**Ce să lăsați în urmă:**
* Contacte învechite (fără activitate de peste 2 ani)
* Înregistrări duplicate
* Date de test
* Câmpuri personalizate neutilizate
## Pasul 2: Mapați modelul de date
Creați un document de mapare între CRM-ul curent și Twenty:
| CRM-ul dvs. | Twenty |
| ------------------------- | ------------------------ |
| Cont / Organizație | **Companie** |
| Contact / Persoană | **Persoane** |
| Tranzacție / Oportunitate | **Oportunitate** |
| Activitate | **Sarcină** sau **Notă** |
| Obiect personalizat | **Obiect personalizat** |
**Pentru fiecare câmp, documentați:**
* Numele câmpului sursă
* Câmpul țintă din Twenty
* Orice transformări de format necesare (date, numere de telefon etc.)
<Note>Păstrați acest document de mapare la îndemână în timpul importului — îl veți folosi când mapați coloanele.</Note>
## Pasul 3: Configurați spațiul dvs. de lucru Twenty
Înainte de a importa date, pregătiți spațiul dvs. de lucru Twenty:
### Creați obiecte și câmpuri personalizate
1. Accesați **Setări → Model de date**
2. Creați obiectele personalizate de care aveți nevoie
3. Adăugați câmpuri personalizate la obiectele standard și personalizate
4. Configurați setările câmpurilor (unic, obligatoriu, opțiuni de selectare etc.)
<Warning>
**Câmpurile trebuie să existe înainte de import.**
Importul CSV creează înregistrări, nu câmpuri. Creați toate câmpurile personalizate în Setări → Model de date înainte de import.
</Warning>
### Invitați-vă echipa
<Warning>
**Invitați utilizatorii ÎNAINTE de a importa datele.**
Dacă datele dvs. includ referințe la utilizatori (Proprietar cont, Atribuit etc.), acei utilizatori trebuie să existe în Twenty înainte de import. În caz contrar, acele relații nu pot fi mapate.
</Warning>
1. Mergi la **Setări → Membri**
2. Invitați toți membrii echipei
3. **Așteptați ca toți să accepte** invitațiile
4. Verificați că toți utilizatorii apar în lista de Membri
## Pasul 4: Exportați din CRM-ul dvs. actual
Exportați datele din CRM-ul dvs. actual:
1. Căutați o funcție **Export** (de obicei la Setări, Gestionare date sau Admin)
2. Exportați în **format CSV** când este posibil
3. Exportați fiecare tip de obiect separat (Companii, Contacte, Tranzacții/Oportunități etc.)
4. Includeți toate câmpurile pe care doriți să le migrați
**Exportați aceste obiecte (în această ordine, pentru referință):**
1. Companii / Conturi / Organizații
2. Contacte / Persoane
3. Tranzacții / Oportunități
4. Note și activități
5. Obiecte personalizate
## Pasul 5: Curățați și formatați datele
Deschideți fiecare CSV exportat într-o aplicație de calcul tabelar și pregătiți-l pentru Twenty.
### Eliminați duplicatele
1. Sortați după câmpul unic (e-mail pentru Persoane, domeniu pentru Companii)
2. Eliminați sau îmbinați rândurile duplicate
3. Verificați că nu există deja duplicate în Twenty
### Formatați corect câmpurile
| Tipul câmpului | Format necesar |
| ------------------------ | --------------------------------------------------- |
| **Domeniu** | `https://domain.com` |
| **Email** | `name@domain.com` (trebuie să fie unic) |
| **Dată** | `YYYY-MM-DD` |
| **Telefon** | Trei coloane: Număr, Codul țării, Prefix de apelare |
| **Boolean** | `TRUE` sau `FALSE` (majuscule) |
| **Câmpuri de selectare** | Folosiți numele API, nu etichetele de afișare |
<Warning>
**Formatul domeniului este critic.**
Folosiți `https://domain.com` (nu `domain.com` sau `www.domain.com`). Acest lucru corespunde formatului Twenty și previne duplicatele când conectați sincronizarea e-mailului/calendarului.
</Warning>
Consultați [Cum să vă pregătiți fișierele CSV](/l/ro/user-guide/data-migration/how-tos/prepare-your-csv-files) pentru cerințe complete de formatare pentru toate tipurile de câmpuri.
### Adăugați coloane de relație
Pentru a lega înregistrări (de ex., Persoane la Companii), adăugați o coloană cu identificatorul unic al părintelui.
**Exemplu: CSV Persoane cu legătură la Companie**
```csv
firstName,lastName,email,companyDomain
John,Smith,john@acme.com,https://acme.com
Jane,Doe,jane@widgets.co,https://widgets.co
```
Consultați [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv) pentru instrucțiuni detaliate despre asocierea înregistrărilor.
### Actualizați referințele la utilizatori
Dacă datele dvs. includ atribuiri de utilizator (Proprietar, Atribuit):
1. Adăugați o coloană cu **e-mailul utilizatorului** (nu doar ID-ul lor din vechiul sistem)
2. Folosiți aceleași adrese de e-mail pe care utilizatorii le-au folosit pentru a se alătura spațiului dvs. de lucru Twenty
Consultați [Cum să vă pregătiți fișierele CSV](/l/ro/user-guide/data-migration/how-tos/prepare-your-csv-files) pentru ghidul complet de formatare.
## Pasul 6: Importați în Twenty
<Warning>
**Ordinea de import contează!**
Importați întotdeauna în această ordine:
1. **Companii** mai întâi (fără dependențe)
2. **Persoane** în al doilea rând (legate de Companii)
3. **Oportunități** în al treilea rând (legate de Companii/Persoane)
4. **Note și sarcini** (legate de înregistrări)
5. **Obiecte personalizate** respectând dependențele lor
Înregistrarea părinte trebuie să existe înainte de a o putea referi.
</Warning>
### Importați fiecare obiect
Pentru fiecare fișier CSV, în ordine:
1. Navigați la obiect în Twenty
2. Faceți clic pe **⋮ → Import records**
3. Încărcați fișierul CSV
4. Mapați coloanele la câmpuri:
* Mapați coloanele cu e-mailurile utilizatorilor la câmpurile de relație corespunzătoare
* Mapați coloanele de relație (precum `companyDomain`) la câmpurile de relație
5. Revizuiți și remediați eventualele erori în interfață
6. Confirmați importul
7. Verificați câteva înregistrări înainte de a trece la următorul fișier
**Ghiduri detaliate:**
* [Cum să importați companii](/l/ro/user-guide/data-migration/how-tos/import-companies-via-csv)
* [Cum să importați contacte](/l/ro/user-guide/data-migration/how-tos/import-contacts-via-csv)
* [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv)
## Pasul 7: Migrații de volum mare (peste 50.000 de înregistrări)
Pentru migrațiile de volum mare:
| Volum | Abordare recomandată |
| ------------------------------- | ---------------------------------- |
| Sub 10.000 de înregistrări | Import CSV unic |
| 10.000 - 50.000 de înregistrări | Împărțiți în mai multe fișiere CSV |
| Peste 50.000 de înregistrări | Folosiți API-ul |
**Pentru importuri prin API:**
* Mai rapid și mai fiabil pentru seturi mari de date
* Suportă operațiuni în lot (până la 60 de înregistrări per apel)
* Consultați [Cum să importați date prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api)
## Pasul 8: Configurare post-migrare
După importul datelor, finalizați configurarea spațiului de lucru:
### Recreați vizualizări
* Configurați vizualizări salvate cu filtre, sortări și configurații de coloane
* Creați orice vizualizări kanban sau calendar de care aveți nevoie
### Recrearea fluxurilor de lucru
* Recreați automatizările în **Setări → Fluxuri de lucru**
* Începeți cu cele mai critice fluxuri de lucru
* Testați fiecare înainte de a vă baza pe el
### Configurați roluri și permisiuni
* Configurați rolurile în **Setări → Membri → Roluri**
* Atribuiți utilizatorilor rolurile corespunzătoare
### Conectați e-mailul și calendarul
* Fiecare utilizator își conectează propriul cont în **Setări → Conturi**
* Twenty va începe să sincronizeze e-mailurile cu înregistrările de contact
* Consultați [E-mail și calendar](/l/ro/user-guide/calendar-emails/overview)
### Instruiți-vă echipa
* Parcurgeți împreună noua interfață
* Documentați orice procese specifice echipei
## Probleme comune și soluții
| Problemă | Cauză | Soluție |
| -------------------------------------- | ------------------------------------ | ---------------------------------------------------------------------------------------------------------------- |
| **Erori de duplicate** | E-mail/domeniu există deja | Eliminați duplicatele din fișier sau includeți un identificator unic pentru a actualiza înregistrările existente |
| **Relația nu a fost găsită** | Înregistrarea părinte nu există | Importați mai întâi obiectele părinte (Companii înaintea Persoanelor) |
| **Câmpuri lipsă** | Câmpul personalizat nu există | Creați câmpul în Setări → Model de date înainte de import |
| **Erori la câmpuri de selectare** | Utilizarea etichetelor de afișare | Folosiți numele API (activați modul Avansat în Setări pentru a le găsi) |
| **Relația cu utilizatorul este goală** | Utilizatorul nu a acceptat invitația | Asigurați-vă că toți utilizatorii acceptă invitațiile înainte de a importa |
Consultați [Cum să remediați erorile de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors) pentru pași detaliați de depanare.
## Lista de Verificare Post-Migrare
### Integritatea datelor
<Check>Toate înregistrările sunt importate (comparați numărul cu cel din sistemul sursă)</Check>
<Check>Relațiile funcționează corect (Persoane legate de Companii)</Check>
<Check>Atribuirile de utilizator sunt mapate corect (Proprietar, Atribuit)</Check>
<Check>Câmpuri personalizate populate</Check>
<Check>Niciun duplicat neașteptat</Check>
### Configurație
<Check>Vizualizări recreate</Check>
<Check>Fluxuri de lucru recreate și testate</Check>
<Check>Roluri și permisiuni configurate</Check>
<Check>Sincronizarea e-mailului/calendarului conectată</Check>
### Pregătirea echipei
<Check>Echipa instruită pe noul sistem</Check>
<Check>Planul de acces la vechiul CRM stabilit (păstrat pentru referință? Când se dezactivează?)</Check>
## Întrebări frecvente
<AccordionGroup>
<Accordion title="Pot migra fluxurile de lucru automat?">
Momentan, nu. Fluxurile de lucru trebuie recreate manual în Twenty.
</Accordion>
<Accordion title="Cum rămâne cu atașamentele de fișiere?">
Atașamentele de fișiere nu sunt incluse în exporturile CSV. Va trebui să le reîncărcați manual, să le migrați prin API sau să contactați echipa noastră pentru asistență.
</Accordion>
<Accordion title="Pot păstra ambele sisteme în funcțiune în timpul migrării?">
Da, recomandăm să păstrați vechiul CRM în funcțiune până când ați verificat că migrarea este completă. Aveți grijă să nu creați date noi în ambele locuri.
</Accordion>
<Accordion title="Cât durează de obicei migrarea?">
Depinde de volumul și complexitatea datelor. Migrațiile mici (sub 10.000 de înregistrări) pot fi realizate în câteva ore. Migrațiile mari pot dura câteva zile, incluzând curățarea datelor și testarea.
</Accordion>
</AccordionGroup>
## Ai nevoie de ajutor?
<Tip>
Vrei ajutor cu migrarea? [Găsește un partener certificat de douăzeci de parteneri](https://twenty.com/partners/list?categories=SOLUTIONING\&ref=docs-migrate-crm) pentru a-ți muta datele, conductele și utilizatorii de la un capăt la altul.
</Tip>

View File

@@ -0,0 +1,173 @@
---
title: Migrarea de la Self-Hosted la Cloud
description: Ghid pas cu pas pentru migrarea instanței Twenty auto-găzduite la Twenty Cloud.
---
## Prezentare generală
Acest ghid vă ghidează prin migrarea datelor dvs. dintr-o instanță Twenty auto-găzduită către Twenty Cloud. Procesul presupune configurarea spațiului dvs. de lucru în cloud, exportarea datelor și reimportarea acestora.
<Note>Vizualizările, fluxurile de lucru și rolurile trebuie recreate manual după migrare. Planificați timp pentru această muncă de configurare.</Note>
## Pasul 1: Creați spațiul dvs. de lucru în cloud
1. Accesați [app.twenty.com](https://app.twenty.com) și creați un nou spațiu de lucru
2. Finalizați asistentul de configurare inițială
3. Notați URL-ul noului spațiu de lucru
## Pasul 2: Recreați modelul de date
Înainte de a importa datele, recreați obiectele și câmpurile personalizate:
1. Accesați **Setări → Model de date** în instanța dvs. din cloud
2. Creați obiecte personalizate care corespund configurației dvs. auto-găzduite
3. Adăugați câmpuri personalizate la obiectele standard și personalizate
4. Configurați setările câmpurilor (unic, obligatoriu etc.)
<Note>Faceți capturi de ecran ale modelului de date auto-găzduit pentru referință sau păstrați ambele instanțe deschise una lângă alta.</Note>
## Pasul 3: Invitați toți utilizatorii
<Warning>
**Important: Invitați utilizatorii ÎNAINTE de a importa datele.**
Utilizatorii trebuie să accepte invitațiile înainte de a importa orice înregistrări care îi referențiază (cum ar fi câmpurile Account Owner). Dacă utilizatorii nu există încă, acele relații nu pot fi mapate.
</Warning>
1. Accesați **Setări → Membri** în instanța dvs. din cloud
2. Invitați toți membrii echipei care aveau conturi pe instanța auto-găzduită
3. **Așteptați ca toți să accepte** invitațiile
4. Verificați că toți utilizatorii apar în lista de Membri
## Pasul 4: Exportați date din instanța auto-găzduită
Exportați fiecare obiect din instanța auto-găzduită:
1. Navigați la fiecare obiect (Companii, Persoane, Oportunități etc.)
2. Configurați vizualizarea pentru a afișa **toate coloanele** pe care doriți să le migrați
3. Faceți clic pe **⋮ → Export view**
4. Salvați fiecare fișier CSV cu un nume clar (de ex., `companies-export.csv`)
**Exportați în această ordine** (pentru referință la importare):
1. Companii
2. Persoane
3. Oportunități
4. Obiecte personalizate (urmând dependențele lor)
5. Sarcini, Note
## Pasul 5: Actualizați referințele la membrii spațiului de lucru
CSV-urile exportate conțin ID-uri de utilizator din instanța dvs. auto-găzduită. Aceste ID-uri nu vor corespunde cu instanța din cloud, deci trebuie să le înlocuiți cu adrese de e-mail.
**Pentru fiecare fișier CSV cu referințe la utilizatori (Owner, Assignee etc.):**
1. Deschideți fișierul CSV într-o aplicație de foi de calcul
2. Adăugați o coloană nouă lângă fiecare coloană cu ID de utilizator (de ex., `accountOwnerEmail` lângă `accountOwnerId`)
3. Completați **adresa de e-mail** a fiecărui utilizator
4. Puteți șterge coloana veche de ID sau o puteți lăsa (va fi omisă în timpul importului)
**Exemplu:**
Înainte:
```csv
name,domain,accountOwnerId
Acme Corp,https://acme.com,old-uuid-123
```
După:
```csv
name,domain,accountOwnerEmail
Acme Corp,https://acme.com,john@yourcompany.com
```
<Note>Folosiți aceleași adrese de e-mail pe care utilizatorii le-au folosit pentru a accepta invitația la spațiul de lucru din cloud.</Note>
## Pasul 6: Planificați ordinea de import
Importați fișierele în ordinea corectă pentru a păstra relațiile:
1. **Companii** mai întâi (fără dependențe)
2. **Persoane** în al doilea rând (legate de Companii)
3. **Oportunități** în al treilea rând (legate de Companii și Persoane)
4. **Obiecte personalizate** (urmând dependențele lor)
5. **Sarcini și Note** la final (legate de alte înregistrări)
Consultați [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv) pentru detalii despre menținerea relațiilor.
## Pasul 7: Importați în cloud
Pentru fiecare fișier CSV, în ordine:
1. Navigați la obiectul din instanța dvs. din cloud
2. Faceți clic pe **⋮ → Import records**
3. Încărcați fișierul CSV
4. Mapați coloanele la câmpuri:
* Mapați coloanele de e-mail ale utilizatorilor la câmpurile de relație corespunzătoare
* Mapați celelalte coloane ca de obicei
5. Revizuiți și remediați eventualele erori
6. Confirmați importul
7. Verificați câteva înregistrări înainte de a trece la următorul fișier
## Pasul 8: Recreați configurația
După importarea datelor, recreați manual:
### Vizualizări
* Recreați vizualizările salvate cu filtre, sortări și configurații de coloane
* Configurați orice vizualizări kanban sau calendar
### Fluxuri de lucru
* Recreați automatizările în **Setări → Fluxuri de lucru**
* Testați fiecare flux de lucru înainte de a vă baza pe el
### Roluri și permisiuni
* Configurați rolurile în **Setări → Membri → Roluri**
* Atribuiți utilizatorilor rolurile corespunzătoare
### Integrări
* Reconectați sincronizarea e-mailului și a calendarului pentru fiecare utilizator
* Reconfigurați orice integrări API cu chei API noi
## Lista de Verificare Post-Migrare
<Check>Toate datele importate cu succes</Check>
<Check>Relațiile dintre obiecte funcționează corect</Check>
<Check>Atribuirile utilizatorilor (Owner, Assignee) mapate corect</Check>
<Check>Vizualizări recreate</Check>
<Check>Fluxuri de lucru recreate și testate</Check>
<Check>Roluri și permisiuni configurate</Check>
<Check>Sincronizarea e-mailului/calendarului reconectată</Check>
<Check>Integrările API actualizate cu chei noi</Check>
## Întrebări frecvente
<AccordionGroup>
<Accordion title="Pot migra fluxurile de lucru automat?">
Momentan, nu. Fluxurile de lucru trebuie recreate manual în instanța dvs. din cloud.
</Accordion>
<Accordion title="Cum rămâne cu atașamentele de fișiere și imaginile?">
Atașamentele de fișiere nu sunt incluse în exporturile CSV. Va trebui să reîncărcați manual orice atașamente, să le migrați prin API sau să contactați echipa noastră pentru asistență la migrarea de volum mare.
</Accordion>
<Accordion title="Pot păstra ambele instanțe în funcțiune în timpul migrării?">
Da, recomandăm să păstrați instanța auto-găzduită în funcțiune până când ați verificat că migrarea în cloud este completă. Aveți doar grijă să nu creați date noi în ambele locuri.
</Accordion>
<Accordion title="Ce se întâmplă dacă un utilizator nu și-a acceptat încă invitația?">
Înregistrările care fac referire la acel utilizator nu se vor importa sau relația va fi goală. Asigurați-vă că toți utilizatorii acceptă invitațiile înainte de a importa datele.
</Accordion>
</AccordionGroup>
## Ai nevoie de ajutor?
<Tip>
Migrați un spațiu de lucru mare sau complex? [Găsiți un partener Twenty certificat](https://twenty.com/partners/list?categories=HOSTING\&ref=docs-migrate-cloud) care să gestioneze migrarea de la un capăt la altul. *(Sau implicați echipa noastră: [contact@twenty.com](mailto:contact@twenty.com).)*
</Tip>

View File

@@ -0,0 +1,267 @@
---
title: "Pregătiți fișierele CSV "
description: Ghid complet, pas cu pas, pentru a formata datele pentru import în Twenty.
---
## Prezentare generală
Acest ghid vă ghidează în pregătirea fișierului CSV pentru un import reușit. Urmați acești pași pentru a evita erorile.
## Pasul 1: Verificați cerințele fișierului
Înainte de a începe, asigurați-vă că fișierul îndeplinește aceste cerințe:
| Cerință | Detalii |
| ------------------------ | -------------------------------- |
| **Format** | CSV, XLSX sau XLS |
| **Limită de dimensiune** | 10.000 de înregistrări pe fișier |
| **Codificare** | UTF-8 recomandat |
| **Structură** | Un tip de obiect pe fișier |
<Note>Pentru seturi de date mai mari de 10.000 de înregistrări, împărțiți-le în mai multe fișiere sau folosiți [importul prin API](/l/ro/user-guide/data-migration/how-tos/import-data-via-api).</Note>
## Pasul 2: Descărcați fișierul de mostră
**Acesta este cel mai important pas.** Fișierul de mostră vă arată exact denumirile de coloane și formatul pe care îl așteaptă Twenty.
1. Accesați vizualizarea obiectului (Persoane, Companii etc.)
2. Faceți clic pe **⋮** → **Importați înregistrări**
3. Faceți clic pe **Descărcați fișierul de mostră**
4. Folosiți acest fișier ca șablon
<Note>**Sfat util:** Exportați în schimb câteva înregistrări existente. Acest lucru vă oferă exemple reale despre cum ar trebui să fie formatate datele, iar denumirile coloanelor se vor asocia automat în timpul importului.</Note>
## Pasul 3: Eliminați valorile duplicate
Twenty impune unicitatea pentru anumite câmpuri. Valorile duplicate vor provoca erori la import.
| Obiect | Câmpuri unice |
| ------------------------- | ------------------------------------------------------- |
| **Persoane** | `id`, `email` |
| **Companii** | `id`, `domain` |
| **Obiecte personalizate** | `id`, precum și orice câmp pe care l-ați marcat ca unic |
**Înainte de import:**
1. Sortați foaia de calcul după câmpul unic (email sau domeniu)
2. Eliminați sau îmbinați rândurile duplicate
3. Verificați duplicatele care există deja în Twenty
<Warning>**Înregistrările șterse temporar se iau în calcul pentru unicitate.** Înregistrările din Meniul Comenzi → Vezi înregistrările șterse vor provoca erori de duplicat. Ștergeți-le definitiv sau restaurați-le și actualizați-le.</Warning>
## Pasul 4: Formatați corect fiecare tip de câmp
Tipurile de câmpuri diferite necesită formate specifice. Iată referința completă:
### Câmpuri text
* Nu este necesară o formatare specială
* Spațiile de la început/sfârșit sunt eliminate automat
### Câmpuri e-mail
* Trebuie să fie într-un format de e-mail valid: `name@domain.com`
* Trebuie să fie unic (fără duplicate în fișier sau în Twenty)
* Pentru adresele e-mail suplimentare, folosiți acest format în coloana **Emails / Additional Emails**:
```
["jane@twenty.com","jane.doe@twenty.com"]
```
### Câmpuri domeniu
* **Format recomandat**: `https://domain.com`
* Acesta corespunde formatului folosit de sincronizarea căsuței poștale/calendarului (previne duplicatele)
* Completați ambele coloane:
* **Domain / Domain Label**: `domain.com`
* **Domain / Domain URL**: `https://domain.com`
* Trebuie să fie unic în fișierul dvs. și în Twenty
### Câmpuri telefon
Telefonul este un **câmp îmbricat** care necesită mai multe coloane:
| Coloană | Exemplu |
| --------------------------------------- | ------------ |
| **Phones / Primary Phone Number** | `4159095555` |
| **Phones / Primary Phone Country Code** | `US` |
| **Phones / Primary Phone Calling Code** | `+1` |
### Câmpuri adresă
Adresa este un **câmp îmbricat** cu mai multe coloane (unele pot fi lăsate necompletate):
* **Adresă / Adresă 1**: Linia 1 a adresei stradale
* **Adresă / Adresă 2**: Linia 2 a adresei stradale (opțional)
* **Adresă / Oraș**: Numele orașului
* **Adresă / Stat**: Stat sau provincie
* **Adresă / Țară**: Numele țării
* **Adresă / Cod poștal**: Cod poștal/ZIP
### Câmpuri de dată
Folosiți un format consecvent în tot fișierul:
* `YYYY-MM-DD` (recomandat): `2024-03-15`
* ISO 8601: `2024-03-15T10:30:00Z`
### Câmpuri numerice
* Doar numere (fără text)
* Folosiți punctul pentru zecimale: `1234.56`
* Fără separatori pentru mii (nu `1,234.56`)
### Câmpuri de monedă
Moneda este un **câmp îmbricat** care necesită două coloane ce **trebuie ambele completate**:
| Coloană | Exemplu |
| ----------------- | --------- |
| **Sumă / Sumă** | `1234.56` |
| **Sumă / Monedă** | `USD` |
### Câmpuri booleene
Folosiți majuscule: `TRUE` sau `FALSE`
<Warning>`true` sau `false` cu litere mici nu vor funcționa.</Warning>
### Câmpuri de selectare
Folosiți **numele API** al opțiunii, nu eticheta de afișare.
**Cum găsiți numele API:**
1. Accesați **Setări → Model de date**
2. Selectați obiectul și câmpul
3. Activați **Modul avansat** (comutator în dreapta jos)
4. Copiați numele API (de ex., `OPTION_1`, nu "Option 1")
<Note>Opțiunile noi de selectare nu sunt create automat. Adăugați-le în **Setări → Model de date** înainte de import.</Note>
### Câmpuri cu selecție multiplă
Folosiți numele API în format de array:
```
["VALUE1","VALUE2"]
```
### Câmpuri de tip array
Folosiți formatul JSON de tip array:
```
["value1","value2"]
```
### Câmpuri de rating
Folosiți formatul: `RATING_1`, `RATING_2`, `RATING_3`, `RATING_4` sau `RATING_5`
### Câmpuri pentru linkuri/URL
Completați ambele coloane:
* **Linkuri / Etichetă link**: `Twenty`
* **Linkuri / URL link**: `https://twenty.com`
Pentru linkurile secundare, folosiți coloana **Linkuri / Linkuri secundare**:
```
[{"url":"https://twenty.com","label":"Twenty"}]
```
### Câmpuri JSON
Folosiți un format JSON valid:
```
{"key":"value","key2":"value2"}
```
### Câmpuri ID
* **Opțional**: Twenty generează automat ID-uri dacă nu sunt furnizate
* **Format**: UUID (de ex., `c776ee49-f608-4a77-8cc8-6fe96ae1e43f`)
* **Caz de utilizare**: Includeți ID-ul pentru a actualiza înregistrările existente în loc să creați altele noi
## Pasul 5: Adăugați coloane de relație (dacă legați înregistrări)
Pentru a lega înregistrări de alte obiecte (de ex., Persoane la Companii), adăugați o coloană cu identificatorul unic al înregistrării asociate.
**Exemplu**: Legarea Persoanelor la Companii
Adăugați o coloană în CSV-ul Persoane:
```
firstName,lastName,email,companyDomain
John,Smith,john@acme.com,https://acme.com
Jane,Doe,jane@widgets.co,https://widgets.co
```
**Reguli importante pentru relații:**
* Înregistrarea părinte trebuie să existe deja în Twenty
* Folosiți formatul **URL de domeniu** (`https://domain.com`), nu eticheta
* Mapați doar UN identificator unic (nu includeți atât `companyId` cât și `companyDomain`)
* Pentru membrii spațiului de lucru, folosiți **emailul** (nu numele)
<Warning>
**Ordinea de import contează!**
Importați partea "unu" înaintea părții "mulți":
1. **Companii** mai întâi
2. **Persoane** în al doilea rând (cu referință la companie)
3. **Oportunități** în al treilea rând
Înregistrarea părinte trebuie să existe înainte de a o putea referi.
</Warning>
Consultați [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv) pentru instrucțiuni detaliate.
## Pasul 6: Asigurați-vă că câmpurile există în Twenty
Importul creează **înregistrări**, nu **câmpuri**. Toate câmpurile pe care doriți să le importați trebuie să existe deja în modelul de date.
**Înainte de import:**
1. Accesați **Setări → Model de date**
2. Selectați obiectul
3. Creați câmpurile personalizate de care aveți nevoie
4. Notați denumirile exacte ale câmpurilor (trebuie să se potrivească antetelor coloanelor)
## Pasul 7: Lista finală de verificare
Înainte de a încărca fișierul, verificați:
<Check>Fișierul este în format CSV, XLSX sau XLS</Check>
<Check>Fișierul are mai puțin de 10.000 de înregistrări</Check>
<Check>Codarea este UTF-8</Check>
<Check>Fără emailuri duplicate (pentru Persoane) sau domenii (pentru Companii)</Check>
<Check>Datele folosesc un format consecvent peste tot</Check>
<Check>Domeniile folosesc formatul `https://domain.com`</Check>
<Check>Câmpurile booleene folosesc `TRUE` sau `FALSE` (majuscule)</Check>
<Check>Câmpurile de selectare folosesc nume API, nu etichete de afișare</Check>
<Check>Toate câmpurile personalizate există în Setări → Model de date</Check>
<Check>Înregistrările părinte importate înaintea înregistrărilor copil</Check>
<Check>Coloanele de relație fac referire la înregistrări existente</Check>
## Greșeli comune de evitat
| Greșeală | Soluție |
| -------------------------------------------------------------- | ------------------------------------------------- |
| Folosirea lui `true` în loc de `TRUE` | Valorile booleene trebuie să fie cu majuscule |
| Folosirea etichetelor de afișare pentru câmpurile de selectare | Găsiți și folosiți numele API în Setări |
| Importarea Persoanelor înaintea Companiilor | Importați întotdeauna mai întâi obiectele părinte |
| Lipsește codul monedei pentru câmpurile de monedă | Completați ambele coloane, Sumă și Monedă |
| Format de domeniu greșit | Folosiți `https://domain.com` în mod consecvent |
| Maparea mai multor câmpuri unice pentru relații | Mapați doar UNUL (domeniu SAU id, nu ambele) |
## Pașii următori
Fișierul este gata! Acum:
* [Importați companii](/l/ro/user-guide/data-migration/how-tos/import-companies-via-csv) (importați-le pe acestea mai întâi)
* [Importați contacte](/l/ro/user-guide/data-migration/how-tos/import-contacts-via-csv)
* [Remediați eventualele erori de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors)

View File

@@ -0,0 +1,198 @@
---
title: Actualizați înregistrările existente prin import
description: Ghid complet, pas cu pas, pentru actualizarea în masă a înregistrărilor folosind importul CSV.
---
## Prezentare generală
Trebuie să actualizați multe înregistrări deodată? În loc să le editați una câte una, folosiți importul CSV pentru a actualiza în masă înregistrările existente.
**Cazuri de utilizare:**
* Actualizați titlurile de post pentru mai multe persoane
* Modificați în masă informațiile companiilor
* Adăugați date în câmpuri personalizate noi
* Corectați erorile de date din multe înregistrări
## Cum Funcționează
Când importați un fișier care conține un **identificator unic** ce se potrivește unei înregistrări existente, Twenty actualizează acea înregistrare în loc să creeze un duplicat.
| Dacă identificatorul unic... | Twenty va... |
| ----------------------------------------- | ------------------------------------------------------- |
| Se potrivește cu o înregistrare existentă | **Actualizează** înregistrarea existentă |
| Nu se potrivește cu nicio înregistrare | **Creează** o înregistrare nouă |
| Lipsește din fișierul dvs. | **Creează** o înregistrare nouă (cu ID generat automat) |
<Warning>
**Câmpurile Multi-Select sunt suprascrise, nu îmbinate.**
Dacă o înregistrare are selectate `Option A` și `Option B`, iar importați `["Option C"]`, înregistrarea va avea doar `Option C` după import. Importul înlocuiește toate selecțiile anterioare — nu le adaugă.
Pentru a păstra valorile existente, includeți-le pe toate în import: ["Option A","Option B","Option C"]
</Warning>
## Pasul 1: Exportați datele curente
Mai întâi, exportați înregistrările pe care doriți să le actualizați:
1. Navigați la obiect (Persoane, Companii etc.)
2. **Adăugați coloanele de care aveți nevoie** — faceți clic pe **Options → Fields** pentru a afișa câmpurile pe care doriți să le actualizați
3. **Filtrați dacă este nevoie** — restrângeți la înregistrările pe care doriți să le actualizați
4. Faceți clic pe **⋮** → **Export view**
5. Salvați fișierul CSV
<Note>**De ce să exportați mai întâi?** Fișierul exportat are formatul corect, include identificatori unici și se mapează automat în timpul importului.</Note>
### Ce se exportă
* Toate coloanele vizibile din vizualizarea curentă
* Identificatorii unici ai înregistrării (`id`, `email`, `domain`)
* Valorile actuale ale câmpurilor pe care le puteți modifica
## Pasul 2: Editați fișierul CSV
Deschideți fișierul exportat în aplicația dvs. de calcul tabelar (Excel, Google Sheets etc.):
1. **Păstrați coloana cu identificatorul unic** — nu ștergeți `id`, `email` sau `domain`
2. **Actualizați valorile** în coloanele pe care doriți să le modificați
3. **Eliminați coloanele pe care nu trebuie să le actualizați** (opțional, dar mai ordonat)
4. **Nu modificați valorile identificatorului unic** — altfel Twenty va crea înregistrări noi
### Exemplu: Actualizarea titlurilor de post
**Fișier exportat:**
```csv
id,email,firstName,lastName,jobTitle
550e8400-e29b-41d4-a716-446655440001,john@acme.com,John,Smith,Sales Rep
550e8400-e29b-41d4-a716-446655440002,jane@acme.com,Jane,Doe,Sales Rep
550e8400-e29b-41d4-a716-446655440003,bob@acme.com,Bob,Johnson,Sales Rep
```
**După modificările dvs.:**
```csv
id,email,firstName,lastName,jobTitle
550e8400-e29b-41d4-a716-446655440001,john@acme.com,John,Smith,Account Executive
550e8400-e29b-41d4-a716-446655440002,jane@acme.com,Jane,Doe,Senior Account Executive
550e8400-e29b-41d4-a716-446655440003,bob@acme.com,Bob,Johnson,Account Executive
```
<Warning>
**Nu modificați valorile identificatorului unic.**
Dacă modificați `john@acme.com` în `john.smith@acme.com`, Twenty va crea o înregistrare nouă în loc să o actualizeze pe cea existentă.
</Warning>
## Pasul 3: Importați fișierul actualizat
1. Navigați la obiect
2. Faceți clic pe **⋮** → **Import records**
3. Încărcați fișierul CSV editat
4. **Asigurați-vă că identificatorul unic este mapat** — verificați că `email`, `domain` sau `id` este mapat corect
5. Revizuiți mapările câmpurilor
6. Verificați erorile
7. Faceți clic pe **Confirm**
Twenty potrivește înregistrările după identificatorul unic și le actualizează cu valorile noi.
## Alegerea identificatorului unic potrivit
| Obiect | Recomandat | Alternativă | Notițe |
| ------------------------- | --------------- | ----------- | --------------------------------- |
| **Persoane** | `email` | `id` | Emailul este ușor de citit |
| **Companii** | `domeniu` | `id` | Domeniul este ușor de citit |
| **Obiecte personalizate** | Orice câmp unic | `id` | Folosiți câmpul unic personalizat |
<Note>**Folosiți un singur identificator unic.** Nu mapați atât `email`, cât și `id`. Acest lucru poate provoca confuzii și erori.</Note>
### Utilizarea câmpurilor unice personalizate
Dacă aveți un câmp personalizat marcat ca unic (cum ar fi un ID extern dintr-un alt sistem):
1. Includeți acel câmp în export și import
2. Mapați-l în timpul importului
3. Twenty va face potrivirea pe baza acelui câmp
## Pasul 4: Verificați actualizările
După import:
1. Deschideți câteva înregistrări actualizate
2. Verificați că modificările au fost aplicate
3. Verificați că nu au fost create înregistrări duplicate
## Ce se întâmplă cu câmpurile care nu sunt în fișierul dvs.?
**Câmpurile care nu sunt incluse în fișierul de import rămân neschimbate.**
| Fișierul dvs. include... | Rezultat |
| ---------------------------- | --------------------------------------------------------------- |
| `email`, `jobTitle` | Doar `jobTitle` este actualizat; celelalte câmpuri rămân la fel |
| `email`, `jobTitle`, `phone` | `jobTitle` și `phone` sunt actualizate |
Asta înseamnă că trebuie să includeți doar câmpurile pe care doriți să le modificați (plus identificatorul unic).
## Combinarea actualizărilor și a înregistrărilor noi
Puteți actualiza înregistrările existente ȘI crea unele noi în același import:
```csv
email,firstName,lastName,jobTitle
john@acme.com,John,Smith,Senior Manager ← Updates existing (email matches)
newperson@acme.com,New,Person,Analyst ← Creates new (email doesn't match)
```
## Greșeli comune de evitat
| Greșeală | Problemă | Rezultat | Soluție |
| -------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------- | ---------------------------------------------------- |
| **Schimbarea identificatorului unic** | S-a schimbat `john@acme.com` în `john.smith@acme.com` | Creează o înregistrare nouă în loc să actualizeze | Păstrați identificatorii unici neschimbați |
| **Câmpuri unice multiple** | Maparea atât a `email`, cât și a `id` | Conflicte potențiale de potrivire | Mapați un singur identificator unic |
| **Fără identificator unic** | Fișierul conține doar `firstName`, `lastName`, `jobTitle` | Toate rândurile creează înregistrări noi | Includeți întotdeauna `email`, `domain` sau `id` |
| **Nepotrivire de majuscule/minuscule** | Fișierul are `John@acme.com`, dar Twenty are `john@acme.com` | Creează o înregistrare nouă | Exportați din Twenty pentru a obține valorile exacte |
## Întrebări frecvente
<AccordionGroup>
<Accordion title="Ce se întâmplă dacă unele înregistrări nu există încă?">
Înregistrările cu identificatori unici care nu se potrivesc cu înregistrările existente vor fi create ca înregistrări noi. Acest lucru vă permite să actualizați și să creați în cadrul aceluiași import.
</Accordion>
<Accordion title="Pot goli o valoare de câmp?">
Da, lăsați celula goală în CSV. Importul va goli valoarea acelui câmp în înregistrarea existentă.
</Accordion>
<Accordion title="Ce se întâmplă cu câmpurile pe care nu le includ în import?">
Câmpurile care nu se află în fișierul de import rămân neschimbate în înregistrările existente. Sunt actualizate doar câmpurile pe care le includeți.
</Accordion>
<Accordion title="Pot actualiza câmpurile de relație (cum ar fi Compania)?">
Da! Includeți identificatorul unic al relației (de ex., `companyDomain`) și mapați-l la câmpul de relație. Relația va fi actualizată.
</Accordion>
<Accordion title="Cum știu care înregistrări vor fi actualizate și care vor fi create?">
În etapa de revizuire a importului, Twenty vă arată câte înregistrări vor fi actualizate și câte vor fi create, pe baza potrivirilor după identificatorul unic.
</Accordion>
<Accordion title="Pot anula o actualizare în masă?">
Nu există o anulare automată. Recomandăm să exportați datele ca o copie de siguranță înainte de a efectua actualizări în masă.
</Accordion>
</AccordionGroup>
## Cele mai bune practici
1. **Exportați mai întâi** — începeți întotdeauna de la un export pentru a vă asigura de formatul corect
2. **Faceți o copie de siguranță înainte de actualizare** — exportați-vă datele înainte de a face modificări în masă
3. **Testați cu câteva înregistrări** — încercați să actualizați mai întâi 5–10 înregistrări înainte de a face un lot mare
4. **Folosiți identificatori ușor de citit** — `email` și `domain` sunt mai ușor de verificat decât `id`
5. **Includeți doar coloanele necesare** — mai puține coloane înseamnă mai puține șanse de erori
## Depanare
Aveți probleme? Verificați:
* [Cum să remediați erorile de import](/l/ro/user-guide/data-migration/how-tos/fix-import-errors)
* [Constrângeri de unicitate](/l/ro/user-guide/data-migration/capabilities/uniqueness-constraints)
* [Referință pentru maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping)

View File

@@ -0,0 +1,83 @@
---
title: Migrarea datelor
description: Importați și exportați datele CRM prin fișiere CSV sau API.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Metode de import
Twenty acceptă două metode principale de importare a datelor:
| Metodă | Recomandat pentru | Limită de volum |
| ------------------- | --------------------------------------- | -------------------------------- |
| **Import CSV** | Migrații standard, actualizări regulate | 10.000 de înregistrări pe fișier |
| **Import prin API** | Migrații la scară mare, automatizare | Nelimitat |
<Note>Pentru seturi de date foarte mari (sute de mii de înregistrări), utilizați API-ul. Partenerii noștri de [implementare](/l/ro/user-guide/getting-started/capabilities/implementation-services) vă pot ajuta să rulați aceste scripturi, dacă este nevoie.</Note>
## Noțiuni de bază despre importul CSV
Puteți importa date pentru orice obiect folosind fișiere CSV, XLSX sau XLS. Fiecare fișier ar trebui să conțină **doar un singur tip de obiect** (de exemplu, doar înregistrări ale Persoanelor).
<Note>**Câmpurile trebuie să existe înainte de import.** Încărcarea unui fișier CSV creează înregistrări, dar nu creează câmpuri. Dacă aveți nevoie de câmpuri personalizate, creați-le mai întâi în **Settings → Data Model**.</Note>
### Pași
1. Navigați la obiectul în care doriți să importați date
2. Faceți clic pe pictograma **⋮** din dreapta sus (acesta este Command Menu) și faceți clic pe **Import records**
3. Descărcați fișierul-șablon pentru a vă asigura că datele sunt în formatul așteptat
4. Încărcați fișierul CSV formatat
5. Mapați coloanele la câmpurile din Twenty
6. Revizuiți erorile (evidențiate cu galben) și corectați-le, editând direct în interfața utilizator
7. Confirmați importul
### Importă relații între obiecte
Puteți importa relații între obiecte folosind funcția de import CSV. Trebuie să faceți referire la obiectul înrudit folosind un câmp unic al acestuia: `id`, `email` pentru Persoane și membri ai spațiului de lucru, `domain` pentru companii, orice alt câmp setat ca unic în modelul de date pentru orice alt obiect.
<Note>**Înregistrările șterse contează pentru unicitate.** Înregistrările șterse soft (vizibile în Command Menu → See deleted records) sunt incluse în verificările de unicitate. Dacă importați o înregistrare cu aceeași valoare unică ca o înregistrare ștearsă, înregistrarea ștearsă va fi restaurată.</Note>
<Warning>
**Ordinea importului contează!**
Când importați obiecte înrudite, încărcați fișierele în această ordine:
1. **Companiile** mai întâi (partea "one" a relațiilor)
2. **Persoane** al doilea (legat de companii prin intermediul Id)
3. **Oportunități** în al treilea rând (legate de Companii/Persoane)
4. **Obiectele personalizate** cu relații, la final
De ce? Partea "one" a unei relații unul-la-mulți trebuie să existe înainte de a o putea referi. De exemplu, înregistrarea Companiei trebuie să existe înainte de a importa o Persoană cu ID-ul acelei companii.
</Warning>
Consultați [acest articol](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv) pentru un ghid pas cu pas despre cum să procedați.
## Exportați Date
Exportați datele spațiului de lucru pentru copii de siguranță, raportare sau migrare.
### Pași
1. Navigați la obiectul pe care doriți să-l exportați
2. Configurați vizualizarea cu coloanele de care aveți nevoie
3. Faceți clic pe **⋮** → **Export view**
4. Salvați fișierul CSV
<Note>**Se exportă doar coloanele vizibile.** Fișierul CSV va conține doar coloanele afișate în vizualizarea curentă. Adăugați sau ascundeți coloane înainte de export pentru a controla ce date sunt incluse.</Note>
<Note>**Limite de export**: Până la 20.000 de înregistrări pe export.</Note>
## Permisiuni
Importul și exportul de date necesită permisiuni specifice:
* **Import**: Necesită permisiunea "Import CSV"
* **Export**: Necesită permisiunea "Export CSV"
Contactați administratorul spațiului de lucru dacă nu aveți aceste permisiuni.
## Pașii următori
* [Pregătiți fișierele CSV](/l/ro/user-guide/data-migration/how-tos/prepare-your-csv-files)
* [Importați relații între obiecte](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv)
* [Importați prin API pentru seturi mari de date](/l/ro/user-guide/data-migration/how-tos/import-data-via-api)

View File

@@ -0,0 +1,122 @@
---
title: Câmpuri
description: Înțelegeți rolul câmpurilor și cum să le gestionați.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Despre câmpuri
Câmpurile sunt ca coloanele dintr-o foaie de calcul. Ele stochează diferite tipuri de date, cum ar fi text, numere sau date calendaristice. Câmpurile pot fi standard (încorporate) sau personalizate (cele pe care le creați).
### Câmpuri standard
Câmpurile standard vin încorporate în Twenty pentru a acoperi nevoile de afaceri uzuale.
De exemplu, `Prenume` și `Nume de familie` sunt câmpuri standard în obiectul `Persoane`. Ele stochează date text pentru numele individuale.
Nu puteți șterge câmpurile standard, dar le puteți dezactiva dacă nu aveți nevoie de ele.
De asemenea, puteți personaliza opțiunile câmpurilor standard de tip `SELECT`, de exemplu opțiunile pentru `Etapa` la Oportunități.
<img src="/images/user-guide/fields/standard-fields.png" style={{width:'100%'}} />
### Câmpuri personalizate
Câmpurile personalizate pot fi adăugate la orice obiect. Puteți stoca text, numere, date, selecții din liste derulante și altele. Folosind câmpuri personalizate puteți urmări informații specifice afacerii dumneavoastră.
De exemplu, un câmp personalizat pentru SpaceX ar putea fi `Starea de funcționare a rachetei`, indicând dacă o rachetă este operațională.
<img src="/images/user-guide/fields/custom-fields.png" style={{width:'100%'}} />
## Tipuri de câmp
Twenty acceptă diverse tipuri de câmp:
| Tip | Descriere | Exemplu |
| ----------------- | ---------------------------------------------------------- | -------------------------- |
| Adresă | Adresă structurată cu stradă, oraș, stat, țară, cod poștal | Adresă de birou |
| Array | Listă de valori text | Etichete |
| Boolean | Casetă de bifare adevărat/fals | Este activ |
| Monedă | Valoare monetară cu codul monedei | Valoarea tranzacției (USD) |
| Dată | Valori de tip dată | Data închiderii |
| Dată și oră | Dată cu oră | Ora întâlnirii |
| Domeniu | Domeniu de site web (utilizat pentru Companii) | acme.com |
| Email | Adrese de e-mail (cu principală + suplimentare) | E-mailul contactului |
| JSON | Date JSON structurate | Metadate personalizate |
| Linkuri | URL-uri cu etichete (primară + secundară) | Site web, LinkedIn |
| Text lung | Text pe mai multe rânduri | Descriere, Note |
| Selecție multiplă | Alegeri multiple dintr-o listă predefinită | Etichete, Categorii |
| Număr | Valori numerice (întregi sau zecimale) | Cantitate, Scor |
| Telefon | Numere de telefon cu codul țării | Telefon de serviciu |
| Evaluare | Evaluare cu stele (1-5) | Prioritate, Scor |
| Relație | Legături către înregistrări din alte obiecte | Companie → Persoane |
| Select | O singură alegere dintr-o listă predefinită | Etapă, Stare |
| Text | O singură linie de text | Nume, Titlu |
## Creați un câmp personalizat
Pentru a adăuga un câmp personalizat la orice obiect, urmați acești pași:
1. Accesați `Setări` din bara laterală stângă.
2. Accesați `Model de date`, apoi selectați obiectul pe care doriți să îl personalizați.
3. Continuați prin a face clic pe `+ Câmp nou`.
4. Alegeți un nume și un tip de câmp care se potrivesc cerințelor dumneavoastră. Luați în considerare adăugarea unei descrieri a câmpului pentru o înțelegere mai bună.
Noul câmp creat de dumneavoastră este acum disponibil în cadrul câmpurilor aplicației. Pentru a-l afișa într-o vizualizare specifică, faceți clic pe meniul de opțiuni, apoi selectați `Câmpuri`.
<VimeoEmbed videoId="927628219" title="Demonstrație video" />
**Cale rapidă:** Faceți clic pe butonul **+** în colțul dreapta sus al oricărui tabel de obiecte, apoi selectați `Personalizați câmpurile`. Aceasta vă duce direct la setările Modelului de Date.
<img src="/images/user-guide/fields/quick-new-field.png" style={{width:'100%'}} />
## Dezactivați un câmp
Puteți dezactiva un câmp pentru a-l ascunde din aplicație fără a pierde datele. Gândiți-vă la aceasta ca la ascunderea câmpului, nu la ștergerea lui.
Iată cum puteți face acest lucru:
1. Găsiți câmpul pe care doriți să-l dezactivați în setările obiectului dumneavoastră.
2. Faceți clic pe cele trei puncte `⋮` de lângă câmp pentru a deschide meniul.
3. Selectați `Dezactivează` din lista derulantă.
<img src="/images/user-guide/fields/deactivate-field.png" style={{width:'100%'}} />
Ce se întâmplă când dezactivați un câmp?
1. **În aplicație:** Câmpul dispare și nu se pot adăuga valori noi la acesta.
2. **Relații existente:** Dacă este un câmp de relație, conexiunile existente rămân, dar nu se pot crea noi.
3. **Acces API:** Încă puteți accesa câmpul și datele sale prin API.
Puteți reactiva câmpuri standard și personalizate sau aveți opțiunea de a le șterge permanent.
## Faceți câmpurile unice
Faceți un câmp unic pentru a vă asigura că înregistrările distincte nu pot avea aceeași valoare. De exemplu, adresele de e-mail sunt unice pentru fiecare persoană.
Dacă primiți o eroare când setați unicitatea, verificați prezența valorilor duplicate în datele dumneavoastră (inclusiv în cele șterse).
## Indexuri (Avansat)
Indexurile bazei de date sunt gestionate automat — adăugarea unor indexuri proprii este rareori necesară și se greșește ușor. Cu modul Avansat activat, fiecare obiect are o secțiune **Indexuri** sub `Settings → Data Model → <object>` pentru cazurile în care știi că ai nevoie de unul.
## Cele mai bune practici pentru configurarea câmpurilor
### Convenții de denumire și limitări
* **Numele singular și plural trebuie să fie distincte**: GraphQL API are nevoie de nume distincte pentru mutații
* **Nume de câmpuri protejate**: unele nume sunt rezervate pentru uzul sistemului (de ex., `Tip`, `Aplicație`)
### Câmpuri valută și telefon
* **Valută implicită**: poate fi configurată prin modelul de date
* **Coduri de țară implicite**: pot fi configurate pentru câmpurile de telefon prin modelul de date
### Câmpuri de selectare
* **Se poate selecta o opțiune implicită** pentru fiecare câmp de tip Select
### Câmpuri de text pentru înregistrări
* **Fiecare obiect are un câmp principal de afișare**: Acest câmp apare în coloana din stânga și reprezintă înregistrarea atunci când este legată de alte obiecte. Trebuie să fie un câmp text. De exemplu, Persoane utilizează `Nume` ca câmp principal, astfel încât atunci când legați o persoană de o companie, veți vedea numele ei în vizualizarea companiei.

View File

@@ -0,0 +1,92 @@
---
title: Obiecte
description: Aflați despre obiectele standard și personalizate din Twenty.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Obiecte standard
Obiectele standard sunt entități predefinite în spațiul tău de lucru care te ajută să începi. Fac parte dintr-un model de date comun accesibil tuturor utilizatorilor Twenty. Le poți folosi așa cum sunt, le poți personaliza sau le poți dezactiva.
<img src="/images/user-guide/objects/standard-objects.png" style={{width:'100%'}} />
### Persoane
Obiectul `People` stochează contactele tale. Include detalii de contact și istoricul interacțiunilor, astfel încât să poți vedea toate interacțiunile cu clienții într-un singur loc.
### Companii
Obiectul `Companies` stochează conturile tale de afaceri. Include detalii precum industria, dimensiunea și locația. Companiile se conectează la obiectele `People` și `Opportunities`.
### Oportunități
Obiectul `Opportunities` stochează datele legate de afaceri. Urmărește progresia posibilelor vânzări, de la prospectare la încheiere, înregistrând etapele, dimensiunile tranzacțiilor, contul asociat și data anticipată de închidere. Poți vizualiza fluxul de vânzări într-un layout kanban.
### Notițe
Obiectul `Notes` stochează note în format liber care pot fi atașate Persoanelor, Companiilor, Oportunităților și altor înregistrări. Folosiți notele pentru a consemna rezumate ale întâlnirilor, detalii importante sau orice informații contextuale.
### Sarcini
Obiectul `Tasks` stochează sarcini de făcut și elemente de acțiune. Sarcinile pot fi asociate Persoanelor, Companiilor, Oportunităților și altor înregistrări. Urmăriți termenele limită, persoanele desemnate și starea finalizării pentru a rămâne la zi cu activitățile de follow-up.
## Obiecte personalizate
Obiectele personalizate îți permit să stochezi informații specifice organizației tale și pe care obiectele standard nu le pot gestiona. De exemplu, dacă ești SpaceX, poți dori să creezi un obiect personalizat pentru Rachete și Lansări.
<img src="/images/user-guide/objects/custom-objects.png" style={{width:'100%'}} />
### Crearea unui obiect personalizat nou
Pentru a crea un obiect personalizat nou:
1. Mergi la Setări, în bara laterală din stânga.
2. În spațiul de lucru, mergeți la Modelul de date. Aici vei putea vedea o prezentare generală a tuturor obiectelor existente Standard și Personalizate (atât active cât și dezactivate).
<VimeoEmbed videoId="926288174" title="Demonstrație video" />
3. Fă clic pe `+ Obiect nou` în partea de sus. Introduceți numele (singular și plural), alegeți o pictogramă, adăugați o descriere pentru obiectul personalizat și apăsați Salvare (în dreptul sus). Folosind Listing ca exemplu de obiect personalizat, forma de singular ar fi "listing", iar pluralul ar fi "listings", împreună cu o descriere precum "Anunțuri pe care gazdele le-au creat pentru a-și prezenta proprietatea."
4. Obiectul dvs. personalizat a fost creat și va apărea în bara laterală. Puteți începe să adăugați înregistrări imediat.
## Gestionarea obiectelor
### Dezactivarea obiectelor
Dacă nu aveți nevoie de un obiect standard sau personalizat:
1. Accesați Setări → Model de date
2. Găsește obiectul pe care vrei să-l dezactivezi și fă clic pe el
3. Du-te la fila **Setări** obiectului
4. Faceți clic pe butonul `Deactivate`
5. Obiectul va fi ascuns din spațiul dvs. de lucru, dar datele sunt păstrate
### Reactivarea obiectelor
Pentru a readuce un obiect dezactivat:
1. Accesați Setări → Model de date
2. Activează filtrul `Dezactivat`
3. Caută obiecte dezactivate (ele au "dezactivat" lângă numele lor)
4. Faceţi clic pe `·` şi apoi pe `Activează` pentru a reactiva
5. Obiectul și toate datele sale vor fi restaurate
## Cele mai bune practici
### Când să creați obiecte personalizate
* **Entități de afaceri unice**: Elemente specifice industriei sau procesului dvs.
* **Relații complexe**: Când trebuie să urmăriți conexiunile dintre mai multe entități
* **Date scalabile**: Când este posibil să aveți numeroase instanțe ale aceluiași lucru
### Când să folosiți câmpuri în loc
* **Atribute simple**: Proprietăți care descriu obiecte existente
* **Categorii sau etichete**: Modalități de a clasifica înregistrările existente
* **Valori unice**: Informații care nu necesită un ciclu de viață propriu
### Denumirea obiectelor
* **Folosiți denumiri clare și descriptive**: Să fie evident ce reprezintă obiectul
* **Respectați convențiile**: Folosiți singularul pentru numele obiectului, pluralul pentru colecție
* **Țineți cont de echipa dvs.**: Alegeți denumiri pe care toată lumea le va înțelege

View File

@@ -0,0 +1,94 @@
---
title: Câmpuri de relație
description: Conectați înregistrări din obiecte diferite folosind câmpuri de relație.
---
## Tipuri de relații
### Unu-la-mulți
O înregistrare din Obiectul A poate fi legată de multe înregistrări din Obiectul B.
**Exemplu:** O Companie poate avea multe Persoane (angajați).
### Mulți-la-unu
Multe înregistrări din Obiectul A pot fi legate de o singură înregistrare din Obiectul B.
**Exemplu:** Multe Persoane pot aparține unei singure Companii.
### Relații către mai multe tipuri de obiecte
Unele obiecte pot face legătura către mai multe tipuri de obiecte pe o parte a relației.
**Exemplu:** O Notă poate fi atașată simultan la o Persoană ȘI o Companie ȘI o Oportunitate. Obiectul Notă este pe partea "mulți", conectându-se la mai multe părți "unu".
<img src="/images/user-guide/fields/many-to-one-morph.png" style={{width:'100%'}} />
În mod similar, un Proiect (pe partea "unu") ar putea primi legături de la mai multe Persoane, mai multe Companii și mai multe Note.
<img src="/images/user-guide/fields/one-to-many-morph.png" style={{width:'100%'}} />
<Warning>
**Limitare la import/export**: Relațiile care indică către mai multe tipuri de obiecte nu sunt încă acceptate pentru importul/exportul CSV. Această funcționalitate este în planul nostru de dezvoltare.
</Warning>
### Mulți-la-mulți
Multe înregistrări din Obiectul A pot fi legate de multe înregistrări din Obiectul B.
**Exemplu:** Multe Persoane pot fi legate de multe Proiecte și invers.
Relațiile de tip multe-la-multe folosesc un model de tip **obiect de legătură**: un obiect intermediar care conectează ambele părți. Cu funcția de relație cu obiect de legătură, Twenty afișează direct înregistrările finale asociate, ascunzând obiectul intermediar din UI.
<Warning>
**Funcția Beta**: Relațiile de Junction trebuie activate la **Setări → Comunitate → Caracteristici** înainte de utilizare.
</Warning>
Consultați [Cum să creați relații de tip multe-la-multe](/l/ro/user-guide/data-model/how-tos/create-many-to-many-relations) pentru un ghid complet, pas cu pas.
## Crearea unui câmp de relație
1. Accesați **Setări → Model de date**
2. Selectați obiectul în care doriți să adăugați relația
3. Click **+ Câmp nou**
4. Selectați **Relație** ca tip de câmp
5. Alegeți obiectul/obiectele țintă cu care să stabiliți relația
6. Configurați setările relației:
* **Numele câmpului pe obiectul sursă**: Numele câmpului de relație pe obiectul pe care îl editați
* **Numele câmpului pe obiectul destinație**: Numele câmpului de relație care va apărea pe obiectul țintă
* Tipul relației (unu-la-mulți, mulți-la-unu)
7. Faceți clic pe **Salvare**
## Relații standard
Twenty include relații predefinite între obiectele standard:
| Din obiect | Către obiect | Tipul relației |
| ------------ | ------------ | -------------- |
| Persoane | Companii | Mulți-la-unu |
| Oportunități | Companii | Mulți-la-unu |
| Oportunități | Persoane | Mulți-la-unu |
## Cele mai bune practici
### Planificarea relațiilor
* **Mapați modelul de date**: Planificați relațiile înainte de a le crea
* **Luați în considerare direcția**: Gândiți-vă care obiect „deține” relația
* **Evitați dependențele circulare**: Păstrați modelul de date curat
### Denumierea relațiilor
* **Folosiți denumiri clare**: Să fie evident ce reprezintă relația
* **Fiți consecvenți**: Folosiți tipare de denumire similare pentru toate relațiile
* **Luați în considerare ambele părți**: Denumiți corespunzător ambele părți ale relației
### Performanță
* **Nu exagerați cu relațiile**: Prea multe relații pot încetini spațiul de lucru
## Limitări
* **Ștergerea relațiilor** elimină legătura, dar nu și înregistrările asociate
* **Relațiile circulare** ar trebui evitate pentru integritatea datelor

View File

@@ -0,0 +1,72 @@
---
title: Creați câmpuri personalizate
description: Ghid pas cu pas pentru adăugarea câmpurilor personalizate la orice obiect.
---
Câmpurile personalizate vă permit să colectați informații specifice afacerii dumneavoastră. Adăugați-le la orice obiect — standard sau personalizat.
## Pași
1. Accesați **Setări → Model de date**
2. Selectați obiectul la care doriți să adăugați un câmp
3. Click **+ Câmp nou**
4. Alegeți un **tip de câmp** (consultați [Câmpuri](/l/ro/user-guide/data-model/capabilities/fields) pentru toate tipurile)
5. Introduceți **numele câmpului** și o descriere opțională
6. Configurați setările specifice câmpului (vedeți mai jos)
7. Faceți clic pe **Salvare**
**Metodă rapidă:** Faceți clic pe **+** la capătul anteturilor de coloană din orice vizualizare de tabel → **Personalizați câmpurile**.
## Afișați câmpul în vizualizări
Noile câmpuri nu sunt vizibile automat. Pentru a afișa:
1. Deschideți vizualizarea tabelară a obiectului
2. Faceți clic pe **Opțiuni → Câmpuri**
3. Faceți clic pe **pictograma în formă de ochi** de lângă câmpul dvs. pentru a-l afișa
4. Trageți pentru a reordona
## Opțiuni de configurare
### Pentru Selectare / Selectare multiplă
1. Faceți clic pe **+ Adaugă opțiune** pentru a crea opțiuni
2. Stabiliți o **opțiune implicită** dacă doriți
3. Trageți pentru a reordona opțiunile
<Note>
**Folosiți numele API pentru importuri.** Activați **modul Avansat** în Setări pentru a vedea numele API. Consultați [Maparea câmpurilor](/l/ro/user-guide/data-migration/capabilities/field-mapping).
</Note>
### Pentru câmpurile de monedă
Setați **moneda implicită** (USD, EUR, etc.) pentru noile înregistrări.
### Pentru câmpurile de telefon
Setați **codul de țară implicit** care să fie precompletat pentru noile numere de telefon.
### Setarea unui câmp ca unic
Comutați **Unic** pentru a preveni valorile duplicate în înregistrări.
<Note>
Dacă există duplicate (inclusiv în înregistrările șterse), veți primi o eroare. Eliminați mai întâi duplicatele.
</Note>
### Setarea valorilor implicite
Pentru câmpurile de tip Selectare, puteți alege care opțiune este preselectată pentru noile înregistrări. Pentru câmpurile de tip Casetă de bifare, setați dacă este bifată sau debifată în mod implicit.
## Dezactivarea unui câmp
1. Accesați **Setări → Model de date**
2. Găsiți câmpul
3. Faceți clic pe **⋮ → Dezactivează**
Datele sunt păstrate. Puteți reactiva sau șterge definitiv mai târziu.
## Conexe
* [Câmpuri](/l/ro/user-guide/data-model/capabilities/fields) — toate tipurile de câmpuri explicate
* [Întrebări frecvente despre modelul de date](/l/ro/user-guide/data-model/how-tos/data-model-faq) — întrebări uzuale

View File

@@ -0,0 +1,51 @@
---
title: Creați obiecte personalizate
description: Ghid pas cu pas pentru crearea obiectelor personalizate în Twenty.
---
Obiectele personalizate vă permit să stocați informații specifice afacerii dvs., pe care obiectele standard nu le acoperă. De exemplu: proiecte, produse, tichete sau listări.
<Note>
**Nu sunteți sigur dacă aveți nevoie de un obiect sau de un câmp?** Consultați [Înțelegerea modelului dvs. de date](/l/ro/user-guide/data-model/overview) pentru îndrumări.
</Note>
## Pași
1. Accesați **Setări → Model de date**
2. Faceți clic **+ Adăugați un obiect**
3. Completați:
* **Nume la singular** (de ex., "Listare")
* **Nume la plural** (de ex., "Listări")
* **Pictogramă**
* **Descriere** (opțional)
4. Faceți clic pe **Salvare**
Obiectul dvs. apare imediat în bara laterală.
## În continuare: Adăugați câmpuri
Obiectele noi încep cu câmpuri de bază. Adăugați câmpuri personalizate pentru a colecta datele de care aveți nevoie:
1. În **Setări → Model de date**, selectați obiectul dvs.
2. Click **+ Câmp nou**
3. Alegeți un tip de câmp, configurați și salvați
Consultați [Cum să creați câmpuri personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-fields) pentru detalii despre tipurile de câmp și configurare.
## Conectarea la alte obiecte
Pentru a conecta obiectul la Persoane, Companii sau alte obiecte, creați un câmp de relație. Consultați [Cum să creați câmpuri de relație](/l/ro/user-guide/data-model/how-tos/create-relation-fields).
## Dezactivarea unui obiect
Dacă nu mai aveți nevoie de un obiect:
1. Mergi la **Setări → Model de date → obiect ales de tine → Setări**
2. Faceți clic pe butonul **Dezactivare**
Obiectul este ascuns, dar datele sunt păstrate. Îl puteți reactiva sau șterge definitiv mai târziu.
## Conexe
* [Obiecte](/l/ro/user-guide/data-model/capabilities/objects) — obiecte standard vs obiecte personalizate
* [Întrebări frecvente despre modelul de date](/l/ro/user-guide/data-model/how-tos/data-model-faq) — întrebări uzuale

View File

@@ -0,0 +1,175 @@
---
title: Creați relații de tip mulți-la-mulți
description: Conectați înregistrări în care multe elemente de pe ambele părți pot fi legate între ele folosind obiecte de legătură.
---
Relațiile mulți-la-mulți vă permit să conectați mai multe înregistrări pe ambele părți. De exemplu: multe Persoane pot lucra la multe Proiecte, iar fiecare Proiect poate avea multe Persoane.
<Warning>
**Funcție beta**: Relațiile prin obiecte de legătură sunt în prezent în versiune beta. Activați-le în **Settings → Community → Features** înainte de a urma acest ghid.
</Warning>
<Note>
Această funcție necesită, de asemenea, ca **Advanced mode** să fie activat (comutator în stânga jos în Settings).
</Note>
## Când să utilizați relațiile mulți-la-mulți
Folosiți relațiile mulți-la-mulți atunci când ambele părți ale unei relații pot avea mai multe conexiuni:
| Relație | Exemplu |
| ------------------- | ------------------------------------------------------------------------------------------ |
| Persoane ↔ Proiecte | O persoană lucrează la mai multe proiecte; un proiect are mai mulți membri ai echipei |
| Companii ↔ Etichete | O companie poate avea mai multe etichete; o etichetă se poate aplica la mai multe companii |
| Produse ↔ Comenzi | Un produs poate apărea în mai multe comenzi; o comandă conține mai multe produse |
## Cum Funcționează
Twenty folosește un model de **obiect de legătură** pentru relațiile mulți-la-mulți. Un obiect de legătură se află între două obiecte și păstrează conexiunile:
```
People ←→ Project Assignments ←→ Projects
```
Obiectul **Atribuiri proiect** (obiect de legătură) are:
* O relație către Persoane (mulți-la-unu)
* O relație către Proiecte (mulți-la-unu)
Când activați comutatorul pentru relația de legătură, Twenty afișează înregistrările legate direct, în loc să afișeze înregistrările intermediare ale obiectului de legătură.
## Cerințe
1. **Activați Junction Relations în Beta Features**: Mergeți la **Settings → Community → Features** și activați **Junction Relations**
2. **Activați Advanced mode**: Porniți **Advanced mode** în partea stângă jos a barei laterale Settings
3. Planificați modelul de date:
* Ce două obiecte conectați?
* Cum ar trebui să se numească obiectul de legătură?
## Pasul 1: Creați obiectul de legătură
Mai întâi, creați obiectul intermediar care va păstra conexiunile.
1. Accesați **Setări → Model de date**
2. Faceți clic **+ Adăugați un obiect**
3. Dați-i un nume descriptiv (de ex., "Atribuire proiect", "Membru al echipei", "Comandă de produs")
4. Activați "Omite crearea unui câmp Nume"
<img src="/images/user-guide/fields/new-pivot-object.png" alt="Obiect pivot nou" />
5. Faceți clic pe **Salvare**
<Tip>
**Convenție de denumire**: Folosiți un nume care descrie relația, cum ar fi "Atribuire proiect" sau "Apartenență la echipă". Acest lucru face modelul de date mai ușor de înțeles.
</Tip>
## Pasul 2: Creați relații între obiecte și obiectul de legătură
Adăugați câmpuri de relație din fiecare dintre cele două obiecte la obiectul de legătură.
### Prima relație (Obiectul A → Obiect de legătură)
1. Selectați primul obiect în **Setări → Model de date**
2. Faceți clic pe **+ Adaugă relație**
3. Selectați obiectul de legătură (de ex., "Atribuiri proiect")
4. Setați tipul relației la **Unu-la-mulți** (o persoană poate fi asociată cu multe atribuiri)
5. Denumiți câmpurile:
* Câmp pe Persoane: de ex., "Atribuiri proiect"
* Câmp pe obiectul de legătură: de ex., "Persoană"
6. Faceți clic pe **Salvare**
### A doua relație (Obiectul B → Obiect de legătură)
1. Selectați al doilea obiect în **Setări → Model de date**
2. Faceți clic pe **+ Adaugă relație**
3. Selectați obiectul de legătură (de ex., "Atribuiri proiect")
4. Setați tipul relației la **Unu-la-mulți** (un proiect poate fi asociat cu multe atribuiri)
5. Activați **"Aceasta este o relație către un obiect de legătură"**
<img src="/images/user-guide/fields/junction-relation-toggle.png" style={{width:'100%'}} />
6. Denumiți câmpurile:
* Câmp pe obiectul de legătură: de ex., "Proiect"
* Câmp pe Proiecte: de ex., "Membrii echipei"
7. Faceți clic pe **Salvare**
## Pasul 3: Configurați afișarea relației de joncțiune
Acum configurați obiectele sursă pentru a afișa direct înregistrările legate, sărind peste obiectul intermediar de legătură.
1. Accesați **Setări → Model de date**
2. Selectați primul obiect (de ex., "Persoane")
3. Găsiți câmpul de relație care indică spre obiectul de legătură (de ex., "Atribuiri proiect")
4. Faceți clic pentru a edita câmpul
5. Activați **"Aceasta este o relație cu un obiect de legătură"**
6. Selectați **Relația țintă** (de ex., "Proiect" — câmpul de pe obiectul de legătură care indică spre cealaltă parte)
7. Faceți clic pe **Salvare**
## Rezultat
După configurare:
* Pe o înregistrare **Persoană**, câmpul "Atribuiri proiect" afișează **Proiecte** direct (nu înregistrări de atribuire)
* Pe o înregistrare **Proiect**, câmpul "Membrii echipei" afișează **Persoane** direct
Obiectul de legătură există în continuare și stochează conexiunile, dar interfața oferă o vedere mulți-la-mulți mai curată.
## Exemplu: Persoane ↔ Proiecte
Iată un ghid complet:
### Creați obiectul de legătură
* Nume: **Atribuire proiect**
* Descriere: "Leagă persoanele de proiectele la care lucrează"
### Adăugați relații
1. **Persoane → Atribuire proiect**
* Tip: Unu-la-mulți
* Câmp pe Persoane: "Atribuiri proiect"
* Câmp pe Atribuire proiect: "Persoană"
2. **Proiecte → Atribuire proiect**
* Tip: Unu-la-mulți
* Câmp pe Proiecte: "Membrii echipei"
* Câmp pe Atribuire proiect: "Proiect"
### Configurați afișarea relației de joncțiune
1. Pe obiectul **Persoane**:
* Editați câmpul "Atribuiri proiect"
* Activați comutatorul de joncțiune
* Țintă: "Proiect"
2. Pe obiectul **Proiecte**:
* Editați câmpul "Membrii echipei"
* Activați comutatorul de joncțiune
* Țintă: "Persoană"
### Utilizați-l
* Deschideți o înregistrare Persoană → Vedeți direct Proiectele sale
* Deschideți o înregistrare Proiect → Vedeți direct membrii echipei
* Creați conexiuni noi din oricare parte
## Adăugarea de date suplimentare la conexiuni
Deoarece obiectul de legătură este un obiect real, puteți adăuga câmpuri personalizate pentru a stoca informații despre relație:
* **Rol**: "Dezvoltator", "Designer", "Manager"
* **Data de începere**: Când persoana s-a alăturat proiectului
* **Ore alocate**: Orele săptămânale pe acest proiect
Pentru a accesa aceste date, navigați direct la obiectul de legătură sau interogați-l prin API.
## Limitări
* **Import/Export CSV**: Importul direct al relațiilor mulți-la-mulți nu este acceptat. Importați înregistrări în obiectul de legătură în schimb.
* **Filtre**: Filtrarea după relații mulți-la-mulți poate avea opțiuni limitate.
## Conexe
* [Câmpuri de relație](/l/ro/user-guide/data-model/capabilities/relation-fields) — explicații despre tipurile de relații
* [Creați obiecte personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-objects) — cum să creați obiecte
* [Creați câmpuri de relație](/l/ro/user-guide/data-model/how-tos/create-relation-fields) — configurare de bază a relațiilor

View File

@@ -0,0 +1,70 @@
---
title: Creați câmpuri de relație
description: Ghid pas cu pas pentru conectarea obiectelor cu câmpuri de relație.
---
Câmpurile de relație conectează înregistrări din obiecte diferite — de exemplu, legând Persoane de Companii.
<Note>
**Numele relațiilor nu pot fi schimbate după creare** (afectează API-ul). Planificați cu atenție denumirile.
</Note>
## Înainte de a începe
Decideți:
* Ce obiecte conectați? (de ex., Persoane → Companii)
* Care este partea „unu”? (de ex., Companie)
* Care este partea „mulți”? (de ex., Persoane — multe persoane lucrează la o singură companie)
* Cum ar trebui să se numească câmpul pe fiecare parte?
Consultați [Câmpuri de relație](/l/ro/user-guide/data-model/capabilities/relation-fields) pentru explicații despre tipurile de relații.
## Pași
1. Accesați **Setări → Model de date**
2. Selectați obiectul în care doriți relația (de obicei partea „mulți”)
3. Click **+ Câmp nou**
4. Selectați **Relație** ca tip de câmp
5. Alegeți **obiectul țintă**
6. Selectați **Unu-la-mulți** sau **Mulți-la-unu**
7. Introduceți nume de câmp pentru **ambele părți** ale relației
8. Faceți clic pe **Salvare**
## Exemplu: Persoane → Companii
* Accesați **Setări → Model de date → Persoane**
* Adăugați un câmp Relație
* Țintă: **Companii**
* Tip: **Mulți-la-unu**
* Câmp pe Persoane: **Companie**
* Câmp pe Companii: **Angajați**
Acum fiecare persoană poate fi legată de o companie, iar fiecare companie își afișează persoanele.
## Dezactivarea unei Relații
1. Mergeți la **Setări → Model de date → obiect la alegere**
2. Găseşte câmpul de relaţie şi fă clic pe el
3. Apasă butonul **Dezactivează**
Legăturile sunt păstrate, dar ascunse. Reactivați pentru a restabili.
<Note>
**Dezactivarea unei relații nu șterge înregistrările.** Numai legătura dintre ele este eliminată.
</Note>
## Ștergerea unei relații
1. Mergeți la **Setări → Model de date → obiect la alegere**
2. Găseşte câmpul de relaţie şi fă clic pe el
3. Apasă pe butonul **Șterge**
<Note>
Se aplică numai relațiilor personalizate. Relațiile standard pot fi doar dezactivate.
</Note>
## Conexe
* [Câmpuri de relație](/l/ro/user-guide/data-model/capabilities/relation-fields) — tipuri și limitări
* [Cum să importați relații](/l/ro/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv) — import în masă a înregistrărilor legate

View File

@@ -0,0 +1,22 @@
---
title: Personalizează modelul tău de date
description: Prezentare generală a opțiunilor de personalizare a modelului de date.
---
Modelul de date al Twenty este complet personalizabil. Creează obiecte, câmpuri și relații care să corespundă afacerii tale.
## Linkuri rapide
| Vreau să... | Ghid |
| ------------------------------ | ------------------------------------------------------------------------------------------- |
| Creează un obiect nou | [Cum să creezi obiecte personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-objects) |
| Adaugă câmpuri la un obiect | [Cum să creezi câmpuri personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-fields) |
| Conectează obiectele între ele | [Cum să creezi câmpuri de relație](/l/ro/user-guide/data-model/how-tos/create-relation-fields) |
## Află mai multe
* [Înțelegerea modelului tău de date](/l/ro/user-guide/data-model/overview) — concepte cheie și sfaturi de planificare
* [Obiecte](/l/ro/user-guide/data-model/capabilities/objects) — obiecte standard vs obiecte personalizate
* [Câmpuri](/l/ro/user-guide/data-model/capabilities/fields) — toate tipurile de câmpuri
* [Câmpuri de relație](/l/ro/user-guide/data-model/capabilities/relation-fields) — conectarea obiectelor
* [Întrebări frecvente despre modelul de date](/l/ro/user-guide/data-model/how-tos/data-model-faq) — întrebări uzuale

View File

@@ -0,0 +1,157 @@
---
title: Întrebări frecvente despre modelul de date
description: Întrebări frecvente despre modelul de date al Twenty.
---
## Gestionarea obiectelor
<AccordionGroup>
<Accordion title="Pot să șterg un obiect personalizat?">
Da, obiectele personalizate pot fi șterse. Le poți și dezactiva mai întâi, ceea ce ascunde obiectul și datele sale din interfață, păstrându-le.
</Accordion>
<Accordion title="Pot să șterg obiectele standard (Persoane, Companii, etc.)?">
Nu, obiectele standard nu pot fi șterse. Le poți doar dezactiva, ceea ce le ascunde din interfață, dar păstrează datele.
</Accordion>
<Accordion title="Câte obiecte personalizate pot să creez?">
Poți crea câte obiecte și câmpuri personalizate ai nevoie — prețul nu se schimbă.
</Accordion>
<Accordion title="Pot să redenumesc un obiect standard?">
Poți redenumi eticheta obiectelor standard (Persoane, Companii, Oportunități), dar nu și numele lor API. Denumirile API sunt fixe pentru a asigura consistența în toate spațiile de lucru Twenty.
</Accordion>
<Accordion title="Pot să schimb pictograma unui obiect?">
Da, poți schimba pictograma atât pentru obiectele standard, cât și pentru cele personalizate, în **Setări → Model de date**.
</Accordion>
<Accordion title="Pot să rearanjez obiectele în bara de navigare din stânga?">
Încă nu. Ordinea obiectelor în navigare este momentan fixă, însă această funcționalitate este planificată pentru o versiune viitoare.
</Accordion>
<Accordion title="Pot să ascund obiectele din bara de navigare din stânga?">
Toate obiectele active apar în navigare. Poți dezactiva obiectele de care nu ai nevoie sub **Setări → Model de Date**.
</Accordion>
</AccordionGroup>
## Capabilitățile câmpurilor
<AccordionGroup>
<Accordion title="Pot să schimb tipul unui câmp după creare?">
Nu, tipurile de câmp nu pot fi modificate după creare. Dacă ai nevoie de un alt tip, creează un câmp nou cu tipul corect, migrează-ți datele, apoi dezactivează câmpul vechi.
</Accordion>
<Accordion title="De ce am nevoie de nume diferite pentru singular și plural?">
API-ul nostru GraphQL folosește ambele forme pentru diferite operațiuni:
* `createPerson` (singular) pentru acțiuni cu un singur înregistrare
* `createPeople` (plural) pentru operațiuni în bloc
Aceasta creează limitări atunci când formele singular și plural sunt aceleași, dar îmbunătățește experiența dezvoltatorului.
</Accordion>
<Accordion title="De ce sunt unele nume de câmpuri protejate?">
Anumite nume de câmpuri, precum `Type` sau `Application`, sunt rezervate pentru utilizarea sistemului. Alege nume alternative precum `Category` sau `Classification`.
</Accordion>
<Accordion title="Ce se întâmplă când dezactivez un câmp?">
* Câmpul este ascuns din interfață
* Datele existente sunt păstrate
* Poți accesa în continuare câmpul prin API
* Relațiile existente rămân, dar nu poți crea altele noi
* Poți reactiva câmpul ulterior
</Accordion>
<Accordion title="Pot să fac un câmp obligatoriu?">
În prezent, nu poți face câmpurile personalizate obligatorii. Toate câmpurile acceptă valori goale. Poți folosi fluxuri de lucru pentru a impune câmpuri obligatorii, trimițând alerte sau blocând acțiuni atunci când câmpurile sunt goale.
</Accordion>
<Accordion title="Care este diferența dintre unic și obligatoriu?">
* **Unic**: Nu pot exista două înregistrări cu aceeași valoare în acest câmp
* **Obligatoriu**: Câmpul trebuie să aibă o valoare (în prezent nu este acceptat pentru câmpurile personalizate)
</Accordion>
<Accordion title="Pot să creez câmpuri cu formule?">
Câmpurile de formulă vin în **H2 2026**. Între timp, poți folosi fluxuri de lucru pentru a calcula și actualiza automat valorile câmpurilor.
</Accordion>
<Accordion title="Pot să am câmpuri imbricate în obiectele mele?">
Câmpurile imbricate vin în **H2 2026**. În prezent, poți folosi fluxuri de lucru pentru a prelua valorile câmpurilor din obiectele înrudite. De exemplu, pentru a afișa industria unei companii pe un document despre o Persoană, creează un câmp personalizat la Persoane și folosește un flux de lucru pentru a sincroniza valoarea.
</Accordion>
<Accordion title="Pot să rearanjez câmpurile din obiecte?">
Da, mergi la Setări → Modelul de date → obiect la alegere → Layout şi apasă **Personalizează pagina înregistrării**. Dacă acest buton este dezactivat, trebuie să creaţi o înregistrare.
</Accordion>
</AccordionGroup>
## Relații
<AccordionGroup>
<Accordion title="Pot să am o relație care indică către același obiect?">
Da! Relațiile auto-referențiale sunt acceptate și recomandate pentru cazuri precum ierarhiile de conturi. De exemplu, creează o relație de la Companii la Companii pentru a urmări conturile părinte/copil.
</Accordion>
<Accordion title="Pot să creez relații de tip mulți-la-mulți?">
O mulțime de relații vin în **H2 2026**. În prezent, creează un obiect intermediar cu două relații de tip unu-la-mulți ca soluție temporară.
De exemplu, pentru a lega Persoane și Proiecte (mulți-la-mulți), creează un obiect "Atribuiri de proiect" cu:
* O relație către Persoane (multe atribuiri → o persoană)
* O relație către Proiecte (multe atribuiri → un proiect)
</Accordion>
<Accordion title="Ce sunt relațiile către tipuri multiple de obiecte (relații Morph)?">
Acestea permit unui obiect să se raporteze la mai multe tipuri diferite de obiecte printr-un singur câmp. De exemplu, Notele pot fi atașate simultan la Persoane ȘI Companii ȘI Oportunități.
Fiecare Notă se leagă în același timp de o Persoană, o Companie și o Oportunitate.
Află mai multe în [Câmpuri de relație](/l/ro/user-guide/data-model/capabilities/relation-fields).
</Accordion>
<Accordion title="Pot să am mai multe relații între aceleași obiecte?">
Da, poți crea mai multe relații între aceleași două obiecte. De exemplu, o Companie ar putea avea atât o relație "Contact principal", cât și "Contact de facturare" către Persoane.
</Accordion>
<Accordion title="Ce se întâmplă cu relațiile când șterg o înregistrare?">
Când ștergi o înregistrare, legătura de relație este eliminată din înregistrările asociate. Înregistrările asociate în sine nu sunt șterse.
</Accordion>
<Accordion title="Pot să creez relații circulare?">
Deși sunt posibile tehnic, relațiile circulare (A → B → C → A) ar trebui evitate, deoarece pot cauza confuzie și potențiale probleme de performanță.
</Accordion>
</AccordionGroup>
## Acces și permisiuni
<AccordionGroup>
<Accordion title="Unde pot vedea și edita modelul de date?">
Accesează **Setări → Model de date** pentru a vizualiza și edita toate obiectele și câmpurile tale.
</Accordion>
<Accordion title="De ce nu pot să văd Modelul de Date sub Setări?">
Contactează-ți administratorul de spațiu de lucru. Accesul la modelul de date este de obicei restricționat doar la administratori.
</Accordion>
</AccordionGroup>
## Gestionarea datelor
<AccordionGroup>
<Accordion title="Există o limită pentru câte înregistrări pot avea?">
Nu există o limită strictă pentru numărul de înregistrări. Totuși, seturi de date foarte mari pot afecta performanța în unele vizualizări. Folosește filtre și vizualizări pentru a gestiona eficient seturile de date mari.
</Accordion>
<Accordion title="Pot să import date în obiectele personalizate?">
Da, poți importa date CSV în orice obiect, inclusiv în obiectele personalizate. Procesul de import acceptă maparea câmpurilor pentru câmpurile personalizate. Vezi [Cum să îți pregătești fișierele CSV](/l/ro/user-guide/data-migration/how-tos/prepare-your-csv-files).
</Accordion>
<Accordion title="Pot să export configurația modelului de date?">
În prezent, nu există un export integrat pentru configurația modelului de date. Contactează asistența dacă ai nevoie să migrezi modelul de date între spații de lucru.
</Accordion>
<Accordion title="Câte câmpuri poate avea un singur obiect?">
Numărul maxim de câmpuri pe care un singur obiect poate să le aibă este de 1600 câmpuri per limite Postgres, incluzând câmpuri existente și șterse. Fiți conștient de faptul că 20 de domenii nu vă vor repara spațiul de lucru dacă limita de 1 600 de câmpuri este atinsă deoarece intră sub incidența politicii noastre de utilizare echitabilă.
</Accordion>
</AccordionGroup>
## Ai nevoie de mai mult ajutor?
Consultă [Serviciile noastre de implementare](/l/ro/user-guide/getting-started/capabilities/implementation-services) pentru ajutor cu proiectarea complexă a modelului de date.

View File

@@ -0,0 +1,177 @@
---
title: Model de date
description: Află ce este un model de date și cum să proiectezi unul care se potrivește afacerii tale.
---
## Ce este un model de date?
Un model de date este structura care definește cum sunt organizate informațiile în CRM-ul tău. Gândește-te la el ca la **planul** datelor tale despre clienți — îl proiectezi o singură dată, apoi îl umpli cu datele tale reale.
## Concepte cheie
### Obiecte
**Obiectele** sunt principalele categorii de date din CRM-ul tău. Fiecare obiect reprezintă un tip de element pe care vrei să îl urmărești.
Twenty include obiecte standard:
* **People** — persoane (contacte, leaduri, parteneri)
* **Companii** — organizații
* **Oportunități** — tranzacții sau vânzări
* **Note** - notițe atașate la înregistrări
* **Sarcini** — sarcini legate de înregistrări
Poți crea și **obiecte personalizate** pentru orice este specific afacerii tale (de ex., Proiecte, Abonamente, Evenimente).
### Câmpuri
**Câmpurile** sunt proprietățile sau atributele care descriu fiecare obiect. Ele stochează informațiile efective.
De exemplu, obiectul **People** are câmpuri precum:
* Nume
* Email
* Telefon
* Funcție
* Companie (o relație cu obiectul Companies)
Câmpurile au diferite **tipuri**: text, număr, dată, selectare, selecție multiplă, relație și altele. Poți adăuga câmpuri personalizate la orice obiect.
### Înregistrări
**Înregistrările** sunt intrările individuale dintr-un obiect — datele efective pe care le creezi și le gestionezi.
De exemplu:
* "John Smith" este o **înregistrare** în obiectul People
* "Acme Corp" este o **înregistrare** în obiectul Companies
**O analogie:**
| Conceptul de model de date | Analogie din lumea reală |
| -------------------------- | ------------------------------------------------------- |
| **Obiecte** | Secțiuni într-o carte (categoriile) |
| **Câmpuri** | Coloane într-o foaie de calcul (proprietățile) |
| **Înregistrări** | Rânduri într-o foaie de calcul (intrările propriu-zise) |
Proiectezi modelul de date (obiecte + câmpuri) o singură dată, apoi creezi multe înregistrări în acea structură.
## De ce să-ți personalizezi modelul de date?
Fiecare afacere funcționează diferit. Personalizarea modelului tău de date înseamnă că poți modela Twenty în jurul proceselor **tale**, în loc să le forțezi într-un sistem rigid.
Twenty oferă flexibilitate totală:
* Creează oricâte obiecte personalizate de care ai nevoie
* Adaugă un număr nelimitat de câmpuri personalizate
* Prețul nu se schimbă în funcție de personalizare
## Sfaturi pentru a proiecta modelul tău de date
### 1. Începe cu obiectele tale de bază
Identifică principalele concepte cu care lucrezi. Twenty oferă deja:
* **People** — contactele tale
* **Companies** — conturile tale
* **Oportunități** — tranzacțiile tale
Gândește-te la ce altceva ai putea avea nevoie:
* Stripe ar avea nevoie de un obiect `Subscriptions`
* Airbnb ar avea nevoie de un obiect `Trips`
* Un accelerator ar avea nevoie de un obiect `Batches`
### 2. Folosește câmpuri pentru variații, nu obiecte noi
Dacă ceva este doar o caracteristică a unui obiect existent, fă-l un **câmp**.
**Folosește câmpuri pentru:**
* Categorii și etichete (de ex., `Industry` pentru Companies)
* Valori de stare (de ex., `Stage` pentru Opportunities)
* Atribute și proprietăți
### 3. Creează un obiect atunci când stă pe cont propriu
Dacă conceptul are propriul ciclu de viață, propriile proprietăți sau relații, merită un obiect.
**Creează un obiect pentru:**
* **Proiecte** — au termene limită, responsabili și sarcini
* **Abonamente** — conectează companii, produse și facturi
* **Evenimente** — implică participanți și acțiuni ulterioare
Acestea depășesc un singur câmp deoarece au propriile date și relații.
### 4. Creează un obiect atunci când numărul înregistrărilor este nedeterminat
Dacă ceva poate fi asociat de mai multe ori și nu știi de câte, folosește un obiect.
**Abordare greșită:**
Crearea de câmpuri precum `Product 1`, `Product 2`, `Product 3`...
**Abordare bună:**
Creează un obiect `Products` și relaționează-l cu înregistrările. Astfel, poți susține unul, două sau o sută de produse fără a-ți schimba modelul.
### 5. Păstrează totul simplu la început
Începe cu câmpurile. Treci la obiecte noi doar când simți limitele:
* Prea multe câmpuri pe un singur obiect
* Înregistrări repetate care ar trebui să fie separate
* Relații care nu se potrivesc bine
## Notă specială despre Persoane, Companii și Oportunități
<Warning>
**Sincronizarea e-mailului și a calendarului funcționează doar cu Persoane, Companii și Oportunități.**
Acestea sunt singurele obiecte în care puteți accesa e-mailuri și întâlniri sincronizate din căsuța poștală/calendar. Vă recomandăm să le utilizați cât mai mult posibil.
</Warning>
**Cele mai bune practici:**
* Dacă aveți nevoie de categorii de Persoane, folosiți câmpuri (nu obiecte noi)
* Exemplu: folosiți un câmp `Person Type` cu valorile "Prospect" și "Partner" în loc să creați obiecte separate
* Creați **vizualizări** diferite pentru filtrare: una care afișează partenerii, alta care afișează prospectele
**Este în regulă să aveți câmpuri care nu se aplică fiecărei înregistrări.** De exemplu, un câmp `Referral Link` în Persoane care se aplică doar când `Person Type = Partner`. Ascundeți acest câmp din vizualizările în care nu este relevant.
## Întrebări pentru a vă ghida alegerea
Întreabă-te:
<Check>Este aceasta doar o proprietate a ceva ce aveți deja sau necesită propriile sale proprietăți?</Check>
<Check>Va fi vreodată nevoie să urmăriți mai multe dintre acestea pentru fiecare înregistrare, fără a ști câte?</Check>
<Check>Acest concept se conectează la mai multe obiecte diferite, nu doar la unul singur?</Check>
<Check>Va avea propriul ciclu de viață (etape, date de început/sfârșit)?</Check>
Dacă răspunsul este "da" la una sau mai multe, probabil că este timpul pentru un nou obiect.
## Accesarea modelului de date
1. Accesați **Setări** în bara laterală stângă
2. Faceți clic pe **Model de date**
3. Vizualizați toate obiectele (standard și personalizate)
4. Faceți clic pe orice obiect pentru a-i vedea și edita câmpurile
<Note>
**Nu vedeți Modelul de date în Setări?**
Accesul la modelul de date este de obicei restricționat administratorilor. Contactați administratorul spațiului de lucru dacă aveți nevoie de acces.
</Note>
## Pașii următori
După ce ați planificat modelul de date:
* [Cum să creezi obiecte personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-objects)
* [Cum să creezi câmpuri personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-fields)
* [Cum să creezi câmpuri de relație](/l/ro/user-guide/data-model/how-tos/create-relation-fields)
## Ai nevoie de ajutor?
<Tip>
Vrei ajutor la proiectarea modelului tău de date? [Găsește un partener certificat](https://twenty.com/partners/list?categories=SOLUTIONING\&ref=docs-data-model) pentru a proiecta și construi obiectele, câmpurile și relațiile tale.
</Tip>

View File

@@ -0,0 +1,104 @@
---
title: Glosar
description: Familiarizați-vă cu terminologia esențială utilizată în Twenty.
---
## API
API (Interfața de Programare a Aplicațiilor) permite conectarea Twenty cu alte sisteme software și construirea de integrări personalizate.
## Aplicații
Aplicațiile sunt extensii personalizate sub formă de cod, care pot defini modele de date și funcții de logică. Acestea le permit dezvoltatorilor să creeze personalizări reutilizabile care pot fi implementate în mai multe spații de lucru.
## Acțiuni de cod
Acțiunile de cod sunt pași dintr-un flux de lucru care îți permit să scrii JavaScript personalizat pentru a transforma date, a efectua calcule sau a realiza logică complexă care nu este posibilă cu acțiunile integrate.
## Meniu de comenzi
Meniul de comenzi este o interfață de acces rapid (deschisă cu `Cmd + K` pe Mac și `Ctrl + K` pe Windows) care vă permite să efectuați acțiuni, să creați înregistrări și să navigați eficient în spațiul de lucru.
## Companie & Persoane
CRM-ul are două tipuri fundamentale de înregistrări:
* O `Companie` reprezintă o afacere sau o organizație.
* `People` reprezintă clienții actuali și potențiali ai companiei.
## Câmpuri personalizate
Câmpurile personalizate sunt câmpuri de date pe care le creați pentru a colecta informații specifice necesităților și proceselor dvs. de afaceri.
## Model de date
Un model de date este structura care definește modul în care informațiile sunt organizate în CRM-ul dvs., incluzând ce obiecte există, proprietățile lor (câmpuri) și cum se relaționează între ele.
## Favorite
Favoritele sunt înregistrări pe care le-ați marcat pentru acces rapid, apărând în bara laterală pentru o navigare instantanee către date importante.
## Câmp
Un câmp se referă la o zonă specifică în care sunt stocate datele pentru o entitate.
## Iterator
Un Iterator este o acțiune de flux de lucru care parcurge un tablou de elemente, executând acțiunile ulterioare pentru fiecare element din listă.
## Kanban
Un `Kanban` este o metodă vizuală de urmărire a proceselor de afaceri folosind carduri și coloane. Fiecare coloană reprezintă o etapă în procesul dvs. (de exemplu: nou, în derulare, câștigat, pierdut), iar înregistrările sunt mutate prin aceste etape pe măsură ce progresează.
## Obiect
Un obiect este o structură de date care reprezintă un tip specific de entitate în CRM-ul dvs. (cum ar fi Oameni, Companii sau Oportunități). Obiectele pot fi standard (încorporate) sau personalizate (create de dvs.).
## Oportunități
Oportunitățile în Twenty CRM sunt potențiale afaceri sau vânzări cu conturi sau contacte.
## Înregistrare
O înregistrare este o instanță a unui obiect, cum ar fi un anumit cont sau contact.
## Câmpuri de relație
Câmpurile de relație creează conexiuni între diferite obiecte, permițându-vă să legați înregistrările între ele (cum ar fi conectarea unei Persoane la o Companie).
## Câmpuri standard
Câmpurile standard sunt câmpuri de date preconstruite care vin cu obiectele în mod implicit și oferă funcționalitate comună în toate spațiile de lucru.
## Sarcini
Sarcinile în Twenty CRM sunt activități atribuite care au legătură cu contacte, conturi sau oportunități.
## Declanșatoare
Declanșatoarele sunt punctul de pornire al unui flux de lucru — evenimentul sau condiția care inițiază automatizarea. Exemplele includ crearea de înregistrări, actualizări ale înregistrărilor, webhook-uri sau momente programate.
## Vizualizări
Puteți personaliza afișarea înregistrărilor dvs. folosind vizualizări, stabilind diferite filtre, aspecte și opțiuni de sortare pentru fiecare vizualizare.
## Upsert
Upsert este o operațiune care combină "update" și "insert" — actualizează o înregistrare existentă dacă se găsește o potrivire sau creează o înregistrare nouă dacă nu există nicio potrivire.
## Webhook-uri
Webhook-urile sunt mesaje automate trimise de la Twenty către alte aplicații atunci când au loc evenimente specifice, permițând sincronizarea datelor în timp real.
## Fluxuri de lucru
Fluxurile de lucru sunt procese automatizate care declanșează acțiuni pe baza unor condiții specifice, ajutându-te să automatizezi sarcini repetitive și procese de afaceri.
## Spațiu de lucru
Un `Spațiu de lucru` reprezintă de obicei o companie care folosește Twenty. Conține toate înregistrările și datele pe care dvs. și membrii echipei dvs. le adăugați la Twenty.
Are un nume de domeniu unic, care este de obicei numele de domeniu folosit de compania dvs. pentru adresele de email ale angajaților.
## Membri ai spațiului de lucru
Membrii spațiului de lucru sunt utilizatorii Twenty din echipa dvs. care au acces la spațiul dvs. de lucru. Ei pot fi desemnați ca proprietari sau asignați pentru înregistrări.

View File

@@ -0,0 +1,17 @@
---
title: Servicii de implementare
description: Indiferent dacă ai nevoie de ajutor pentru a începe sau pentru a crea personalizări avansate, avem o soluție.
---
## Parteneri de implementare
Colaborați cu partenerii Twenty certificați pentru personalizări avansate, integrări și asistență dedicată pentru implementare.
<CardGroup cols={2}>
<Card title="Răsfoiți partenerii certificați" icon="magnifying-glass" href="https://twenty.com/partners/list?ref=docs-implementation-services">
Găsiți un partener și contactați-l direct — filtrați după regiune, limbă și expertiză.
</Card>
<Card title="Potriviți de Twenty" icon="envelope" href="mailto:contact@twenty.com">
Spuneți-ne de ce aveți nevoie și vă vom pune în legătură cu partenerul potrivit.
</Card>
</CardGroup>

View File

@@ -0,0 +1,42 @@
---
title: Ce este Twenty
description: Twenty este un CRM cu sursă deschisă care vă oferă elementele de bază pentru a crea exact ceea ce are nevoie afacerea dvs.
---
## Viziune
Crearea unui CRM bun este dificilă pentru că este un act de echilibru.
Pentru fiecare afacere, cerințele par simple, dar nevoile fiecăruia sunt distincte.
Rezultatul este un CRM fie prea simplu, fie care încearcă să fie universal dar sfârșește prin a nu excela în nici un aspect.
La început, Twenty arată ca majoritatea CRM-urilor pe care le cunoașteți deja: puteți urmări oferte, organiza contacte, gestiona sarcini și note.
**Dar ceea ce îl diferențiază este abordarea noastră privind extensibilitatea. Construim o platformă deschisă care oferă elementele de bază pentru a rezolva problemele unice ale afacerii tale.**
Prioritizăm principiile universale și tiparele comune în locul listelor de caracteristici.
Nu încercăm să avem toate răspunsurile, ci în schimb împuternicim utilizatorii să găsească ceea ce funcționează cel mai bine pentru ei.
Open-source este fundamentul abordării noastre, asigurându-ne că Twenty evoluează cu comunitatea sa, pentru comunitatea sa.
## Beneficii
**Personalizabil:** Proiectat pentru a se potrivi nevoilor afacerii tale.
**Condus de comunitate:** Construit și întreținut de o mare comunitate open-source.
**Eficient din punct de vedere al costurilor:** Nu vei fi niciodată blocat de un furnizor, deoarece poți găzdui întotdeauna pe cont propriu.
## Funcționalități principale
* **Calendar și e-mailuri:** Sincronizați-vă căsuța poștală și calendarul pentru a vedea toate comunicările în înregistrările dvs. din CRM. [Aflați mai multe](/l/ro/user-guide/calendar-emails/overview).
* **Model de date:** Creați obiecte și câmpuri personalizate, adaptate proceselor dvs. de afaceri unice. [Explorați](/l/ro/user-guide/data-model/overview).
* **Migrarea datelor:** Importați și exportați datele prin CSV sau API. [Începeți](/l/ro/user-guide/data-migration/overview).
* **Vizualizări și pipeline-uri:** Organizați-vă datele cu vizualizări tabelare, panouri kanban și fluxuri de vânzări. [Descoperiți](/l/ro/user-guide/views-pipelines/overview).
* **Fluxuri de lucru:** Automatizați procesele de afaceri și integrați cu instrumente externe. [Creați automatizări](/l/ro/user-guide/workflows/overview).
* **IA:** Îmbunătățiți CRM-ul cu funcționalități bazate pe IA și agenți IA. [Explorați IA](/l/ro/user-guide/ai/overview).
* **Tablouri de bord:** Urmăriți performanța cu rapoarte și vizualizări personalizate. [Vizualizați tablourile de bord](/l/ro/user-guide/dashboards/overview).
* **Permisiuni și acces:** Controlați cine poate vizualiza, edita și gestiona datele dvs. cu permisiuni bazate pe roluri. [Configurați accesul](/l/ro/user-guide/permissions-access/overview).
* **Note și sarcini:** Creați note și sarcini legate de înregistrările dvs. pentru o colaborare mai bună.
* **API și Webhooks:** Conectați-vă la alte aplicații și creați integrări personalizate. [Începeți integrarea](/l/ro/developers/extend/api).
## Alătură-te acum
[Înregistrați-vă aici](https://app.twenty.com) sau [deveniți contributor pe GitHub](https://github.com/twentyhq/twenty).

View File

@@ -0,0 +1,77 @@
---
title: Configurați spațiul de lucru
description: Fiecare afacere funcționează diferit. Începeți cu acești 3 pași pentru a adapta Twenty la nevoile dvs.
---
<Note>**Rezultat rapid**: Începeți prin conectarea căsuței de e-mail. Acest lucru îți oferă valoare imediată și ajută echipa ta să vadă Twenty în acțiune cu date reale. Puteți face acest lucru în Setări → Conturi.</Note>
## 1. Personalizează modelul tău de date
Twenty oferă flexibilitatea de care ai nevoie pentru a modela modelul de date care va susține cel mai bine activitățile tale zilnice.
Creează obiecte și câmpuri de orice tip, inclusiv relații între diferite obiecte. Poți face asta în setări → Model de Date.
Iată câteva sfaturi:
* **Nu sunteți limitat în numărul de câmpuri personalizate sau de obiecte personalizate**. Adăugarea de obiecte și câmpuri personalizate nu va duce la actualizarea planului tău.
* **Persoane, Companii și Oportunități sunt cele trei obiecte din care puteți accesa e-mailurile și întâlnirile sincronizate din căsuța de e-mail și calendar**. Recomandăm folosirea acestora cât mai mult posibil, adăugând câmpuri pentru a-ți clasifica înregistrările dacă este necesar. Iată un exemplu:
* Este cel mai bine să folosești Obiectul Persoane pentru perspectivele și partenerii tăi, creând un câmp pe obiectul Persoane numit \`\`\`Person Type\`\`, în loc să creați un obiect personalizat Partner, deoarece nu ați putea accesa e-mailurile schimbate cu această persoană din înregistrările partenerului.
* Creează diferite vizualizări sub Persoane, una pentru a afișa partenerii și alta pentru a afișa perspective.
* Două Persoane nu pot avea aceeași adresă de e-mail. Două Companii nu pot avea același domeniu.
* Poți dezactiva câmpurile și obiectele standard pe care nu vrei să le folosești.
* Poți ascunde câmpurile din vizualizări: nu te teme să creezi câmpuri, nu va trebui să le afișezi pe toate.
Citește [acest articol](/l/ro/user-guide/data-model/overview) pentru a afla cum să îți proiectezi modelul de date.
## 2. Importă datele tale
Importarea datelor existente în Twenty oferă echipei tale context de la început.
### Conectează-ți căsuța de e-mail
Dacă nu ai făcut asta atunci când ai creat spațiul de lucru, conectează-ți **contul Google sau Microsoft** în setări → Conturi. Acest lucru permite Twenty să:
* Importe mesajele și întâlnirile tale
* Automat să creeze contacte pe baza interacțiunilor (opțional)
* Păstrați istoricul comunicării vizibil pentru echipa dvs.
**Folosești un alt furnizor?**
Poți adăuga o altă căsuță de e-mail prin SMTP sau un alt calendar prin CalDAV. Mergeți la **Setări → Conturi** pentru a configura.
### Importă date prin CSV
Folosește meniul Comandă (`Cmd + K` sau `Ctrl + K`) pentru a importa Persoane, Companii, Oportunități sau orice obiect personalizat prin CSV.
**Linii directoare cheie**:
* Descarcă fișierul sample pentru a înțelege formatul așteptat
* Limitează fiecare fișier la 10k de înregistrări
* Elimină e-mailurile duplicate pentru Persoane sau domeniile duplicate pentru Companii
* Revizuiește și corectează erorile (evidențiate cu galben) înainte de importare
Citește [acest articol](/l/ro/user-guide/data-migration/overview) pentru a afla mai multe despre importul de date.
## 3. Creează prima ta vizualizare
Crearea de vizualizări diferite este cheia pentru ca datele să poată fi accesate pentru echipa dvs.
Iată cum să procedezi:
* \*\*Coloane de adăugare sau ascundere \*\*
Gestionează câmpurile vizibile într-o anumită vizualizare făcând clic pe Opţiuni → Câmpuri (din dreapta sus). Poți arăta/ascunde câmpurile de acolo.
* **Câmpuri de reordonare**
Reordonează câmpurile dintr-o vizualizare dată dând click pe → Câmpuri (din dreapta sus). Trage și fixează câmpurile pentru a le rearanja.
* **Filtrează vizualizarea**
Redu numărul de înregistrări afișate folosind filtrele din dreapta sus.
* **Sortează înregistrările**
Rearanjează înregistrările afișate folosind funcția de sortare din dreapta sus, sau dând clic direct pe numele coloanei.
* **Alege layout-ul**
Poți comuta la un layout **Kanban** sau la un layout de tip listă **Group By**, atâta timp cât obiectul are un câmp de selectare `Stadiu` sau similar.
* **Salvează vizualizarea ca Favorite**
Acest lucru poate fi realizat folosind meniul derulant care arată diferitele vizualizări.
## Ce urmează?
Începe să creezi automatizări folosind [fluxuri de lucru](/l/ro/user-guide/workflows/overview).

View File

@@ -0,0 +1,48 @@
---
title: Creează un spațiu de lucru
description: Urmați un ghid pas cu pas despre cum să vă înregistrați pe Twenty, să alegeți un plan de abonament și să vă configurați contul.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Pasul 1: Înregistrare
1. Navigați la [Twenty Sign Up](https://app.twenty.com).
2. Selectați metoda de înscriere preferată:
* **Continuați cu Google** pentru înregistrarea contului Google.
* **Continuați cu Microsoft** pentru înregistrarea contului Microsoft.
* Sau, **Continuă cu Email** pentru înregistrare e-mail.
<VimeoEmbed videoId="927066829" title="Demonstrație video" />
## Pasul 2: Alegerea Perioadei de Probă
Alegeți între două perioade de încercare:
### 30 de zile
Cu card de credit
### 7 zile
Fără card de credit
Ambele perioade de probă includ:
* Acces complet
* Contacte nelimitate
* Integrare email
* Obiecte personalizate
* API & Webhooks
Puteți face clic pe "Schimbă planul" pentru a alege un alt plan sau interval de facturare.
<img src="/images/user-guide/create-workspace/choose-plan.png" style={{width:'100%'}} />
## Pasul 3: Confirmarea Plății și Configurarea Contului
După aprobarea plății prin Stripe, ești direcționat să îți creezi spațiul de lucru și profilul de utilizator. Rețineți că vă puteți anula abonamentul oricând.
## Suport
Pentru întrebări sau ajutor, contactați echipa de suport dedicată la [contact@twenty.com](mailto:contact@twenty.com) sau trimiteți un mesaj pe [Discord](https://discord.gg/cx5n4Jzs57).

View File

@@ -0,0 +1,84 @@
---
title: Navigați prin Twenty
description: Obțineți o imagine de ansamblu rapidă despre cum să navigați prin platformă și unde să întreprindeți diferite tipuri de acțiuni.
---
## Aspectul principal
Centrul ecranului este **unde vă trăiesc înregistrările**: Oameni, companii, Oportunități, Sarcini, Note, tablouri de bord, fluxuri de lucru și orice alt obiect pe care l-ați creat. Aici are loc munca de zi cu zi.
Puteți **vizualiza, edita sau șterge înregistrări** de acolo, precum și **crea vizualizări noi**.
<img src="/images/user-guide/home/main-layout.png" style={{width:'100%'}} />
## Bara de navigare
În partea stângă, de sus în jos, veți putea:
* Schimbați între **mai multe spații de lucru** folosind meniul derulant sau creați un nou spațiu de lucru
* Folosiți bara de căutare (apăsați `/` pentru a o focaliza instantaneu)
* Deschideți secțiunea **Setări**
* Aveți acces direct la **vizualizările favorite**. Favoritele sunt unice pentru fiecare utilizator.
* Schimbați între diferite obiecte
* **Creați automatizări** folosind fluxurile de lucru
<img src="/images/user-guide/home/navigation-bar.png" style={{width:'100%'}} />
## Meniul de comenzi
Meniul de comenzi vă oferă **acces rapid la acțiuni** în Twenty. Puteți accesa în două moduri:
* **Scurtătură de la tastatură**: Apăsați `Cmd + K` (Mac) sau `Ctrl + K` (Windows)
* **Mouse**: Faceți clic pe cele trei puncte din colțul din dreapta sus
De acolo, puteți:
* Creați noi înregistrări
* **Importați și exportați date în format CSV**
* Creați noi vizualizări
* Accesați înregistrările șterse (Twenty acceptă ștergeri temporare și permanente)
* Vizualizați scurtăturile de la tastatură pentru a accesa rapid obiectele din spațiul de lucru
<img src="/images/user-guide/home/command-menu.png" style={{width:'100%'}} />
## Bara de căutare
Bara de căutare este accesibilă prin Meniul de comenzi, în partea de sus a barei de navigare sau prin apăsarea tastei `/` pentru a plasa imediat focusul pe ea. Căutarea funcționează pentru toate obiectele.
<img src="/images/user-guide/home/search-bar.png" style={{width:'100%'}} />
## Panoul lateral
Când faceți clic pe o înregistrare, panoul lateral apare în dreapta. Acesta vă oferă o prezentare generală a informațiilor esențiale ale înregistrării, fără a vă duce pe o altă pagină. De aici, puteţi decide să închideţi această prezentare generală sau să obţineţi informaţii suplimentare despre această înregistrare, făcând clic pe butonul deschis.
<img src="/images/user-guide/home/side-panel.png" style={{width:'100%'}} />
## Vizualizări
Fiecare obiect (cum ar fi Oportunități sau Persoane) acceptă multiple vizualizări. Numărul de vizualizări pe obiect nu este limitat.
Folosiți meniul derulant din stânga sus a aspectului principal pentru a schimba între diferitele vizualizări. De exemplu:
* Folosiți o vizualizare Kanban pentru a urmări oportunitățile după stadiu
* Folosiți vizualizarea Group By pentru a crea secțiuni și a îmbunătăți eficiența
* Folosiți filtre pentru a vă concentra asupra unor înregistrări specifice (de ex., clienți potențiali creați săptămâna trecută)
* Salvați vizualizările filtrate pentru a le reutiliza mai târziu
* Vizualizări favorite pentru acces rapid
<img src="/images/user-guide/home/view-menu.png" style={{width:'100%'}} />
Dacă sunteți la început cu Vizualizările, citiți [Ghidul Vizualizări și Fluxuri](/l/ro/user-guide/views-pipelines/overview) pentru a învăța cum să le creați și să le personalizați.
## Setări
Deschideți setările din colțul din stânga sus pentru a:
* **Conectați conturile de e-mail și calendar** pentru o sincronizare fără întreruperi
* Personalizați-vă **modelul de date**: creați obiecte personalizate, câmpuri și relații
* **Accesați playgroundul API și configurați webhook-urile**
* **Gestionați permisiunile utilizatorilor** și controalele de acces ale spațiului de lucru
* Invitați membrii echipei și gestionați rolurile utilizatorilor
* Editați profilul și preferințele spațiului de lucru
* Configurați facturarea și monitorizați utilizarea creditelor de flux de lucru
* Descoperiți și activați funcțiile viitoare (în Actualizări → Acces timpuriu)
* **Accesați Asistența** pentru a lua legătura prin chat live
* **Deschideți Documentația** pentru a parcurge Ghidul Utilizatorului și documentația pentru dezvoltatori
<Note>Dacă nu vedeți toate aceste secțiuni în Setări, accesați administratorul spațiului de lucru - unele secțiuni au restricționat accesul.</Note>

View File

@@ -0,0 +1,59 @@
---
title: Ghid Utilizatori
description: Bine ați venit în Ghidul utilizatorului Twenty, resursa dvs. pentru configurări avansate și bune practici.
---
import { CardTitle } from "/snippets/card-title.mdx"
<CardGroup cols={3}>
<Card href="/l/ro/user-guide/data-model/overview" img="/images/user-guide/halftone/data-model.png">
<CardTitle>Model de date</CardTitle>
Personalizați modelul de date pentru a se potrivi proceselor dvs. de afaceri.
</Card>
<Card href="/l/ro/user-guide/data-migration/overview" img="/images/user-guide/halftone/data-migration.png">
<CardTitle>Migrarea datelor</CardTitle>
Importați și exportați datele prin CSV sau API.
</Card>
<Card href="/l/ro/user-guide/calendar-emails/overview" img="/images/user-guide/halftone/calendar-emails.png">
<CardTitle>Calendar și e-mailuri</CardTitle>
Centralizați întâlnirile și e-mailurile echipei.
</Card>
<Card href="/l/ro/user-guide/workflows/overview" img="/images/user-guide/halftone/workflows.png">
<CardTitle>Fluxuri de lucru</CardTitle>
Automatizați procesele și integrați cu instrumente externe.
</Card>
<Card href="/l/ro/user-guide/ai/overview" img="/images/user-guide/halftone/ai.png">
<CardTitle>IA</CardTitle>
Îmbunătățiți-vă echipa cu agenți IA.
</Card>
<Card href="/l/ro/user-guide/layout/overview" img="/images/user-guide/halftone/layout.png">
<CardTitle>Layout</CardTitle>
Navigare, vizualizări și personalizarea paginii înregistrării.
</Card>
<Card href="/l/ro/user-guide/dashboards/overview" img="/images/user-guide/halftone/dashboards.png">
<CardTitle>Tablouri de bord</CardTitle>
Perspective în timp real pentru a urmări performanța.
</Card>
<Card href="/l/ro/user-guide/permissions-access/overview" img="/images/user-guide/halftone/permissions.png">
<CardTitle>Permisiuni și acces</CardTitle>
Gestionați rolurile și accesul la Twenty.
</Card>
<Card href="/l/ro/user-guide/billing/overview" img="/images/user-guide/halftone/billing.png">
<CardTitle>Facturare</CardTitle>
Înțelegeți cum funcționează prețurile și facturarea în Twenty.
</Card>
<Card href="/l/ro/user-guide/settings/overview" img="/images/user-guide/halftone/settings.png">
<CardTitle>Setări</CardTitle>
Configurați preferințele spațiului de lucru.
</Card>
</CardGroup>

View File

@@ -0,0 +1,38 @@
---
title: Navigare
description: Personalizează bara laterală din stânga pentru a se potrivi modului în care lucrează echipa ta.
---
Bara laterală din stânga este modalitatea principală de a naviga în Twenty. Este complet personalizabilă — o poți reorganiza astfel încât să se potrivească fluxului tău de lucru, fără să atingi vreo pagină de setări.
## Reordonarea elementelor
Trage și plasează orice element din bara laterală pentru a-i schimba poziția. Ordinea este salvată per utilizator, astfel încât fiecare membru al echipei își poate aranja propria bară laterală.
## Foldere
Grupează elemente înrudite în foldere. De exemplu, poți crea un folder "Sales" care să conțină vizualizările de pipeline, un folder "Support" pentru tichete sau un folder "Operations" pentru obiecte interne.
Pentru a crea un folder, fă clic dreapta în bara laterală sau folosește butonul `+`.
## Ascunderea obiectelor
Obiectele pe care nu le folosești pot fi ascunse din bara laterală. Nu sunt șterse — doar sunt scoase din cale. Le puteţi arăta din nou oricând din Setări → Modelul de date.
## Favorite
Fixează vizualizări, înregistrări sau căutări în secțiunea Favorite din partea de sus a barei laterale pentru acces cu un singur clic. Favoritele sunt personale — fiecare utilizator le gestionează pe ale sale.
## Linkuri personalizate
Adaugă linkuri către instrumente externe direct în bara laterală. Util pentru a face legătura către wiki-ul tău, dashboarduri din alte instrumente sau orice URL pe care echipa ta îl folosește în mod regulat.
## Meniu de comenzi
Apasă `Cmd+K` (sau `Ctrl+K`) pentru a deschide meniul de comenzi — o bară de căutare cu acces rapid pentru a sări la orice înregistrare, vizualizare sau acțiune fără a naviga prin bara laterală.
## Personalizarea barei laterale
Pentru a personaliza bara laterală, treceți cursorul peste secțiunea "Spațiu de lucru" din bara laterală și faceți clic pe pictograma cu cheia.
<img src="/images/user-guide/layout/navigation-edit-icon.png" alt="Pictogramă de editare a navigării" />

View File

@@ -0,0 +1,61 @@
---
title: Pagini de înregistrare
description: Personalizați aspectul paginilor de detalii ale înregistrărilor individuale cu file și widgeturi.
---
## Prezentare generală
Când deschideți o înregistrare în Twenty, pagina de detalii este alcătuită din **file** și **widgeturi**. Ambele sunt complet personalizabile pentru fiecare tip de obiect.
## Taburi
Fiecare pagină de înregistrare poate avea mai multe file — similare cu filele dintr-un browser. Folosiți-le pentru a organiza diferite aspecte ale unei înregistrări. De exemplu, o înregistrare Companie poate avea file pentru Prezentare generală, Comunicare, Sarcini și Fișiere.
Puteți:
* Adăugați și eliminați file
* Redenumiți filele
* Reordonați filele prin glisare
* Setați care filă este afișată în mod implicit
## Widgeturi
Widgeturile sunt elementele de bază din fiecare filă. Tipuri de widgeturi disponibile:
| Widget | Ce afișează |
| ------------------------- | -------------------------------------------------- |
| **Câmpuri** | Câmpuri ale înregistrării, grupate sau individuale |
| **Înregistrări asociate** | Tabel cu înregistrări legate printr-o relație |
| **Email-uri** | Istoricul emailurilor din conturile conectate |
| **Calendar** | Evenimente de calendar asociate înregistrării |
| **Cronologie** | Istoricul activităților și evenimentelor |
| **Sarcini** | Sarcini asociate |
| **Notițe** | Notițe cu text îmbogățit |
| **Fișiere** | Atașamente de fișiere |
| **Grafice** | Date vizuale din înregistrări asociate |
| **iFrame** | Conținut extern încorporat |
| **Text îmbogățit** | Conținut static sau descrieri |
## Personalizarea unei pagini de înregistrare
1. Deschideți orice înregistrare
2. Apăsați `Cmd+K` și căutați "Edit record page layout"
sau
1. Mergi la Setări → Model de date → obiect ales de tine → Aspect
2. Faceți clic pe butonul "Personalizați pagina înregistrării" pentru acel obiect
3. Acum sunteți în modul de personalizare:
* **Adăugați widgeturi** din selectorul de widgeturi
* **Glisați widgeturile** pentru a le repoziționa pe grilă
* **Redimensionați widgeturile** trăgându-le marginile
* **Configurați câmpurile** afișate în fiecare widget
* **Gestionați filele** — adăugați, eliminați, redenumiți, reordonați
4. Salvați modificările — se aplică tuturor înregistrărilor din tipul respectiv de obiect
## Vizibilitatea câmpurilor
Într-un widget Câmpuri, puteți controla care câmpuri sunt vizibile și în ce ordine. Acest lucru vă permite să creați dispuneri concentrate — de exemplu, să afișați doar cele mai importante câmpuri în fila Prezentare generală și să plasați câmpurile detaliate într-o filă separată.

View File

@@ -0,0 +1,45 @@
---
title: Aspect
description: Personalizați modul în care navigați, răsfoiți și vizualizați înregistrările în Twenty.
---
Aspectul Twenty este personalizabil la trei niveluri: modul în care navigați în aplicație, modul în care răsfoiți listele de înregistrări și ceea ce vedeți când deschideți o înregistrare individuală.
## Navigare
Bara laterală stângă este complet personalizabilă. Puteți:
* **Reordonați elementele** prin glisare și plasare
* **Creați dosare** pentru a grupa obiecte și vizualizări înrudite
* **Ascundeți obiectele** pe care nu le folosiți
* **Adăugați linkuri personalizate** către instrumente externe
* **Fixați elemente favorite** pentru acces rapid la vizualizări, înregistrări sau căutări
[Referință de navigare →](/l/ro/user-guide/layout/capabilities/navigation)
## Vizualizări
Vizualizările controlează modul în care sunt afișate listele de înregistrări. Twenty acceptă trei tipuri de vizualizări:
| Vizualizare | Cel mai potrivit pentru |
| ------------ | ----------------------------------------------------------------------------------- |
| **Tabel** | Lucrul cu multe înregistrări deodată — rânduri și coloane în stil foaie de calcul |
| **Kanban** | Urmărirea pipeline-ului — carduri organizate pe etape, cu glisare și plasare |
| **Calendar** | Planificare în funcție de timp — înregistrări afișate în funcție de un câmp de dată |
Fiecare vizualizare își salvează propriile filtre, ordonarea, vizibilitatea câmpurilor și configurația de grupare. Vizualizările pot fi partajate cu spațiul de lucru sau păstrate private.
[Vizualizări de tip tabel →](/l/ro/user-guide/views-pipelines/capabilities/table-views) · [Vizualizări Kanban →](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) · [Vizualizare calendar →](/l/ro/user-guide/views-pipelines/capabilities/calendar-view)
## Pagini de înregistrare
Când deschideți o înregistrare, pagina de detalii este construită din file și widgeturi configurabile. Puteți:
* **Adăugați, eliminați și reordonați filele** pentru orice tip de înregistrare
* **Configurați widget-uri** — câmpuri, înregistrări conexe, e-mailuri, cronologie, calendare, sarcini, note, fișiere, grafice, iFrames și multe altele
* **Glisați și redimensionați widgeturile** pe o dispunere în grilă
* **Controlați vizibilitatea câmpurilor** pentru fiecare widget
Intrați în modul de personalizare a aspectului din meniul de comenzi (`Cmd+K` → "Editare aspect pagină de înregistrare").
[Referință pentru paginile de înregistrare →](/l/ro/user-guide/layout/capabilities/record-pages)

View File

@@ -0,0 +1,125 @@
---
title: Întrebări frecvente legale
description: Întrebări juridice puse frecvent.
---
## Rezervarea datelor și transferurile internaționale
<AccordionGroup>
<Accordion title="În ce țară și regiune vor fi stocate datele spațiului nostru de lucru, atașamentele, jurnalele și copiile de rezervă?">
Douăzeci de Cloud rulează pe serverele AWS situate în Frankfurt, Germania.
</Accordion>
<Accordion title="Poate regiunea gazdă să fie reparată prin contract pentru spațiul nostru de lucru?">
Selecția regiunilor va fi disponibilă începând din 2027, inițial pentru noi spații de lucru. Utilizatorii vor putea solicita o schimbare de regiune pentru un spațiu de lucru existent la o dată ulterioară. Alternativ, poți să contactezi [partenerii noștri](https://twenty.com/partners/list?categories=HOSTING) pentru a te ajuta să îți configurezi instanța.
</Accordion>
<Accordion title="Ce sub-procesatori pot procesa sau accesa datele noastre CRM și în ce țări sunt localizate?">
O listă cu toate sub-procesoarele este disponibilă în [centrul nostru de încredere](https://trust.twenty.com/?tab=subprocessors).
</Accordion>
<Accordion title="Ce garanții se aplică transferurilor internaționale de date?">
Clauze contractuale standard ale UE, împreună cu addendumul din Regatul Unit și amendamentele elvețiene, se aplică transferurilor internaționale de date în afara UE, inclusiv transferurilor către toți subprocesatorii.
</Accordion>
</AccordionGroup>
## Acordul privind prelucrarea datelor și rolurile juridice
<AccordionGroup>
<Accordion title="Unde putem găsi actualul acord de prelucrare a datelor?">
Puteți genera DPA semnat la http://{your-domain}/settings/legal/dpa (de ex. https://getting-started.twenty.com/settings/legal/dpa).
</Accordion>
<Accordion title="Funcționează douăzeci de persoane care prelucrează date pentru comerciant și informații de contact stocate în CRM, în timp ce compania noastră rămâne operatorul de date?">
În conformitate cu [Politica noastră de confidențialitate](https://twenty.com/privacy-policy), douăzeci acționează ca procesor de date pentru comerciant și contactează informațiile stocate în CRM, în timp ce firma dumneavoastră rămâne operatorul de date.
</Accordion>
<Accordion title="Conținutul CRM este folosit vreodată pentru a instrui modele AI de douăzeci sau terțe părți?">
Conținutul CRM poate fi folosit pentru a instrui modele AI în funcție de termenii și condițiile sub-procesorilor. Douăzeci de ani nu au propriul model AI — toate modelele AI disponibile pe 20 de cloud sunt furnizate de subprocesoarele noastre.
</Accordion>
<Accordion title="Dacă există o procesare AI opțională, poate fi dezactivată complet pentru spațiul nostru de lucru?">
AI poate fi complet dezactivat prin dezactivarea tuturor modelelor AI în Setări → AI → Modele. În plus, nu sunt trimise date către AI decât dacă interacționezi activ cu AI chat sau un nod AI într-un flux de lucru.
</Accordion>
</AccordionGroup>
## Controale de securitate și acces
<AccordionGroup>
<Accordion title="Este criptarea folosită în tranzit și în repaus, care sunt practicile dvs. cheie de gestionare și cum sunt izolate datele chiriașe?">
Toate datele sunt criptate în tranzit și în repaus. Datele disponibile sunt izolate prin intermediul unei scheme per chiriaș, iar cheile de criptare sunt rotite periodic.
</Accordion>
<Accordion title="Care douăzeci de membri ai personalului sau subprelucrătorilor pot accesa spațiile de lucru ale clienților, în ce scopuri și cum se accesează autorizați și înregistrați?">
Echipele de inginerie și asistență Twenty pot accesa spațiile de lucru ale clienților pentru a investiga și rezolva problemele. Proprietarii spațiilor de lucru controlează acest lucru: accesul pentru asistență poate fi dezactivat oricând în Settings → General → Security și rămâne dezactivat până când îl activați din nou.
</Accordion>
<Accordion title="Care este procesul de notificare a incidentelor și ținta termenului de notificare în urma unui incident confirmat de securitate care afectează datele noastre?">
În cazul unei încălcări confirmate a datelor cu caracter personal care afectează datele tale, vă vom notifica fără întârzieri nejustificate şi, în orice caz, în termen de 48 de ore de la conştientizarea acestui fapt. Notificarea noastră va include, în măsura în care este cunoscută la momentul respectiv: natura încălcării, categoriile și volumul aproximativ al datelor și persoanelor afectate, consecințele probabile, precum și măsurile de remediere și atenuare luate sau planificate. Vom oferi actualizări pe măsură ce ancheta progresează.
</Accordion>
</AccordionGroup>
## Păstrarea și ștergerea datelor
<AccordionGroup>
<Accordion title="Când o înregistrare individuală CRM este ștearsă, când este eliminată din sistemele active?">
Atunci când o înregistrare este ștearsă, este prima ștersă de soft-uri și poate fi restabilită. Acesta este șters și eliminat permanent din sistemele active odată ce perioada de retenție s-a scurs sau un utilizator îl distruge manual.
</Accordion>
<Accordion title="Cât timp sunt păstrate în sistem înregistrările șterse soft-?">
În mod implicit, înregistrările de ștergere a softului sunt păstrate timp de 14 zile, după care sunt eliminate definitiv din sistem. Perioada de retenție pentru înregistrările șterse soft-deleted poate fi modificată în Setări → General → Securitate.
</Accordion>
<Accordion title="Cât timp poate rămâne înregistrarea respectivă în copii de rezervă sau în jurnale tehnice?">
O înregistrare ștearsă rămâne în copiile de rezervă pentru 30 de zile, după care a fost ștearsă definitiv.
</Accordion>
<Accordion title="Când un spațiu de lucru este închis sau se solicită ștergerea completă, ce calendar exact se aplică pentru datele de producție, atașamentele, jurnalele și copiile de rezervă?">
Când un spațiu de lucru este șters, datele sale sunt eliminate din sistemele de producție în termen de aproximativ 90 de zile de la încetarea serviciului și, de obicei, mult mai devreme. Copiile de rezervă și de arhivă sunt apoi suprascrise sau eliminate în termen de încă 90 de zile, după care toate datele sunt șterse definitiv. Pe tot parcursul ambelor perioade, datele sunt izolate de orice utilizare operațională. La cerere, putem furniza o certificare scrisă odată ce procesul de ștergere este finalizat. Consultați clauza 4.9 din Acordul dvs. de Prelucrare a Datelor pentru termenii compleți.
</Accordion>
<Accordion title="În timpul unei perioade de retenţie de rezervă, datele sunt şterse izolat de accesul operaţional şi de utilizare?">
Da, în timpul oricărei perioade de retenție de rezervă, datele șterse sunt izolate de utilizarea operațională.
</Accordion>
<Accordion title="Sunt reținute categorii de date mai lungi în scopuri legale, de facturare, de prevenire a fraudei, de securitate sau de audit? Dacă da, ce categorii și pentru cât timp?">
Pentru mai multe informații despre păstrarea datelor, puteți solicita Politica noastră privind gestionarea și păstrarea datelor disponibilă în [centrul nostru de încredere](https://trust.twenty.com/?tab=documents).
</Accordion>
<Accordion title="Poate oferi douăzeci de confirmări scrise atunci când o cerere de ștergere completă a fost finalizată?">
Recunoaștem cererile de ștergere și oferim confirmare scrisă de îndată ce ștergerea este finalizată.
</Accordion>
</AccordionGroup>
## Rezolvări și reziliență
<AccordionGroup>
<Accordion title="Care sunt frecvența și perioada de retenție?">
Backup-urile sunt create continuu cu instantanee luate zilnic, iar perioada de retenție este de 30 de zile.
</Accordion>
<Accordion title="Care este obiectivul stabilit pentru douăzeci de nori în ceea ce privește redresarea și redresarea?">
RTO și RPO sunt 6 ore (în conformitate cu DPA).
</Accordion>
<Accordion title="Care este procedura de solicitare sau de efectuare a unei restaurări?">
Pentru a solicita restaurare, te rugăm să contactezi echipa noastră prin intermediul chat de suport sau e-mail la [contact@twenty.com](mailto:contact@twenty.com).
</Accordion>
<Accordion title="Sunt copiile de rezervă criptate și stocate în aceeași regiune cu datele primare din spațiul de lucru?">
Toate copiile de rezervă sunt criptate și stocate în locații separate geografic din cadrul aceleiași jurisdicții (de exemplu, în interiorul UE, pentru date UE).
</Accordion>
</AccordionGroup>
## Conformitate
<AccordionGroup>
<Accordion title="Se conformează douăzeci de RGPD?">
Da, douăzeci este [RGPD conform](https://trust.twenty.com/?tab=securityControls\&frameworks=gdpr_v1).
</Accordion>
<Accordion title="Se conformează 20 SOC 2?">
Da, douăzeci de ani este [de conformitate SOC 2](https://trust.twenty.com/?tab=securityControls\&frameworks=soc2_v1).
</Accordion>
<Accordion title="Este conformă douăzeci de HIPAAA?">
Nu, douăzeci de persoane sunt pe cale să devină conforme cu HIPAA.
</Accordion>
</AccordionGroup>
## Licențiere
<AccordionGroup>
<Accordion title="Dacă modific codul pentru a adăuga funcționalități doar pentru uz intern al echipei mele, trebuie să public aceste modificări?">
Nu. Rularea unei versiuni modificate pentru propria echipă nu reprezintă distribuire, astfel încât nu apare nicio obligație de publicare. Clauza de rețea a AGPL se aplică atunci când persoane din afara organizației dvs. interacționează, prin rețea, cu instanța dvs. modificată.
</Accordion>
<Accordion title="Dacă creez un front-end separat și folosesc Twenty ca backend, fără modificări, trebuie să public acele modificări?">
Nu. Front-end-ul dvs. este o operă proprie, separată, iar faptul că interacționează cu Twenty prin API-urile sale nu schimbă acest lucru. Deoarece Twenty în sine nu este modificat, nu există nimic de publicat.
</Accordion>
<Accordion title="Dacă modific codul pentru a adăuga funcționalități în scopul revânzării, trebuie să public acele modificări?">
Da, deoarece modificați codul pentru a-l distribui altora, aveți obligația de a publica acele modificări. Dacă nu doriți să publicați modificările, puteți obține o licență Organization.
</Accordion>
</AccordionGroup>
Dacă aveţi mai multe întrebări, vă rugăm să verificaţi [Termenii şi condiţiile noastre](https://twenty.com/terms), [Politica de confidenţialitate](https://twenty.com/privacy-policy) şi [Centrul de încredere](https://trust.twenty.com/). Dacă încă nu ai răspuns la întrebări, trimite-le la [contact@twenty.com](mailto:contact@twenty.com) sau prin chat-ul de suport.

View File

@@ -0,0 +1,12 @@
---
title: Juridic
description: Aspecte legale
---
Consultați [Întrebările frecvente](/l/ro/user-guide/legal/how-tos/legal-faq).
## Linkuri utile
* [Termeni și condiții](https://twenty.com/terms)
* [Politica de confidențialitate](https://twenty.com/privacy-policy)
* [Centrul de încredere](https://trust.twenty.com/)

View File

@@ -0,0 +1,213 @@
---
title: Permisiuni
description: Controlați accesul la obiecte, câmpuri și setări cu permisiuni bazate pe roluri.
---
Sistemul de permisiuni al Twenty vă permite să controlați accesul la trei domenii principale:
* **Obiecte și Câmpuri**: Controlați cine poate vizualiza, edita sau șterge înregistrările și câmpurile individuale
* **Setări**: Gestionați accesul la configurația workspace-ului și funcțiile administrative
* **Acțiuni**: Controlați acțiunile generale ale workspace-ului cum ar fi importarea datelor sau trimiterea e-mailurilor
## Creează Rol
Pentru a crea un rol nou:
1. Accesați **Setări → Membri → Roluri**
2. Sub **Toate Rolurile**, faceți clic pe **+ Creează Rol**
3. Introduceți un nume de rol
4. În fila implicită **Permisiuni**, [configurați permisiunile](#customize-permissions)
5. Faceți clic pe **Salvare** pentru a termina
## Ștergeți un Rol
Pentru a șterge un rol:
1. Accesați **Setări → Membri → Roluri**
2. Faceți clic pe rolul pe care doriți să-l eliminați
3. Deschideți tab-ul **Setări**, apoi faceți clic pe **Șterge Rol**
4. Faceți clic pe **Confirmă** în fereastra modală
<Note>
Dacă un rol este șters, orice membru al workspace-ului alocat acestuia va fi reatribuit automat rolului implicit. Toate rolurile cu excepția rolului **Administrator** pot fi șterse. Trebuie să existe întotdeauna cel puțin un membru alocat rolului **Admin**.
</Note>
## Atribuiți Roluri Membrilor
### Vizualizați Atribuirile Curente
* Accesați **Setări → Membri → Roluri**
* Vedeți toate rolurile și câți membri sunt alocați fiecăruia
* Vizualizați ce membri au ce roluri
### Atribuiți un Rol unui Membru
1. Accesați **Setări → Membri → Roluri**
2. Faceți clic pe rolul pe care doriți să-l atribuiți
3. Deschideți fila **Atribuire**
4. Faceți clic pe **+ Atribuie membrului**
5. Selectați membrul workspace-ului din listă
6. Confirmați atribuirea
### Setați Rolul Implicit
1. Accesați **Setări → Membri → Roluri**
2. În secțiunea **Opțiuni**, găsiți **Rol Implicit**
3. Selectați ce rol ar trebui să primească automat noii membri
4. Noii membri ai workspace-ului vor primi acest rol când se alătură
<Note>
Puteți atribui roluri doar membrilor existenți ai workspace-ului. Pentru a invita noi membri, utilizați [Gestionarea Membrelor](/l/ro/user-guide/settings/capabilities/member-management).
</Note>
## Personalizați Permisiunile
Permisiunile determină ce fiecare rol poate accesa sau modifica în spațiul de lucru, inclusiv obiectele din spațiul de lucru, înregistrările, setările și acțiunile.
### Permisiuni pentru obiecte
Secțiunea **Obiecte** controlează ce poate face acest rol cu înregistrările din întreg workspace-ul.
#### Stabiliți permisiunile implicite (Toate obiectele)
Mai întâi, configurați permisiunile de bază care se aplică în mod implicit **tuturor obiectelor**:
| Permisiune | Descriere |
| -------------------------------------------------- | ------------------------------------------------------------- |
| **Vezi înregistrări pentru toate obiectele** | Vizualizați înregistrările în liste și pe paginile de detalii |
| **Editează înregistrări pentru toate obiectele** | Modificați înregistrările existente |
| **Șterge înregistrări pentru toate obiectele** | Ștergeți temporar înregistrările (pot fi restaurate) |
| **Distruge înregistrările pentru toate obiectele** | Ștergeți definitiv înregistrările |
Selectați sau deselectați în funcție de comportamentul implicit dorit pentru acest rol.
<Note>
**Exemplu — rol Intern**: Un intern ar trebui să poată vedea toate obiectele, dar să nu le poată edita în mod implicit. Activați "See Records on All Objects", dar lăsați "Edit Records on All Objects" debifat.
</Note>
#### Adăugați excepții la nivel de obiect
După setarea valorilor implicite, folosiți subsecțiunea **La nivel de obiect** pentru a adăuga reguli care suprascriu valorile implicite pentru obiecte specifice.
Faceți clic pe **+ Add rule** și selectați un obiect pentru a crea o excepție.
**Exemple de reguli pentru un rol Intern:**
| Regulă | Efect |
| ----------------------------------------- | ------------------------------------------------------------------- |
| Opportunities → dezactivați "See Records" | Internul nu poate vedea deloc obiectul Opportunities |
| People → activați "Edit Records" | Internul poate edita înregistrările People (dar nu și alte obiecte) |
### Permisiuni la Nivel de Rând
<Note>
Permisiunile la nivel de rând sunt o **funcționalitate Premium** disponibilă în planul **Organization** (Cloud și Self-Hosted).
</Note>
Permisiunile la nivel de rând îți permit să restricționezi ce înregistrări individuale poate vedea sau edita un rol, pe baza unor criterii dinamice. Spre deosebire de permisiunile la nivel de obiect (care se aplică unui întreg tip de obiect), permisiunile la nivel de rând evaluează independent fiecare înregistrare.
**Exemple de cazuri de utilizare:**
* Reprezentanții de vânzări pot vedea doar oportunitățile proprii
* Managerii pot vedea toate înregistrările din regiunea lor
* Agenții de suport pot vizualiza doar tichetele alocate lor
Pentru a configura permisiunile la nivel de rând, deschide un rol, navighează la fila **Objects** și folosește secțiunea **Row-Level** pentru a defini condițiile de filtrare pentru un anumit obiect.
### Permisiuni pentru câmpuri
În cadrul fiecărei reguli la nivel de obiect, puteți merge mai departe și configura **permisiuni la nivel de câmp** pentru a controla accesul la câmpuri specifice.
| Permisiune | Descriere |
| ----------------- | ----------------------------- |
| **Vezi câmp** | Vizualizați valoarea câmpului |
| **Editează câmp** | Modificați valoarea câmpului |
| **Fără acces** | Câmpul este complet ascuns |
**Exemplu — Restricționați câmpurile sensibile:**
Pentru rolul Intern cu acces de editare la People, este posibil să doriți să restricționați anumite câmpuri:
* People → Email → doar **Vezi câmp** (nu poate edita)
* People → Address → **Fără acces** (complet ascuns)
Acest lucru îi permite internului să editeze majoritatea câmpurilor People, protejând în același timp informațiile sensibile.
### Cum funcționează moștenirea permisiunilor
Permisiunile se propagă în cascadă de la general la specific:
1. **All Objects** → stabilește configurația de bază pentru toate obiectele
2. **Object-Level rules** → suprascriu configurația de bază pentru obiecte specifice
3. **Field-Level rules** → suprascriu setarea la nivel de obiect pentru câmpuri specifice
Setările mai specifice au întotdeauna prioritate.
### Gestionați Suprascrierile de Permisiuni
Pentru a suprascrie permisiunile moștenite:
1. Faceți clic pe **X** pentru a elimina regula moștenită
2. Selectați permisiunile specifice dorite
3. Faceți clic pe pictograma portocalie **Anulează** (săgeată circulară) pentru a reveni la modificări
Când ați terminat, faceți clic pe **Finalizare**, apoi **Salvare** odată ce ați fost redirecționat la pagina rolului.
### Permisiuni pentru Setările Workspace-ului
Controlați accesul la setările workspace-ului în două moduri:
* Comutați **Setări Tot Acces** pentru a oferi acces complet
* Sau activați permisiuni specifice (de ex., generarea de chei API, preferințele workspace-ului, atribuirea de roluri, configurația modelului de date, setările de securitate și gestionarea fluxurilor de lucru)
<Note>
**Limitare actuală**: Accesul la gestionarea fluxurilor de lucru este în prezent necesar pentru a declanșa manual fluxurile de lucru. Acest comportament se poate schimba în versiunile viitoare.
</Note>
### Permisiuni de Acțiune în Workspace
Controlați accesul la acțiunile generale ale workspace-ului:
* Comutați **Aplicare Tot Acces** pentru a oferi permisiuni complete
* Sau activați acțiuni individuale cum ar fi **Trimite E-mail**, **Importă CSV** și **Exportă CSV**
## Atribuiți roluri cheilor API și AI Agenți
Pe lângă membrii workspace-ului, rolurile pot fi atribuite și cheilor API și agenților AI. Acest lucru este deosebit de util pentru echipele care doresc să controleze exact "cine" poate face ce în workspace-ul lor — inclusiv procese automate și integrări.
### De ce să atribuiți roluri cheilor API și agenților AI?
* **Securitate**: Limitați ceea ce pot accesa sau modifica procesele automate
* **Conformitate**: Asigurați-vă că integrările accesează doar datele de care au nevoie
* **Control**: Preveniți modificările accidentale ale datelor cauzate de automatizări configurate greșit
* **Auditabilitate**: Urmăriți ce acțiuni au fost efectuate de fiecare integrare sau agent
### Atribuiți un rol unei chei API
1. Accesați **Setări → Membri → Roluri**
2. Faceți clic pe rolul pe care doriți să-l atribuiți
3. Deschideți fila **Atribuire**
4. În **API Keys**, faceți clic pe **+ Assign to API key**
5. Selectați cheia API din listă
6. Confirmați atribuirea
Cheia API va moșteni acum toate permisiunile definite de acel rol. Orice apeluri API efectuate cu această cheie vor fi restricționate în consecință.
<Note>
Cheile API fără un rol atribuit folosesc permisiunile implicite. Pentru o securitate sporită, atribuiți întotdeauna un rol specific cheilor API din producție.
</Note>
### Atribuiți un rol unui agent AI
1. Accesați **Setări → Membri → Roluri**
2. Faceți clic pe rolul pe care doriți să-l atribuiți
3. Deschideți fila **Atribuire**
4. În **AI Agents**, faceți clic pe **+ Assign to AI agent**
5. Selectați agentul AI din listă
6. Confirmați atribuirea
Agentul AI va putea accesa date și executa doar acțiunile permise de rolul său atribuit.
<Note>
Pentru agenții AI care rulează în cadrul fluxurilor de lucru, acest lucru asigură că agentul nu poate accesa sau modifica date în afara ariei sale intenționate — chiar dacă fluxul de lucru are permisiuni mai largi.
</Note>

View File

@@ -0,0 +1,125 @@
---
title: Configurare SSO
description: Configurați Single Sign-On pentru autentificare securizată la nivel de întreprindere.
---
## Despre SSO
Single Sign-On (SSO) le permite membrilor echipei dvs. să se autentifice în Twenty folosind furnizorul de identitate al organizației dvs. Acest lucru oferă:
* **Control centralizat al accesului**: Gestionați accesul dintr-un singur loc
* **Securitate îmbunătățită**: Valorificați politicile de securitate existente
* **Experiență mai bună pentru utilizatori**: Un singur set de credențiale pentru toate instrumentele
## Furnizori acceptați
Twenty acceptă SSO cu:
* **SAML 2.0**: Funcționează cu majoritatea furnizorilor de identitate pentru întreprinderi
* **Google Workspace**: Pentru organizațiile care folosesc Google
* **Microsoft Entra ID** (fost Azure AD): Pentru mediile Microsoft
## Configurarea SSO
### Cerințe
* Plan de organizație (spații de lucru în cloud și auto-găzduite)
* Acces de administrator la furnizorul dvs. de identitate
* Acces administrator la spațiul de lucru douăzeci de ani
### Pași de configurare
#### 1. Accesați setările SSO
1. Accesați **Setări → Securitate**
2. Găsiți secțiunea **Configurare SSO**
3. Faceți clic pe **Configure SSO**
#### 2) Alegeți furnizorul
Selectați furnizorul dvs. de identitate din listă sau alegeți "Custom SAML" pentru alți furnizori.
#### 3. Configurați furnizorul dvs. de identitate
Va trebui să configurați furnizorul dvs. de identitate cu:
* **Entity ID**: Furnizat de Twenty
* **ACS URL**: URL-ul de callback pentru autentificare
* **Certificate**: Pentru comunicare securizată
#### 4. Introduceți detaliile furnizorului în Twenty
* **SSO URL**: URL-ul de autentificare de la furnizorul dvs.
* **Entity ID**: Identificatorul furnizorului dvs.
* **Certificate**: Certificat X.509 de la furnizorul dvs.
#### 5. Testați și activați
1. Faceți clic pe **Test Configuration** pentru a verifica configurarea
2. Activați SSO atunci când testarea este reușită
3. Configurați preferințele de provisionare a utilizatorilor
## Provisionare utilizatori
### Provisionare Just-in-Time (JIT)
* Utilizatorii sunt creați automat la prima autentificare
* Utilizatorilor le este atribuit un rol implicit automat
* Nu este necesară crearea manuală a utilizatorilor
### Provisionare manuală
* Invitați utilizatorii înainte de a se putea autentifica
* Atribuiți în prealabil roluri specifice
* Mai mult control asupra cine poate accesa spațiul de lucru
## Gestionarea utilizatorilor SSO
### Atribuirea rolurilor
Utilizatorilor SSO li se pot atribui roluri la fel ca utilizatorilor obișnuiți:
1. Mergi la **Setări → Membri**
2. Găsiți utilizatorul
3. Schimbați rolul lor după nevoie
### Revocarea accesului
Pentru a elimina accesul pentru utilizatorii SSO:
* Eliminați-i din furnizorul dvs. de identitate sau
* Eliminați-i din spațiul de lucru Twenty
## Cele mai bune practici
### Securitate
* **Impuneți SSO**: Dezactivați autentificarea cu parolă pentru utilizatorii SSO
* **Audituri periodice**: Revizuiți accesul periodic
* **Politici IdP stricte**: Impuneți MFA la furnizorul de identitate
### Gestionarea utilizatorilor
* **Denumire clară**: Utilizați denumiri consecvente din directorul dvs.
* **Maparea grupurilor**: Mapați grupurile IdP la rolurile Twenty (dacă este disponibilă)
* **Proces de offboarding**: Includeți Twenty în fluxul dvs. de deprovisionare
## Depanare
### Probleme comune
* **Erori certificate**: Asigurați-vă că certificatul nu a expirat
* **Nepotrivire URL**: Verificați dacă URL-ul ACS se potrivește exact
* **Utilizator negăsit**: Verificați setările de provisionare JIT
### Obținerea de ajutor
Dacă întâmpinați probleme, contactați asistența și furnizați:
* Mesajele de eroare primite
* Furnizorul de identitate utilizat
* Detalii de configurare (fără date sensibile)
<Tip>
Aveți nevoie de configurarea SSO pentru organizația dvs.? [Găsiți un partener Twenty certificat](https://twenty.com/partners/list?categories=SOLUTIONING\&ref=docs-sso) specializat în SSO și configurarea identității. *(Preferiți să implicați Twenty direct? [contact@twenty.com](mailto:contact@twenty.com))*
</Tip>

View File

@@ -0,0 +1,120 @@
---
title: Întrebări frecvente despre permisiuni
description: Întrebări frecvente despre roluri și permisiuni.
---
## Roluri
<AccordionGroup>
<Accordion title="Ce roluri sunt incluse implicit în Twenty?">
Douăzeci vin cu rolurile **Administrator** şi **Membru** în mod implicit. Puteți crea roluri personalizate suplimentare în funcție de nevoile echipei dvs. (de exemplu, Reprezentant de vânzări, Manager, Utilizator doar pentru citire).
</Accordion>
<Accordion title="Pot să șterg rolul Admin?">
Nu, rolul Admin nu poate fi șters. Trebuie să existe întotdeauna cel puțin un membru atribuit rolului Admin.
</Accordion>
<Accordion title="Ce se întâmplă când șterg un rol?">
Orice membru al spațiului de lucru atribuit acelui rol va fi reatribuit automat rolului implicit.
</Accordion>
<Accordion title="Cum setez un rol implicit pentru noii membri?">
Accesați **Setări → Membri → Roluri**, găsiți opțiunea **Default Role** și selectați ce rol ar trebui să primească automat noii membri când se alătură.
</Accordion>
<Accordion title="Pot să atribui mai multe roluri unui singur utilizator?">
Nu, fiecare utilizator poate avea un singur rol la un moment dat. Creați un rol personalizat dacă aveți nevoie de o combinație de permisiuni.
</Accordion>
</AccordionGroup>
## Permisiuni
<AccordionGroup>
<Accordion title="Care este diferența dintre permisiunile la nivel de obiect și cele la nivel de câmp?">
* **Permisiuni pentru obiecte**: Controlează accesul la înregistrări întregi (de exemplu, pot vedea/edita/șterge înregistrări People)
* **Permisiuni pentru câmpuri**: Controlează accesul la câmpuri specifice dintr-un obiect (de exemplu, pot vedea, dar nu pot edita câmpul Salary)
Permisiunile pentru câmpuri permit un control mai granular asupra datelor sensibile.
</Accordion>
<Accordion title="Cum funcționează suprascrierile permisiunilor?">
Permisiunile se propagă în cascadă de la general la specific:
1. **All Objects** stabilește configurația de bază pentru toate obiectele
2. **Object-Level Permissions** pot suprascrie setarea globală pentru anumite obiecte
3. **Field-Level Permissions** pot suprascrie setarea la nivel de obiect pentru anumite câmpuri
Setările mai specifice au întotdeauna prioritate.
</Accordion>
<Accordion title="Ce înseamnă diferitele niveluri de permisiuni?">
Pentru obiecte:
* **See Records**: Vizualizați înregistrările în liste și în paginile de detaliu
* **Edit Records**: Modificați înregistrările existente
* **Delete Records**: Ștergeți temporar înregistrările (pot fi restaurate)
* **Destroy Records**: Ștergeți definitiv înregistrările
Pentru câmpuri:
* **See Field**: Vizualizați valoarea câmpului
* **Edit Field**: Modificați valoarea câmpului
* **No Access**: Câmpul este complet ascuns
</Accordion>
<Accordion title="Pot restricționa accesul la anumite înregistrări (permisiuni la nivel de rând)?">
Permisiunile la nivel de rând sunt disponibile în planul **Organization**. Acest lucru vă permite să restricționați accesul la anumite înregistrări pe baza unor criterii (de exemplu, să vedeți doar propriile oportunități).
</Accordion>
<Accordion title="Cum fac un câmp doar pentru citire pentru anumiți utilizatori?">
1. Accesați **Setări → Membri → Roluri**
2. Selectați rolul
3. Navigați la obiectul care conține câmpul
4. Setați permisiunea câmpului la **See Field** (fără Edit Field)
</Accordion>
</AccordionGroup>
## Setări și acțiuni
<AccordionGroup>
<Accordion title="Ce permisiuni pentru setări sunt disponibile?">
Puteți controla accesul la:
* Generarea cheilor API
* Preferințe ale spațiului de lucru
* Atribuirea rolurilor
* Configurarea modelului de date
* Setări de securitate
* Gestionarea fluxurilor de lucru
Folosiți **Settings All Access** pentru a acorda acces complet, sau activați permisiuni specifice.
</Accordion>
<Accordion title="Ce permisiuni pentru acțiuni sunt disponibile?">
Puteți controla:
* **Send Email**: Posibilitatea de a trimite e-mailuri din Twenty
* **Import CSV**: Posibilitatea de a importa date prin CSV
* **Export CSV**: Posibilitatea de a exporta date în CSV
Folosiți **Application All Access** pentru a permite toate acțiunile, sau activați doar pe cele specifice.
</Accordion>
</AccordionGroup>
## Autentificare Unică
<AccordionGroup>
<Accordion title="Este SSO disponibil pe toate planurile?">
Nu, SSO este o funcționalitate Premium disponibilă doar în planul **Organization**.
</Accordion>
<Accordion title="Ce furnizori de identitate sunt acceptați?">
Twenty acceptă:
* **SAML 2.0** (funcționează cu majoritatea furnizorilor de identitate pentru întreprinderi)
* **Google Workspace**
* **Microsoft Entra ID** (fostul Azure AD)
</Accordion>
<Accordion title="Ce este provisionarea Just-in-Time (JIT)?">
Cu provisionarea JIT, conturile de utilizator sunt create automat în Twenty atunci când cineva se autentifică prin SSO pentru prima dată. Li se atribuie automat rolul implicit.
</Accordion>
<Accordion title="Pot impune SSO pentru toți utilizatorii?">
Da, odată ce SSO este configurat, puteți dezactiva autentificarea cu parolă pentru utilizatorii SSO, pentru a impune autentificarea prin furnizorul dvs. de identitate.
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,34 @@
---
title: Permisiuni și acces
description: Gestionați rolurile, permisiunile și controlul accesului în spațiul dvs. de lucru.
---
Sistemul de permisiuni Twenty vă permite să controlați cine poate accesa și modifica datele din spațiul dvs. de lucru. Creați roluri, atribuiți permisiuni și configurați SSO pentru acces securizat.
## Ce conține această secțiune
<CardGroup cols={2}>
<Card title="Permisiuni" icon="lock" href="/l/ro/user-guide/permissions-access/capabilities/permissions">
Creați roluri și configurați permisiunile pentru obiecte, câmpuri și setări.
</Card>
<Card title="Configurare SSO" icon="key" href="/l/ro/user-guide/permissions-access/capabilities/sso-configuration">
Configurați autentificarea unică (SSO) cu furnizorul dvs. de identitate.
</Card>
<Card title="Întrebări frecvente" icon="circle-question" href="/l/ro/user-guide/permissions-access/how-tos/permissions-faq">
Întrebări frecvente despre roluri, permisiuni și SSO.
</Card>
</CardGroup>
## Caracteristici cheie
* **Acces bazat pe roluri**: Creați roluri personalizate cu permisiuni specifice
* **Permisiuni pentru obiecte**: Controlați cine poate vizualiza, edita sau șterge înregistrări
* **Permisiuni pentru câmpuri**: Restricționați accesul la câmpuri sensibile
* **Permisiuni pentru setări**: Controlați accesul la configurarea spațiului de lucru
* **Integrare SSO**: Configurați autentificarea unică pentru securitate la nivel de întreprindere (plan Organization)
## Linkuri rapide
* [Crează un rol](/l/ro/user-guide/permissions-access/capabilities/permissions#create-a-role)
* [Configurați SSO](/l/ro/user-guide/permissions-access/capabilities/sso-configuration)
* [Gestionați membrii echipei](/l/ro/user-guide/settings/capabilities/member-management)

View File

@@ -0,0 +1,36 @@
---
title: Setări Comunitate
description: Activați funcțiile de Acces timpuriu în Twenty.
---
## Despre Setările Comunității
Secțiunea Comunitate vă permite să activați funcții de Acces timpuriu înainte ca acestea să fie disponibile în general, precum și să căutați parteneri Twenty.
## Funcții de Acces timpuriu
Funcțiile de Acces timpuriu sunt capabilități aflate încă în testare înainte de disponibilitatea generală.
**În prezent în Acces timpuriu:**
* **Relații de legătură** — Relații de tip mulți-la-mulți
### Cum să activați funcțiile de Acces timpuriu
1. Accesați **Setări → Comunitate**
2. Navigați la secțiunea **Funcții**
3. Găsiți funcția pe care doriți să o activați
4. Activați-o
5. Funcția va fi disponibilă imediat
<Note>
Funcțiile de Acces timpuriu se pot schimba pe baza feedbackului utilizatorilor. Feedbackul dvs. ne ajută să îmbunătățim Twenty!
</Note>
## Feedback pentru funcții
Feedbackul dvs. ajută la îmbunătățirea Twenty:
* Raportați problemele legate de funcțiile de Acces timpuriu
* Împărtășiți cum utilizați noile funcții
* Propuneți îmbunătățiri prin [Discordul comunității](https://discord.gg/cx5n4Jzs57)

View File

@@ -0,0 +1,52 @@
---
title: Setări domeniu
description: Configurați domeniul spațiului de lucru, domeniile de acces aprobate și domeniile personalizate ale aplicației.
---
Setările de domeniu se află în trei locuri, în funcție de ceea ce configurați.
## Domeniu Spațiu de lucru
Configurare sub **Setări → General**.
Editați numele subdomeniului sau setați un domeniu personalizat pentru spațiul de lucru.
### Personalizează Domeniul
1. Faceţi clic pe **Subdomeniul** pentru a vă edita subdomeniul (de exemplu, `compania.twenty.com`)
2. Sau faceţi clic pe **domeniu personalizat** pentru a configura un domeniu personalizat (de exemplu, `crm.yourcompany.com`)
Pentru domeniile personalizate, va trebui să configurați setările DNS la furnizorul de domeniu.
## Domenii Aprobate
Configurați în **Setări → Membri → Invită**.
Adăugați domeniul companiei dvs. pentru a permite membrilor echipei să se înregistreze pentru acest spațiu de lucru automat.
### Adaugă Domeniu de Acces Aprobat
1. Faceți clic pe **Adăugați domeniu de acces aprobat**
2. Introduceți domeniul companiei (de ex., `yourcompany.com`)
3. Salvează
După configurare, oricine are o adresă de email pe acel domeniu se poate alătura spațiului de lucru fără a avea nevoie de o invitație directă.
<Note>
Acest lucru este util pentru a permite întregii echipe să se înregistreze singură, menținând în același timp spațiul de lucru restricționat la organizația dvs.
</Note>
## Domenii personalizate ale aplicației
Configurați în **Setări → Aplicații → aplicația dvs. → Setări → URL aplicație**.
Aplicațiile care expun rute pe web sunt disponibile la un URL dedicat, afișat în secțiunea **URL aplicație**. Puteți publica o aplicație pe un domeniu pe care îl dețineți.
### Adăugați domeniu personalizat
1. Faceți clic pe **Domeniu personalizat**
2. Introduceți domeniul pe care doriți să îl utilizați (de ex., `app.yourcompany.com`)
3. Configurați setările DNS conform instrucțiunilor
4. Verificați domeniul
Numai rutele acelei aplicații sunt accesibile pe domeniu. Certificatele SSL sunt furnizate automat.

View File

@@ -0,0 +1,38 @@
---
title: Setări Experiență
description: Personalizează tema interfeței și preferințele regionale.
---
Personalizează-ți experiența Twenty în **Setări → Experiență**.
## Aspect
Alege tema vizuală:
* **Luminos**: Interfață curată, luminoasă
* **Întunecat**: Mai ușor pentru ochi în condiții de lumină redusă
* **Setări de sistem**: Se potrivește automat cu tema dispozitivului tău
## Limbă
Selectează limba preferată pentru interfața Twenty din meniul derulant.
## Formate
Configurează data, ora, numărul, fusul orar și ziua de început a calendarului.
| Setare | Descriere |
| ---------------------------------- | ------------------------------------------------------------- |
| **Fusul orar** | Fusul orar local pentru marcaje de timp și programări precise |
| **Formatul datei** | Cum apar datele (de ex., 12 dec. 2025) |
| **Formatul orei** | Format de 12 ore (7:22 PM) sau de 24 de ore |
| **Formatul numărului** | Separatoare zecimale și de mii (de ex., 1.234,56) |
| **Ziua de început a calendarului** | Prima zi a săptămânii (duminică sau luni) |
Fiecare setare poate fi configurată la **Setări de sistem** pentru a se potrivi automat preferințelor dispozitivului tău sau poți alege un format specific.
## Cum actualizezi
1. Mergi la **Setări → Experiență**
2. Ajustează preferințele în fiecare secțiune
3. Modificările se salvează automat

View File

@@ -0,0 +1,86 @@
---
title: Managementul membrilor
description: Invitați membrii echipei și gestionați accesul la spațiul de lucru.
---
Gestionați cine are acces la spațiul dvs. de lucru din **Setări → Membri**.
## Invită Noi Membri
### Utilizarea invitației prin e-mail
1. Accesați **Setări → Membri → Invită**
2. Faceți clic pe **+ Invită**
3. Introdu adresa de e-mail a persoanei
4. Selectați un rol pentru noul membru
5. Faceți clic pe **Trimite invitație**
Persoana invitată va primi un e-mail cu un link pentru a se alătura spațiului dvs. de lucru.
### Utilizarea linkului de invitare
1. Accesați **Setări → Membri → Invită**
2. Copiază link-ul de invitație pentru spațiul de lucru
3. Distribuie link-ul cu noii membri ai echipei
4. Vor primi acces odată ce se înscriu
## Vizualizați și gestionați membrii
### Vizualizați toți membrii
Mergeți la **Setări → Membri → Echipă** pentru a vedea toți membrii activi
Mergeți la **Setări → Membri → Invitați** pentru a vedea invitațiile în așteptare
### Editați profilul unui membru
Faceți clic pe un membru pentru a-i deschide pagina de profil. În calitate de administrator, puteți:
* Editați **numele**
* Actualizați **fotografia de profil**
* **Conectați-vă ca** acel utilizator (util pentru depanare)
* **Ștergeți** contul lor
### Schimbați rolul unui membru
Pe pagina de profil a membrului:
1. Deschideți fila **Permisiuni**
2. Vizualizați rolul atribuit în prezent
3. Selectați un alt rol din lista derulantă
4. Modificarea intră în vigoare imediat
→ [Aflați mai multe despre roluri și permisiuni](/l/ro/user-guide/permissions-access/capabilities/permissions)
### Eliminați un membru
1. Faceți clic pe membru pentru a-i deschide profilul
2. Faceți clic pe **Ștergere cont** pentru a le elimina din spațiul de lucru
<Warning>
Membrii eliminați își pierd accesul imediat. Datele lor (înregistrări, note, sarcini) rămân în spațiul de lucru.
</Warning>
<Note>
E-mailurile și evenimentele din calendar ale membrului șters sunt arhivate și disponibile pentru alți membri.
</Note>
## Invitații în așteptare
Gestionați invitațiile care nu au fost acceptate:
* **Retrimite**: Trimite din nou e-mailul de invitație
* **Anulează**: Revocați invitația înainte de a fi acceptată
## Domenii de Acces Aprobate
Permiteți membrilor echipei să se alăture automat pe baza domeniului lor de e-mail:
1. Accesați **Setări → Membri → Invită**
2. Adăugați domeniul companiei dvs. (de ex., `yourcompany.com`)
3. Oricine are acel domeniu de e-mail se poate alătura fără invitație
## Conexe
* [Permisiuni](/l/ro/user-guide/permissions-access/capabilities/permissions) — configurați ce poate face fiecare rol
* [Setări domeniu](/l/ro/user-guide/settings/capabilities/domains-settings) - configurați domeniile aprobate

View File

@@ -0,0 +1,43 @@
---
title: Setări profil
description: Gestionează setările personale ale profilului și setările de securitate.
---
## Informații personale
### Nume și adresă de email
* **Nume afișat**: Actualizează modul în care numele tău apare celorlalți membri ai spațiului de lucru
* **Adresa de email**: Schimbă adresa de email de conectare (necesită verificare)
* **Poză de profil**: Încarcă un avatar personalizat sau folosește inițialele tale
## Setări de securitate
### Autentificare cu doi factori (2FA)
Activează 2FA pentru a adăuga un strat suplimentar de securitate contului tău:
1. Accesați **Setări → Profil**
2. Faceți clic pe **Aplicație de autentificare**
3. Scanează codul QR cu aplicația ta de autentificare
4. Introdu codul de verificare pentru a confirma
### Gestionarea parolelor
* **Schimbă parola**: Actualizează parola curentă
* **Cerințe pentru parolă**: Trebuie să aibă cel puțin 8 caractere
## Gestionarea profilului
### Șterge contul
<Warning>
Ștergerea contului va îndepărta permanent accesul la toate spațiile de lucru. Această acțiune nu poate fi anulată. Vei pierde accesul la toate spațiile de lucru unde ești membru. Dacă doriţi doar să ieşiţi din anumite echipe, gândiţi-vă în schimb să părăsiţi spaţiile de lucru individuale.
</Warning>
Pentru a șterge contul tău:
1. Accesați **Setări → Profil**
2. Derulează până la **Zona de pericol**
3. Apasă pe **Șterge contul**
4. Confirmă introducând adresa ta de email

View File

@@ -0,0 +1,30 @@
---
title: Setări Spațiu de Lucru
description: Personalizează numele și brandingul spațiului tău de lucru.
---
Imaginea spațiului, numele și opțiunile de ștergere sunt toate accesibile în **Setări → General**.
## Imaginea Spațiului de Lucru
* **Încarcă Logo**: Adaugă un logo personalizat pentru spațiul de lucru
* **Formate suportate**: Fișiere PNG, JPEG și GIF sub 10MB
* **Eliminare**: Șterge logo-ul curent al spațiului de lucru
## Nume Spațiu de lucru
* **Nume**: Schimbă numele afișat al spațiului de lucru
* Acest nume apare tuturor membrilor spațiului de lucru
## Zonă de Pericol
<Warning>
Ștergerea spațiului tău de lucru elimină definitiv toate datele și revocă imediat accesul tuturor membrilor - această acțiune nu poate fi anulată.
</Warning>
Pentru a șterge spațiul de lucru:
1. Faceți clic pe butonul **Șterge spațiul de lucru**
2. Confirmă ștergerea când ești solicitat
**Notă**: Numai administratorii spațiului de lucru pot șterge spațiile de lucru.

View File

@@ -0,0 +1,171 @@
---
title: Întrebări frecvente privind setările
description: Întrebări frecvente despre setările Twenty.
---
## Setări Spațiu de Lucru
<AccordionGroup>
<Accordion title="Cum îmi schimb numele spațiului de lucru?">
1. Accesați **Setări → General**
2. Găsiți câmpul „Numele spațiului de lucru”
3. Introduceți noul nume
4. Modificările sunt salvate automat
</Accordion>
<Accordion title="Cum îmi actualizez sigla spațiului de lucru?">
1. Accesați **Setări → General**
2. Faceți clic pe sigla actuală sau pe zona de încărcare
3. Selectați un fișier imagine (PNG, JPEG sau GIF sub 10 MB)
4. Sigla se actualizează imediat
</Accordion>
<Accordion title="Pot avea mai multe spații de lucru?">
Da, puteți crea și să faceți parte din mai multe spații de lucru. Fiecare spațiu de lucru are propriile date, setări și abonament.
</Accordion>
<Accordion title="Cum îmi șterg spațiul de lucru?">
1. Accesați **Setări → General**
2. Derulați până la Zona de pericol
3. Faceți clic pe **Șterge spațiul de lucru**
4. Confirmați ștergerea
Notă: Aceasta șterge definitiv toate datele și nu poate fi anulată.
</Accordion>
<Accordion title="Am creat din greșeală mai multe spații de lucru. Ce ar trebui să fac?">
Ștergeți spațiile de lucru de care nu mai aveți nevoie în **Setări → General → Șterge spațiul de lucru**.
<Warning>
Nu vă ștergeți **contul** (accesibil la Setări → Profil): contul dvs. este partajat între toate spațiile de lucru. Ștergerea contului vă elimină accesul la TOATE spațiile de lucru.
</Warning>
</Accordion>
<Accordion title="Cum îmi dezactivez spațiul de lucru fără să îl șterg?">
Dacă doriți să dezactivați temporar spațiul de lucru (nu să îl ștergeți definitiv), accesați **Setări → Facturare** și faceți clic pe **Anulează planul**. Datele dvs. vor fi păstrate pentru o perioadă de grație.
</Accordion>
</AccordionGroup>
## Setări profil
<AccordionGroup>
<Accordion title="Cum îmi schimb parola?">
1. Accesați **Setări → Profil**
2. Găsiți secțiunea Parolă
3. Introduceți parola curentă
4. Introduceți noua parolă
5. Salvați modificările
</Accordion>
<Accordion title="Cum activez autentificarea cu doi factori?">
1. Accesați **Setări → Profil**
2. Găsiți secțiunea 2FA
3. Apasă pe **Activează 2FA**
4. Scanează codul QR cu aplicația ta de autentificare
5. Introduceți codul de verificare
</Accordion>
<Accordion title="Pot să îmi schimb adresa de e-mail?">
Pentru a vă schimba adresa de e-mail, vă rugăm să ne contactați la [contact@twenty.com](mailto:contact@twenty.com).
</Accordion>
<Accordion title="Cum îmi șterg contul?">
1. Accesați **Setări → Profil**
2. Derulați până la Zona de pericol
3. Apasă pe **Șterge contul**
4. Confirmați tastând adresa de e-mail
Notă: Aceasta vă retrage accesul la toate spațiile de lucru și șterge toate e-mailurile sincronizate din conturile conectate.
</Accordion>
</AccordionGroup>
## Setări Experiență
<AccordionGroup>
<Accordion title="Cum comut între modul deschis și modul întunecat?">
1. Accesați **Setări → Experiență**
2. Găsiți secțiunea Temă
3. Selectați Deschis, Întunecat sau Sistem
</Accordion>
<Accordion title="Cum schimb formatul datei?">
1. Accesați **Setări → Experiență**
2. Găsiți Formatul datei
3. Selectați formatul preferat
4. Modificările se aplică imediat
</Accordion>
<Accordion title="Cum îmi schimb fusul orar?">
1. Accesați **Setări → Experiență**
2. Găsiți secțiunea „Fus orar”
3. Selectați fusul orar local
4. Toate marcajele de timp vor fi ajustate
</Accordion>
<Accordion title="Pot să schimb limba?">
1. Accesați **Setări → Experiență**
2. Găsiți secțiunea „Limbă”
3. Selectați dintre limbile disponibile
4. Interfața se actualizează în funcție de selecția dvs.
</Accordion>
</AccordionGroup>
## Setările contului
<AccordionGroup>
<Accordion title="Cum îmi conectez contul de e-mail?">
1. Mergeți la **Setări → Conturi**
2. Faceți clic pe **Adăugați cont**
3. Alegeți Google sau Microsoft
4. Autorizați accesul
5. Configurați setările de sincronizare
</Accordion>
<Accordion title="Pot să conectez mai multe conturi de e-mail?">
Da, puteți conecta mai multe conturi de e-mail. Accesați **Setări → Conturi** și adăugați conturi suplimentare după cum este necesar.
</Accordion>
<Accordion title="Cum deconectez un cont de e-mail?">
1. Mergeți la **Setări → Conturi**
2. Găsiți contul pe care doriți să îl eliminați
3. Faceți clic pe **Deconectează**
4. Confirmați acțiunea
</Accordion>
</AccordionGroup>
## Domenii
<AccordionGroup>
<Accordion title="Pot personaliza domeniul spațiului meu de lucru?">
Da! Accesați **Setări → General → Domeniul spațiului de lucru** și faceți clic pe **Personalizează domeniul**. Aveți două opțiuni:
* **Subdomeniu**: Folosiți un subdomeniu Twenty, de exemplu `yourcompany.twenty.com`
* **Domeniu personalizat**: Folosiți propriul domeniu, de exemplu `crm.yourcompany.com` (necesită configurarea DNS)
Un subdomeniu se configurează rapid, în timp ce un domeniu personalizat oferă o experiență complet personalizată pentru brandul echipei dvs.
</Accordion>
<Accordion title="Cum funcționează domeniile de acces aprobate?">
Puteți configura domenii de acces aprobate astfel încât membrii echipei cu adrese de e-mail ale companiei să se poată alătura automat spațiului dvs. de lucru. Accesați **Setări → Membri → Invită** și adăugați domeniul companiei (de ex., `yourcompany.com`).
</Accordion>
</AccordionGroup>
## Funcții de Acces timpuriu
<AccordionGroup>
<Accordion title="Care sunt funcțiile din Acces timpuriu?">
Funcțiile de Acces timpuriu sunt capabilități aflate în testare înainte de lansarea generală.
</Accordion>
<Accordion title="Sunt funcțiile de Acces timpuriu sigure de utilizat?">
Funcțiile de acces precoce sunt funcționale și sigure de utilizat, dar se pot schimba în funcție de feedback-ul utilizatorului înainte de disponibilitatea generală.
</Accordion>
<Accordion title="Cum activez funcțiile de Acces timpuriu?">
1. Mergeți la **Setări → Comunitate**
2. Derulaţi în jos la secţiunea **Caracteristici**
3. Găsiți funcția dorită
4. Activați-o
5. Funcția devine disponibilă imediat
</Accordion>
</AccordionGroup>

View File

@@ -0,0 +1,62 @@
---
title: Setări
description: Configurați spațiul de lucru Twenty cu configurările esențiale.
---
## Configurare inițială
Când creați pentru prima dată spațiul de lucru, există câteva setări cheie de configurat.
### Numele și sigla spațiului de lucru
1. Accesați **Setări → General**
2. Actualizați numele spațiului de lucru
3. Încărcați sigla companiei
4. Salvați modificările
### Fusul orar și formatul datei
1. Accesați **Setări → Experiență**
2. Selectați fusul orar
3. Alegeți formatul de dată preferat
4. Salvați modificările
## Configurări esențiale
### Conectați e-mailul și calendarul
Configurați sincronizarea e-mailului și a calendarului:
1. Mergeți la **Setări → Conturi**
2. Faceți clic pe **Adăugați cont**
3. Conectați contul Google sau Microsoft
4. Configurați setările de sincronizare
→ [Ghid complet de configurare a e-mailului și a calendarului](/l/ro/user-guide/calendar-emails/overview)
### Invitați-vă echipa
Adăugați membri ai echipei în spațiul de lucru:
1. Mergi la **Setări → Membri**
2. Faceți clic pe **+ Invită**
3. Introduceți adresele de e-mail
4. Atribuiți rolurile corespunzătoare
<Note>
Înainte de a vă invita echipa, verificați rolul implicit în **Setări → Membri → Roluri**. Noilor membri li se atribuie automat acest rol când se alătură.
</Note>
## Listă de verificare pentru setările spațiului de lucru
* Numele și sigla spațiului de lucru configurate
* Fusul orar și formatul datei configurate
* Emailul și calendarul conectate
* Membrii echipei invitați
* Rolurile și permisiunile configurate
## Pașii următori
* [Setări ale spațiului de lucru](/l/ro/user-guide/settings/capabilities/workspace-settings)
* [Setări ale profilului](/l/ro/user-guide/settings/capabilities/profile-settings)
* [Setări ale experienței](/l/ro/user-guide/settings/capabilities/experience-settings)

View File

@@ -0,0 +1,46 @@
---
title: Vizualizare calendar
description: Afișează înregistrările cu câmpuri de dată într-un calendar.
---
## Despre vizualizarea Calendar
Vizualizarea Calendar afișează înregistrările pe un calendar, pe baza unui câmp de dată. Fiecare înregistrare apare ca un eveniment la data corespunzătoare.
<img src="/images/user-guide/views/calendar-view-zoom.png" style={{width:'100%'}} />
## Crearea unei Vizualizări Calendar
1. Navigați la un obiect cu câmpuri de dată
2. Faceți clic pe meniul derulant al vizualizării → **+ Adaugă vizualizare**
3. Denumiți vizualizarea și faceți clic pe **Creează**
4. Deschideți **Opțiuni** din partea dreaptă
5. Selectați **Calendar** ca dispunere
6. Alegeți **câmpul de dată** care va fi folosit pentru poziționarea înregistrărilor
7. Faceți clic pe **Actualizează vizualizarea**
## Configurarea Calendarului
### Alegerea câmpului de dată
În **Opțiuni**, selectați ce câmp de dată determină unde apar înregistrările în calendar.
### Afișare câmpuri
Configurați ce câmpuri sunt afișate în fiecare eveniment din calendar:
1. Faceți clic pe **Opțiuni → Câmpuri**
2. Activați/dezactivați câmpurile
3. Trageți pentru a reordona
## Cazuri de utilizare
* **Întâlniri și apeluri**: Vizualizați programările viitoare
* **Termene**: Urmăriți datele scadente și datele de închidere
* **Evenimente**: Planificați și vizualizați activitățile programate
* **Urmăriri**: Vedeți când sunt scadente sarcinile
## Conexe
* [Prezentare generală a vizualizărilor](/l/ro/user-guide/views-pipelines/overview) — crearea și gestionarea vizualizărilor
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting) — filtrarea datelor din calendar

View File

@@ -0,0 +1,52 @@
---
title: Câmpuri & coloane
description: Alegeți ce câmpuri să afișați și cum să le organizați.
---
## Selectarea câmpurilor de afișat
Fiecare vizualizare poate afișa un set diferit de câmpuri. Personalizați ceea ce este vizibil pentru a vă concentra pe informațiile care contează.
### Afișați sau ascundeți câmpuri
1. Faceți clic pe **Opțiuni** în dreapta sus
2. Faceți clic pe **Câmpuri**
3. Faceți clic pe **pictograma în formă de ochi** de lângă fiecare câmp pentru a-l afișa/ascunde
### Reordonați câmpurile
Modificați ordinea în care câmpurile apar în vizualizarea dvs.:
1. Faceți clic pe **Opțiuni → Câmpuri**
2. Glisați câmpurile în sus sau în jos
3. Modificările sunt salvate automat
## Afișarea câmpurilor în funcție de tipul vizualizării
### Vizualizări de Tabel
* Câmpurile apar sub formă de coloane
* Redimensionați coloanele trăgând marginile
### Vizualizări Kanban
* Câmpurile apar pe carduri
* Reordonați din Opțiuni → Câmpuri
* Folosiți vizualizarea compactă pentru a ascunde toate câmpurile
### Vizualizări de calendar
* Câmpurile selectate se afișează în evenimentele din calendar
* Configurați din Opțiuni → Câmpuri
## Cele mai bune practici
* **Arată doar ceea ce este necesar** - prea multe câmpuri agită vizualizarea
* **Puneți câmpurile importante primele** — coloanele cele mai utilizate în stânga
* **Creați mai multe vizualizări** — seturi de câmpuri diferite pentru scopuri diferite
* **Folosiți vizibilitatea câmpurilor pentru fiecare vizualizare** — același obiect, accent diferit
## Conexe
* [Vizualizări de Tabel](/l/ro/user-guide/views-pipelines/capabilities/table-views) — funcționalități ale vizualizării de listă
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) — vizualizări bazate pe carduri

View File

@@ -0,0 +1,78 @@
---
title: Filtre și sortare
description: Filtrați și sortați înregistrările pentru a găsi exact ceea ce aveți nevoie.
---
## Filtrarea datelor
Filtrele vă ajută să vă concentrați pe înregistrări specifice, afișând doar pe cele care corespund criteriilor.
### Adăugarea unui filtru
1. Faceți clic pe butonul **Filtru** din bara de instrumente
2. Selectați câmpul după care să filtrați
3. Alegeți operatorul (egal, conține etc.)
4. Introduceți valoarea filtrului
5. Faceți clic pe **Aplică**
### Operatori de filtrare
| Tipul câmpului | Operatori disponibili |
| -------------- | --------------------------------------------------------- |
| Text | Este egal cu, Conține, Începe cu, Se termină cu, Este gol |
| Număr | Este egal cu, Mai mare decât, Mai mic decât, Este gol |
| Dată | Este egal cu, Înainte de, După, Este gol |
| Select | Este egal cu, Este unul dintre, Este gol |
| Bifă | Este adevărat, Este fals |
| Relație | Este egal cu, Este gol |
### Filtre multiple
Combinați mai multe filtre pentru a restrânge rezultatele:
* Toate filtrele sunt aplicate cu logica AND
* Fiecare filtru suplimentar restrânge și mai mult rezultatele
### Eliminarea filtrelor
* Faceți clic pe **X** de pe fiecare etichetă de filtru
* Faceți clic pe **Șterge tot** pentru a elimina toate filtrele
## Sortarea datelor
Sortarea determină ordinea în care apar înregistrările.
### Adăugarea unei sortări
1. Faceți clic pe butonul **Sortare** din bara de instrumente
2. Selectați câmpul după care să sortați
3. Alegeți ascendent (A-Z, 0-9) sau descendent (Z-A, 9-0)
4. Faceți clic pe **Aplică**
### Sortări multiple
Adăugați mai multe niveluri de sortare:
* Prima sortare este principală
* Sortările ulterioare se aplică în interiorul grupurilor de valori egale
### Sortare rapidă pe coloană
Faceți clic pe orice antet de coloană pentru a sorta:
* Primul clic: Ascendent
* Al doilea clic: Descendent
* Al treilea clic: Elimină sortarea
## Salvarea setărilor de filtrare și sortare
Filtrele și sortările sunt salvate împreună cu vizualizarea:
1. Configurați filtrele și sortările
2. Faceți clic pe **Salvare** pentru a actualiza vizualizarea curentă
3. Sau faceți clic pe **Salvează ca vizualizare nouă** pentru a crea o variantă
## Conexe
* [Vizualizări de Tabel](/l/ro/user-guide/views-pipelines/capabilities/table-views) — funcționalitatea Grupare după
* [Prezentare generală a vizualizărilor](/l/ro/user-guide/views-pipelines/overview) — crearea și gestionarea vizualizărilor

View File

@@ -0,0 +1,98 @@
---
title: Vizualizări pentru tabloul Kanban
description: Aflați cum să utilizați vizualizările Kanban pentru a vizualiza și gestiona fluxurile de lucru.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Despre vizualizările Kanban
Vizualizările Kanban cartografiază vizual fluxurile de proces, unde fiecare coloană reprezintă o etapă distinctă și fiecare card reprezintă o înregistrare.
## Mută Carduri între Etape
Poți muta fiecare card între etape pe măsură ce trece prin fluxul tău de lucru, făcând clic pe card și ținând cont, apoi glisându-l până la etapa următoare.
<VimeoEmbed videoId="927888627" title="Demonstrație video" />
## Adăugați și ștergeți etape
Puteți adapta fluxul de lucru pentru a se potrivi nevoilor dvs. folosind etape, fiecare reprezentând o valoare într-un câmp selectat:
### Adaugă Etape
Pentru a adăuga o etapă, accesați setările câmpului selectând navigând la Setări > Modelul de date, selectarea obiectului și apoi selectarea câmpului de care depinde panoul Kanban.
<VimeoEmbed videoId="927890428" title="Demonstrație video" />
### Elimină Etape
Pentru a elimina o etapă, plutiți peste numele etapei sau icoana `'unnamed@@0`, faceţi clic pe `Editare din setări` din câmpul Selectare setări şi apoi clic pe **Șterge** de lângă etapa relevantă.
## Afișare câmpuri
Poți configura panoul Kanban pentru a afișa unele câmpuri și a ascunde altele. Pentru a afișa sau ascunde un câmp, faceți clic pe **Opțiuni** din dreapta sus, apoi pe **Câmpuri** pentru a aduce lista de opțiuni și faceți clic pe pictograma de ochi de lângă câmp pentru a o afișa sau ascunde.
Poți, de asemenea, să rearanjezi ordinea câmpurilor ținând apăsat numele câmpului și trăgându-l acolo unde îl dorești.
<img src="/images/user-guide/kanban-views/filter.png" style={{width:'100%'}} />
## Vizualizare compactă
Puteți ascunde toate câmpurile și obține o imagine de ansamblu a tuturor înregistrărilor dintr-o privire. Pentru activare:
1. Faceți clic pe **Opțiuni** în dreapta sus
2. Activați comutatorul pentru **Vizualizare compactă**
<img src="/images/user-guide/kanban-views/compact-view.png" style={{width:'100%'}} />
## Agregări pe coloană
Fiecare coloană dintr-o vizualizare Kanban poate afișa valori agregate în partea de sus, ajutându-vă să înțelegeți datele dintr-o privire.
### Agregări disponibile
| Agregare | Descriere |
| --------- | -------------------------------------------------------- |
| **Număr** | Numărul de înregistrări din coloană |
| **Sumă** | Totalul unui câmp numeric (de ex., sumele tranzacțiilor) |
| **Medie** | Valoarea medie a unui câmp numeric |
| **Minim** | Cea mai mică valoare |
| **Maxim** | Cea mai mare valoare |
### Configurarea agregărilor
1. Faceți clic pe numărul afișat lângă valoarea etapei, în partea de sus a unei coloane
2. Selectați tipul de agregare
3. Alegeți câmpul pe care să îl agregați
**Exemplu:** Afișați valoarea totală a tranzacțiilor pe etapă prin agregarea câmpului Sumă cu operația Sumă.
## Când să utilizați vizualizările Kanban
Vizualizările Kanban sunt ideale pentru:
* **Pipeline-uri de vânzări**: Urmăriți tranzacțiile prin etape, de la lead până la închidere
* **Managementul proiectelor**: Monitorizați sarcinile prin stările fluxului de lucru
* **Recrutare**: Urmăriți candidații prin etapele de angajare
* **Orice proces etapizat**: Vizualizați orice flux de lucru cu etape definite
## Cele mai bune practici
### Organizați-vă etapele
* **Limitați etapele**: 5-7 etape sunt ideale pentru vizibilitate
* **Denumire clară**: Folosiți denumiri de etape descriptive
* **Ordine logică**: Aranjați etapele în ordinea procesului
### Optimizați afișarea cardurilor
* **Afișați câmpurile cheie**: Afișați doar cele mai importante informații
* **Utilizați vizualizarea compactă**: Pentru prezentări generale la nivel înalt
* **Coduri de culoare**: Folosiți culorile etapelor pentru a identifica rapid starea
### Mențineți calitatea datelor
* **Actualizați regulat**: Mențineți cardurile în mișcare prin etape
* **Arhivați elementele finalizate**: Mutați elementele închise în afara vizualizării active
* **Revizuiți cardurile învechite**: Reluați urmărirea cardurilor blocate în etape

View File

@@ -0,0 +1,64 @@
---
title: Vizualizări de Tabel
description: Afișați datele într-un format de listă asemănător unei foi de calcul.
---
## Despre Vizualizările de Tabel
Vizualizările tip tabel afișează înregistrările în rânduri, cu coloane personalizabile — ca într-o foaie de calcul. Acesta este tipul de vizualizare implicit pentru majoritatea obiectelor.
<img src="/images/user-guide/table-views/table-view.png" style={{width:'100%'}} />
## Funcționalități
### Configurarea coloanelor
* Afișați sau ascundeți coloane (câmpuri)
* Redimensionați lățimile coloanelor
* Reordonați coloanele prin glisare
### Grupați după un câmp de tip Select
Organizați înregistrările în grupuri pliabile pe baza unui câmp de tip Select.
<img src="/images/user-guide/table-views/table-group-by.png" style={{width:'100%'}} />
1. Faceți clic pe **Opțiuni**
2. Selectați **Grupare**
3. Alegeți un câmp de tip Select
4. Configurați ordinea grupurilor în **Opțiuni → Grupare → Sortare**:
* **Alfabetic** sau **Alfabetic invers**
* **Ordine manuală**: Glisați grupurile sub "Grupuri vizibile" pentru a le reordona
* Faceți clic pe **pictograma în formă de ochi** de lângă un grup pentru a-l ascunde
**Cazuri de utilizare:**
* Grupează firmele după tip
* Grupați oportunitățile după etapă
* Grupați sarcinile după stare
<Note>
**Pentru performanțe optime, limitați la 10-15 grupuri vizibile pe vizualizare.** Dacă aveți nevoie de mai multe grupuri, luați în considerare utilizarea unui tablou de bord.
</Note>
### Lățimi de coloană
Redimensionați coloanele pentru a afișa mai mult sau mai puțin conținut:
1. Treceți cu cursorul între două antete de coloană
2. Faceți clic și glisați marginea coloanei
3. Eliberați pentru a seta noua lățime
## Când să utilizați vizualizările tip tabel
Vizualizările tip tabel sunt cele mai potrivite pentru:
* **Răsfoirea seturilor mari de date** — parcurgeți rapid multe înregistrări
* **Introducerea datelor** — editați eficient mai multe înregistrări
* **Analiza detaliată** — vedeți multe câmpuri deodată
* **Sortare și filtrare** — găsiți înregistrări specifice
## Conexe
* [Câmpuri și coloane](/l/ro/user-guide/views-pipelines/capabilities/fields-and-columns) — configurarea câmpurilor de afișat
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting) — restrângerea înregistrărilor

View File

@@ -0,0 +1,74 @@
---
title: Setări vizualizare
description: Gestionați vizibilitatea, denumirea, pictogramele și organizarea vizualizării.
---
## Vizibilitatea vizualizării
Controlați cine poate vedea vizualizările dvs. personalizate.
### Opțiuni de vizibilitate
| Setare | Cine poate vedea |
| ------------------- | ------------------------------- |
| **Spațiu de lucru** | Toți membrii spațiului de lucru |
| **Nelistat** | Doar dvs. |
### Schimbarea vizibilității
1. Deschideți vizualizarea
2. Faceți clic pe **Opțiuni → Vizibilitate**
3. Selectați **Spațiu de lucru** sau **Nelistat**
<Note>
Vizualizările implicite "Toate [Numele obiectului]" nu pot avea vizibilitatea modificată.
</Note>
## Redenumiți o vizualizare
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă vizualizare
3. Selectați **Editare**
4. Introduceți noul nume
## Schimbați pictograma vizualizării
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă vizualizare
3. Selectați **Editare**
4. Faceți clic pe pictogramă pentru a o schimba
## Reordonați vizualizările
Modificați ordinea în care vizualizările apar în lista derulantă:
1. Deschideți meniul derulant al vizualizării
2. Trageți vizualizările folosind mânerul lor
3. Plasați în poziția dorită
4. Ordinea se salvează automat
## Viziune preferată
Fixați vizualizările utilizate frecvent pentru acces rapid:
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă o vizualizare
3. Selectați **Adaugă la favorite**
Vizualizările adăugate la favorite apar într-o secțiune dedicată pentru acces facil.
## Ștergeți o vizualizare
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă vizualizare
3. Selectați **Ștergere**
4. Confirmați ștergerea
<Warning>
Vizualizările șterse nu pot fi recuperate.
</Warning>
## Conexe
* [Prezentare generală a vizualizărilor](/l/ro/user-guide/views-pipelines/overview) — crearea vizualizărilor
* [Cum să restricționați accesul](/l/ro/user-guide/views-pipelines/how-tos/restrict-access-to-your-view) — ghid pas cu pas

View File

@@ -0,0 +1,61 @@
---
title: Creați o vizualizare Calendar pentru sarcini scadente
description: Vizualizați sarcinile și termenele limită într-un calendar.
---
<img src="/images/user-guide/views/calendar-view-zoom.png" style={{width:'100%'}} />
## Cerințe
Obiectul Sarcini trebuie să aibă un câmp **Data scadenței** (tip Dată sau Dată și oră).
## Pași
1. Navigați la **Sarcini**
2. Faceți clic pe meniul derulant al vizualizării → **+ Adaugă vizualizare**
3. Denumiți vizualizarea (de ex., "Calendar sarcini")
4. Faceți clic pe **Creare**
5. Faceți clic pe **Opțiuni** și selectați **Calendar** ca tip de afișare
6. Alegeți **Data scadenței** ca câmp de dată
7. Faceți clic pe **Salvare**
## Configurați calendarul
### Afișați câmpurile în evenimente
1. Faceți clic pe **Opțiuni → Câmpuri**
2. Faceți clic pe **pictograma ochi** pentru a afișa/ascunde câmpurile
3. Trageți pentru a reordona
Câmpuri recomandate pentru afișare:
* **Titlu** — numele sarcinii
* **Responsabil** — cine este responsabil
* **Stare** — progresul curent
### Filtrați calendarul
Creați vizualizări axate:
* **Sarcinile mele**: Filtrați după Responsabil = Eu
* **Săptămâna aceasta**: Filtrați după Data scadenței = Săptămâna aceasta
* **Întârziate**: Filtrați după Data scadenței < Astăzi, Stare ≠ Finalizat
## Alte cazuri de utilizare ale calendarului
| Obiect | Câmp de dată | Scop |
| ------------------------ | ------------------ | ---------------------------------- |
| Oportunități | Data închiderii | Urmăriți închiderile preconizate |
| Evenimente personalizate | Data evenimentului | Planificați activități |
| Proiecte | Termen limită | Monitorizați termenele proiectului |
## Sfaturi
* **Revizuiți săptămânal**: Începeți fiecare săptămână prin verificarea vizualizării calendarului
* **Combinați cu vizualizarea de tabel**: Folosiți calendarul pentru vedere de ansamblu, tabelul pentru detalii
* **Setați vizibilitatea**: Păstrați calendarele de sarcini personale ca Nelistat
## Conexe
* [Vizualizare Calendar](/l/ro/user-guide/views-pipelines/capabilities/calendar-view) — toate funcționalitățile calendarului
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting) — filtrați calendarul

View File

@@ -0,0 +1,80 @@
---
title: Creați o vizualizare Kanban pentru proiecte
description: Urmăriți proiectele prin etape folosind un tablou vizual.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Utilizați o vizualizare Kanban pentru a afișa proiectele (sau orice obiect cu etape) ca carduri care se deplasează între coloane.
<VimeoEmbed videoId="927888627" title="Demonstrație video" />
## Cerințe
Obiectul are nevoie de un **câmp Select** pentru a fi folosit ca coloane (de ex., Stare, Etapă, Fază).
Dacă nu aveți unul:
1. Accesați **Setări → Model de date**
2. Selectați obiectul
3. Adăugați un câmp Select cu opțiunile pentru etape
## Pași
1. Navigați la obiectul dvs. (de ex., Proiecte, Sarcini)
2. Faceți clic pe meniul derulant al vizualizării → **+ Adaugă vizualizare**
3. Denumiți vizualizarea (de ex., "Tablou proiect")
4. Faceți clic pe **Creare**
5. Faceți clic pe **Opțiuni** și selectați **Kanban** ca tip de afișare
6. Vizualizarea utilizează automat câmpul dvs. Select pentru coloane
7. Faceți clic pe **Salvare**
## Configurați tabloul
### Afișați câmpurile cheie pe carduri
1. Faceți clic pe **Opțiuni → Câmpuri**
2. Găsiți câmpurile în secțiunea "Câmpuri ascunse"
3. Faceți clic pe **pictograma ochi** pentru a le afișa pe carduri
4. Trageți pentru a reordona
<img src="/images/user-guide/kanban-views/filter.png" style={{width:'100%'}} />
### Activează vizualizarea compactă
Pentru o vedere de ansamblu:
1. Faceți clic pe **Opțiuni**
2. Activați comutatorul pentru **Vizualizare compactă**
Cardurile afișează doar numele înregistrării.
<img src="/images/user-guide/kanban-views/compact-view.png" style={{width:'100%'}} />
### Adăugați agregări
Afișați numărul de elemente sau totalurile în partea de sus a fiecărei coloane:
1. Faceți clic pe numărul de lângă numele unei coloane
2. Selectați o agregare (Număr, Sumă etc.)
3. Alegeți un câmp, dacă este necesar
## Mutarea cardurilor
Trageți și plasați cardurile între coloane pentru a le actualiza starea.
<VimeoEmbed videoId="927888627" title="Demonstrație video" />
## Exemplu: Panou de sarcini
| Coloană (Stare) | Carduri |
| --------------- | ----------------------- |
| **De făcut** | Sarcini noi |
| **În progres** | Sarcini active |
| **Revizuire** | În așteptarea aprobării |
| **Finalizat** | Completat |
## Conexe
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) — agregări, vizualizare compactă, etape
* [Cum să configurați un pipeline de vânzări](/l/ro/user-guide/views-pipelines/how-tos/set-up-a-sales-pipeline) — Kanban pentru oportunități

View File

@@ -0,0 +1,51 @@
---
title: Creați o vizualizare de tabel cu grupare
description: Organizați înregistrările în grupuri pliabile după valoarea câmpului.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Grupați vizualizarea de tabel după un câmp Select pentru a organiza înregistrările în secțiuni pliabile.
<img src="/images/user-guide/table-views/table-group-by.png" style={{width:'100%'}} />
## Pași
1. Navigați la obiect (Persoane, Companii etc.)
2. Faceți clic pe meniul derulant al vizualizării → **+ Adaugă vizualizare**
3. Denumiți vizualizarea (de ex., "Companii după tip")
4. Faceți clic pe **Creare**
5. Faceți clic pe **Opțiuni → Grupare**
6. Alegeți un câmp Select după care să grupați
7. Faceți clic pe **Salvare**
## Configurați ordinea grupurilor
În **Opțiuni → Grupare → Sortare**, alegeți cum sunt ordonate grupurile:
| Opțiunea | Descriere |
| -------------------- | ------------------------------------------------------------ |
| **Alfabetic** | de la A la Z |
| **Alfabetic invers** | de la Z la A |
| **Ordine manuală** | Trageți grupurile pentru a le reordona în "Grupuri vizibile" |
Faceți clic pe **pictograma în formă de ochi** de lângă un grup pentru a-l ascunde din vizualizare.
<Note>
**Pentru performanțe optime, limitați la 10-15 grupuri vizibile.** Dacă aveți nevoie de mai multe, luați în considerare utilizarea unui tablou de bord.
</Note>
## Exemplu: Companii după industrie
1. Mergeți la **Companii**
2. Creați o vizualizare nouă numită "După industrie"
3. Faceți clic pe **Opțiuni → Grupare**
4. Selectați câmpul **Industrie**
5. Salvează
Acum companiile dvs. sunt organizate după industrie, ceea ce facilitează concentrarea pe câte un segment odată.
## Conexe
* [Vizualizări de Tabel](/l/ro/user-guide/views-pipelines/capabilities/table-views) — toate funcționalitățile vizualizărilor de tabel
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting) — combinați gruparea cu filtrele

View File

@@ -0,0 +1,32 @@
---
title: Restricționează accesul la vizualizarea ta
description: Controlează cine poate vedea vizualizările tale personalizate.
---
Fiecare vizualizare (cu excepția vizualizărilor implicite "Toate [Numele obiectului]") are propria setare de vizibilitate.
## Pași
1. Deschideți vizualizarea pe care doriți să o restricționați
2. Faceți clic pe **Opțiuni** în dreapta sus
3. Click **Visibility**
4. Selectați **Nelistat**
Vederea dvs. este acum vizibilă doar pentru dvs.
## Opțiuni de vizibilitate
| Setare | Cine poate vedea |
| ------------------- | ------------------------------- |
| **Spațiu de lucru** | Toți membrii spațiului de lucru |
| **Nelistat** | Doar tu |
## Notițe
* Implicit "Toate vizualizările [Nume obiect]" nu pot fi făcute nelistate
* Vizualizările nelistate nu apar în meniul derulant al altor utilizatori
* Poți schimba vizibilitatea înapoi la spațiul de lucru în orice moment
## Legate
* [Vezi Setările](/l/ro/user-guide/views-pipelines/capabilities/view-settings) - toate opțiunile de configurare vizualizare

View File

@@ -0,0 +1,120 @@
---
title: Configurați un pipeline de vânzări
description: Configurați-vă pipeline-ul de vânzări pentru a urmări oportunitățile prin etape.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
Un pipeline de vânzări în Twenty este o vizualizare Kanban a obiectului Oportunități, în care fiecare coloană reprezintă o etapă în procesul dvs. de vânzări.
## Pasul 1: Configurați etapele
Etapele sunt definite în câmpul **Etapă** al obiectului Oportunități.
1. Accesați **Setări → Model de date**
2. Selectați **Oportunități**
3. Găsiți și faceți clic pe câmpul **Etapă**
4. Adăugați, eliminați sau redenumiți etapele pentru a se potrivi procesului dvs.
<VimeoEmbed videoId="927890428" title="Demonstrație video" />
### Etape recomandate
| Etapa | Scop |
| ------------------- | ------------------------------------ |
| **Nou** | Oportunități noi tocmai identificate |
| **Calificat** | Confirmată ca o potrivire bună |
| **Întâlnire** | Se poartă discuții |
| **Propunere** | Propunere trimisă |
| **Negociere** | Se negociază termenii |
| **Închis câștigat** | Tranzacție reușită |
| **Închis pierdut** | Tranzacție nereușită |
<Note>
**5-7 etape este optim.** Prea multe etape fac conducta greu de scanat; prea puțini își pierd vizibilitatea în progresul tranzacției.
</Note>
## Pasul 2: Creați o vizualizare pentru pipeline
1. Accesați **Oportunități**
2. Faceți clic pe meniul derulant al vizualizării → **+ Adaugă vizualizare**
3. Denumiți-o "Sales Pipeline"
4. Faceți clic pe **Creare**
5. Deschideți **Opțiuni** și selectați **Kanban** ca tip de afișare
Vizualizarea folosește automat câmpul **Etapă** pentru coloane.
## Pasul 3: Configurați vizualizarea
### Afișați câmpurile cheie
1. Faceți clic pe **Opțiuni → Câmpuri**
2. Căutați câmpurile în secțiunea "Câmpuri ascunse"
3. Faceți clic pe **pictograma ochi** pentru a afișa: Companie, Sumă, Data închiderii, Proprietar
### Activați agregările
Afișați totalurile în partea de sus a fiecărei coloane:
1. Faceți clic pe numărul afișat lângă numele unei etape în partea de sus a unei coloane
2. Selectați tipul de agregare (Număr, Sumă, Medie etc.)
3. Alegeți câmpul pe care să îl agregați (de ex., Sumă)
**Exemplu:** Afișați valoarea totală a tranzacțiilor pe etapă prin agregarea câmpului Sumă cu operația Sumă.
### Utilizați vizualizarea compactă (opțional)
Pentru o privire de ansamblu la nivel înalt, cu conținut minim pe card:
1. Faceți clic pe **Opțiuni**
2. Activați comutatorul pentru **Vizualizare compactă**
## Pasul 4: Creați vizualizări personale și de echipă
### "Pipeline-ul meu"
* **Filtru**: Proprietar = Eu
* **Vizibilitate**: Nelistată (vizualizare personală)
### "Pipeline-ul echipei"
* **Filtru**: Niciunul (afișează tot)
* **Vizibilitate**: Workspace (vizualizare partajată)
### "Se închid luna aceasta"
* **Tip**: Tabel
* **Filtru**: Data închiderii = Luna aceasta, Etapa ≠ Închis câștigat, Etapa ≠ Închis pierdut
* **Sortare**: Data închiderii crescător
## Lucrul cu oportunitățile
### Crearea oportunităților
* Faceți clic pe **+ Nou** în vizualizarea Oportunități
* Sau faceți clic pe **+** într-o coloană a unei etape specifice
### Trecerea prin etape
Trageți și plasați cardurile oportunităților între coloane pentru a le actualiza etapa.
<VimeoEmbed videoId="927888627" title="Demonstrație video" />
## Cele mai bune practici
### Igiena pipeline-ului
* Actualizați zilnic tranzacțiile pe măsură ce progresează
* Mutați sau închideți prompt tranzacțiile stagnante
* Mențineți datele de închidere realiste
### Disciplina etapelor
* Definiți criterii clare pentru fiecare etapă
* Mutați tranzacțiile prompt atunci când criteriile sunt îndeplinite
* Nu lăsați tranzacțiile să stea prea mult timp în etape
## Conexe
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) — agregări și vizualizare compactă
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting) — crearea vizualizărilor filtrate

View File

@@ -0,0 +1,149 @@
---
title: Afișați suma estimată în pipeline-ul dvs.
description: Calculați și afișați valorile ponderate ale oportunităților pe baza probabilității etapei.
---
Suma estimată este o valoare calculată: **Sumă × Probabilitate**. Acest lucru vă ajută să prognozați veniturile prin ponderarea oportunităților în funcție de cât de probabil este să se închidă.
<Tip>
Acesta este un exemplu de creare a [Câmpurilor de formulă](/l/ro/user-guide/workflows/how-tos/crm-automations/formula-fields) folosind fluxuri de lucru.
</Tip>
Acest ghid vă conduce prin configurarea câmpurilor personalizate și a fluxurilor de lucru necesare pentru a calcula și afișa sumele estimate în pipeline-ul dvs.
## Pasul 1: Creați câmpuri personalizate
Aveți nevoie de două câmpuri personalizate pe obiectul Oportunități.
### Creați câmpul Probabilitate
1. Accesați **Setări → Model de date → Oportunități**
2. Faceți clic pe **+ Adaugă câmp**
3. Configurați:
* **Nume**: Probabilitate
* **Tip**: Număr
* **Descriere**: Probabilitate bazată pe etapă (0–100%)
4. Faceți clic pe **Salvare**
### Creați câmpul Sumă estimată
1. Faceți clic pe **+ Adaugă câmp**
2. Configurați:
* **Nume**: Sumă estimată
* **Tip**: Monedă
* **Descriere**: Calculat: Sumă × Probabilitate
3. Faceți clic pe **Salvare**
### Opțional: Setați câmpurile ca numai în citire pentru utilizatori
Dacă nu doriți ca utilizatorii să editeze manual aceste câmpuri calculate:
1. Accesați **Setări → Membri → Roluri**
2. Selectați rolul pe care doriți să-l configurați
3. Găsiți obiectul Oportunități
4. Setați câmpurile **Probabilitate** și **Sumă estimată** ca numai în citire
Acest lucru asigură că doar fluxurile de lucru pot actualiza aceste valori.
## Pasul 2: Creați Fluxul de lucru nr. 1 — Actualizați probabilitatea la schimbarea etapei
Acest flux de lucru setează automat probabilitatea când o oportunitate trece la o nouă etapă.
### Creați fluxul de lucru
1. Accesați **Fluxuri de lucru**
2. Faceți clic pe **+ Flux de lucru nou**
3. Denumiți-l "Actualizați probabilitatea la schimbarea etapei"
### Configurați declanșatorul
1. Adăugați un declanșator **Înregistrare creată sau actualizată**
2. Selectați **Oportunități** ca obiect
3. Filtrați după: câmpul **Etapă** este actualizat
### Adăugați ramuri pentru fiecare etapă
Creați o ramură pentru fiecare etapă cu probabilitatea sa:
| Etapa | Probabilitate |
| --------------- | ------------- |
| Nou | 10% |
| Calificat | 25% |
| Întâlnire | 40% |
| Propunere | 60% |
| Negociere | 80% |
| Închis câștigat | 100% |
| Închis pierdut | 0% |
<Note>
Pentru a crea o ramură nouă, faceți clic dreapta pe planșa fluxului de lucru și faceți clic pe **Acțiune nouă**. Apoi, legați această acțiune de nodul anterior trăgând săgeata de la nodul anterior la această acțiune nouă.
</Note>
Pentru fiecare etapă:
1. Adăugați un nod **Filtru**: Etapă = [numele etapei]
2. Adăugați o acțiune **Actualizare înregistrare**:
* Înregistrare: Oportunitatea declanșatoare
* Câmp: Probabilitate
* Valoare: [probabilitatea pentru acea etapă]
### Calculați suma estimată
După ce ramurile se reunesc:
1. Adăugați un nod **Filtru**: câmpul Sumă nu este gol
2. Adăugați o acțiune **Actualizare înregistrare**:
* Înregistrare: Oportunitatea declanșatoare
* Câmp: Sumă estimată
* Valoare: Sumă × Probabilitate
## Pasul 3: Creați Fluxul de lucru nr. 2 — Recalculați la modificarea sumei
Acest flux de lucru actualizează Suma estimată atunci când suma oportunității se modifică.
### Creați fluxul de lucru
1. Accesați **Fluxuri de lucru**
2. Faceți clic pe **+ Flux de lucru nou**
3. Denumiți-l "Recalculați suma estimată la modificarea sumei"
### Configurați declanșatorul
1. Adăugați un declanșator **Înregistrare creată sau actualizată**
2. Selectați **Oportunități** ca obiect
3. Filtrați după: câmpul **Sumă** este actualizat
### Adăugați logica
1. Adăugați un nod **Filtru**: câmpul Sumă nu este gol
2. Adăugați o acțiune **Actualizare înregistrare**:
* Înregistrare: Oportunitatea declanșatoare
* Câmp: Sumă estimată
* Valoare: Sumă × Probabilitate
## Pasul 4: Afișați în pipeline-ul dvs.
Acum afișați totalurile Sumei estimate în vizualizarea dvs. Kanban:
1. Deschideți vizualizarea Kanban **Pipeline de vânzări**
2. Faceți clic pe **numărul** de lângă orice nume de Etapă din partea de sus a unei coloane
3. Selectați **Sumă**
4. Alegeți **Sumă estimată**
Fiecare coloană afișează acum valoarea totală ponderată a pipeline-ului pentru acea etapă.
## Rezumat
| Componentă | Scop |
| ------------------------ | ---------------------------------------------------------------------------------- |
| **Câmpul Probabilitate** | Stochează probabilitatea de câștig bazată pe etapă |
| **Câmpul Sumă estimată** | Stochează Sumă × Probabilitate |
| **Flux de lucru nr. 1** | Actualizează probabilitatea când se schimbă etapa, apoi recalculează Suma estimată |
| **Flux de lucru nr. 2** | Recalculează Suma estimată când se modifică suma |
| **Agregare** | Afișează suma valorilor estimate pentru fiecare etapă |
## Asemănătoare
* [Câmpuri de formulă](/l/ro/user-guide/workflows/how-tos/crm-automations/formula-fields) — creați câmpuri calculate folosind fluxuri de lucru
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) — agregări pe coloană
* [Cum să creați câmpuri personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-fields) — configurarea câmpurilor

View File

@@ -0,0 +1,231 @@
---
title: Urmăriți cât timp rămân oportunitățile în fiecare etapă.
description: Monitorizați viteza tranzacțiilor urmărind momentul când oportunitățile intră în fiecare etapă.
---
<Tip>
Acesta este un exemplu de creare a [Câmpurilor de formulă](/l/ro/user-guide/workflows/how-tos/crm-automations/formula-fields) folosind fluxuri de lucru — în special calcule de date.
</Tip>
Urmărirea momentului în care oportunitățile intră în fiecare etapă vă ajută să identificați blocajele și să măsurați viteza tranzacțiilor.
Acest ghid vă ghidează prin configurarea câmpurilor personalizate și a unui flux de lucru pentru a înregistra automat când o oportunitate trece în fiecare etapă și a calcula câte zile a petrecut în etapa anterioară.
## Pasul 1: Creați câmpuri personalizate
Aveți nevoie de două tipuri de câmpuri pentru fiecare etapă:
* **Câmpuri Dată și oră**: înregistrează când oportunitatea a intrat în fiecare etapă
* **Câmpuri Număr**: stochează câte zile a petrecut oportunitatea în fiecare etapă
### Creați câmpurile "Ultima intrare"
1. Accesați **Setări → Model de date → Oportunități**
2. Pentru fiecare etapă, faceți clic pe **+ Adăugați câmp** și configurați:
* **Nume**: Ultima intrare în [numele etapei] (de ex., "Ultima intrare în Nou", "Ultima intrare în Calificat")
* **Tip**: Dată și oră
* **Descriere**: marcaj temporal când oportunitatea a intrat în această etapă
3. Faceți clic pe **Salvare**
Creați aceste câmpuri:
* Ultima intrare în Nou
* Ultima intrare în Calificat
* Ultima intrare în Întâlnire
* Ultima intrare în Propunere
* Ultima intrare în Negociere
* Ultima intrare în Închis - câștigat
* Ultima intrare în Închis - pierdut
### Creați câmpurile "Zile în etapă"
1. Pentru fiecare etapă, faceți clic pe **+ Adăugați câmp** și configurați:
* **Nume**: Zile în [numele etapei] (de ex., "Zile în Nou", "Zile în Calificat")
* **Tip**: Număr
* **Descriere**: numărul de zile petrecute în această etapă
2. Faceți clic pe **Salvare**
Creați aceste câmpuri:
* Zile în Nou
* Zile în Calificat
* Zile în Întâlnire
* Zile în Propunere
* Zile în Negociere
<Note>
Nu aveți nevoie de câmpuri "Zile în" pentru Închis - câștigat și Închis - pierdut, deoarece acestea sunt etape finale.
</Note>
### Opțional: Faceți câmpurile doar pentru citire
Dacă nu doriți ca utilizatorii să editeze manual aceste câmpuri calculate:
1. Accesați **Setări → Membri → Roluri**
2. Selectați rolul de configurat
3. Găsiți obiectul Oportunități
4. Setați câmpurile "Ultima intrare" și "Zile în" ca doar pentru citire
## Pasul 2: Creați fluxul de lucru
Acest flux de lucru unic gestionează ambele sarcini:
* Înregistrează marcajul temporal la intrarea într-o etapă nouă
* Calculează zilele petrecute în etapa anterioară
### Creați fluxul de lucru
1. Accesați **Fluxuri de lucru**
2. Faceți clic pe **+ Flux de lucru nou**
3. Denumiți-l "Urmăriți timpul în etapă"
### Configurați declanșatorul
1. Adăugați un declanșator **Record Updated**
2. Selectați **Oportunități** ca obiect
3. Filtrați după: câmpul **Etapă** este actualizat
### Adăugați ramuri pentru fiecare etapă
<Note>
Pentru a crea o ramură nouă, faceți clic dreapta pe planșa fluxului de lucru și faceți clic pe **Acțiune nouă**. Apoi, legați această acțiune de nodul anterior trăgând săgeata de la nodul anterior către această acțiune nouă.
</Note>
---
**Ramura 1: Etapă = Nou (prima etapă)**
Deoarece acesta este primul stadiu, se înregistrează doar marcajul de timp de intrare — nu există un stadiu anterior de la care să se poată face calculul.
1. Adăugați un nod **Filtru**: Etapă = Nou
2. Adăugați o acțiune **Cod**:
```javascript
export const main = async (): Promise<object> => {
return { now: new Date().toISOString() };
};
```
3. Adăugați o acțiune **Update Record**:
* Înregistrare: oportunitatea declanșatoare
* Câmp: Ultima intrare în Nou
* Valoare: `now` din nodul Cod
---
**Ramura 2: Etapă = Calificat**
Când treceți la Calificat, înregistrați momentul intrării ȘI calculați zilele petrecute în Nou.
1. Adăugați un nod **Filtru**: Etapă = Calificat
2. Adăugați o acțiune **Cod**:
```javascript
export const main = async (params: {
lastEnteredPreviousStage: Date;
}): Promise<object> => {
const { lastEnteredPreviousStage } = params;
const now = new Date();
const entryDate = new Date(lastEnteredPreviousStage);
const diffTime = Math.abs(now.getTime() - entryDate.getTime());
const daysInPreviousStage = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return {
now: now.toISOString(),
daysInPreviousStage: daysInPreviousStage
};
};
```
3. Configurați intrarea nodului Cod: mapați `lastEnteredPreviousStage` la câmpul **Ultima intrare în Nou**
4. Adăugați o acțiune **Update Record**:
* Înregistrare: oportunitatea declanșatoare
* Câmpuri de actualizat:
* Ultima intrare în Calificat = `now`
* Zile în Nou = `daysInPreviousStage`
---
**Ramura 3: Etapă = Întâlnire**
Când treceți la Întâlnire, înregistrați momentul intrării ȘI calculați zilele petrecute în Calificat.
1. Adăugați un nod **Filtru**: Etapă = Întâlnire
2. Adăugați o acțiune **Cod**:
```javascript
export const main = async (params: {
lastEnteredPreviousStage: Date;
}): Promise<object> => {
const { lastEnteredPreviousStage } = params;
const now = new Date();
const entryDate = new Date(lastEnteredPreviousStage);
const diffTime = Math.abs(now.getTime() - entryDate.getTime());
const daysInPreviousStage = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
return {
now: now.toISOString(),
daysInPreviousStage: daysInPreviousStage
};
};
```
3. Configurați intrarea nodului Cod: mapați `lastEnteredPreviousStage` la câmpul **Ultima intrare în Calificat**
4. Adăugați o acțiune **Update Record**:
* Înregistrare: oportunitatea declanșatoare
* Câmpuri de actualizat:
* Ultima intrare în Întâlnire = `now`
* Zile în Calificat = `daysInPreviousStage`
---
**Continuați pentru etapele rămase:**
| Etapa | Înregistrări | Calculează |
| ----------------- | ----------------------------------- | ----------------- |
| Propunere | Ultima intrare în Propunere | Zile în Întâlnire |
| Negociere | Ultima intrare în Negociere | Zile în Propunere |
| Închis - câștigat | Ultima intrare în Închis - câștigat | Zile în Negociere |
| Închis - pierdut | Ultima intrare în Închis - pierdut | Zile în Negociere |
Ramurile nu trebuie să se reunească — fiecare rulează independent când condiția etapei sale este îndeplinită.
## Pasul 3: Analizați timpul în etapă
Cu marcajele temporale și numărul de zile înregistrate, puteți acum analiza viteza tranzacțiilor.
### Creați o vizualizare "Tranzacții lente"
1. Creați o vizualizare Tabel a Oportunităților
2. Adăugați coloane: Nume, Etapă, Zile în [etapa anterioară], Sumă
3. Sortați după câmpul "Zile în" (descrescător)
4. Filtrați după Etapă pentru a vă concentra pe câte o etapă o dată
Tranzacțiile din partea de sus au petrecut cel mai mult timp în etapa anterioară.
### Utilizați agregări
În vizualizarea Kanban a pipeline-ului dvs.:
1. Faceți clic pe numărul de lângă numele unei Etape
2. Selectați **Medie**
3. Alegeți un câmp "Zile în"
Aceasta arată timpul mediu pe care tranzacțiile îl petrec în fiecare etapă.
## Rezumat
| Componentă | Scop |
| --------------------------- | --------------------------------------------------------------------------- |
| **Câmpuri Ultima intrare** | Stochează când oportunitatea a intrat în fiecare etapă |
| **Câmpuri Zile în** | Stochează câte zile au fost petrecute în fiecare etapă |
| **Flux de lucru** | Înregistrează marcajul temporal ȘI calculează zilele într-o singură trecere |
| **Vizualizări și agregări** | Analizați viteza tranzacțiilor și identificați blocajele |
## Articole conexe
* [Fluxuri de lucru](/l/ro/user-guide/workflows/overview) — elemente de bază ale automatizării
* [Cum să creați câmpuri personalizate](/l/ro/user-guide/data-model/how-tos/create-custom-fields) — configurarea câmpurilor
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views) — agregări

View File

@@ -0,0 +1,132 @@
---
title: Vizualizări și fluxuri
description: Aflați cum să creați și să gestionați vizualizările în Twenty.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Înțelegerea vizualizărilor
Vizualizările sunt configurații salvate care determină cum sunt afișate datele dvs. Fiecare vizualizare poate avea propriile setări:
* **Aspect**: Tabel, Kanban sau Calendar
* **Filtre**: ce înregistrări să fie afișate
* **Sortare**: modul în care sunt ordonate înregistrările
* **Câmpuri**: ce coloane sunt vizibile
## Tipuri de vizualizare
### Vizualizare tabel
Vizualizarea implicită, asemănătoare unei foi de calcul, care afișează înregistrările pe rânduri, cu coloane personalizabile.
### Vizualizare Kanban
O vizualizare tip panou în care înregistrările apar ca carduri organizate pe etape. Ideală pentru:
* Fluxuri de vânzări
* Urmărirea proiectelor
* Orice flux de lucru cu etape definite
### Vizualizare calendar
O vizualizare de calendar care afișează înregistrări cu câmpuri de tip dată. Perfectă pentru:
* Întâlniri și evenimente
* Termene limită și date scadente
* Planificare în funcție de timp
## Crearea unei Vizualizări
Există două modalități de a crea o vizualizare nouă.
### Utilizați meniul derulant al vizualizării
1. Navigați la orice obiect (Persoane, Companii etc.)
2. Faceți clic pe numele vizualizării din stânga sus (afișează vizualizarea curentă cu o săgeată pentru listă derulantă)
3. Faceți clic pe **+ Adaugă vizualizare**
4. Denumiți vizualizarea și faceți clic pe **Creează**
5. Alegeți un aspect (Tabel, Kanban sau Calendar) în **Opțiuni**
6. Adăugați filtre și sortare după necesități
7. Selectați ce câmpuri să afișați și reordonați-le
8. Faceți clic pe **Salvare**
<VimeoEmbed videoId="1145648745" title="Demonstrație video" />
### Începeți prin editarea unei vizualizări existente
1. Navigați la orice obiect (Persoane, Companii etc.)
2. Alegeți un aspect (Tabel, Kanban sau Calendar) în **Opțiuni** și adăugați filtre și sortare după necesități
3. Faceți clic pe **Salvează ca vizualizare nouă**
4. Denumiți vizualizarea și faceți clic pe **Creează**
5. Continuați să editați noua vizualizare
6. Faceți clic pe **Actualizează vizualizarea** pentru a salva configurațiile suplimentare
<VimeoEmbed videoId="1145654005" title="Demonstrație video" />
## Gestionarea vizualizărilor
### Editați o vizualizare
1. Selectați vizualizarea din lista derulantă
2. Efectuați modificările (filtre, sortare, coloane)
3. Faceți clic pe **Salvare** pentru a actualiza vizualizarea
### Redenumiți o vizualizare sau schimbați-i pictograma
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă numele vizualizării
3. Selectați **Editare**
4. Schimbați numele sau pictograma
5. Faceți clic pe **Salvare**
### Reordonați vizualizările
1. Deschideți meniul derulant al vizualizării
2. Faceți clic și glisați o vizualizare folosind mânerul ei
3. Plasați-o în poziția dorită
4. Noua ordine este salvată automat
### Adăugați la favorite
Fixați vizualizările utilizate frecvent pentru acces rapid:
1. Deschideți meniul derulant al vizualizării
2. Faceți clic pe meniul **⋮** de lângă o vizualizare
3. Selectați **Adaugă la favorite**
4. Vizualizarea apare în secțiunea Favorite
### Ștergeți o vizualizare
1. Selectați vizualizarea pe care doriți să o ștergeți
2. Faceți clic pe meniul derulant al vizualizării
3. Faceți clic pe meniul **⋮** de lângă vizualizare
4. Selectați **Ștergere**
5. Confirmați ștergerea
<Warning>
Vizualizările șterse nu pot fi recuperate. Asigurați-vă că doriți să o eliminați înainte de confirmare.
</Warning>
## Vizibilitatea vizualizării
Fiecare vizualizare (cu excepția vizualizărilor implicite "Toate [Numele obiectului]") are propria setare de vizibilitate.
Pentru a modifica vizibilitatea:
1. Deschideți vizualizarea
2. Faceți clic pe **Opțiuni → Vizibilitate**
3. Alegeți:
* **Spațiu de lucru**: Vizibilă pentru toți membrii spațiului de lucru
* **Nelistată**: Vizibilă doar pentru dvs.
<Note>
Vizualizările implicite "Toate [Numele obiectului]" nu pot avea vizibilitatea modificată.
</Note>
## Pașii următori
* [Vizualizări de Tabel](/l/ro/user-guide/views-pipelines/capabilities/table-views)
* [Vizualizări Kanban](/l/ro/user-guide/views-pipelines/capabilities/kanban-views)
* [Filtre și sortare](/l/ro/user-guide/views-pipelines/capabilities/filters-and-sorting)
* [Setări ale vizualizării](/l/ro/user-guide/views-pipelines/capabilities/view-settings)

View File

@@ -0,0 +1,167 @@
---
title: Trimiterea e-mailurilor prin fluxuri de lucru
description: Trimiteți automat e-mailuri personalizate folosind acțiunile fluxurilor de lucru.
---
Trimiteți automat e-mailuri atunci când au loc evenimente specifice în CRM—întâmpinați noile contacte, urmăriți oportunitățile sau notificați membrii echipei.
## Cerințe
Înainte de a putea trimite e-mailuri din fluxuri de lucru:
1. Conectați un cont de e-mail în **Settings → Accounts**
2. Asigurați-vă că contul are activate permisiunile de trimitere
## Flux de lucru de bază pentru e-mail
### Exemplu: E-mail de bun venit pentru contacte noi
**Obiectiv**: Trimiteți un e-mail de bun venit atunci când o persoană nouă este adăugată în CRM.
**Configurare**:
1. **Creați fluxul de lucru**: Accesați **Settings → Workflows** și faceți clic pe **+ New Workflow**
2. **Adăugați declanșator**: Selectați **Record is Created** → **People**
3. **Adăugați acțiunea Send Email**:
* Faceți clic pe **+** pentru a adăuga o acțiune
* Selectați **Send Email**
* Configurați e-mailul:
| Câmp | Valoare |
| ----------- | -------------------------------------- |
| **Către** | `{{trigger.object.email}}` |
| **Subiect** | `Bun venit la {{Your Company Name}}` |
| **Corp** | `Hi {{trigger.object.firstName}}, ...` |
4. **Testați și activați**: Testați cu o înregistrare de probă, apoi activați
## Utilizarea variabilelor în e-mailuri
Faceți referire la date din pașii anteriori folosind sintaxa `{{variable}}`:
```text
Hi {{trigger.object.firstName}},
Thank you for connecting with us!
Your company, {{trigger.object.company.name}}, is now in our system.
Best regards,
The Team
```
### Variabile disponibile din declanșatoare
| Tipul Trigger-ului | Variabile comune |
| ----------------------------------- | -------------------------------------- |
| **Înregistrare creată/actualizată** | `{{trigger.object.fieldName}}` |
| **Manual** | `{{trigger.selectedRecord.fieldName}}` |
| **Webhook** | `{{trigger.body.fieldName}}` |
## Avansat: e-mailuri condiționale
### Exemplu: E-mailuri diferite în funcție de sursa lead-ului
**Obiectiv**: Trimiteți e-mailuri de bun venit diferite în funcție de sursa lead-ului.
**Configurare**:
1. **Declanșator**: Record is Created (People)
2. **Adăugați acțiunea de filtrare**:
* Condiție: `{{trigger.object.source}}` este egal cu `"Website"`
* Dacă este adevărat → continuați către e-mailul de bun venit pentru website
3. **Ramificație pentru alte surse**:
* Creați ramificații paralele pentru surse diferite
* Fiecare ramificație are propria acțiune Send Email
## Trimiterea e-mailurilor către mai mulți destinatari
### Exemplu: Notificați echipa când se finalizează tranzacția
**Obiectiv**: Trimiteți un e-mail reprezentantului de vânzări și managerului său atunci când o oportunitate este câștigată.
**Configurare**:
1. **Declanșator**: Record is Updated (Opportunities, Stage = "Closed Won")
2. **Search Records**: Găsiți managerul proprietarului oportunității
3. **Send Email #1**: Către proprietarul oportunității
* Către: `{{trigger.object.owner.email}}`
* Subiect: `Felicitări pentru închiderea {{trigger.object.name}}!`
4. **Send Email #2**: Către manager
* Către: `{{searchRecords.manager.email}}`
* Subiect: `Tranzacție câștigată: {{trigger.object.name}}`
## E-mailuri de urmărire programate
### Exemplu: Urmărire la 3 zile după întâlnire
**Obiectiv**: Trimiteți un e-mail de urmărire la 3 zile după ce o întâlnire este înregistrată.
**Configurare**:
1. **Declanșator**: Record is Created (Activities, Type = "Meeting")
2. **Acțiune de întârziere**: Așteptați 3 zile
3. **Trimite email**:
* Către: Participantul la întâlnire
* Subiect: Revenire la discuția noastră
* Conținut: Faceți referire la detaliile întâlnirii din declanșator
## Atașamente pentru e-mailuri
Puteți atașa fișiere la e-mailurile trimise din fluxuri de lucru. Atașamentul este un fișier static pe care îl încărcați atunci când configurați fluxul de lucru.
### Cum să adăugați un atașament
1. În acțiunea **Trimite e-mail**, faceți clic pe butonul **Atașamente**
2. Faceți clic pentru a încărca un fișier de pe computerul dvs.
3. Fișierul va fi atașat tuturor e-mailurilor trimise de această acțiune
### Cazuri de Utilizare Comune
| Caz de utilizare | Exemplu de fișier |
| ------------------------------------- | --------------------------------------- |
| **E-mailuri de bun venit** | Broșura companiei (PDF) |
| **Secvențe de introducere** | Ghid de inițiere |
| **Mesaje de urmărire pentru vânzări** | Catalog de produse sau listă de prețuri |
| **Confirmări pentru evenimente** | Detalii despre eveniment sau agendă |
<Note>
Atașamentele sunt statice — același fișier este trimis tuturor destinatarilor. Pentru documente dinamice (cum ar fi ofertele personalizate), generați și atașați fișiere folosind o [Funcție logică](/l/ro/user-guide/workflows/how-tos/connect-to-other-tools/generate-pdf-from-twenty).
</Note>
## Cele mai bune practici
### Conținutul emailului
* Păstrați liniile de subiect concise și relevante
* Personalizați cu numele destinatarului
* Includeți un apel clar la acțiune
* Testați emailurile înainte de activare
### Livrabilitate
* Nu trimiteți prea multe emailuri prea repede
* Folosiți semnături de email profesionale
* Evitați cuvintele care declanșează filtrele de spam
* Asigurați opțiuni de dezabonare pentru emailurile de marketing
### Depanare
* Verificați că contul de email este conectat și activ
* Verificați că adresa de email a destinatarului este validă
* Revizuiți rulările fluxului de lucru pentru mesaje de eroare
* Testați mai întâi cu propria dvs. adresă de email
## Conexe
* [Declanșatoare ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-triggers)
* [Acțiuni ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-actions)

View File

@@ -0,0 +1,88 @@
---
title: Utilizați ramuri în fluxuri de lucru
description: Înțelegeți cum funcționează ramurile și cum să controlați care cale este executată.
---
## Cum funcționează ramurile
În editorul de fluxuri de lucru, puteți crea mai multe căi (ramuri) care pornesc dintr-un singur nod. Acest lucru vă permite să creați automatizări complexe cu rezultate diferite.
**Important**: Când rulează un flux de lucru, **toate ramurile se execută în paralel în mod implicit**. Nu există o logică "if/else" integrată pentru a alege o ramură în locul alteia — fiecare cale va rula simultan.
## Controlul ramurii care se execută
Pentru a executa doar o singură ramură pe baza unor condiții specifice, **adăugați un nod Filter la începutul fiecărei ramuri**.
### Exemplu de configurare
1. Creați fluxul de lucru cu mai multe ramuri dintr-un singur nod
2. Adăugați un nod **Filter** ca primul pas în fiecare ramură
3. Setați condiții în fiecare nod Filter pentru a determina când ar trebui să continue acea ramură
4. Vor continua doar ramurile pentru care condițiile din Filter sunt îndeplinite
### Cum funcționează nodurile Filter
* Dacă condiția din Filter este **îndeplinită**: Ramura își continuă execuția
* Dacă condiția din Filter **nu este îndeplinită**: Ramura se oprește la nodul Filter
Acest lucru creează, în mod eficient, o logică condițională în care rulează doar ramura potrivită, pe baza datelor dvs.
## Exemplu: Rutare după valoarea tranzacției
**Scenariu**: Când o tranzacție este închisă, trimiteți notificări diferite în funcție de valoarea tranzacției.
1. **Declanșator**: Opportunity updated (Stage = Closed Won)
2. **Ramura 1**: Filter pentru Amount > $10,000 → Trimiteți mesaj Slack către #big-deals
3. **Ramura 2**: Filter pentru Amount ≤ $10,000 → Trimiteți e-mail managerului de vânzări
Ambele ramuri pornesc, dar doar cea care corespunde sumei tranzacției va continua dincolo de propriul Filter.
## Crearea ramurilor
<Note>
Pentru a crea o ramură nouă dintr-un pas existent, faceți clic pe butonul **+** al acelui pas și adăugați acțiunea. Puteți adăuga mai multe ramuri făcând clic pe **+** de mai multe ori.
</Note>
1. În editorul de fluxuri de lucru, selectați pasul din care doriți să creați o ramură
2. Faceți clic pe butonul **+** pentru a adăuga o acțiune
3. Aceasta creează o ramură
4. Faceți clic din nou pe **+** la același pas pentru a crea ramuri suplimentare
5. Fiecare ramură poate avea propria secvență de acțiuni
## Îmbinarea ramurilor la loc
După ce ramurile paralele își finalizează activitatea, le puteți îmbina la loc într-o singură cale:
1. Finalizați acțiunile din ramuri
2. Adăugați un pas nou care ar trebui să ruleze după toate ramurile
3. Trageți o conexiune de la ultimul pas al fiecărei ramuri către acest pas nou
4. Pasul îmbinat așteaptă ca toate ramurile conectate să se finalizeze înainte de a se executa
### Exemplu: Procesare, apoi notificare
```
Trigger
│
├── Branch A: Update Customer Record
│
└── Branch B: Create Support Ticket
↘ ↙
Merged Step: Send Confirmation Email
```
E-mailul de confirmare este trimis numai după ce atât actualizarea clientului, cât și crearea tichetelor au fost făcute.
## Cele mai bune practici
* Folosiți întotdeauna **noduri Filter** la începutul ramurilor atunci când doriți execuție condițională
* Mențineți condițiile ramurilor **reciproc exclusive** pentru a evita acțiunile duplicate
* Testați fluxurile de lucru cu date diferite pentru a vă asigura că rulează ramurile corecte
* **Redenumiți pașii ramurilor** într-un mod descriptiv pentru a fi clar ce face fiecare cale
* **Îmbinați ramurile** când aveți nevoie de o acțiune finală după procesare în paralel
## Conexe
* [Întrebări frecvente despre fluxuri de lucru](/l/ro/user-guide/workflows/how-tos/need-more-help/workflows-faq) — răspunsuri despre execuția în paralel
* [Acțiuni ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-actions) — acțiuni disponibile pentru ramuri

View File

@@ -0,0 +1,183 @@
---
title: Utilizați Iterator
description: Parcurgeți array-uri de înregistrări pentru a executa acțiuni asupra fiecărui element.
---
Iterator vă permite să parcurgeți un array de înregistrări și să efectuați acțiuni pe fiecare în parte. Este esențial pentru fluxuri de lucru care trebuie să proceseze mai multe înregistrări returnate de Search Records sau primite prin webhook-uri.
## Când să folosiți Iterator
| Scenariu | Exemplu |
| ------------------------------------- | ------------------------------------------------------ |
| **Procesați rezultatele căutării** | Trimiteți e-mail fiecărei persoane găsite |
| **Gestionați array-urile de webhook** | Creați înregistrări pentru fiecare element, în ordine |
| **Actualizări în masă** | Actualizați mai multe înregistrări cu valori calculate |
| **Notificări** | Alertați mai multe persoane despre un eveniment |
## Înțelegerea Iteratorului
Iterator așteaptă un **array** ca intrare. Apoi:
1. Preia primul element din array
2. Rulează toate acțiunile din interiorul Iteratorului cu acel element
3. Trece la următorul element
4. Repetă până când toate elementele sunt procesate
### Selectarea tabloului peste care să se itereze
Majoritatea surselor de tablouri (Search Records, un câmp de tablou dintr-un webhook, un declanșator manual Bulk) pot fi selectate direct în selectorul de variabile.
Când un pas de tip **Code** sau **Logic Function** returnează un *tablou de nivel superior*, rezultatul său apare în selectorul de variabile ca intrări indexate (`0`, `1`, `2`, …). Pentru a itera peste întregul tablou, selectează opțiunea **Whole list** pentru acel pas — Iteratorul deduce apoi automat structura fiecărui element din listă.
## Configurare de bază
### Exemplu: Trimiteți e-mail tuturor din rezultatele căutării
**Obiectiv**: Găsiți toate contactele dintr-o companie specifică și trimiteți fiecăruia un e-mail personalizat.
### Pasul 1: Căutați înregistrări
1. Adăugați acțiunea **Search Records**
2. Obiect: **Persoane**
3. Filtru: Compania este egală cu "Acme Inc"
4. Aceasta returnează un array de persoane
### Pasul 2: Verificați dacă există rezultate
1. Adăugați acțiunea **Filter**
2. Condiție: `{{searchRecords.length}}` este mai mare decât 0
3. Aceasta previne erorile Iteratorului când rezultatele sunt goale
### Pasul 3: Adăugați un Iterator
1. Adăugați acțiunea **Iterator**
2. Intrare pentru array: selectați `{{searchRecords}}`
3. Aceasta creează o buclă
### Pasul 4: Adăugați acțiuni în interiorul Iteratorului
Acțiunile plasate după Iterator rulează pentru fiecare element:
1. Adaugă **Trimitere E-mail** (înăuntrul Iteratorului)
2. Către: `{{iterator.currentItem.email}}`
3. Subiect: Salut `{{iterator.currentItem.firstName}}`!
4. Conținut: Mesaj personalizat folosind câmpurile elementului curent
### Rezultat
Dacă Search Records returnează 5 persoane, Iteratorul:
* Trimite e-mail persoanei 1
* Trimite e-mail persoanei 2
* ... continuă pentru toate cele 5
## Accesarea datelor elementului curent
În interiorul Iteratorului, folosiți `{{iterator.currentItem}}` pentru a accesa înregistrarea curentă:
| Variabilă | Descriere |
| --------------------------------------- | ------------------------------------------- |
| `{{iterator.currentItem}}` | Întregul obiect al înregistrării curente |
| `{{iterator.currentItem.id}}` | ID-ul înregistrării |
| `{{iterator.currentItem.email}}` | Câmp de e-mail |
| `{{iterator.currentItem.company.name}}` | Numele companiei asociate |
| `{{iterator.index}}` | Poziția curentă în array (indexare de la 0) |
În selectorul de variabile, poți fie să intri într-un câmp specific al elementului curent, fie să alegi **Use the whole item** pentru a face referire la întregul element curent (`{{iterator.currentItem}}`). Selectarea întregului element este utilă atunci când vrei să transmiți o înregistrare completă direct într-un pas ulterior, în loc să o reconstruiești câmp cu câmp.
## Tipare comune
### Actualizați mai multe înregistrări
**Obiectiv**: Marcați toate sarcinile întârziate ca "Late"
```
1. Search Records (Tasks, Due Date < Today, Status ≠ Completed)
2. Filter (length > 0)
3. Iterator (searchRecords)
└── Update Record
- Object: Tasks
- Record: {{iterator.currentItem.id}}
- Status: Late
```
### Creați înregistrări dintr-un array
**Obiectiv**: Webhook-ul primește o comandă cu mai multe articole, creați o înregistrare pentru fiecare
```
1. Webhook Trigger (receives items array)
2. Filter (items.length > 0)
3. Iterator (trigger.body.items)
└── Create Record
- Object: Order Items
- Name: {{iterator.currentItem.name}}
- Quantity: {{iterator.currentItem.qty}}
- Related Order: {{trigger.body.orderId}}
```
### Procesare condițională în interiorul buclei
**Obiectiv**: Trimiteți e-mail doar contactelor cu adrese valide
```
1. Search Records (People)
2. Iterator (searchRecords)
└── Filter (currentItem.email is not empty)
└── Send Email
- To: {{iterator.currentItem.email}}
```
## Depanare
### "Iterator expects an array"
**Cauză**: Ați transmis o singură înregistrare în loc de un array.
**Remediere**: Asigurați-vă că transmiteți rezultatul acțiunii Search Records sau un câmp de tip array, nu o singură înregistrare.
```
✅ Correct: {{searchRecords}}
❌ Wrong: {{searchRecords[0]}}
```
### Iteratorul nu rulează
**Cauză**: Array-ul este gol.
**Remediere**: Adăugați un Filter înainte de Iterator pentru a verifica lungimea array-ului:
```
Filter: {{searchRecords.length}} > 0
```
### Acțiunile rulează de prea multe ori
**Cauză**: Search Records a returnat mai multe înregistrări decât era de așteptat.
**Remediere**:
* Adăugați filtre mai specifice în Search Records
* Setați o limită în Search Records (maxim 200)
* Adăugați un Filter în interiorul Iteratorului pentru condiții suplimentare
## Considerații de performanță
* **Utilizarea creditelor**: Fiecare iterație consumă credite pentru acțiunile sale
* **Timp**: Array-urile mari necesită mai mult timp pentru a fi procesate
* **Limite**: Luați în considerare procesarea în loturi a operațiunilor foarte mari
* **Limite de rată**: Apelurile către API-uri externe pot atinge limitele de rată la multe iterații
## Cele mai bune practici
1. **Verificați întotdeauna lungimea array-ului** înainte de Iterator pentru a evita erorile
2. **Adăugați filtre în interiorul buclelor** când nu toate elementele trebuie procesate
3. **Redenumiți pasul Iterator** pentru a descrie prin ce iterează
4. **Testați cu array-uri mici** înainte de a procesa seturi mari de date
5. **Monitorizați rulările fluxurilor de lucru** pentru a vă asigura că iterațiile se finalizează conform așteptărilor
## Conexe
* [Acțiuni ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-actions)
* [Cum să utilizați ramurile](/l/ro/user-guide/workflows/capabilities/use-branches-in-workflows)
* [Întrebări frecvente despre fluxurile de lucru](/l/ro/user-guide/workflows/how-tos/need-more-help/workflows-faq)

View File

@@ -0,0 +1,332 @@
---
title: Acțiuni Workflow
description: Aflați despre acțiunile disponibile în fluxurile de lucru Twenty.
---
import { VimeoEmbed } from '/snippets/vimeo-embed.mdx';
## Despre acțiuni
Acțiunile definesc ce se întâmplă după declanșarea unui trigger. Puteți înlănțui mai multe acțiuni pentru a construi automatizări complexe.
<Tip>
* Folosiți selectorul de variabile (faceți clic pe pictograma `(x+)`) pentru a răsfoi datele disponibile din pașii anteriori
* Plasați cursorul peste orice câmp de intrare pentru a vedea din care pas provine o variabilă — util atunci când același câmp (de ex., ID) există în mai mulți pași anteriori
* Dați fiecărei acțiuni un nume descriptiv pentru o mentenanță mai ușoară
</Tip>
## Acțiuni asupra înregistrărilor
<img src="/images/user-guide/workflows/workflow_actions.png" style={{width:'100%'}} />
### Creează înregistrare
Adaugă o nouă înregistrare la un obiect selectat.
**Configurare**:
* Selectați obiectul țintă
* Completați câmpurile obligatorii și opționale
* Folosiți date din pașii anteriori sau introduceți manual valori pentru a completa câmpurile
**Output**: Datele noii înregistrări create sunt disponibile pentru utilizare în pașii următori.
### Actualizați Înregistrarea
Modifică o înregistrare existentă într-un obiect selectat.
<img src="/images/user-guide/workflows/update_record.png" style={{width:'100%'}} />
**Configurare**:
* Selectați obiectul țintă
* Alegeți înregistrarea specifică de actualizat.
* Puteți alege fie o înregistrare specifică, folosind meniul derulant care afișează toate înregistrările disponibile.
* Sau puteți selecta dinamic înregistrarea, desemnând o înregistrare găsită într-un pas anterior, folosind `(x+)`. Nu puteți căuta înregistrarea pe baza unor criterii diferite în această etapă. Dacă încă nu ați identificat înregistrarea, adăugați un pas `Search Record` înaintea acestui pas `Update Record`.
* Selectați câmpurile de modificat și introduceți valori noi
**Output**: Datele înregistrării actualizate sunt disponibile pentru utilizare în pașii următori.
### Ștergeți Înregistrarea
Îndepărtează o înregistrare dintr-un obiect selectat.
**Configurare**:
* Selectați obiectul țintă
* Alegeți înregistrarea specifică de șters
**Output**: Datele înregistrării șterse rămân disponibile pentru utilizare în pașii următori.
### Căutați Înregistrări
Găsește înregistrări într-un obiect selectat folosind condițiile de filtrare.
**Configurare**:
* Selectați obiectul de căutat
* Setați criterii de filtrare pentru a restrânge rezultatele
* Configurați ordonarea și limitele
**Output**: Returnează înregistrările care se potrivesc care pot fi utilizate în pașii următori.
<Note>
**Limită**: Search Records returnează maximum **200 de înregistrări**. Dacă aveți nevoie să procesați mai multe, adăugați filtre specifice pentru a reduce rezultatele sau folosiți fluxuri de lucru programate pentru a procesa în loturi.
</Note>
**Cea mai bună practică**: Utilizați [ramuri](/l/ro/user-guide/workflows/capabilities/workflow-branches) după Search Records pentru a gestiona scenariile "găsit" vs "ne-găsit".
### Upsert Record
Creează o înregistrare nouă sau actualizează una existentă pe baza criteriilor de potrivire. Este util când nu sunteți sigur dacă o înregistrare există deja.
<img src="/images/user-guide/workflows/upsert_double_identifier.png" style={{width:'100%'}} />
**Configurare**:
* Selectați obiectul țintă
* Rețineți ce câmpuri pot fi folosite pentru potrivire: email pentru Persoane, domeniu pentru Companii, ID pentru orice obiect sau orice câmp marcat ca Unique. Va trebui să completați cel puțin unul dintre acestea mai jos.
* Completați valorile câmpurilor. Nu uitați să completați cel puțin unul dintre identificatorii unici.
<Note>
**Potrivirea funcționează de obicei și mai bine când adăugați un singur identificator unic.** De exemplu, captura de ecran de mai jos va potrivi companiile pe baza domeniului lor. ID-ul nu este neapărat necesar.
</Note>
<img src="/images/user-guide/workflows/upsert_simple_identifier.png" style={{width:'100%'}} />
* Folosiți datele din pașii anteriori pentru a completa câmpurile
**Cum funcționează**:
1. Caută o înregistrare care corespunde condițiilor specificate
2. Dacă este găsită → actualizează înregistrarea existentă
3. Dacă nu este găsită → creează o înregistrare nouă
**Output**: Datele înregistrării create sau actualizate sunt disponibile pentru utilizare în pașii următori.
## Acțiuni de flux
### Iterator
**Parcurge un array de înregistrări** returnat de un pas anterior, permițându-vă să efectuați acțiuni pe fiecare înregistrare individual.
**Configurare**:
* Selectați array de înregistrări dintr-un pas anterior (de exemplu, rezultate din Căutare Records, dintr-un declanșator manual cu disponibilitate în grup, dintr-un nod Cod). Când un pas de tip Cod sau funcție logică returnează un array de nivel superior, selectează opțiunea **Whole list** pentru a itera peste întregul rezultat.
* Definiți acțiunile de efectuat pe fiecare înregistrare în buclă.
<Note>
- Puteți adăuga mai multe acțiuni în interiorul unui Iterator.
- Când folosești ramuri în interiorul unui Iterator, asigură-te că ultimul pas al fiecărei ramuri se conectează înapoi la Iterator pentru a închide bucla.
</Note>
* Accesați câmpurile `Current Item`: pentru a utiliza câmpuri din înregistrarea procesată în prezent, faceți clic pe pasul **Iterator**, apoi selectați **Current item**. Lista câmpurilor disponibile din acea înregistrare va fi afișată și poate fi selectată pentru utilizare în acțiunile ulterioare. Poți, de asemenea, să selectezi **Use the whole item** pentru a trimite întregul element curent într-un pas ulterior.
<VimeoEmbed videoId="1146577247" title="Demonstrație video" />
### Filtru
Filtrează înregistrările pe baza condițiilor specificate, permițând trecerea doar a înregistrărilor care îndeplinesc criteriile.
**Configurare**:
* Selectați înregistrarea de filtrat
* Definiți condițiile și criteriile de filtrare
* Configurați care înregistrări ar trebui să treacă la pașii următori
<Note>
1. **Output**: Nodurile Filter nu returnează date — acționează ca porți. Dacă condițiile sunt îndeplinite, fluxul de lucru continuă. Dacă nu, fluxul de lucru se oprește pe acea ramură.
2. Operatorul `IS` poate fi utilizat cu câmpuri numerice. Se comportă ca un `EQUAL`.
</Note>
### Întârziere
Pauzează execuția fluxului de lucru pentru o durată specificată sau până la o anumită dată/oră.
**Tipuri de întârziere**:
| Tip | Descriere |
| ------------------- | -------------------------------------------------------------------- |
| **Durată** | Așteaptă o perioadă de timp specificată (zile, ore, minute, secunde) |
| **Dată programată** | Așteaptă până la o dată și o oră specifice |
**Configurare pentru durată**:
* Setați zile, ore, minute și/sau secunde
* Combinați mai multe unități (de ex., 2 zile și 4 ore)
**Configurare pentru dată programată**:
* Selectați o dată și o oră
* Poate face referire la un câmp de tip dată dintr-un pas anterior (de ex., un follow-up la 3 zile după o întâlnire)
**Cazuri de utilizare**:
* Așteaptă 24 de ore înainte de a trimite un email de follow-up
* Pauzează până la data de închidere a unei oportunități
* Programează acțiuni pentru programul de lucru
<Note>
Data programată nu poate fi în trecut. Dacă este utilizat un câmp de tip dată dintr-un pas anterior și data a trecut deja, fluxul de lucru va eșua.
</Note>
**Limitări și credite**:
* **Fără limită maximă de durată** — puteți seta întârzieri de minute, zile, săptămâni sau mai mult
* Se consumă **1 credit** la executarea nodului Delay, indiferent de durată
* **Nu se consumă credite** în timpul așteptării — o întârziere de 5 minute costă la fel ca o întârziere de 5 zile
## Acțiuni de comunicare
### Trimite email
Trimite un email din fluxul dumneavoastră de lucru. Este excelent pentru emailuri de grup bazate pe șabloane. Emailurile vor arăta ca cele pe care le trimiteți din căsuța de e-mail.
Nu este potrivit pentru newsletter-uri (care necesită formatare mai bogată) sau secvențe automate de e-mail.
**Cerințe prealabile**: Adăugați un cont de email în Settings → Accounts
**Configurare**:
* Selectați contul de email expeditor
<Note>
Puteți trimite emailuri doar din căsuțele poștale sincronizate cu propriul dvs. cont Twenty. Trimiterea din căsuțele poștale ale altor membri ai echipei (de ex., emailul proprietarului contului) este pe roadmap.
</Note>
Pentru toți pașii următori, puteți face referire la variabile din pașii anteriori pentru personalizare.
* Introduceți adresa de email a destinatarului.
<Note>
În acest moment este posibil un singur destinatar.
</Note>
* Setați linia de subiect.
* Compuneți corpul mesajului. Aveţi posibilitatea să formataţi link-uri, să creaţi liste numerotate, liste de puncte de liniuţă, şi să adăugaţi ataşamente.
<Note>
Adăugarea semnăturilor HTML nu este posibilă în acest moment.
</Note>
### Formular
Solicită un formular în timpul execuției fluxului de lucru pentru a colecta intrarea utilizatorului. Răspunsurile pot fi apoi folosite în pașii următori pentru a crea înregistrări, a trimite emailuri sau a executa orice altă acțiune pe baza datelor introduse.
<Warning>
**Formularele sunt concepute doar pentru declanșatoare manuale**. Pentru fluxurile de lucru cu alte declanșatoare (Înregistrare creată, actualizată, etc.), formularele sunt accesibile doar prin interfața de execuție a fluxului de lucru, ceea ce nu este experiența de utilizator așteptată. Un centru de notificare va fi lansat în 2026 pentru a sprijini în mod corespunzător formulare în fluxuri de lucru automate.
</Warning>
**Configurare**:
* Configurați câmpurile pe care utilizatorii vor fi solicitați să le completeze. Pentru fiecare câmp, alegeți
* un tip dintre text, număr, dată, o anumită înregistrare, un câmp select. Câmpurile din toate obiectele sunt disponibile pentru selecţie.
* o etichetă
* o valoare implicită la `Placeholder` (opțional)
* Editați titlul formularului
**Output**: Răspunsurile formularului sunt disponibile pentru utilizare în pașii următori.
**Exemplu**: Fluxul de lucru "Quick Lead" este disponibil implicit în toate locurile de lucru, disponibil oriunde în meniul de comandă `Cmd+K`.
**Cum să completați formularul**:
* Declanşaţi fluxul de lucru manual din Meniul de Comandă `Cmd+K`
* Completați formularul afișat în panoul lateral și faceți clic pe `Submit`.
<Note>
Câmpurile nu pot fi făcute obligatorii.
</Note>
<VimeoEmbed videoId="1147277989" title="Demonstrație video" />
## Acțiuni de integrare
### Cod
Rulați JavaScript personalizat în cadrul fluxului dumneavoastră de lucru.
În fundal, fiecare acțiune de cod este susținută de propria **funcție logică** — o funcție TypeScript pe server, care rulează pe platforma Twenty. Când adaugi o acțiune de cod, Twenty creează o funcție logică dedicată pentru acel pas și îi afișează editorul inline, astfel încât codul pe care îl scrii rămâne asociat cu workflow-ul.
**Configurare**:
* Accesați variabilele din pașii anteriori. Poți edita dinamic numele variabilelor.
<VimeoEmbed videoId="1147281795" title="Demonstrație video" />
* Scrieți cod JavaScript în editor
* Returnați variabilele pentru utilizare în pașii următori
* Testați codul direct în pas
<Note>
Dacă trebuie să utilizați chei API externe în codul dvs., trebuie să le introduceți direct în corpul funcției. Nu puteți configura cheile API în altă parte și să faceți referire la ele în funcția logică.
</Note>
<Tip>
**Lucrați cu array-uri?** Array-urile din sisteme externe sau din pași anteriori pot veni ca stringuri. Consultați [Cum să gestionați array-urile în acțiunile Code](/l/ro/user-guide/workflows/how-tos/advanced-configurations/handle-arrays-in-code-actions) pentru soluție.
</Tip>
<Tip>
Faceți clic pe pictograma pătrată din dreapta sus a editorului de cod pentru a-l afișa pe tot ecranul — util, deoarece lățimea implicită a editorului este limitată.
</Tip>
#### Reutilizarea unei funcții logice între workflow-uri
Acțiunea de cod inline este excelentă pentru logică ad-hoc, dar codul pe care îl conține aparține acelui singur pas. Când vrei să partajezi aceeași logică între mai multe workflow-uri — sau să o menții ca sursă versionată într-o aplicație — definește o **funcție logică reutilizabilă** în loc să copiezi și să lipești cod în fiecare acțiune de cod.
O funcție logică este definită o singură dată într-o aplicație (folosind `defineLogicFunction` din SDK) și expusă în constructorul de workflow prin adăugarea `workflowActionTriggerSettings`. După ce aplicația ta este instalată, acea funcție apare ca acțiune separată în constructorul de workflow, alături de acțiunile încorporate. Selectarea acesteia afișează câmpurile de intrare pe care le-ai declarat (cu selectoare de variabile, la fel ca alte acțiuni) și rulează codul tău partajat — fără a fi necesar JavaScript inline.
| | Acțiune de cod | Funcție logică reutilizabilă |
| ---------------------------------- | ------------------------------------------------------ | ---------------------------------------------------------------------- |
| **Locul în care „trăiește” codul** | Editor inline, legat de un singur pas al workflow-ului | Definită într-o aplicație, versionată în sistemul de control al sursei |
| **Reutilizare** | Copiat și lipit pentru fiecare pas | Adăugată ca acțiune în orice workflow |
| **Intrări** | Variabile conectate în editor | Câmpuri afișate pe baza schemei de intrare declarate |
| **Cel mai potrivit pentru** | Logică rapidă, specifică workflow-ului | Logică partajată, folosită în mai multe workflow-uri |
Ambele rulează pe același runtime pentru funcții logice, astfel încât o acțiune de cod pe care ai prototipat-o inline poate fi ulterior promovată într-o funcție logică reutilizabilă cu modificări minime.
<Tip>
Pentru documentația destinată dezvoltatorilor privind definirea funcțiilor logice și expunerea lor în constructorul de workflow, consultă [Logic Functions](/l/ro/developers/extend/apps/logic/logic-functions) — în special secțiunea **Exposing a function as an AI tool or workflow action** și `workflowActionTriggerSettings`.
</Tip>
### Solicitare HTTP
Trimite o cerere la un API extern ca parte a fluxului dumneavoastră de lucru.
<img src="/images/user-guide/workflows/http_action.png" style={{width:'100%'}} />
**Configurare**:
* Introduceți URL-ul punctului final API. Puteți utiliza parametri din pașii anteriori.
* Selectați metoda HTTP (GET, POST, PUT, PATCH, DELETE)
* Adăugați anteturile și valorile necesare
* Oferiți un exemplu de răspuns pentru previzualizarea structurii
## Acțiuni AI
### Agent AI - În curând
Rulează un agent AI în cadrul fluxului dvs. de lucru pentru a efectua sarcini inteligente.
**Configurare**:
* **Agent**: Selectați un agent AI existent sau folosiți agentul implicit
* **Prompt**: Scrieți instrucțiunea pentru agentul AI
* Faceți referire la variabile din pașii anteriori în prompt
**Ce pot face agenții AI**:
* Analizează și rezumă date
* Clasifică sau categorizează înregistrări
* Generează conținut text
* Ia decizii pe baza datelor
* Interacționează cu datele CRM folosind instrumente
**Output**: Răspunsul agentului AI este disponibil pentru utilizare în pașii următori. Dacă agentul are o schemă de ieșire structurată, răspunsul va urma acel format.
<Note>
Acțiunile agentului AI consumă credite ale fluxului de lucru în funcție de modelul AI utilizat. Consultați [Credite pentru fluxuri de lucru](/l/ro/user-guide/workflows/capabilities/workflow-credits) pentru detalii.
</Note>
<Note>
Agenții AI respectă permisiunile bazate pe roluri. Puteți atribui roluri specifice agenților în **Settings → Members → Roles** pentru a controla la ce date pot avea acces. Consultați [Permisiuni](/l/ro/user-guide/permissions-access/capabilities/permissions) pentru detalii.
</Note>

View File

@@ -0,0 +1,66 @@
---
title: Sucursale de lucru
description: Creați căi paralele și logică condițională în fluxurile dvs. de lucru.
---
Ramificațiile vă permit să împărțiți fluxul de lucru în mai multe căi care pot rula simultan sau condițional, în funcție de datele dvs.
<img src="/images/user-guide/workflows/branches.png" style={{width:'100%'}} />
## Cum funcționează ramificațiile
Când creați mai multe conexiuni dintr-un singur nod, fiecare cale devine o ramificație. În mod implicit, **toate ramificațiile se execută în paralel**—nu se așteaptă una pe alta.
## Crearea ramificațiilor
### Adăugați o ramificație nouă
1. **Faceți clic dreapta pe pânza principală** a fluxului de lucru (nu pe un nod existent)
2. Faceți clic pe **Adăugați nod**
3. Alegeți tipul de nod pentru ramificația nouă
4. Trageți o săgeată din partea de jos a pasului anterior la partea de sus a acestei noi acțiuni
5. Repetați pentru a adăuga mai multe ramificații din același nod
<Note>
Fiecare ramificație este independentă. Adăugarea unei ramificații nu afectează celelalte căi existente din acel nod.
</Note>
### Machetă vizuală
Ramificațiile apar ca căi paralele în editorul de fluxuri de lucru. Puteți glisa noduri pentru a rearanja macheta vizuală fără a afecta execuția.
## Ramificații condiționale
Deoarece toate ramificațiile rulează în mod implicit, utilizați noduri **Filtru** pentru a controla care căi se execută de fapt:
| Ramificație | Condiție de filtrare | Acțiune |
| ----------- | -------------------- | --------------------------------- |
| A | Etapă = "Câștigat" | Trimiteți un e-mail de felicitări |
| B | Etapă = "Pierdut" | Creați o sarcină de urmărire |
| C | Etapă = "Negociere" | Notificați managerul |
1. Creați ramificații din declanșatorul sau acțiunea dvs.
2. Adăugați un nod **Filtru** ca prim pas al fiecărei ramificații
3. Configurați fiecare filtru cu condiții care se exclud reciproc
4. Adăugați acțiunile după fiecare filtru
Doar ramificațiile în care condiția filtrului este îndeplinită vor continua să se execute.
## Îmbinarea ramificațiilor
**Ramificațiile nu se îmbină automat.** Fiecare ramificație rulează independent până când se încheie. Aveți flexibilitate completă în modul în care gestionați acest lucru:
* **Opțiunea 1: Păstrați ramificațiile separate**
Fiecare ramificație gestionează independent propriile acțiuni de urmărire. Aceasta este cea mai simplă abordare atunci când ramificațiile nu trebuie să convergă.
* **Opțiunea 2: Îmbinați ramificațiile manual**
La crearea fluxului de lucru, puteți conecta manual mai multe ramificații la aceeași acțiune ulterioară. Pur și simplu trageți săgeți de la capătul fiecărei ramificații către un nod comun.
<Note>
Deși puteți utiliza un nod [Întârziere](/l/ro/user-guide/workflows/capabilities/workflow-actions#delay) pentru a întrerupe execuția, în prezent nu poate fi configurat să aștepte "până când se termină o altă ramificație".
</Note>
## Conexe
* [Cum să utilizați ramificațiile în fluxuri de lucru](/l/ro/user-guide/workflows/capabilities/use-branches-in-workflows) - Ghid pas cu pas
* [Acțiuni ale fluxului de lucru](/l/ro/user-guide/workflows/capabilities/workflow-actions) - Acțiuni disponibile, inclusiv Filtru

View File

@@ -0,0 +1,75 @@
---
title: Credite pentru fluxuri de lucru
description: Înțelegeți consumul și gestionarea creditelor pentru fluxurile de lucru.
---
Creditele fluxului de lucru stimulează automatizările dvs. în Twenty. Înțelegerea modului în care funcționează vă ajută să optimizați costurile și să gestionați eficient bugetul de automatizare.
## Alocarea creditelor
Creditele pentru fluxurile de lucru sunt alocate în funcție de ciclul de facturare, nu de nivelul planului:
| Ciclu de facturare | Credite |
| ------------------- | ------------------- |
| **Abonament lunar** | 5 credite pe lună |
| **Abonament anual** | 50 de credite pe an |
<Note>
5 credite lunare sunt generoase pentru automatizările standard. Majoritatea echipelor nu vor depăși această limită cu utilizarea tipică a fluxurilor de lucru. Credite suplimentare sunt necesare în principal pentru acțiuni Code avansate și pentru fluxuri de lucru bazate pe AI.
</Note>
## Cum funcționează consumul de credite
Creditele sunt consumate când fluxurile de lucru se execută, nu atunci când le creați. Fiecare acțiune a fluxului de lucru consumă credite în funcție de complexitatea sa:
### Consumul de credite în funcție de tipul de acțiune
* **Operațiuni interne de bază**: Consum foarte mic de credite
* Căutați Înregistrări
* Creează înregistrare
* Actualizați Înregistrarea
* Ștergeți Înregistrarea
* Acțiuni de formular
* **Operațiuni complexe**: Consum mai ridicat de credite
* Acțiuni de cod (execuție JavaScript)
* Solicitări HTTP către servicii externe
* **Funcționalități AI**: Consum mai ridicat de credite
* Acțiunile agentului AI consumă credite în funcție de modelul AI utilizat
* Prompturile mai complexe și rezultatele mai lungi utilizează mai multe credite
* **Acțiuni Delay**: Consum minim de credite
* Nodul Delay consumă **1 credit** la execuție
* **Nu se consumă credite** în perioada de așteptare
* O întârziere de 5 minute costă la fel ca o întârziere de 5 zile
### Deducere în timp real
Creditele sunt retrase în timp real pe măsură ce fluxurile de lucru se execută. Acest lucru înseamnă:
* Fluxurile de lucru în ciornă nu consumă credite
* Numai fluxurile de lucru active, rulate utilizează alocarea dvs. de credite
* Fluxurile de lucru eșuate consumă totuși credite pentru pașii finalizați
## Gestionarea creditelor
### Verificați utilizarea creditelor
1. Accesați **Setări → Facturare**
2. Vizualizați consumul dvs. actual de credite și soldul rămas
3. Monitorizați modelele de utilizare pentru a optimiza fluxurile de lucru
### Achiziționarea de credite suplimentare
Dacă aveți nevoie de mai multe credite decât alocarea planificată:
1. Accesați **Setări → Facturare**
2. Faceți clic pe opțiunea de a achiziționa credite suplimentare. Sunt disponibile pachete de diferite dimensiuni.
3. Creditele sunt adăugate la soldul dvs. actual
## Cele mai bune practici
* **Prelucrarea în lot**: Folosește operațiuni în vrac și acțiuni ale Iteratorului în mod eficient pentru a reduce apelurile individuale de acțiune
* **Optimizare pentru declanșatorul manual**: Pentru declanșatoarele manuale, alegeți disponibilitatea `Bulk` pentru a procesa mai multe înregistrări într-o singură rulare a fluxului de lucru
* Optimizați acțiunile de cod pentru eficiență

View File

@@ -0,0 +1,93 @@
---
title: Rulările fluxului de lucru
description: Monitorizați și gestionați execuțiile fluxurilor de lucru.
---
## Despre Rulări
O **rulare** este o înregistrare a execuției unui flux de lucru. De fiecare dată când un flux de lucru este declanșat—fie de un eveniment al unei înregistrări, de o planificare, o acțiune manuală sau un webhook—se creează o nouă rulare.
## Vizualizarea Rulărilor
### Din editorul de fluxuri de lucru
1. Deschideți fluxul de lucru pe care doriți să îl monitorizați
2. Faceți clic pe panoul **Rulări** din partea dreaptă
3. Vedeți o listă cu rulările recente și starea lor
### Din vizualizarea Rulări ale fluxurilor de lucru
1. Accesați **Rulări ale fluxurilor de lucru** în bara laterală
2. Vizualizați rulările din toate fluxurile de lucru
3. Filtrați după stare, flux de lucru sau dată
## Stările rulărilor
| Status | Descriere |
| ---------------- | -------------------------------------------------------------------------------------------------- |
| **Se execută** | Fluxul de lucru se execută în prezent |
| **Completat** | Fluxul de lucru s-a finalizat cu succes |
| **Eșuat** | Fluxul de lucru a întâmpinat o eroare și s-a oprit |
| **În așteptare** | Fluxul de lucru este în pauză (de ex., așteaptă o acțiune Întârziere sau trimiterea unui formular) |
## Detalii despre rulare
Faceți clic pe orice rulare pentru a vedea:
* **Stare**: Starea curentă a rulării
* **Pornită la**: Când a început rularea
* **Durată**: Cât a durat rularea
* **Date ale declanșatorului**: Datele de intrare care au pornit fluxul de lucru
* **Ieșirile pașilor**: Datele returnate de fiecare pas
* **Mesaje de eroare**: Dacă rularea a eșuat, ce a mers prost
## Execuție pas cu pas
Fiecare rulare afișează progresul în fluxul dvs. de lucru:
1. Vedeți care pași s-au finalizat cu succes
2. Identificați unde au apărut eșecurile
3. Vizualizați datele transmise între pași
4. Depanați problemele examinând intrările și ieșirile pașilor
## Gestionarea erorilor
Când o rulare eșuează:
1. Deschideți rularea eșuată
2. Găsiți pasul care a cauzat eșecul
3. Verificați mesajul de eroare pentru detalii
Probleme comune:
* Lipsesc câmpuri obligatorii
* Format de date invalid
* Erori ale API-urilor externe
* Probleme de permisiuni
## Rularea din nou a fluxurilor de lucru
Dacă o rulare eșuează, puteți:
* Remediați problema de bază și așteptați următorul declanșator
* Pentru fluxurile de lucru manuale, declanșați din nou cu aceleași date sau cu date actualizate
* Revizuiți logica fluxului de lucru pentru a preveni eșecuri viitoare
## Sfaturi privind performanța
### Gestionarea istoricului rulărilor
* Rulările sunt păstrate pentru referință istorică
* Rulările foarte vechi pot fi arhivate automat
* Exportați datele rulărilor dacă trebuie să păstrați înregistrări
### Cele mai bune practici de monitorizare
* Verificați regulat rulările după activarea unor fluxuri de lucru noi
* Analizați rulările eșuate pentru a identifica tipare
## Conexe
* [Declanșatoare ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-triggers)
* [Acțiuni ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-actions)
* [Depanarea fluxurilor de lucru](/l/ro/user-guide/workflows/how-tos/need-more-help/workflow-troubleshooting)

View File

@@ -0,0 +1,137 @@
---
title: Declanșatoare pentru fluxuri de lucru
description: Află mai multe despre diferiții declanșatori care îți încep fluxurile de lucru.
---
## Despre declanşatori
Fluxurile de lucru întotdeauna încep cu un declanșator unic care definește când ar trebui să ruleze automatizarea.
<img src="/images/user-guide/workflows/workflow_triggers.png" style={{width:'100%'}} />
<Tip>
**Obiectele avansate sunt acceptate!** Dincolo de obiectele standard CRM (People, Companii, Oportunități), puteți declanșa, de asemenea, fluxuri de lucru și efectua acțiuni pe:
* Membri ai spațiului de lucru
* Evenimente Calendar
* Mesaje (Emails)
* Sarcini, Note și multe alte obiecte de sistem
Acest lucru deschide automate puternice cum ar fi notificarea membrilor echipei atunci când evenimentele din calendar sunt create sau procesarea automată a e-mailurilor primite.
</Tip>
## Înregistrarea este creată
Pornește fluxul de lucru când este creată o nouă înregistrare într-un obiect selectat (Persoane, Companii, Oportunități sau orice obiect personalizat).
**Configurare**: Selectați tipul de obiect pentru a monitoriza noile înregistrări.
<Note>
* Acest declanșator este grozav pentru înregistrările create de CSV, cutia poștală și sincronizarea calendarului, sau API.
* **Nu este recomandat pentru înregistrările create manual**: cu acest declanșator, fluxurile de lucru încep imediat ce înregistrarea este creată. Deoarece 20 de UI oferă salvare automată în zbor (nu există nici un mod de editare și apoi o validare pentru a salva înregistrările), fluxul de lucru va fi declanșat înainte ca utilizatorul să introducă toate câmpurile.
Pentru a declanșa acest flux de lucru pe înregistrările create manual, este recomandat să utilizați declanșatorul `Record este creat sau actualizat`.
</Note>
## Înregistrarea este actualizată
Pornește fluxul de lucru când se fac modificări într-o înregistrare existentă.
**Configurare**:
* Selectați tipul de obiect
* Specificați opțional care câmpuri să fie monitorizate pentru modificări
## Înregistrarea este actualizată sau creată
Pornește fluxul de lucru când o înregistrare este fie creată, fie actualizată într-un obiect selectat.
**De ce contează acest lucru**: Acest declanșator este deosebit de util deoarece înregistrările create prin metode diferite se comportă diferit:
* **Importuri API/CSV**: Înregistrările sunt create cu toate câmpurile completate imediat
* **Creare manuală**: Înregistrările sunt create mai întâi, apoi câmpurile sunt adăugate în actualizări ulterioare
**Configurare**:
* Selectați tipul de obiect pentru a monitoriza
* Specificați opțional care câmpuri să fie monitorizate pentru modificări
* Fluxul de lucru va fi declanșat atât la crearea inițială, cât și la orice actualizări ulterioare
## Înregistrarea este ștearsă
Pornește fluxul de lucru când o înregistrare este eliminată dintr-un obiect.
**Configurare**: Selectați tipul de obiect pentru a monitoriza ștergerile.
## Declanșare manuală
Pornește fluxul de lucru când este declanșat de o acțiune a utilizatorului. Acest declanșator poate fi accesat prin meniul `Cmd+K` sau printr-un buton personalizat care va fi afișat în bara de navigare de sus după selectarea înregistrării(lor).
<img src="/images/user-guide/workflows/add_to_newsletter_button.png" style={{width:'100%'}} />
**Configurare disponibilitate**:
Alegeți cum ar trebui ca fluxul de lucru să gestioneze selecția înregistrărilor:
* **Global**: Nu se necesită nicio înregistrare pentru a declanșa acest flux de lucru. Fluxul de lucru este declanșat din meniul de comandă `Cmd+K` oriunde (de la orice obiect) și nu folosește înregistrarea (înregistrările) ca intrare.
Pentru disponibilitatea **Single** și **Bulk**, înregistrările selectate vor fi transmise la fluxul de lucru. Aceasta este configurată pentru un obiect dat, și mai multe înregistrări pot fi selectate înainte de a declanșa fluxul de lucru.
* **Single**: Fluxul de lucru va rula de la început la sfârșit de câte ori există înregistrări selectate.
<Note>
**Limita soft: 100 runs/minut**. Dincolo de aceasta, fluxurile de lucru rămân în starea „Nu s-a început” și sunt procesate treptat — fie de un job de fundal sau atunci când un alt flux de lucru intră în coadă. Asta înseamnă că poți selecta mai mult de 100 de înregistrări cu un singur declanșator; execuția va fi mai lentă.
</Note>
* **Bulk**: Fluxul de lucru va rula o dată, furnizând întreaga listă de înregistrări ca intrare. Aceasta înseamnă că fluxul de lucru trebuie să conțină o [acțiune Iterator](/l/ro/user-guide/workflows/capabilities/workflow-actions#iterator).
<Note>
Acest lucru este mai avansat, și cel mai bine pentru cei care doresc să optimizeze numărul de alergări de fluxuri de lucru.
</Note>
<img src="/images/user-guide/workflows/manual_trigger.png" style={{width:'100%'}} />
**Configurare suplimentară**:
* Selectați obiectul țintă (pentru modurile Single și Bulk)
* Alegeți o pictogramă de comandă pentru declanșarea fluxului de lucru
* Configurați plasarea în navbar (fixat sau nefixat)
**Metode de acces**:
* Meniul `Cmd+K` pentru a găsi și lansa fluxuri de lucru manuale
* Buton personalizat în navbarul superior (dacă este configurat)
## Declanșator temporal: Pe un program
Pornește fluxul de lucru în mod recurent, conform configurării pe care o definiți.
**Configurare**:
* Selectați unitatea de timp (minute, ore, zile)
* Introduceți o valoare sau folosiți expresii cron personalizate pentru programare avansată
<Note>
**Fus orar**: Fluxuri de lucru programate rulează în **UTC**. Când sunt stabilite ore pentru orarele zilnice, convertiți ora locală în UTC.
</Note>
## Declanșator extern: Webhook
Pornește fluxul de lucru când este primită o cerere GET sau POST de la un serviciu extern.
<img src="/images/user-guide/workflows/webhook_trigger.png" style={{width:'100%'}} />
**Configurare**:
* Fluxul de lucru oferă un URL webhook unic - copiați-l și adăugați-l în sistemul dvs. extern ca punct final pentru apelare.
* În ceea ce privește cererile POST, să se definească structura organică preconizată, astfel încât douăzeci să știe ce date să aștepte. Adăugați aici câmpurile pe care le veți primi care vor fi necesare mai jos în fluxul de lucru.
* Configurați autentificarea (în curând).
## Alegerea Declanșatorului din dreapta
| Utilizare Caz | Declanșator recomandat |
| ---------------------------------------- | ----------------------------------------- |
| Noi piste necesită procesare | Înregistrarea este creată |
| Schimbarea datelor necesită sincronizare | Înregistrarea este actualizată |
| Import/manipularea manuală a datelor | Înregistrarea este actualizată sau creată |
| Curățare după ștergere | Înregistrarea este ștearsă |
| Acțiune inițiată de utilizator | Lansare manuală |
| Rapoarte periodice | Conform unui program |
| Integrarea externă | Webhook sau pe o programare |

View File

@@ -0,0 +1,84 @@
---
title: Versiunile fluxului de lucru
description: Gestionați versiunile și schițele fluxului de lucru.
---
## Despre versiuni
De fiecare dată când activați un flux de lucru, se creează o versiune nouă. Acest lucru vă permite să urmăriți modificările în timp și să reveniți la configurațiile anterioare, dacă este necesar.
## Stările versiunilor
| Status | Descriere |
| -------------- | -------------------------------------------- |
| **Schiță** | În curs de editare, încă nepublicată |
| **Activ** | Versiunea live care răspunde la declanșatori |
| **Dezactivat** | Anterior activă, oprită manual |
| **Arhivat** | Versiuni anterioare păstrate pentru istoric |
## Lucrul cu schițele
Când editați un flux de lucru activ, modificările sunt salvate ca **schiță**. Versiunea activă continuă să ruleze în timp ce lucrați la actualizări.
După ce ați terminat editarea, puteți:
* **Activați**: Publicați schița ca noua versiune activă (versiunea anterioară este arhivată)
* **Renunțați**: Ștergeți schița și păstrați versiunea activă curentă
## Istoria versiunilor
### Vizualizarea versiunilor anterioare
1. Deschideți fluxul de lucru
2. Faceți clic pe fila **Versiuni**
3. Vedeți toate versiunile anterioare cu marcaje de timp
### Restaurarea unei versiuni
1. Găsiți versiunea pe care doriți să o restaurați
2. Faceți clic pe **Utilizează ca schiță**
3. Versiunea este copiată într-o nouă schiță
4. Efectuați actualizările necesare
5. Activați când sunteți gata
## Cele mai bune practici
### Gestionarea versiunilor
* Activați numai când este gata pentru producție
* Păstrați modificările semnificative între versiuni
* Documentați modificările majore în numele sau descrierile fluxurilor de lucru
* Testați în modul schiță înainte de a activa
### Anularea modificărilor
* Dacă o versiune nouă provoacă probleme, restaurați versiunea anterioară
* Utilizați istoricul versiunilor pentru a urmări ce s-a schimbat
* Testați întotdeauna versiunile restaurate înainte de activare
## Fluxuri de lucru comune
### Editare rapidă
1. Faceți modificări minore la un flux de lucru activ
2. Testați în modul schiță
3. Activați noua versiune
### Revizie majoră
1. Folosiți versiunea anterioară ca punct de pornire
2. Efectuați modificări semnificative în schiță
3. Testați temeinic toate scenariile
4. Activați când sunteți încrezători
### Revenire
1. Identificați problema versiunii curente
2. Găsiți în istoric ultima versiune funcțională
3. Faceți clic pe **Utilizează ca schiță**
4. Activați pentru a restabili comportamentul vechi
## Conexe
* [Noțiuni de bază despre fluxuri de lucru](/l/ro/user-guide/workflows/overview)
* [Execuții ale fluxurilor de lucru](/l/ro/user-guide/workflows/capabilities/workflow-runs)

View File

@@ -0,0 +1,82 @@
---
title: Gestionarea tablourilor în acțiunile de cod
description: Aflați cum să gestionați corect intrările de tip tablou în acțiunile de cod din fluxurile de lucru.
---
Când lucrați cu tablouri în acțiunile de cod, este posibil să întâmpinați două provocări frecvente:
1. **Tablouri transmise ca șiruri** — datele din sisteme externe sau din pașii anteriori sosesc ca un șir în loc de un tablou propriu-zis
2. **Nu puteți selecta elemente individuale** — puteți selecta doar întregul tablou, nu câmpuri specifice din interiorul lui
Ambele pot fi rezolvate cu un nod de cod.
## Analizarea tablourilor din șiruri
Tablourile sunt adesea transmise între pașii unui flux de lucru ca șiruri sau JSON, mai degrabă decât ca tablouri native. Acest lucru se întâmplă când:
* Primirea de date de la API-uri externe prin HTTP Request
* Procesarea payload-urilor de webhook
* Transmiterea datelor între pașii fluxului de lucru
**Soluție**: Adăugați acest tipar la începutul acțiunii dvs. de cod:
```javascript
export const main = async (params: {
users: any;
}): Promise<object> => {
const { users } = params;
// Handle input that may come as a string or an array
const usersFormatted = typeof users === "string" ? JSON.parse(users) : users;
// Now you can safely work with usersFormatted as an array
return {
users: usersFormatted.map((user) => ({
...user,
activityStatus: String(user.activityStatus).toUpperCase(),
})),
};
};
```
Linia esențială `typeof users === "string" ? JSON.parse(users) : users` verifică dacă intrarea este un șir, o parsează dacă este necesar sau o folosește direct dacă este deja un tablou.
## Extragerea câmpurilor individuale din tablouri
Un webhook poate returna un tablou de forma `answers: [...]`, dar în pașii următori ai fluxului de lucru puteți selecta doar **întregul tablou** — nu și elemente individuale din interiorul lui.
**Soluție**: Adăugați un nod de cod pentru a extrage câmpuri specifice și a le returna ca obiect structurat:
```javascript
export const main = async (params: {
answers: any;
}): Promise<object> => {
const { answers } = params;
// Handle input that may come as a string or an array
const answersFormatted = typeof answers === "string"
? JSON.parse(answers)
: answers;
// Extract specific fields from the array
const firstname = answersFormatted[0]?.text || "";
const name = answersFormatted[1]?.text || "";
return {
answer: {
firstname,
name
}
};
};
```
Nodul de cod returnează un obiect structurat în locul unui tablou. În pașii următori, acum puteți selecta câmpuri individuale precum `answer.firstname` și `answer.name` din selectorul de variabile.
<Tip>
**Vrei să iterezi peste array în loc să extragi câmpuri?** Când un pas Code sau Logic Function returnează un array de nivel superior, îl poți trimite direct într-un [Iterator](/l/ro/user-guide/workflows/capabilities/use-iterator): selectează opțiunea pasului **Whole list** ca intrare pentru Iterator, apoi fă referire la fiecare element cu `{{iterator.currentItem}}` în interiorul buclei. În acest caz nu este nevoie să restructurezi array-ul într-un obiect.
</Tip>
<Tip>
Faceți clic pe pictograma pătrată din dreapta sus a editorului de cod pentru a-l afișa pe tot ecranul — util, deoarece lățimea implicită a editorului este limitată.
</Tip>

Some files were not shown because too many files have changed in this diff Show More