編輯導讀:匯入功能是後臺產品必不可少的功能,也是使用頻率最高的功能之一。作為一個後臺產品經理,應該如何設計匯入功能呢?本文作者從自身工作經驗出發,對此進行分析,希望對你有幫助。
對於後臺產品,匯入是系統裡必不可少的功能之一。如何設計好一個匯入功能,瞭解以下幾點就夠啦(如果你覺得不夠,請在評論補充)。
一、如何定義匯入模板首先匯入模板一般是由產品給出,需要率先確定匯入模板的名稱、格式、大小。下面以表格為例:
名稱:模板名稱與模板內容相匹配就行了
格式:常見表格格式為xls、xlsx、csv
其中csv為純文字格式,上傳更快,當上傳檔案需要支援大數量時可以用csv格式,如下所示:
說明:可在匯入之前的頁面或在匯入模板中加入匯入說明,匯入說明一般是對匯入規則的解釋,主要目的是告訴使用者如何正確匯入,避免匯入失敗。
需要注意的一點是,最好支援刪除說明行不影響匯入,匹配表頭就能匯入,以上圖為例就是說把前6行刪掉也不會影響匯入,只能讀取到表頭項;再進一步表頭項缺失也沒事,只要必填表頭能匹配到就行。這樣做的好處是,使用者如果自己整理好了一個excel,他不用把資料貼到模板裡,只用將excel表頭改成與模板一樣就行了,更加方便。
需要注意的另一點是,確定好支援匯入的檔案格式後,可以限制開啟資料夾的格式為支援的格式,方便使用者更快的找到需要匯入的檔案。現在還有很多是全部檔案格式,找個表單找半天。
另另外一點注意模板裡不要帶序號,直接用excel的行號就可以了,提示錯誤資訊時可以直接用行號告知具體位置。
二、匯入後執行時間一般來說都是匯入後立即執行,但是也可能存在定時執行,比如匯入產品價格時,可能提前匯入再在之後某個時間價格才生效。如果是定時生效,需要加上生效時間,並考慮未生效期間內的其他匯入是否會造成影響。
三、匯入覆蓋還是不覆蓋覆蓋:指最新一次匯入的內容會現將已有內容清空再匯入,相當於覆蓋了。
不覆蓋:指最新一次匯入內容已經存在在系統中時,數量型別的資料相加減,非數量型別的資料以最新一條為準;系統中有但是最新匯入內容裡沒有的那部分資料也不會被清空掉。
像匯入庫存資料,最新匯入的一次是覆蓋之前的記錄還是在之前記錄基礎上加減?當然這個要結合業務場景來看,比如我們使用者經常同時使用多個軟體,他們一般先從其他系統中匯出庫存,再匯入進我們系統,那這種情況肯定是要覆蓋前次記錄了,因為他們每次匯入的都是當前的實際庫存,而不是變動的庫存。但是像下單時快捷匯入產品,考慮到我們的下單場景是使用者可能有多個產品清單需要一起下單,多次匯入的時候就適合不覆蓋,相同產品數量累加。
四、分步驟匯入或直接匯入匯入方式一般分為分步驟匯入與直接匯入(匯出也同理)。
分步驟匯入優點是可以匯入很大的資料量,並且更加安全不易造成資料丟失。先將檔案上傳,上傳完成後後端並不會對資料庫進行修改,等匯入時再修改資料庫。我向開發問了下具體實現方法,一種是先把資料放在臨時表裡,這樣可以判斷資料格式是否正確,另一種是先上傳到雲端。
直接匯入優點是更快捷,適用於資料量較小的情況。
如下所示為分步驟匯入:
五、匯入檔案中的重複資料如何處理?這條其實很容易和上面覆蓋、不覆蓋弄混,前面說的是當前匯入批次和原先匯入批次之間的事,這裡說的是同一匯入批次裡行與行的情況,可以分為以下幾種情況:
- 重複資料以最後一條為準
- 重複明細的數量相加
- 重複資料匯入失敗
具體使用場景大家可以想想,在評論裡留言~~~
六、如何確定匯入條數支援匯入的最大條數可以結合業務場景與系統能力確定,比如匯入客戶,如果是SaaS產品,那一般用於使用者首次使用系統時,需要將客戶資料從之前使用的其他系統遷移過來。那我們可以先拉取當前系統上使用者的客戶數量並從大到小排序,再拿這個最大值與開發確認系統能否支援。如果不能支援,能否通過後端分批處理、或調整匯入檔案格式為csv、或前端分步驟操作等方法來曲線報國。
如果實在不行,就只能調整以滿足儘可能多的使用者。我們目標就是能讓大多數使用者可以一次性匯入成功,而不是彈出匯入檔案過大,請分多次匯入的提示條······
七、針對匯入失敗的處理可以分為以下幾種情況:
- 有一條匯入失敗,整個導不進去
- 有一條匯入失敗,只有這一條導不進去,其他都匯入成功
如果匯入內容相互獨立,那麼可以選擇2;如果匯入內容有某種關聯,比如順序不能變,那就得選1。
無論1或2,在匯入失敗時都要做好提示,產品經理需要提前列好匯入失敗的原因給到開發。匯入失敗原因可以正著說,如請輸入必填項客戶名稱;也可以反著說,如客戶名稱不能為空。我建議正著說,因為告知使用者正確的做法,而不是指出使用者的錯誤會讓使用者更爽一些。不過更重要的是要統一,不能一下正著說,一下又反著說。
可以將匯入失敗的資料單獨列在彈窗裡展示,也可以將匯入失敗的部分生成一個excel,並將失敗原因附在excel裡。
如果是彈窗展示失敗原因,又可以分為直接在頁面上修改或者只展示不能修改,無論是哪種都要注意資料很多時對頁面效能的影響。
八、匯入統一性系統內如果有多處匯入,注意匯入頁面、匯入模板樣式統一。對於一些通用的匯入失敗原因,文描也最好一致或依循同樣的規則,比如必填項為空、單元格式錯誤、檔案過大、表頭不匹配等等。
九、匯入記錄由於匯入是批次修改資料的操作,出於安全考慮,一般會有對應的匯入記錄頁面,方便出問題追蹤。
十、匯入完成後的操作如果匯入成功後,還有其他操作,可以在匯入後進行引導,達到操作的流暢性。
十一、小結以上為本人工作經驗總結,希望有幫助到正在設計匯入功能的產品同伴。有想法一定要在評論裡說出來哦,有輸出才有成長!
本文由 @是喻雪 原創釋出於人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash, 基於CC0協議