Witam,
Czy ktoś z was robił może program który ma dodać jakiś składnik do receptury która istnieje już w systemie? Api nie obsługuje chyba zdarzenia otwarcia receptury i dodania składników lub usunięcia prawda?
Pozdrawiam
Marek
Dodanie składnika do receptury.
Moderator: mikey
- STAY_PJE
- Posty: 651
- Rejestracja: 24 wrz 2009, 12:08
- Rola: Konsultant CDN XL
- Lokalizacja: Warszawa i od Helu do Wawelu
- Kontakt:
Re: Dodanie składnika do receptury.
Robiłem programy "tego typu", czyli takie które dodają coś do bazy wywołując odpowiednie polecenie z poziomu programu. Używam do tego procedur SQL wywyoływanych przez raport typu wykres. Zaletą jest prostota oraz działanie na wszystkich stacjach roboczych bez konieczności instalowania na każdej stacji odrębnych pakietów (czyli zmniejszenie kosztów administacyjnych). NIeznaczą wadą jest konieczność weryfikacji poprawności takiego mechanizmu przy podniesieniu wersji programu. Do tworzenia mechanizmów polecam czystą postać SQL - API są powolne i wymagają dystrybucji utworzonych w ten sposób programów na każdej stacji. Oczywiście ingerować w bazę trzeba z głową.
Re: Dodanie składnika do receptury.
Dzięki za odpowiedź, ale jakie stosujesz sposob weryfikacji tych danych które wprowadzasz? Ja generalnie potrzebuje tylko wstawić nowy składnik receptury do receptury, robię to bezpośrednim insertem do RecElem i jakoś to działa, ale ponieważ nie korzystam z Api to zawsze jest jakiś procent niepewności że coś może się stać...
- STAY_PJE
- Posty: 651
- Rejestracja: 24 wrz 2009, 12:08
- Rola: Konsultant CDN XL
- Lokalizacja: Warszawa i od Helu do Wawelu
- Kontakt:
Re: Dodanie składnika do receptury.
Dość dobre zabezpieczenie przed nieprawidłowościami działania własnych mechanizmów SQL w wyniku zmian struktury tabel przez nową wersję to stosowanie w SELECT i INSERT wskazania każdego pola oddzielnie (Np. "INSERT INTO mojaTabela (a1, a2, a3) select 1,2,3 from" zamiast "INSERT INTO mojaTabela SELECT * from"), przy czym ważne jest aby wyszczególnić wszystkie pola w danej tabeli. Przy takim stylu kodowania zdarzało się, że w nowej wersji programu pojawiały się nowe pola w bazie danyc a inserty działały nadal sprawnie nie powodując negatywnych konsekwencji w programie.
Aby jednak mieć gwarancję że inserty działają dobrze musisz sprawdzić, czy w danej operacji nie biorą jeszcze udział jakieś inne tabele. Najlepiej namierzyć to z poziomu SQL Profiler - dodaj z poziomu programu nowy składnik procedury i sprawdź w dzienniku Profilera jakie tabele i procedury zostały zaangażowane w ten proces.
Aby jednak mieć gwarancję że inserty działają dobrze musisz sprawdzić, czy w danej operacji nie biorą jeszcze udział jakieś inne tabele. Najlepiej namierzyć to z poziomu SQL Profiler - dodaj z poziomu programu nowy składnik procedury i sprawdź w dzienniku Profilera jakie tabele i procedury zostały zaangażowane w ten proces.
Re: Dodanie składnika do receptury.
Recepturogrzebacz pozwalający na różne operacje (jak widać na obrazku) na wielu recepturach hurtem:

