EDI dosyasını Excel'e aktarmak
Elinizde bir EDI dosyası var ve içindeki kalemleri tabloya dökmek istiyorsunuz — belki muhasebeye göndermek, belki fiyatları kontrol etmek için. EDI satır tabanlı bir yapı; tabloya çevirmek göründüğünden biraz daha dikkat ister.
Neden doğrudan açılmıyor?
Bir .edi dosyasını Excel'e sürüklerseniz her segment tek bir hücreye düşer. Sebep, EDI'nin hiyerarşik olması: bir kalemin bilgisi tek satırda değil, birbirini takip eden birkaç satırda durur.
LIN+1++5410013101234:EN'
IMD+F++:::BITTER CIKOLATA 100G'
QTY+21:480:PCE'
PRI+AAA:1.85'
MOA+203:888.00'
Bu beş satır tek bir tablo satırıdır: ürün kodu, açıklama, miktar, fiyat, tutar. Tabloya çevirmek, LIN gördüğünde yeni satır açıp sonraki segmentleri o satırın sütunlarına yazmak demektir.
Hangi segment hangi sütun?
Tipik bir sipariş veya fatura için eşleme şudur:
| Segment | Sütun | Nereden |
|---|---|---|
LIN | Ürün kodu (GTIN) | 3. elemanın ilk parçası |
IMD | Ürün açıklaması | 3. elemanın son parçası |
QTY | Miktar ve birim | Nitelikçiye göre 21, 12 veya 47 |
PRI | Birim fiyat | AAA net fiyat |
MOA | Satır tutarı | 203 nitelikçisi |
Nitelikçileri atlamamak önemli: bir kalemde birden fazla QTY olabilir ve hangisini istediğinize siz karar vermelisiniz.
Dikkat edilecek noktalar
Kalem sınırını doğru belirleyin. Yeni bir LIN gelene kadar okunan her şey mevcut kaleme aittir. Özet bölümü (UNS'den sonrası) kaleme ait değildir; oradaki MOA+79 satırını kalem tutarı sanmak sık yapılan bir hatadır.
Başlık bilgisini ayrı tutun. Sipariş numarası, tarih ve taraf bilgisi kalem düzeyinde değil belge düzeyindedir. Bunları her satıra kopyalamak isterseniz tabloyu düzleştirmiş olursunuz — bu genellikle istenen şeydir ama bilinçli bir tercih olmalıdır.
Ondalık işaretini koruyun. Excel'in bölgesel ayarı virgül bekliyorsa, noktayla yazılmış 1.85 metin olarak algılanabilir ve toplama işlemleri çalışmaz. CSV oluştururken hedef sistemin ayarını düşünün.
Baştaki sıfırları kaybetmeyin. GTIN gibi kodlar sayı değil metindir. 05410013101234 Excel'de sayıya dönüşürse baştaki sıfır silinir ve kod artık eşleşmez. Sütunu metin olarak biçimlendirmek gerekir.
Her dosya tabloya uygun mu?
Hayır. Kalem listesi taşıyan mesajlar (sipariş, fatura, satış raporu, fiyat kataloğu) doğal olarak tabloya oturur. Ama bir CONTRL teyit mesajını ya da bir nakliye talimatını tabloya çevirmek pek anlamlı olmaz; onların yapısı liste değildir.
Satış raporu (SLSRPT) ve fiyat kataloğu (PRICAT) bu iş için en uygun ikisidir: ikisi de doğrudan "ürün başına bir satır" mantığıyla çalışır.
Pratik yol
Kendiniz ayrıştırıcı yazmadan önce, dosyayı bir görüntüleyicide açıp doğrudan CSV'ye aktarmayı deneyin. Hangi sütunların çıktığını görmek, kendi eşlemenizi yazarken neye ihtiyacınız olduğunu da netleştirir.
Dosyanızı hiçbir yere yüklemeden bunu yapabilirsiniz; dönüşüm tarayıcının içinde çalışabilir ve ticari veriniz cihazınızdan çıkmaz.