Bulk aggiunge membri e membri del team, con un'importazione CSV/XLS

Featurekamo-internal
Spegnimento
29 agosto 2026 alle ore 20:21 UTC
Autore
Kamo
Impegno
fb4c71c

Due nuovi schermi accanto ai pulsanti Add esistenti su /account?tab=membri e ?tab=team-members, a /settings/member/bulk-new e /settings/team-member/bulk-new. Entrambi i pulsanti prendono la loro formulazione dalle etichette dei membri/team-member dell'org. La griglia è un foglio di calcolo: una riga per persona, campi come colonne, un bianco fresco riga allegato il momento in cui l'ultimo è digitato in, e un controllo di rimozione su ogni fila ma quella che segue. Sopra di esso siedono le impostazioni l'intero lotto è creato con -- livello di sicurezza (fisso da quale schermo questo è), fuso orario (l'org's default), dipartimento, titolo di lavoro, stato di appartenenza e la casella di posta per attivare, che inizia per i membri del team e fuori per i membri. Nulla viene creato fino a quando "Finished -- Create ..." viene premuto; il pulsante poi gira, e la griglia va inerte fino a quando ogni record è stato risposto. Il successo parziale è il risultato progettato. L'endpoint crea ogni record nel suo proprie transazioni e rapporti su ciascuno, così le righe che sono atterrati crollano e righe che non sono state esattamente dove erano con la ragione attaccata al cella che lo ha causato -- correggerli e finire di nuovo, e solo il resto è tentato. Le e-mail e i nomi utente duplicati sono catturati anche nel browser, quindi il admin li vede mentre ancora la modifica piuttosto che dopo due terzi di un file ha è stato creato. Un nome utente lasciato vuoto mostra il nome che il server molto probabilmente menta; una digitata a mano viene controllata per la disponibilità in quanto viene digitata. "Import ... Lista" riempie la griglia da un CSV/XLS/XLSX e non crea nessuno. Colonna mappatura riutilizza FieldMappingInterface -- lo stesso componente drag-to-connect Importazione Piombo procedura guidata utilizza, che è già generico sulla sua lista di campo di sistema -- dopo un passaggio auto-mappa che corrisponde ai nomi dell'intestazione che un'esportazione HR effettivamente utilizza. Le coercizioni laterali dei membri vivono nel membroBulkFields.ts con test: posizione di lavoro da "Work From Home" / "In Office" / "Hybrid - 3 giorni in ufficio", prefissi e basta contro le liste configurate dell'org, "Last, First" e "Dr. Jane Q. Pubblico" diviso in parti, e-mail minuscole. Due correzioni cadono fuori dalla costruzione su quel componente: FieldMappingInterface ottiene un optional suModifiersChange. La sua divisione e il suo valore i modificatori erano puramente interni, quindi un consumatore ha ricevuto una mappatura il cui virtualFieldId ha nominato una colonna virtuale ma non ha avuto modo di imparare quale scissione prodotto -- ogni "Split Name" l'utente configurato è stato silenziosamente abbandonato quando le righe sono state lette. Il prop è additivo; il mago porta è intatto. L'importazione sempre parses con hasHeaders: true e reattaches fila 1 stesso quando l'amministratore dice che il file non ha nessuno. il falso ramo di parseFile gestisce un euristico che sbucci fila 1 fuori comunque quando sembra intestazione-ish, e poi rapporti hasHeaders: true perché ha sintetizzato le etichette "Field N" -- così facendo eco quel valore di nuovo nel toggle flips su dietro l'amministratore e la prossima ri-parsa mangia un fila. Su un'importazione membro quella riga è una persona che non ottiene mai un account, con niente sullo schermo da notare.

Tutte le modifiche

Come quello che vedi la spedizione?

Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.

Inizia gratis per sempreVisualizza il prezzo