13 digitli barcod'tan ürün no ve gramının bulunması

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

13 digitli barcod'tan ürün no ve gramının bulunması

Mesaj gönderen Biltes »

Arkadaşlar kolay gelsin;

Yazdığım bir programda yüzdüm yüzdüm işin sonuna geldim ama bir yerde acaiap derecede takıldım.
Sorunum şu;
(27 00001 00754 4)
Yukarıdaki gibi bir barkod numarasında 2700001 ürünün numarası sonraki 4 kontrol hanesi ve ondan önceki 5 hanede ürünün gramaj bilgilerini veriyor. Şimdi burada yapmam gereken müşteri örnek veriyorum 754 gram domates aldığı zaman kasada bunu kasiyer okuttuğunda sistemin satış esnasında bunu ayırması gerekiyor. yani Baştan ürün numarasını alacak sondan da gramajı alacak ve girilen birim fiyata göre hesaplamayı yapacak.

Çok kötü bir şekilde takıldım sizlerden bu konuda yardımlarınızı bekliyorum. Şimdiden herkese çok teşekkür ederim. Kolay gelsin...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
yanılıyorsun
ürünün numarası 27000001 değil.
ürünün numarası 000001
27 (veya bazı terazilerde 28) ürünün tartıdan geldiğini ve gramaj bilgisi içerdiğini gösteriri.(zannımca kaçıncı 27 veya 28 olması kontrol hanesi ve gramaj hanesini ayırmak için kullanılan bir durum.)
burda okuduğun barkod 27 ile başlıyorsa bunun teraziden geldiğini bileceksin.
ona göre barkodun geri kalan kısmını pars edeceksin...

diğer ürünlerin barkod numaralarını kontrol edersen 27 veya 28 ile başlamadığını göreceksin....
stoklarını tanımlarken de barkod numarası olarak 000001 vereceksin.

kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

Hocam cevap için tşk ederim dediğiniz doğru ürün numarası 00001 27 veya 28 aynen ürünün teraziden geldiğini anlıyorum fakat. Geriye kalan hanelerden bunu barcod okuyucu okuduğu zaman sonuçta komple olarak okuyor bunun içerisinden ürünün numarasını ve gram bilgilerini nasıl alabilirim.

İlgileriniz için çok tşk ederim..
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
true_false
Üye
Mesajlar: 401
Kayıt: 22 Tem 2004 02:03
Konum: sıkıntı çekmişlere yakın bi yerden

Mesaj gönderen true_false »

Kod: Tümünü seç

function TForm1.birim_hesapla(barcode: string): Currency;
var
urun_no,gramaj:string;
birim_fiyat : Currency;
begin
result:=0;
  urun_no := copy(barcode,1,7);
  
  // databasede urun numarası arama işlemin den sonra çıkan değeri
  //  birim fiyat değişkenine ata
  gramaj := copy(barcode,8,5);
  result := strtocurr(gramaj) * birim_fiyat;
end;
kullanımı

Kod: Tümünü seç

urunfiyati:=birim_hesapla(barkod_numarasi);
hocam işni görürmü?
type
Tform1 = class(Tform)
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

Hocam allah razı olsun yaa tam istediğim gibi oldu. Çok tşk ederim acaip ii geldi bu şimdi. Çok saolasın.

Kolay gelsin işlerinizde başarılar dilerim...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Selamlar.

Bu tür uygulamalarda sabit bir yapı kullanırsan yanılırsın zira teraziler değişik karakter sayılarına göre programlanabiliyor o nedenle parametrik yapman en mantıklı çözüm.İlk iki karakter 27,28,29 ve hatta 21,22,23 değerleri de isteğe bağlı programlanabiliyor ve bu karakterler terazi bayrak kodu olarak adlandırılır vs.vs.

Kolay gele..
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

Evet hocam dediğiniz gibi sadece ürün numarasını aldırıyorum kayıt ederken.

Bu arada Stok kartına bu tarz bir ürünü tanımlarken girişi kg olarak çıkışı gr. olarak ve ürünün alış fiyatını tanımlıyoruz tanımlıyoruz. Buraya kadar sorun yok peki her mal alımında bu ürün fiyatı sürekli olarak değişiyorsa eski fiyattan alınan ürünlerde artık yeni fiyattan mı satılacak. Diğer bir örnek hazır tabakta satılan etler her malzeme alımında fiyatları değişiyor ve ürünün üzerindede yazıyor kg fiyatı bu tarz bir olayı stok kartında nasıl girebiliriz yada buna benzer olaylar için nasıl bir yol izlemeliyiz.
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

öncelikle parametrik olsun. kullanıcı hangi yapıyı kullanmak isterse onu kullansın.
burda üç ihtimal var
ilk giren ilk çıkar
ilk giren son çıkar
birde ortalama fiyat
kullanıcıya ögre bunlar değişebiliyor.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Ürün numarası da değişken olabiliyor 5-6 hane şeklinde örneğin digi ve densi terazilerde buna benzer farklılıklar sözkonusu.Fiyatlar konusu işletmenin çalışma şekline göre değişebiliyor tabi, aldığı fiyat ne olursa olsun sabit bir fiyatı olan işletmeler de mevcut buna karşın belirli bir yüzdeyle satış yapan işletmeler de azımsanmayacak ölçüde.Eğer kişiye özel bir yazılım yapılıyorsa bunu kendileriyle istişare ederek çözümlemelisin aksi halde işletmeye göre değişkenlik arzedeceğinden parametrik hale getirmek gerekmekte.

Kolay gele.
Kullanıcı avatarı
Biltes
Üye
Mesajlar: 361
Kayıt: 11 Oca 2005 02:24
Konum: Edirne

Mesaj gönderen Biltes »

Peki hocam; bu üç seçeneğin işlemsel olarak mantalitesi nedir acaba? Mesela ilk giren ilk çıkar yada ,ilk giren son çıkar şeklinde olan bir ürünün takibini nasıl ve neye göre yapabiliriz. Yada bu olayın bir kod örneği varmı acaba incelemek amaçlı. İlginiz için çok tşk ederim...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

elimde öyle hazır bir kod yok ancak
mantık olarak stokları çıkarken önce eski fiyatla girmiş olanlardan çıkarmtan lazım.
biraz çetrefillli bi iş.
atıyorum elinde 5 liradan aldığın 5 adet çekiç var
6 liradan 10 çekiç daha aldın.
vatandaşın birine 6 çekiç sattın.
şimdi ilk giren ilk çıkar dersen çıkan ürünlerden 5 tanesini 5 liradan 1 tanesini de 6 liradan çıkman lazım.
ilk giren son çıkarsa 6 sınıda 6 liradan çıkacaksın. elinde 4 tane 6 liralık 5 tane 5 liralık çekiç kalacak.
eğer ortalama fiyat dersende çekiçleri satarken fiyat 5.66 gibi bişey olması lazım.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Cevapla