Hej
Tworzę bazę z osobami, które wykupiły polisę na życie. Stanąłem teraz przed problemem. Niektórzy płacą w systemach ratalnych i chciałbym, aby pole "Płatność ratalna" wraz z datami było wyszarzone do czasu kliknięcia na stosowne pole wyboru (checkbox "TAK"). Ale najważniejsza funkcja wiąże się z drugim formantem tabeli. Płacenie w ratach nie jest najczęstszym przypadkiem, dlatego chciałbym, aby druga tabela uaktywniała się dopiero po wybraniu rekordu z zaznaczonym polem "TAK".
Czy jest taka możliwość i jak to osiągnąć?
//edycja
Od razu wrzucę resztę pytań.
1. Druga tabela, ta domyślnie wyszarzona. Mam w niej kolumnę "Dni do następnej wpłaty". W "Tabelach" liczby ujemne są na czerwono, ale w formularzu tracą kolor.
2. Czy da się zrobić tak, aby dopiero od "-30" (ostatniego miesiąca) liczba ta była na czerwono? (jeśli się nie da, to pierwszy punkt traci na znaczeniu)
3. Jest jakiś sposób, aby automatycznie wysyłać każdemu klientowi wiadomość, o tym, że zostało mu 30 dni do uregulowania płatności?
Wywołanie drugiego formatu tabeli po wybraniu rekordu
Wywołanie drugiego formatu tabeli po wybraniu rekordu
- Załączniki
-
- baza.odb
- (16.96 KiB) Pobrany 181 razy
Standardowa diagnostyka rozwiązuje 90% problemów typu "wcześniej działało, ale już nie działa".
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Re: Wywołanie drugiego formatu tabeli po wybraniu rekordu
quest-88 pisze:"Płatność ratalna" wraz z datami było wyszarzone do czasu kliknięcia na stosowne pole wyboru (checkbox "TAK").
Kod: Zaznacz cały
Sub Tak_Nie(oEv)
T_N = oEv.Source.Model.State
DataWplaty = oEv.Source.Model.Parent.getByName("Liczba rat")
If T_N = 0 Then
DataWplaty.getByName("Data_wplaty").Enabled = False
Else
DataWplaty.getByName("Data_wplaty").Enabled = True
End If
End Sub
Parę uwag:
Każdy z formantów nazywaj inaczej stosując przyjęte normy - np. w swoim formularzu etykieta pola daty , data wpłaty i data następnej wpłaty mają tą samą nazwę, nie używaj spacji w nazwach formantów (choć można) i polskie litery stosuj tylko w etykietach. Żeby kod nie zgłaszał błędów musiałem twoje nazwy pozmieniać (dostosuj w kodzie lub w nazwach formantów)
Wstawiony kod uczyni ci pole Data_wpłaty niedostępnym i na tej samej zasadzie wyłącz drugie pole z datą.
Zwróć uwagę na poniższą linięquest-88 pisze:Ale najważniejsza funkcja wiąże się z drugim formantem tabeli. Płacenie w ratach nie jest najczęstszym przypadkiem, dlatego chciałbym, aby druga tabela uaktywniała się dopiero po wybraniu rekordu z zaznaczonym polem "TAK".
Kod: Zaznacz cały
oEv.Source.Model.Parent.getByName("jakaś_nazwa")
Zacznij używać MRI, bardzo ułatwia przegląd właściwości i metody obiektów a nawet pisze za ciebie kod.
Pozdrawiam
Ps. Ciekawe twój plik pobrałem a na stronie wyświetlone jest że Nie pobrano
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Re: Wywołanie drugiego formatu tabeli po wybraniu rekordu
belstar, skorzystałem z Twojej wskazówki i pozmieniałem wszystkie pola nadając im TakieANieInneNazwy. Zmodyfikowałem Twoje makro i przypisałem je do checkboksa, ale jego wybór wywołuje błąd
http://forum.openoffice.org/en/forum/vi ... 74&t=49294
Kod: Zaznacz cały
Type: com.sun.star.container.NoSuchElementException
Message: .
Masz to na myśli?Zacznij używać MRI, bardzo ułatwia przegląd właściwości i metody obiektów a nawet pisze za ciebie kod.
http://forum.openoffice.org/en/forum/vi ... 74&t=49294
To dlatego, że usunąłem starą wersję i wysłałem nowszą.Ps. Ciekawe twój plik pobrałem a na stronie wyświetlone jest że Nie pobrano
- Załączniki
-
- baza.odb
- (17.96 KiB) Pobrany 175 razy
Standardowa diagnostyka rozwiązuje 90% problemów typu "wcześniej działało, ale już nie działa".
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Re: Wywołanie drugiego formatu tabeli po wybraniu rekordu
Nie zastosowałeś się do moich porad. W kodzie było LiczbaRat a w formularzu jak na zrzucie, i powtarzające się nazwy.
- Załączniki
-
- baza_a.odb
- (18.92 KiB) Pobrany 164 razy
LibreOffice 5.1.2.2 Ubuntu 16 LTS
Re: Wywołanie drugiego formatu tabeli po wybraniu rekordu
Jest już ciutkę lepiej. A czy to "zwalnianie/blokowanie" opcji można ustawić tylko dla wybranych wierszy? Na razie checkbox odblokowuje pole dla całego formularza, co jest strasznie bezsensowne.
- Załączniki
-
- baza.odb
- (17.6 KiB) Pobrany 167 razy
Standardowa diagnostyka rozwiązuje 90% problemów typu "wcześniej działało, ale już nie działa".
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Przepis na LibreOffice
Uzyskałeś pomoc? Poinformuj innych o sprawdzonym rozwiązaniu i podziękuj. Dodaj [SOLVED] w tytule.
Re: Wywołanie drugiego formatu tabeli po wybraniu rekordu
Sorry że tak późno, ale miałem inne obowiązki. Dodałem nową procedurę i wydaje się że jest to to czego szukasz. Musisz ją uzupełnić o dodatkowe linie reprezentujące dodatkowe formanty do wyłączenia/włączenia, analogicznie jak poprzednio.
- Załączniki
-
- baza_ZmienionoRekord.odb
- (19.12 KiB) Pobrany 219 razy
LibreOffice 5.1.2.2 Ubuntu 16 LTS