Forum Użytkownikow Subiekt GT

InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: kasok w Sierpień 08, 2019, 16:14:13

Tytuł: Blokowanie dokumentów do edycji za pośrednictwem sfery
Wiadomość wysłana przez: kasok w Sierpień 08, 2019, 16:14:13
Dzień dobry,

Jako że to mój pierwszy post tutaj, to bardzo miło jest mi tu być, to forum było wielokrotnie dla mnie pomocne w codziennych bataliach z Subiektem i Sferą.

Problem z ktorym się obecnie borykam to blokowanie obiektów -> mam sytuację, w której np. chcę wywołać skutek magazynowy na dokumencie po zakończeniu przyjęcia dostawy towaru, jednak w międzyczasie ten dokument ktoś otworzył na innym stanowisku więc obiekt jest zablokowany do edycji.

Próbowałem to zabezpieczyć, odczytując z tabeli ins_blokada, czy dany dokument jest zablokowany, jednak szybko musiałem ten mechanizm wyłączyć, gdyż z przyczyn 'ezoterycznych' niektóre dokumenty pozostają z wpisem w ins_blokada nawet po zamknięciu, co ciekawe (o ile dobrze pamiętam), w Subiekcie można je otworzyć, ale wtedy blokada przepisuje się na inne stanowisko.

Druga kwestia, to że chciałbym móc nałożyć też blokadę na dokument z poziomu Sfery (w momencie kiedy nasz WMS ma otwartą sesję przyjęcia towaru na magazyn, dobrze żeby dokument zakupu w międzyczasie nie ulegał zmianie).

jedyne co znalazłem w dokumentacji:

Cytuj
Pytanie
Czy zmiana obiektów za pomocą Sfery powoduje ich zablokowanie?
Odpowiedź
W Sferze istnieje mechanizm blokowania obiektu do edycji w czasie edytowania go za pomocą Sfery. Blokada jest otwierana w momencie jakiejkolwiek zmiany obiektu (zmiany któregokolwiek z atrybutów, bądź wywołanie którejkolwiek metody). Polega to na tym, że podczas ustawiania jakiejkolwiek właściwości lub wykonywania metody, obiekt jest blokowany do edycji dla aplikacji systemu GT i innych aplikacji korzystających ze Sfery. Oczywiście jest to sygnalizowane wyjątkiem:


Czy ktoś zna sprawdzony sposób blokowania oraz sprawdzania, czy dokument jest zablokowany?

Serdecznie pozdrawiam,
Kacper Sokołowski
Tytuł: Odp: Blokowanie dokumentów do edycji za pośrednictwem sfery
Wiadomość wysłana przez: dkozlowski w Sierpień 08, 2019, 16:38:15
Ech, batalie powiadasz... Jak zablokować - sam podałeś w cytacie - jak sprawdzić - spróbować zablokować i przechwycić wyjątek...
Tytuł: Odp: Blokowanie dokumentów do edycji za pośrednictwem sfery
Wiadomość wysłana przez: kasok w Wrzesień 25, 2019, 13:05:32
Ok, to takie pytanie: rozumiem że zablokowanie dokumentu nastąpi w momencie wczytania go sferą i zmiany jakiegokolwiek parametru, ale ustanie po zamknięciu dokumentu. Czy jest możliwość, aby tę blokadę utrzymać po zakończeniu działania mojego skryptu (nie chcę trzymać niepotrzebnych instancji Sfery, takich dokumentów, które chciałbym zablokować jest zawsze koło kilkudziesięciu w obiegu)?
Tytuł: Odp: Blokowanie dokumentów do edycji za pośrednictwem sfery
Wiadomość wysłana przez: dkozlowski w Wrzesień 25, 2019, 14:07:48
Oczywiście, że jest taka możliwość, musisz to tylko sam oprogramować.

ps.
Czy nie wystarczy raz uruchomić Sfery i zamknąć dokumenty na końcu skryptu ?

ps2
Przeczytałem "do" zakończenia działania skryptu, a było napisane "po" zakończeniu działania skryptu, w takim razie pozostaje prawdziwa pierwsza odpowiedź - tylko rozwiązanie własne.
Tytuł: Odp: Blokowanie dokumentów do edycji za pośrednictwem sfery
Wiadomość wysłana przez: Paweł Szczygiel w Wrzesień 26, 2019, 08:25:34
Zastanawiam się nad sensem wykorzystania sfery do blokowania edycji. Niedawno uruchamiałem integrator WMS, w którym blokowanie dokumentu obsłużyłem triggerami  - w tym przypadku dokument, który był wysłany do WMS otrzymywał flagę. Trgiggerem obsłużyłem taki proces, w którym dokumenty z flagą WMS nie mogły zostać być modyfikowane.