mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
nie działa mi OnAfterDelete dla ZMO https://forum.mix-soft.pl/viewtopic.php?f=15&t=2775 |
Strona 1 z 1 |
Autor: | zz [ 2011-02-04, 13:44 ] |
Tytuł: | nie działa mi OnAfterDelete dla ZMO |
Witam. Chcę 'posprzątać' po usuniętym zamówieniu obcym, ale nie działa mi procedura OnAfterDelete. W innych procedurach jest OK. Czy coś robię źle? Kod: int Sub OnAfterDelete(long lId) dispatch xDk xDk = xFactory.NewObject("BDokumentZo") xDk.Load(using "id=%l", lId) string sKodZo=xDk.kod message sKodZo OnAfterDelete = 0 EndSub |
Autor: | rafal [ 2011-02-04, 16:19 ] |
Tytuł: | |
Co chcesz posprzatać? W kodzie wczytujesz do obiektu dokument, którego juz w bazie nie ma. |
Autor: | zz [ 2011-02-04, 16:31 ] |
Tytuł: | |
chcę wyczyścić inne pomocnicze tabele To po co taka procedura, która działa 'inaczej'? <mysli> |
Autor: | rafal [ 2011-02-04, 16:37 ] |
Tytuł: | |
No dobra ale widzę, że chcesz do obiektu wczytać skasowany dokument to się zastanawiam co jest grane. Co rozumiesz przez stwierdzenie nie działa? Nie wykonuje się kod tej procedury czy wywala jakis błąd? |
Autor: | zz [ 2011-02-04, 16:44 ] |
Tytuł: | |
nie wyświetla się (czyli nie przekazuje dalej) kodu ZMO rozumiem, że tego obiektu już nie ma, ale może jakoś dałoby się wynaleźć jego kod? |
Autor: | rafal [ 2011-02-04, 17:19 ] |
Tytuł: | |
W takim razie przechowuj dane w tabelach pomocniczych powiązanie po ID. Dodatkowo widzę, że procedura OnAfterDelete wykonuje się tylko dla wystawionych zamówień. Nie wykonuje się przy kasowaniu zamowień z bufora. |
Autor: | zz [ 2011-02-07, 08:32 ] |
Tytuł: | |
Własnie tak zrobiłem. Zastosowałem takie zapytanie: Kod: delete FROM tab WHERE NOT EXISTS (SELECT id FROM ZO WHERE ZO.id=tab.id) i pomogło (sprawdziłem, że id nadaje się kolejne nawet jeśli wykasujemy rekord). PS. Jest przecież OnAfterBuforDelete. |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |