Forum Użytkownikow Subiekt GT
InsERT GT => Subiekt GT => Wątek zaczęty przez: pepe701 w Luty 01, 2012, 09:54:05
-
W magazynie mam ponumerowane półki, regały. Każdy produkt ma swoje miejsce. Zawsze robiłem to tak, że w symoblu towaru wpisywałem np. 01/05/4/23 (grupa regałów/numer regału/numer półki/numer produktu) Mam problem z produktami, których już nie ma i nie będzie, a zajmują "numer produktu", taki numer zaczyna niepotrzebnie rosnąć .
Takie wpisywanie w symbolu jest też trochę uciążliwe, trzeba wycelować w numer, który jest wolny i zaraz po zajętym.
Myślałem, żeby dodać w cechach wszystkie numery półek i towarom je dodawać, a symbolu nie ruszać. Tylko nie mogę wyświetlić w liście towarów kolumny "cechy" oraz wydrukować na etykietach cechy.
Czy jest jakiś sposób na to? Może jest sposób na te cechy, a może coś całkiem innego.
Z góry dzięki za odpowiedź.
-
a moze pola wlasne na poczatek?
-
Ja używam w polach własnych adresów magazynowych - działa dobrze.
-
Dzięki za odpowiedź. Zrozumiałem z pomocy programu, że mogę predefiniować adresy magazynowe. Żeby to zrobić muszę dodać własny słownik. Czy do tego potrzebuję któregoś z dodatków Plus do Subiekta?
-
Ja używam w polach własnych adresów magazynowych - działa dobrze.
Witam serdecznie, mam kilka pytań a propos tego tematu
Czy adresy magazynowe masz zawsze stałe?
U mnie jest tak, że towar w zależności od miejsca na magazynie trafia za każdym razem w inne miejsce. Czy da się to jakoś rozwiązać w subiekcie za pomocą pól własnych?
Chciałabym przy każdej dostawie wpisywać numer miejsc na magazynie, jak to zrobić szybko? Czy da się np. zbiorczo dla towarów z danej FZ przypisać miejsce czy trzeba w każdy produkt osobno wchodzić?
-
Czy jest jakaś możliwość automatycznego skopiowania fragmentu symbolu towaru do jego pola własnego?
Potrzebuję to zrobić tylko dla wybranych towarów.
01/05/4/23 (czerwony fragment)
-
Potrzebny jest algorytm - jakie towary i jaka część ma być skopiowana - a potem zapytanie lub kod sql który to zrealizuje.
-
Problem w tym, że nie znam się na bazach sql. Byłyby to towary z jednej grupy, a kopiowana treść to fragment symbolu - pierwsze 7 znaków.
-
Wiem, że post pod postem, ale chcę odświeżyć temat. Mam prośbę o pomocą. Czy mógłby mi ktoś pomóc z uporządkowaniem symboli w moich towarach, byłbym bardzo wdzięczny. Nie znam się na bazach sql.
-
Napisz jak nazywa się ta grupa, którą chcesz uporządkować.
-
Grupa to "Rowery".
Po skopiowaniu kawałka symbolu do pola własnego "Adres magazynowy". Chciałbym zastąpić stare symbole nowymi, czyli numeracją automatyczną jaka jest w subiekcie (tylko dla towarów z tej grupy). Pierwszy wolny numer teraz to 00258.
-
Dla bezpieczeństwa sprawdź wszystko na kopii bazy lub wcześniej wykonaj kopię bezpieczeństwa !
Zestawienie SQL do przeniesienia pierwszych 7 znaków z symbolu do pola własnego numer 1 (jeśli masz założone inne pole, to trzeba zmienić numer pola na właściwy):
select 'Kopiowanie pierwszych 7 znaków z symbolu towaru do pola własnego numer 1' Operacja
update dbo.tw__Towar
set tw_Pole1 = SUBSTRING(tw_Symbol, 1, 7) -- tw_Pole1 = pole własne Numer: 1
from dbo.tw__Towar
join dbo.sl_GrupaTw on tw_IdGrupa = grt_Id
where grt_Nazwa = 'Rowery'
Zestawienie SQL do nadania nowych, automatycznych symboli dla towarów:
select 'Nadano automatyczne symbole dla towarów z grupy Rowery' Operacja
exec('declare
@twId int,
@nrWolny int,
@nrWolnyStr varchar(20),
@dlugoscAuto int = (select twp_DlugoscAuto from dbo.tw_Parametr)
declare c cursor for
select tw_Id
from dbo.tw__Towar
join dbo.sl_GrupaTw on tw_IdGrupa = grt_Id
where grt_Nazwa = ''Rowery''
order by tw_Symbol
open c
fetch next from c
into @twid
while (@@FETCH_STATUS = 0)
begin
exec dbo.spSub_TwKolejnyWolnyNumerAuto @nrWolny output
set @nrWolnyStr = CAST(@nrWolny as varchar)
update tw__Towar
set tw_Symbol = REPLICATE(''0'', @dlugoscAuto - len(@nrWolnyStr)) + @nrWolnyStr
where tw_Id = @twId
fetch next from c
into @twid
end
close c
deallocate c')
-
Pierwsze zestawienie zadziałało idealnie. Część symbolu skopiowała się do pola własnego.
Natomiast drugie zestawienie nie chce ruszyć. Uruchamiam go, ale nic się nie zmienia.
-
A u mnie działa i się zaczyna... Aby dowiedzieć się co nie działa, należałoby by uruchomić to zestawienia z jakiegoś narzędzia do bazy danych typu SSMS (Management Studio) i zobaczyć jakie błędy wyrzuca, gdyż z Inserta się tego nie dowiemy.
Daj jeszcze zrzut ekranu z parametrami nadawania symboli.
-
Zrzut ekranu w załączniku. Zaraz może spróbuję tym programem coś zdziałać.
-
Pokaż jeszcze wynik poniższego zestawienia:
SELECT [twp_DlugoscAuto] ,[twp_Kolejny] ,[twp_KolejnyWolny]
FROM [dbo].[tw_Parametr]
-
twp_DlugoscAuto twp_Kolejny twp_KolejnyWolny
5 1 265
-
No to nie wiem o co chodzi. Sprawdziłem jeszcze na nowym podmiocie i też bez problemu. Jak chcesz powalczyć to zainstaluj SSMS (http://www.microsoft.com/download/en/details.aspx?id=7011) i wykonaj zestawienie z jego poziomu, jeśli się nie wykona poprawnie to wyświetlą się błędy i powinno być wiadomo co jest nie tak.
-
@dkozlowski, podejrzewam, że robisz próby na SQL 2008 bo po deklaracji zmiennej podajesz jej wartość
declare @dlugoscAuto int = (select twp_DlugoscAuto from dbo.tw_Parametr)
Jeżeli się nie mylę to w niższych wersjach SQL trzeba to było zrobić osobno, czyli:
declare @dlugoscAuto int
set @dlugoscAuto= (select twp_DlugoscAuto from dbo.tw_Parametr)
Sprawdźcie to
-
@birds22, dzięki za podpowiedź, już od dawna wszystko robię na 2008 i nie zwróciłem na to uwagi - zainstalowałem 2005 i rzeczywiście nie przyjmuje takiego zapisu.
@pepe701 - zmodyfikowane zestawienie:
select 'Nadano automatyczne symbole dla towarów z grupy Rowery' Operacja
exec('declare
@twId int,
@nrWolny int,
@nrWolnyStr varchar(20),
@dlugoscAuto int
set @dlugoscAuto = (select twp_DlugoscAuto from dbo.tw_Parametr)
declare c cursor for
select tw_Id
from dbo.tw__Towar
join dbo.sl_GrupaTw on tw_IdGrupa = grt_Id
where grt_Nazwa = ''Rowery''
order by tw_Symbol
open c
fetch next from c
into @twid
while (@@FETCH_STATUS = 0)
begin
exec dbo.spSub_TwKolejnyWolnyNumerAuto @nrWolny output
set @nrWolnyStr = CAST(@nrWolny as varchar)
update tw__Towar
set tw_Symbol = REPLICATE(''0'', @dlugoscAuto - len(@nrWolnyStr)) + @nrWolnyStr
where tw_Id = @twId
fetch next from c
into @twid
end
close c
deallocate c')
-
Wielkie dzięki dla Was za pomoc.
Drugie zestawienie zadziałało i teraz jest idealny porządek. Szkoda, że od początku pracy z Subiektem nie korzystałem z pól własnych. Jest to duże ułatwienie przy dodawaniu nowych towarów.
-
Witam,
prośba o napisanie zapytań:
- wyświetl gdy nie podano producenta
- wyświetl gdy brak długiego opisu
- wyświetl gdy cena sklep 0 zł
- wyświetl gdy cena allegro 0 zł
- wyświetl gdy masa 0
- wyświetl gdy dla jednego produktu podano dwie identyczne cechy, przy czym zapis cechy na potrzeby eksportu poprzez aplikację s2s do Prestashop wygląda następująco
ppwe:Zastosowanie:do wnętrz
ppwe:Zastosowanie:na zewnątrz
cecha - Zastosowanie
wartość - do wnętrz
wartość - na zewnątrz
Chętnie zapłacę. Zdublowane cechy sprawiają, iż produkty nie wyświetlają się poprawnie lub w ogóle ich nie widać w wyszukiwarce.