środa, 22 lutego 2012

Oracle APEX 4.1.1 Patch Set !


Właśnie ukazał się nowy zestaw poprawek do APEX-a 4.1 (Patchset 4.1.1). Właśnie skończyłem czytać listę poprawionych bugów i szczerze mówiąc nie wiedziałem, że jest ich tak wiele : ) Lista dostępna jest tutaj.



No i najważniejsze, skąd to cudo ściągnąć... : ( dostęp do patchseta jest tylko z pozycji Metalinka czyli musisz mieć wykupiony komercyjny support lub być partnerem Oracle (dzięki temu dowiedziałem za co płacę podpisując umowę partnerską z Oracle ; ). Wszystkim tym, którzy nie posiadają komercyjnego wsparcia zostaje oczekiwanie na nowy wypust pełnej wersji, która będzie zawierała niniejszego patchseta.

środa, 15 lutego 2012

Kolorowanie składni i skróty klawiszowe w APEX

Jakiś czas temu w poście "Skróty klawiszowe w APEX 4.0" pisałem o specjalnym skrypcie do przeglądarki internetowej, dzięki któremu można posługiwać się skrótami klawiszowymi podczas tworzenia aplikacji. Obecnie skrypt ten został jeszcze bardziej udoskonalony. Najważniejsza nowość to kolorowanie składni w polach APEX Buildera.


Po mniej więcej tygodniu używania niniejszego dodatku mogę śmiało stwierdzić że się całkowicie sprawdza. Aby zainstalować skrypt musimy do przeglądarki (Firefox lub Chrom) dołożyć rozszerzenie Greasemonkey lub jakiś jego klon (ja w Chromie używam Tempermonkey). Instalacja jest banalnie prosta polega albo na wczytaniu skryptu jako plik lub przeklejeniu zawartości skryptu do odpowiedniego pola w rozszerzeniu.

No i najważniejsze skąd to wszystko pobrać ? a no z Bloga ApexLib którego twórcą jest Peter Raganitsch. Wielkie dzięki autorowi za jego wkład i publiczne udostępnienie tego miłego narzędzia.

środa, 8 lutego 2012

APEX_MAIL i problem z datą "Wysłano"

Jak wiadomo APEX w wersji 4.1 rozbudował natywną funkcję wysyłki maili o uwierzytelnianie poczty wychodzącej. Wsparcie uwierzytelnaiania otworzyło możliwość korzystanie z zewnetrznych dostawców poczty. Chcąc wreszcie przesiąść się z autorskiego mechanizmu wysyłki poczty opartego o pakiet UTL_SMTP na APEX_MAIL zacząłem jakiś czas temu testy. Generalnie wszystko szło jak po maśle do momentu kiedy przyjrzałem się dokładnie przychodzącej wiadomości.



W wysyłanych wiadomościach brak było daty wysłania. Chmmm.... był to duży problem. Patrząc od strony odbiorcy wiadomości, brak tej daty powodował zupełne zamieszanie w skrzynce odbiorczej, z drugiej zaś strony wiadomość ta mogła być potraktowany przez filtry anty spamowe wiadomo jak. Żeby nie owijać w bawełnę przejdę do kodu żeby przedstawić jak należy postępować aby wiadomość otrzymała Datę wysłania.

Chcąc skonstruować wiadomość mail z APEX API należy w pierwszej kolejność użyć pakietu:
1. APEX_MAIL.SEND_MAIL - Niniejsze API tworzy wiadomość z wszelkimi jej atrybutami tzn. z adresem odbiorcy, tematem, wiadomością, odbioracami CC, BCC itp. Odpalenie tej procedury nie powoduje wysyłki wiadomości a tylko wstawienie jej do kolejki.
2. COMMIT - commit w tym przypadku jest znaczący, tzn brak tego commita własnie był przyczyną pustej daty wysyłki. I teraz ważna informacja: Jeżeli twój mechanizm jest podłączony do APEX-a to możesz ten commit pominnąć a nawet powiem więcej, należy go pominąć, jeżeli jednak uruchamiasz API z tzw. palca w np SQL Developerze lub z własnego JOB-a to jest on niezbędny !
3. APEX_MAIL.PUSH_QUEUE - pakiet który realizuje wysyłkę (zwalnia kolejkę). Nie musisz tego odpalać, APEX ma wbudowany JOB, który co 5 minut sam odpala wysyłkę pod warunkiem że APEX_MAIL.SEND_MAIL było uruchomione z APEX-a. Jeżeli jednak chcesz aby mail wyszedł natychmiast to oczywiście nic nie stoi na przeszkodzie aby dodać do mechanizmu ten punkt.

Podsumowując:
- jeżeli chcesz wysłać maila z narzędzia zewnętrznego takiego jak SQL Developer lub z własnego JOB-a to niezbędny jest commit.
- I ostatni dodatek o którym wcześniej całkowicie zapomniałem. Jeżeli wysyłasz maila z zewnętrznych narzędzi lub JOB-a musisz ustawić tzw. security_group_id, do tego służy pakiet apex_util.set_security_group_id(p_security_group_id => workspace_id);

Jeżeli macie jakieś problemy techniczne to zapraszam na forum

wtorek, 7 lutego 2012

SQL Developer 3.1 pełna wersja już dostępna !

Przed chwilą ukazał się finalna wersja najnowszego SQL Developer-a 3.1.



Ja zaczynam ściągać, jeszcze dziś mam mały development do zrobienia tak więc będę mógł nieco potestować. : )

Najnowsza wersja jest do ściągnięcia tutaj.