我見過很的系統,包括OA,ERP,CRM等,在常用的功能當中,從外部導入數據是最常用到的。因為很多客戶需要以excel的形式提供數據,,
這樣的方式我們又如何做呢,
大家最常見的做法可能是這樣的,在需要導入信息的界面提供一個模版,要求客戶參照模塊的形式提供數據,這是最常見的,也是用得最多的一種方式,如下圖所示。。可能只有幾個字段
我不能說這種方式不對。但我只說這種方式對於客戶方來說是最不人性化的,也是最不理合的。不合理在幾個方面
1,客戶方提供的Excel數據有可能是文本文件,然后更名成 xls 結尾的文件
2,客戶方提供的Excel數據的列表頭,如 客戶名稱,姓名 這些他不叫 客戶名稱,可能 客戶NAME 等 其它表頭
3,客戶方提供的Excel數據順序也可能是不固定的
4,客戶方提供的Excel數據有可能是空值,可能有些數據不合理,如手機號,電話等!
5,客戶方提供的Excel數據過大
這些常見的問題,,大家在導入數據時又是如何處理呢???
好了,我就說說我最近在項目中做的導入思路吧
模擬客戶方提供數據:
在點擊導入時我做個層形式,將Excel數據取出來,與我要插入的表結構做一個映射關系!《到這時,大家可能有些印象,這不是就SQL中導入數據的一樣操作嗎?》
是的沒錯,我就是參照了SQL導入數據的實例而做的。。方便之處,大家就不用我說了,這里可能只是沒有做到數據類型的轉換。。
接下來點擊確認保存,如這些數據出現問題,我會給出一個提示:
而到了這里,客戶方就可以根據我提供的錯誤數據明細去排查他給出的Excel數據,這樣不就是客戶方想要的嗎
所有的有關數據出錯明細都打出來讓客戶去下載,,解決上面的幾點客戶方的要求。。
代碼在接下有空的時間給出。。