EDI dosyalarında sık yapılan hatalar
Bir EDI mesajı reddedildiğinde sebep genellikle iş mantığında değil, sözdiziminde ya da nitelikçi seçiminde olur. Aşağıdakiler pratikte en sık karşılaşılanlar.
1. Kaçış karakteri unutulur
Serbest metin alanlarında (FTX, IMD) geçen +, :, ' karakterleri ayraç sanılır ve satır ortadan bölünür. Doğrusu, bu karakterlerin önüne ? koymaktır.
FTX+AAI+++TESLIMAT 08?:00 SONRASI ← doğru
FTX+AAI+++TESLIMAT 08:00 SONRASI ← satırı bozar
2. Boş elemanlar atlanır
EDIFACT'te anlam konumdan gelir. Kullanılmayan bir eleman silinemez, yerinde boş bırakılır:
NAD+SU+8712345678901::9++ACME FOODS BV ← doğru (çift + boş elemanı korur)
NAD+SU+8712345678901::9+ACME FOODS BV ← firma adı yanlış elemana düşer
3. UNT segment sayısı tutmaz
UNT, mesajdaki segment sayısını taşır ve bu sayıya UNH ile UNT de dahildir. Elle satır eklenip sayı güncellenmezse alıcı sistem mesajı sağlama hatası olarak reddeder.
4. Yanlış tarih formatı kodu
DTM segmentinin üçüncü elemanı formatı söyler. 102 ile 203 karıştırılırsa saat bilgisi tarihin parçası sanılır:
DTM+137:20260117:102' ← 17.01.2026
DTM+137:202601171030:203' ← 17.01.2026 10:30
5. Para birimi eksikliği
PRI ve MOA para birimi taşımaz; birim mesaj düzeyindeki CUX'tan gelir. CUX yoksa tutarlar belirsizdir ve karşı taraf kendi varsayılanını uygular — faturalarda bu, gerçek maliyeti olan bir hatadır.
6. MOA nitelikçileri karıştırılır
Özet bölümünde birden fazla MOA bulunur ve her biri farklı bir toplamdır: 79 mal toplamı, 124 vergi, 77 genel toplam, 9 ödenecek tutar. Nitelikçiye bakmadan ilk MOA'yı toplam sanmak yaygın bir hatadır.
7. Karakter seti uyuşmazlığı
UNB'deki UNOA, yalnızca büyük harf ve rakam kabul eder. Türkçe karakter içeren bir metni UNOA ile göndermek karşı tarafta bozulmaya yol açar; Latin-1 için UNOC kullanılmalıdır.
Nasıl kontrol edilir
Dosyayı ediviewer'da açtığınızda segment etiketleri renklendirilir ve seçtiğiniz satırın her elemanı adlandırılmış olarak listelenir. Bir elemanın beklediğiniz etiketin karşısında durmaması, çoğu zaman yukarıdaki hatalardan birine işaret eder.