[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
procedury *.w i *.p
Witam.
Pracuje na Progress ver. 8.3 A na Unix.
Chciałbym się podzielić kilkoma spostrzeżeniami.
1)Spotkałem się ostatnio z ciekawymi problemami przy "łączeniu" procedur
napisanych w odrębnych środowiskach. Procedura UIB *.w wywoływała w pewnym
momencie działania procedurę napisaną w edytorze. Nie było by w tym nic
dziwnego gdyby nie to, że po prawidłowym zakończeniu *.p program wracał do
*.w w "próżnię". Na ekranie nie było widać żadnych obiektów z *.w, chociaż
kursor meldował się w polach, w których powinien. Co ciekawsze jak, ktoś
znał dobrze ramkę z polami na pamięć, to mógł przejść całą procedurę na
ślepo i prawidłowo zakończyć pracę. Oczywiście nasuwa się wniosek, że coś
było ukryte, ale ...
* nie pomagały żadne ENABLE ramek, obiektów
* nie pomagały DISPLAY
* nie pomagały ASSIGN
Po 48 godzinach prób rozwiązanie znalazło się przypadkowo :
* Przed zamknięciem procedury *.p należało każdą ramkę ukryć poprzez
HIDE-FRAME. Nawet jeśli jedna ramka przed zamknięciem programu *.p była
DISABLE a nie HIDDEN to *.w stała w próżni.
Za żadne skarby nie jestem w stanie tego wytłumaczyć. A może ktoś potrafi ?
Czy znacie jeszcze jakieś tak dziwne zachowania przy wywoływaniu się
nawzajem procedur *.w i *.p ?
2) Ostatnio eksperymentowałem z instrukcją BUFFER-COPY. Instrukcja jest
wspaniała, ale jak zwykle nie do końca. Działała mi bardzo sprawnie w
momencie przepisywania zawartości tablicy do bufora zadeklarowanego jako
LIKE ta tablica. Jednak już w drugą stronę, czyli z bufora do tablicy,
Progress meldował dziwne błędy. Oczywiście nie były to błędy spowodowane
NO-LOCK. W końcu zmuszony zostałem do użycie BUFFER-COPY tylko w jedną
stronę. Dziwne ?
Artur Łęczycki
Pioneer Financial Services
artur.leczycki@fsl.com.pl
winmail.dat