[ adopilot @ 08.04.2008. 13:57 ] @
Zapoeo sam oko ručnog terminala.
U njegovim bazama mi je polje art_id (PK artikla) ograničeno na 5 cifara raspon od 00000-99999
U bazi podataka imam arikle koji imaju art_id šestocifreni
Sada imam problem da su za skener isti arikli koji imaju art_id 00001 i 100001
Na skener stane oko 30 000 artikla
Da bi ovi riješio napravio sam jednu među tablicu gdije radim prenumeraciju art_id
sada kada šaljem podatke na skener prvo generišem nove seriske brojeve koji su u rasponu od 00001 - 99999
pa pošaljem takve podatke na skener sa novim art_id ovima
kod povrata podatak sa skenera poredim novi art_id i dobijem orginalni art_id arikla koji može biti preko 99999

Sada bih htjeo napraviti proceduru koja će raditi dopunjavanje ove tablice.
tako što će onda kada art_id za skener dostigne vrijednost 99999 naći najstariji rekord set koji je poslan skeneru i izbrisatiga
te nastaviti insert art_id u opsegu od 00001 do 99999 sa kontrolom da se jedan art_id ne smije ponoviti dva puta jer je on PK artikla

U prilogu vam šaljem moju predloženu među tablicu a ako neko ima boljih ideja neka se predloži.
Code:

CREATE TABLE [dbo].[artscan](
    [art_id] [varchar](5) NOT NULL,
    [id] [int] NOT NULL,
    [skl_id] [int] NOT NULL,
    [RBR] [int] NOT NULL,
    [ts] [datetime] NULL,
 CONSTRAINT [PK_artscan_1] PRIMARY KEY CLUSTERED 
(
    [art_id] ASC,
    [skl_id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]


Gdije je polje art_id predviđeno za ID skenera opseg 0d 00000-99999
a polje ID je PK artikala (nevažno na dužinu)
SKL_ID mi je oznaka skladišta i ono je vezano za art_id u PK tabele jer imam više skladišta a samo na jednom skladištu ne smijem imati 2X isti art_id
RBR sam zamsilio da označim rekord set gdije bi procedura sama dodavala redne brojve kako bi Ista ta procedura znala koji rekord set treba izbrisati
kada broj art_id-ova pređe 99999

Usput radi se o SYMBOLOVIM PDT68000 runim terminalima ako neko ima razvijenu robnu aplikaciju koja radi prijem robe i inventuru neka se
javi da probamo napraviti poslovnu saradnju.

Unaprijed zahavaln
Admir