CSV file import করার পরে software “success” দেখালেও data ঠিক এসেছে কি না আলাদা করে দেখতে হয়। বাংলা customer name ভেঙে যেতে পারে, product code-এর প্রথম zero হারাতে পারে বা date উল্টো বুঝতে পারে। CSV নিজে একটি সাধারণ text format; spreadsheet-এর colour, validation rule বা সব column type তার মধ্যে থাকে না। তাই import button চাপার আগে source, field mapping এবং result verification-এর ছোট workflow রাখুন। কয়েক মিনিটের preview বড় data cleanup থেকে বাঁচাতে পারে।
Original file-এর untouched copy রাখুন
প্রথমেই source CSV-এর একটি backup copy আলাদা করুন। কাজের copy খুলে পরিবর্তন করুন এবং filename-এ batch date বা version দিন। কার কাছ থেকে file এসেছে, কোন system থেকে export এবং কত record থাকার কথা লিখে রাখুন। CSV-কে spreadsheet-এ খুলে save করলে automatic conversion হয়ে যেতে পারে। তাই ভুল দেখা দিলে original copy-এর সঙ্গে তুলনা করার সুযোগ থাকতে হবে। Customer data থাকলে shared public folder বা online converter-এ আপলোড করবেন না।
বাংলা text-এর encoding আগে দেখুন
Preview-তে বাংলা অক্ষরের জায়গায় অদ্ভুত symbol দেখলে import থামান। UTF-8 file কীভাবে খোলা হচ্ছে সেটি গুরুত্বপূর্ণ। Microsoft-এর UTF-8 CSV help সরাসরি খোলায় সমস্যা হলে Data menu থেকে Text/CSV import-এর পথ দেখায়। File origin বা encoding নির্বাচন করার সুযোগ থাকলে source অনুযায়ী বেছে নিন। শুধু extension বদলে দিলে broken encoding সেরে যায় না। একটি পরিচিত বাংলা নাম দিয়ে result মিলিয়ে নিন।
Identifier-কে number বানাবেন না
Customer code 00127 একটি identifier; তার সঙ্গে যোগ-বিয়োগ করার দরকার নেই। তাই code, phone, postal code বা দীর্ঘ account reference-এর column text হিসেবে import করা বেশি নিরাপদ। Excel-এর leading zero guidance automatic conversion-এর ঝুঁকি এবং import-এর সময় text type বেছে নেওয়ার বিষয়টি ব্যাখ্যা করে। Zero একবার হারালে display format দিয়ে দেখানো আর original value উদ্ধার করা এক নয়; প্রয়োজন হলে untouched source থেকে আবার শুরু করুন।
Date ও decimal-এর অর্থ লিখে নিন
03/04/2026 মানে 3 April নাকি 4 March? Source ও destination একইভাবে বুঝছে কি না না জানলে অনুমান করবেন না। Import template যে format চায় সেটি অনুসরণ করুন; প্রয়োজনে পরিষ্কার year-month-day value তৈরি করুন, কিন্তু original date-এর অর্থ আগে নিশ্চিত করুন। Amount-এ decimal separator, thousands separator এবং currency আলাদা করে দেখুন। Blank value আর zero একই নয়। Missing balance-এর জায়গায় নিজের থেকে zero বসালে পরের report ভুল হতে পারে।
Column mapping header দেখে করুন
Source file-এর তৃতীয় column সবসময় phone হবে ধরে নেবেন না। Header name দিয়ে customer_name, phone এবং customer_code-এর mapping মিলান। একই header দুবার আছে কি না, required field খালি কি না এবং অতিরিক্ত space আছে কি না দেখুন। Address-এর মধ্যে comma বা quoted text থাকলে preview-তে সেটি একটি cell-এ থাকছে কি না পরীক্ষা করুন। Raw CSV-তে line গুনে record total ধরে নেওয়াও ঠিক নয়; quoted field-এর মধ্যে line break থাকতে পারে।
পাঁচটি sample row দিয়ে trial চালান
Sample-এ একটি বাংলা নাম, leading zero-সহ code, comma-সহ address, blank optional field এবং একটি tricky date রাখুন। এগুলো authorised test environment-এ বা importer-এর dry-run feature-এ পরীক্ষা করুন। Production-এ sample ঢোকালে সেটি কীভাবে চিনবেন ও নিরাপদে rollback করবেন আগে জানুন। একই sample আবার চালালে duplicate তৈরি হয়, নাকি existing record update হয়—এটি test করুন। Upsert মানে কোন field দিয়ে match করছে সেটিও পরিষ্কার থাকা দরকার।
Import-এর আটটি acceptance check
- Original file ও destination-এর প্রয়োজনীয় backup পাওয়া যাচ্ছে কি না দেখুন।
- বাংলা অক্ষর এবং special character preview-তে ঠিক আছে নিশ্চিত করুন।
- Identifier column text হিসেবে আছে এবং leading zero রয়ে গেছে কি না মিলান।
- Date, decimal এবং blank value-এর অর্থ source-এর সঙ্গে তুলনা করুন।
- Required field ও unique identifier-এর missing বা duplicate value ধরুন।
- ছোট trial batch-এ column mapping ও update behaviour পরীক্ষা করুন।
- Accepted, rejected এবং skipped record-এর total reconcile করুন।
- Destination থেকে কয়েকটি record খুলে source-এর সঙ্গে field ধরে মিলান।
Partial failure হলে পুরো file আবার নয়
ধরুন 500 record-এর মধ্যে 480 import হয়েছে, 20 rejected। পুরো file আবার দিলে importer-এর নিয়ম অনুযায়ী duplicate বা unwanted update হতে পারে। Error report থেকে rejected row আলাদা করুন এবং rejection reason ঠিক করুন। Batch identifier ও imported record list রাখলে কোনটি নতুন বোঝা যায়। Successful record-ও ভুল map হয়ে থাকলে নতুন import-এর আগে rollback plan ব্যবহার করুন। শুধু success message বা একটি total দেখে payment, inventory বা customer process চালু করবেন না।
Final result অন্যজনকে review করতে দিন
Business owner বা data ব্যবহারকারীকে কয়েকটি বাস্তব record দেখান। Search করলে বাংলা নাম পাওয়া যাচ্ছে কি না, code ঠিকমতো sort হচ্ছে কি না এবং date filter expected result দিচ্ছে কি না পরীক্ষা করুন। Financial amount থাকলে relevant totals মিলান, কিন্তু total ঠিক মানেই সব row ঠিক নয়। Import settings, mapping, source filename এবং outcome সংক্ষেপে লিখে রাখুন। পরের মাসে একই কাজ করার সময় এই note হবে repeatable recipe, পুরোনো ভুলের পুনরাবৃত্তি নয়।
দ্রুত উত্তর
সাধারণ প্রশ্ন ও উত্তর
CSV-এর প্রথম zero হারালে শুধু cell format বদলালেই হবে?
সবসময় নয়। Original value ইতিমধ্যে বদলে গেলে source copy থেকে text type দিয়ে আবার import করতে হবে।
বাংলা text ভাঙলে file extension বদলাব?
না। Encoding এবং import method যাচাই করুন। UTF-8 source হলে উপযুক্ত Text/CSV import preview দিয়ে বাংলা মিলিয়ে নিন।
কিছু row fail হলে পুরো file আবার চালাব?
আগে importer-এর duplicate ও update behaviour বুঝুন। সাধারণত rejected rows আলাদা করে ঠিক করা এবং batch log মিলিয়ে নেওয়া নিরাপদ।