s.a
Stok kartlarında seri numaralarını nasıl ekleyebiliriz.Delphide
stok kartı
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
Re: stok kartı
seri numarasından kastınız
a. stok kodu (farklı ürünler için farklı seriler ile) mu
b. lot/seri no mu (telefonlardaki seri no gibi)
c. baştan sonra 1..x sıra numarası gibi seri no mu gibi
a. stok kodu (farklı ürünler için farklı seriler ile) mu
b. lot/seri no mu (telefonlardaki seri no gibi)
c. baştan sonra 1..x sıra numarası gibi seri no mu gibi
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
Re: stok kartı
Function TersCevir(no:String):String;
var
Cevrilen:String;
i:Integer;
Begin
i:= 0;
Cevrilen := '';
For i := length(no) DownTo 1 Do
Begin
Cevrilen := Cevrilen + no;
End;
Result := Cevrilen;
End;
Function Numarator(no:String):String;
var
Nmr, Temp, Temp1:String;
Temp2:Char;
i, Tmp:Integer;
Begin
nmr := TersCevir(no);
i:= 0;
while i < length(no) Do
Begin
i := i + 1;
if nmr = '9' Then
begin
nmr := '0';
continue;
End
Else
if (nmr < '9') and (nmr >= '0') Then
Begin
Temp := inttostr(StrToInt(nmr) + 1);
Tmp := i;
Break;
end;
if nmr = 'Z' Then
begin
nmr := 'A';
continue;
End
Else
if (nmr < 'Z') or (nmr >= 'A') Then
Begin
Temp := inttostr(ord(nmr[i]));
Temp := intToStr(StrToInt(Temp) + 1);
Temp := Chr(StrToInt(Temp));
Tmp := i;
Break;
end;
End;
i:= 0;
while i < length(no) do
Begin
i := i + 1;
if tmp = i Then
if (temp[1] <= '9') and (temp[1] >= '0') Then
nmr[i] := temp[1]
Else
Begin
nmr[i] := Temp[1];
End;
nmr[i] := nmr[i];
End;
result := TersCevir(nmr);
End;
// kullanımı
var
a:string;
begin
a:=numarator('20'); veya a:=numarator(table1.fieldbyname('sirano').asstring);
var
Cevrilen:String;
i:Integer;
Begin
i:= 0;
Cevrilen := '';
For i := length(no) DownTo 1 Do
Begin
Cevrilen := Cevrilen + no;
End;
Result := Cevrilen;
End;
Function Numarator(no:String):String;
var
Nmr, Temp, Temp1:String;
Temp2:Char;
i, Tmp:Integer;
Begin
nmr := TersCevir(no);
i:= 0;
while i < length(no) Do
Begin
i := i + 1;
if nmr = '9' Then
begin
nmr := '0';
continue;
End
Else
if (nmr < '9') and (nmr >= '0') Then
Begin
Temp := inttostr(StrToInt(nmr) + 1);
Tmp := i;
Break;
end;
if nmr = 'Z' Then
begin
nmr := 'A';
continue;
End
Else
if (nmr < 'Z') or (nmr >= 'A') Then
Begin
Temp := inttostr(ord(nmr[i]));
Temp := intToStr(StrToInt(Temp) + 1);
Temp := Chr(StrToInt(Temp));
Tmp := i;
Break;
end;
End;
i:= 0;
while i < length(no) do
Begin
i := i + 1;
if tmp = i Then
if (temp[1] <= '9') and (temp[1] >= '0') Then
nmr[i] := temp[1]
Else
Begin
nmr[i] := Temp[1];
End;
nmr[i] := nmr[i];
End;
result := TersCevir(nmr);
End;
// kullanımı
var
a:string;
begin
a:=numarator('20'); veya a:=numarator(table1.fieldbyname('sirano').asstring);
Re: stok kartı
bir stok kartının 10 seri numarası olabilir. her bir ürününün satış yaparken seri numarasına göre satış yapıyor.
- pasa_yasar
- Üye
- Mesajlar: 570
- Kayıt: 07 Haz 2004 12:35
Re: stok kartı
tam olarak sorununuz her bir stok kartını birden fazla veya bir seri numarası mı atamak. master detail tablosu ile istediğiniz yapabilirsiniz diye düşünüyorum.
ana tablo
stok ID ,stok adı
detail tablo
Seri ID, STOKID, seri no
ana tablo
stok ID ,stok adı
detail tablo
Seri ID, STOKID, seri no