# Refuse a bad file and replace deliberately

Keep accepted work after a refusal, then invalidate the old result by loading a new snapshot.

Source: https://help.smartfact.ai/findbench/guides/replace-and-refuse

Audience: Operator

## Refuse a bad file and replace deliberately

1. **Start a lookup**

   Start a lookup.

   FindBench reads the local reference you choose. It does not fetch stock data or confirm where goods are now. All values in this lesson are synthetic.

2. **Choose the prepared reference CSV**

   Choose the prepared reference CSV.

   This prepared CSV enters the real file chooser. Review the rows and choose the columns before loading. Nothing has been uploaded.

3. **Map the exact code column**

   Map the exact code column.

   Choose Part as the code column. Every value stays exact text, including leading zeroes.

4. **Map the description column**

   Map the description column.

   Choose Text for the descriptions. Different descriptions for one code remain visible.

5. **Map every listed location**

   Map every listed location.

   Choose Bin for locations. Repeated rows are retained, and a blank location stays explicitly not supplied.

6. **Keep the relevant note column**

   Keep the relevant note column.

   Choose Comment for notes. The Ignore column is left out and will not be saved with the reference.

7. **Name the reference**

   Name the reference.

   A clear title appears with the lookup, downloads and saved work. It is your declared context, not a verified authority.

8. **Declare when the reference was prepared**

   Declare when the reference was prepared.

   This date comes from the file owner. Loading it today does not prove it is current.

9. **Load the reviewed reference**

   Load the reviewed reference.

   Load all six mapped rows. The original file and excluded column are discarded; the exact mapped values and row numbers remain.

10. **Read every matching row**

   Read every matching row.

   Look up 000017. Four rows match, including two locations, an identical repeat and a conflicting description. Check every row, not just the first.

11. **Review a replacement reference**

   Review a replacement reference.

   Choosing another reference is deliberate. A pending file does not replace the accepted reference until you load it.

12. **Refuse duplicate CSV headers**

   Refuse duplicate CSV headers.

   The duplicate-header file is rejected by the real strict reader. The accepted reference is kept while the invalid file remains pending.

13. **Keep the accepted reference**

   Keep the accepted reference.

   Cancel the failed replacement. The existing reference remains intact and can be looked up again.

14. **Choose the updated reference**

   Choose the updated reference.

   The prepared replacement lists one row at RACK-Z. Review its context before accepting replacement.

15. **Name the replacement snapshot**

   Name the replacement snapshot.

   Give the new snapshot a clear title. Earlier results will be cleared when this reference replaces the old one.

16. **Load the reviewed reference**

   Load the reviewed reference.

   Load all six mapped rows. The original file and excluded column are discarded; the exact mapped values and row numbers remain.

17. **Read the new snapshot only**

   Read the new snapshot only.

   The old four-row result has been invalidated. This lookup shows the one row in the replacement reference.

[Watch or practise this chapter](https://help.smartfact.ai/findbench/demo?guide=replace-and-refuse&chapter=replace-and-refuse)
