Formatka przy wystawianiu dokumentu - HYDRA ?

Zapytania SQL, widoki, Crystal, definicje filtrów, szybkich raportów, wydruków, API, Hydra, .NET

Moderator: mikey

rafal
Posty: 48
Rejestracja: 02 paź 2009, 16:31
Rola: Inny

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: rafal »

Sprobuj dołączyć swoja bibloteke hydry moja jest z wersji 8 więc pewnie to stanowi problem.

radnarock
Posty: 4
Rejestracja: 23 paź 2010, 12:42
Rola: Konsultant CDN XL
Wersja: 9.6

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: radnarock »

Chciałbym zrobić dodatek za pomocą hydry który przed otwarciem okna pozwalającego dodać nowy towar wyświetli okno w którym z wcześniej zdefiniowanych parametrów utworzy kod towaru. Co ma być w tym oknie narazie pomińmy , załużmy że ma tam być textBox w który wpiszemy kod. Da się coś takiego zrobić , a jeżeli tak to jak przekazać wartość do mainWindow aby w polu Kod wyświetliła się wskazana przez nas wartość ?

rafal
Posty: 48
Rejestracja: 02 paź 2009, 16:31
Rola: Inny

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: rafal »

Sprawa jest dosc podobna do callbacka, który już zamieścilem.
przed otwarciem okna pozwalającego dodać nowy towar wyświetli okno

wystarczy spojrzeć na zamieszczony callback z tym ze nie wiem czy da sie to zrobic przez otwarciem okna, wystraczy zrobic to zaraz po otwarciu okna czyli dopisac delegat do zdarzenia JustAfterWindowOpening lub OpenWidnow myśle że każde z tych zdarzeń bedzie dobre.
a jeżeli tak to jak przekazać wartość do mainWindow aby w polu Kod wyświetliła się wskazana przez nas wartość ?
Np tworząc obiekt z danymi do uzupełnienia i przekazując do nowego formularza przez referencje. Po czym wystarczy już odpowiednio ustawić pola z obiketu to wartosci na formularzu towaru. Jeśli nie podołasz to pomogę.

radnarock
Posty: 4
Rejestracja: 23 paź 2010, 12:42
Rola: Konsultant CDN XL
Wersja: 9.6

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: radnarock »

Mam pewien problem z tymi zdarzeniami (wiem, że wybierasz metodą prób i błędów ale może masz jakiś pomysł).

Ogólnie Callback który zrobiłem narazie jest bardzo prosty wyświetla okienko , i wpisuje wartość w pole kod "TEST" , chodzi teraz o to aby wyświetlił to okienko tylko po otwarciu okna. Testowałem zaproponowane przez Ciebie zdarzenie

Kod: Zaznacz cały

mainWindow.OnAfterJustAfterWindowOpening 
ale po jego wykorzystaniu nie wyskakuje okienko, podobnie jak przy wielu innych które sprawdziłem. Okienko pojawia mi się po użyciu

Kod: Zaznacz cały

mainWindow.OnAfterFullRefresh += new TakeEventDelegate(EventLog);
ale to trochę bez sensu z tego kożystać, oraz po

Kod: Zaznacz cały

mainWindow.OnAfterCatchException
ale tu jak rozumiem mamy doczynienia z jakimś wyjątkiem ? Albo coś źle zrozumiałem.

Powróciłem więc do zamieszczonego to przykładu Callbacka i po zostawieniu tylko zdarzenia

Kod: Zaznacz cały

mainWindow.OnAfterCatchException +=new TakeEventDelegate(EventLog);
Callback działa prawidłowo tzn wyświetla okno z limite. Natomiast gdy usuniemy powyższy kod i zostawimy

Kod: Zaznacz cały

mainAcronym.OnAfterMouseDown +=new TakeEventDelegate(EventLog);
mainAcronym.OnAfterSelected +=new TakeEventDelegate(EventLog);
mainAcronym.OnAfterSelected_ORG+=new TakeEventDelegate(EventLog);
to callback nie wyświetla już okna z limitem.

Czy to normalne zachowanie, bo może robie jakis błąd którego nie widzę i dlatego to zdarzenia działają u mnie tak jak działają ? Z góry dzieki za pomoc :)

rafal
Posty: 48
Rejestracja: 02 paź 2009, 16:31
Rola: Inny

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: rafal »

Próbowałeś zdarzenie OnOpenWindow? To zdarzenie zawsze sie wykonuje po otwarciu okna standardowo zawsze z niego korzystam.
Rozumiem że modyfikujesz tylko zamieszczonego przez ze mnie callbacka?
Podeślij mailem to co wyrzezbiłeś to sie przyjrze i może cos wypatrze.

rafal
Posty: 48
Rejestracja: 02 paź 2009, 16:31
Rola: Inny

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: rafal »

To chyba rozwiazuje twoje problemy

Kod: Zaznacz cały

[SubscribeProcedure((Procedures)Procedures.TwrEdycja, "Twr")]
    public class TwrClass : Callback
    {

        public override void Cleanup()
        {

            //throw new NotImplementedException();
        }

        public override void Init()
        {
            //throw new NotImplementedException();
            AddSubscription(true, 0, Events.OpenWindow, new TakeEventDelegate(OnOpenWindow));          
        }

        bool OnOpenWindow(Procedures ProcId, int ControlId, Events Event)
        {
            Runtime.WindowController.UnlockThread();

            Form form = new Form();
            form.ShowDialog();
            Runtime.WindowController.LockThread();
            return true;
        }

    }

radnarock
Posty: 4
Rejestracja: 23 paź 2010, 12:42
Rola: Konsultant CDN XL
Wersja: 9.6

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: radnarock »

Dzięki , to co napisałeś powyżej to własnie to o co mi chodziło. Wszystko działa prawie tak jak powinno tylko natknąłem się na dwa problemy :
1. Zazwyczaj podczas otwierania okna w TwrKarty.Twr_GIDNumer jest ID nowo dodawanego Towaru , lecz czasem zdaża się iż jest tam wpisane 0.
2. Mam takie metody :

Kod: Zaznacz cały

 bool OnOpenWindow(Procedures ProcId, int ControlId, Events Event)
        {
            Runtime.WindowController.UnlockThread();
            
            OknoParametrow okno = new OknoParametrow(s);
            okno.ShowDialog();
            MessageBox.Show(TwrKarty.Twr_Kod);
            Runtime.WindowController.LockThread();
            return true;
        }
W OknoParametrow wybieramy odpowiednie wartości z ComboBox a następnie klikamy przycisk OK, który zapisuje kolejne wartości do code i :

Kod: Zaznacz cały

TwrKarty.Twr_Kod = code;
this.Close();
Jeśli wczystkie operacje wykonam doś szybko tzn. wybór odpowiednich wartości i kliknięcie przycisku OK , to na formatce XL w polu Kod będę miał wartość którą chce tam mieć.
Natomiast jeśli robię to trochę dłużej to wartość nie jest już zapisywana (?) nie pojawia się na formatce a MessageBox.Show(TwrKarty.Twr_Kod);
pokazuje 0.

Jest jakiś sposób żeby temu zaradzić ?

YoSi.PL
Posty: 36
Rejestracja: 09 mar 2010, 11:19
Rola: Administrator CDN XL
Lokalizacja: Kraków
Kontakt:

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: YoSi.PL »

tomek_k pisze:Witam,

Przy próbie importu callback'a otrzymuje taki komunikat: Assembly nie posiada prawidłowego opisu
Z czego to może wynikać? Dodam jeszcze że CDN w wersji 7.1

Miałem podobny błąd kompilując pod VS 2010. Nie miałem czasu szukać przyczyny więc skompilowałem pod VS 2008 i poszło.
Dawno to było ale może komuś się przyda.

elmiq
Posty: 1025
Rejestracja: 23 sie 2010, 10:04
Rola: Administrator CDN XL
Lokalizacja: Warszawa

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: elmiq »

YoSi.PL pisze:
tomek_k pisze:Witam,

Przy próbie importu callback'a otrzymuje taki komunikat: Assembly nie posiada prawidłowego opisu
Z czego to może wynikać? Dodam jeszcze że CDN w wersji 7.1

Miałem podobny błąd kompilując pod VS 2010. Nie miałem czasu szukać przyczyny więc skompilowałem pod VS 2008 i poszło.
Dawno to było ale może komuś się przyda.
W assembly należy dodać:

Kod: Zaznacz cały

[assembly: Hydra.CallbackAssemblyDescription("HYDRA - OPIS", "", "AUTOR", "Wersja", "Wersja XL", "DATA")]
Mateusz Świerkosz

http://elmiq.blogspot.com/

g1712
Posty: 7
Rejestracja: 12 lis 2012, 09:04
Rola: Inny
Wersja: 10

Re: Formatka przy wystawianiu dokumentu - HYDRA ?

Post autor: g1712 »

Ja też miałem taki komunikat:
Assembly nie posiada prawidłowego opisu

Okazało się, że ostatni argument wywołania:
[assembly: Hydra.CallbackAssemblyDescription("HYDRA - OPIS", "", "AUTOR", "Wersja", "Wersja XL", "DATA")],

czyli DATA musi być w formacie dd-MM-yyyy.
Ja go zmieniłem na yyyy-MM-dd i od tego momentu przy próbie zarejestrowania dodatku pojawiał się komunikat.

ODPOWIEDZ