Avoid creating duplicates
An import either adds every row as a new record or updates records you already hold. The choice is made during mapping, and it is what decides whether re-running a file repairs your data or doubles it.
- Opret altid Nye Poster: every row becomes a new record, whatever already exists. Right for a genuinely new list.
- Opdater Eksisterende Poster (Upsert): a row matching an existing record updates it instead of adding another. Right for refreshing data you already have, and right for re-running a file you imported before.
Matching needs something stable. An update can only find the existing record if you tell it what to match on, and the field you pick decides whether it works. An organisation number or an email address identifies a record reliably. A company name does not: "Acme Ltd", "Acme Limited" and "ACME LTD" are three different strings, and only one of them matches.
Matching on your own identifier
Most workspaces already carry an identifier of their own: a number from the system they moved off, a Danish P-nummer, a customer number the finance team uses. Your workspace can nominate that field, and an import will then treat it as the thing that says two rows are the same company, ahead of organisation number, email and phone number.
Formatting differences are handled for you. A reference written "DK 10 12 83 80 81" in an export and stored as "1012838081" here is one value, not two.
Two rules keep it safe, and both are deliberate:
- A blank is never a match. Two records that both leave the identifier empty are not the same company. A row with nothing in that field falls back to the ordinary matching instead.
- A value that several records already use will never link automatically. If three of your customers carry the same number, nothing can tell which one an incoming row means, so the row goes to review with those records listed rather than being merged into a guess.
The second rule is worth testing before a large import. If a lot of rows come back for review, the identifier is less unique in your own data than you expect, and cleaning that up first saves far more time than it costs.
You name that field yourself, under Hvad identificerer en post in workspace settings: see Choose the field that identifies one of your records. Once it is named, mapping a column to it is a linking strategy on its own, even in a file that carries nothing else the importer recognises.
Reviewing rows in the new import
In the new import, the match review shows source values alongside each row, including names and contact details even when those columns are not mapped. Use Vis kilderække to inspect the other non-empty source values. Values marked Ikke tilknyttet are for reference; they are not included as mapped fields in the import.
Large sections are paged. Næste and Forrige let you reach every row, and the range shows where you are in that section. The totals still cover the whole file.
A row without a match means the mapped values did not identify an existing record. It does not mean every identifying column was mapped correctly. Check the source values and return with Tilbage til tilknytninger if you need to correct the mapping before continuing.
It already happened
If an import has produced duplicates, do not just delete the new records: some may have picked up notes, activities or emails since they arrived. Use the duplicate detection built into the customer and contact lists, which finds matching records and merges them so the history from both survives.
Then fix the cause before importing again. It is almost always one of two things: the run was set to always create new when it should have been set to update, or it was set to update but matched on a name.
Before any repeat import, run five rows and confirm they updated the records you expected instead of creating fresh ones.
Var det her nyttigt?