Widget satışlarını seri numarasına göre izleyen bir veritabanım var. Kullanıcılar, alıcı verilerini ve miktarını girerek her widget'ı özel bir istemci programına tarayın. Daha sonra siparişi kesinleştirir. Bunların hepsi kusursuz çalışıyor.
Bazı müşteriler, satın aldıkları widget'ların Excel uyumlu bir elektronik tablosunu ister. Bunu veritabanını sorgulayan ve sonucu mağaza adı ve ilgili verilerle CSV olarak çıkaran bir PHP betiği ile üretiyoruz. Bu da mükemmel çalışıyor.
Notepad veya vi gibi bir metin düzenleyicide açıldığında, dosya şöyle görünür:
"Account Number","Store Name","S1","S2","S3","Widget Type","Date"
"4173","SpeedyCorp","268435459705526269","","268435459705526269","848 Model Widget","2011-01-17"
Görebileceğiniz gibi, seri numaraları vardır (bu durumda iki kez, tüm ikincil diziler aynı değildir) ve uzun sayı dizileridir. Bu dosya Excel'de açıldığında, sonuç şöyle olur:
Account Number Store Name S1 S2 S3 Widget Type Date
4173 SpeedyCorp 2.68435E+17 2.68435E+17 848 Model Widget 2011-01-17
Gördüğünüz gibi, seri numaraları çift tırnak işareti içine alınır. Excel, .csv dosyalarındaki metin niteleyicilere saygı duymuyor gibi görünüyor. Bu dosyaları Access'e içe aktarırken sıfır zorluk yaşıyoruz. Onları metin olarak açarken, hiçbir sorun yok. Ancak Excel, başarısız olmadan bu dosyaları işe yaramaz çöplere dönüştürür. Son kullanıcılara, varsayılan olmayan bir uygulama ile bir CSV dosyası açma sanatı konusunda talimat vermeye çalışmak, yorucu olduğunu söylüyor. Umut var mı Bulamadığım bir ayar var mı? Excel 2003, 2007 ve 2010'da durum böyle görünüyor.
Excel does not seem to respect text qualifiers in .csv files
- çift tırnak, metin niteleyici değildir , verilerinizde virgül kullanmazsanız, verilerinizde virgüllere izin verir, o zaman anlamsızdırlar . Bir CSV dosyasındaki tüm veriler yazılmamıştır, bu nedenle Excel yalnızca büyük seri numaranızın bir sayı olduğunu tahmin edebilir ve bu, Excel'in sayılarını kısaltan 15 basamaklı maksimum hassasiyetine rastladığınız zamandır.