UNA segmenti: ayırıcılar her zaman aynı değildir

· Dosya UNA ile başlıyorsa varsayılan ayırıcıları unutun — hangi karakterin ne olduğu orada yazar.

EDIFACT ayrıştırıcı yazanların ilk varsayımı şudur: segment sonu ', eleman ayracı +, alt eleman ayracı :. Çoğu dosyada doğrudur — ama garanti değildir.

UNA ne yapar?

Bir dosya UNA ile başlıyorsa, o satır ayırıcıların ne olduğunu tanımlar:


UNA:+.? '

Altı karakterin her biri bir görevi belirler:

SıraKarakterGörev
1:Alt eleman ayracı
2+Eleman ayracı
3.Ondalık işareti
4?Kaçış (release) karakteri
5(boşluk)Ayrılmış, kullanılmıyor
6'Segment sonu

Yukarıdaki örnek varsayılan değerleri tekrar ettiği için görsel olarak bir şey değiştirmez. Ama şöyle bir UNA da geçerlidir:


UNA|*.? ~

Burada eleman ayracı *, segment sonu ~ olur. Varsayılanlara göre yazılmış bir ayrıştırıcı bu dosyayı tek bir dev segment olarak okur.

Ondalık işareti

Üçüncü karakter sık atlanır. Bazı ülkelerde ondalık ayracı virgüldür:


UNA:+,? '

Bu dosyada PRI+AAA:1,85' satırındaki değer bir buçuk değil, bir nokta seksen beştir. Virgülü binlik ayracı sanıp 185 okumak, faturayı yüz kat şişirir.

Pratikte ne yapmalı

karakter uzunluğundadır

Karşınıza gelen dosyada ilk üç harf UNA ise, ayrıştırma mantığınızı çalıştırmadan önce bakılacak yer orasıdır.

İlgili referans

UNB

← Tüm yazılar