[SOLVED] Uruchomienie makra w Base

Użytkowanie programu bazodanowego
kiela
Posty: 5
Rejestracja: wt lip 10, 2012 7:55 am

[SOLVED] Uruchomienie makra w Base

Post autor: kiela »

Witam.
Mam bazę danych, w której mam m. in kwoty (liczby). Chciałbym aby w formularzu który wypełniam dostawić pole, w którym będzie mi się uzupełniała kwota słownie zależna od jednego pola z liczbą. Znalazłem http://juljas.net/linux/tips/openoffice.html makro, które działa (spr. w calcu) ale nie wiem jak je wykorzystać w base. Proszę o pomoc jak wykorzystać makro w base.
OpenOffice 3.1
Awatar użytkownika
quest-88
Posty: 1105
Rejestracja: ndz maja 24, 2009 8:12 pm
Lokalizacja: Zabrze
Kontakt:

Re: Uruchomienie makra w Base

Post autor: quest-88 »

Tzn. czego dokładnie nie wiesz? Nie wiesz czy makro z Calca uruchomi się w Base, czy w ogóle nie możesz znaleźć takiej funkcji w bazie danych?

Jeśli to drugie, to chyba masz za starą wersję pakietu. Nie wiem jak w OpenOffice, ale ja taką możliwość mam w LibreOffice 3.6, a pamiętam że kiedyś to była głośno omawiana nowość.
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.
kiela
Posty: 5
Rejestracja: wt lip 10, 2012 7:55 am

Re: Uruchomienie makra w Base

Post autor: kiela »

Nie wiem jak uruchomić makro (funkcje z parametrem )w bazie.
OpenOffice 3.1
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Uruchomienie makra w Base

Post autor: belstar »

Witam
kiela pisze:Nie wiem jak uruchomić makro (funkcje z parametrem )w bazie.
Ano tak, jak w załączniku
W przykładzie wykorzystałem inną funkcje "Słownie", jak ci nie odpowiada to sobie podmień.

Pozdrawiam
Załączniki
FormularzSłownie.odb
(13.68 KiB) Pobrany 482 razy
LibreOffice 5.1.2.2 Ubuntu 16 LTS
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: Uruchomienie makra w Base

Post autor: belstar »

Kod: Zaznacz cały

sName = obj.Model.Name
Możesz tą linie wyrzucić.
LibreOffice 5.1.2.2 Ubuntu 16 LTS
kiela
Posty: 5
Rejestracja: wt lip 10, 2012 7:55 am

Re: Uruchomienie makra w Base

Post autor: kiela »

Dziękuje :)
OpenOffice 3.1
kiela
Posty: 5
Rejestracja: wt lip 10, 2012 7:55 am

Re: [SOLVED] Uruchomienie makra w Base

Post autor: kiela »

A jak można by wyświetlać wykonanie funkcji czyli liczbę słownie w polu formatowanym? Bo tam jest przykład dla pola etykiety.
OpenOffice 3.1
belstar
Posty: 654
Rejestracja: czw mar 17, 2011 9:08 am

Re: [SOLVED] Uruchomienie makra w Base

Post autor: belstar »

Witam

Proponuje zacząć naukę programowania makr od:
http://wiki.services.openoffice.org/wik ... ASIC_Guide
Zassać znakomitą publikacje Andrew Macro (google powie gdzie).
Zaopatrzyć się w Mri lub Xray.

Co do twojego pytania, trochę lecisz na łatwiznę. Analizując załącznik (makro i zdarzenia formantów), sam na pewno byś do tego doszedł.

Kod: Zaznacz cały

'uzyskujemy dostęp do etykiety o nazwie "Label" znajdującej się na formularzu o indeksie (0)
oLabel = thisComponent.DrawPage.Forms.getbyindex(0).GetByName("Label")
'etyieta ma wyświetlić wynik funkcji slownie
oLabel.label = slownie(obj.getValue)
"Label" jest nazwą formantu, jak byś wstawił "pole formatowane" (usuwając etykietę lub zmieniając jej nazwę) i nazwał je "Label" prawie byłbyś w domu, ale zachowując konwencje i porządek w kodzie, przerobiona linia ma mieć wygląd:

Kod: Zaznacz cały

oFormatField = thisComponent.DrawPage.Forms.getbyindex(0).GetByName("FormatField")
Ponieważ pole formatowane nie ma właściwości Label tylko Text, trzeba to zmienić.

Kod: Zaznacz cały

oFormatField.text = slownie(obj.getValue)
Do przeglądania właściwości i metod obiektów pomocne okaże się korzystanie z Mri lub Xray

Pozdrawiam
LibreOffice 5.1.2.2 Ubuntu 16 LTS
kiela
Posty: 5
Rejestracja: wt lip 10, 2012 7:55 am

Re: [SOLVED] Uruchomienie makra w Base

Post autor: kiela »

Dziękuje za odp. :)
OpenOffice 3.1
ODPOWIEDZ