Скрыть элемент со значением NULL при запуске электронной почты из Oracle APEX

Я разрабатываю приложение с использованием APEX 5.0

Электронное письмо запускается, когда мы нажимаем кнопку. Некоторые элементы имеют нулевое значение, но по-прежнему отображаются в электронном письме, поскольку я их связал. Как скрыть элемент со значением NULL при запуске электронной почты из Oracle APEX. Спасибо


person Ammy Prabhu    schedule 10.03.2017    source источник


Ответы (1)


Отформатируйте основной текст сообщения электронной почты с помощью PLSQL в соответствии с вашими требованиями, а затем установите его в элемент страницы, на который затем можно будет ссылаться в процессе электронной почты с помощью строки подстановки.

Судя по вашим комментариям, похоже, что вы используете тип процесса PL / SQL Code, а не Отправить электронное письмо в процессе отправки.

Допустим, у вас есть 3 элемента страницы, которые могут иметь значения NULL. Измените свой код следующим образом, чтобы отображать в теле элементы со значениями.

DECLARE
  L_BODY   VARCHAR2(32767);
  L_FOOTER VARCHAR2(32767);
  FUNCTION FORMAT_TEXT(
      P_INPUT    IN VARCHAR2,
      P_TEMPLATE IN VARCHAR2)
    RETURN VARCHAR2
  IS
  BEGIN
    IF P_INPUT IS NOT NULL THEN
      RETURN P_TEMPLATE;
    ELSE
      RETURN NULL;
    END IF;
  END FORMAT_TEXT;
BEGIN
  L_BODY   := '<html> Here I give the HTML Code For Example <p>';
  L_BODY   := L_BODY || FORMAT_TEXT(:P1_ITEM, 'My Text 1: ' || :P1_ITEM || '<br>');
  L_BODY   := L_BODY || FORMAT_TEXT(:P2_ITEM, 'My Text 2: ' || :P2_ITEM || '<br>');
  L_BODY   := L_BODY || FORMAT_TEXT(:P3_ITEM, 'My Text 3: ' || :P3_ITEM || '<br>');
  L_BODY   := L_BODY || '</p> </html>';
  L_FOOTER := '</br></br> Go to Link <a href="URL">link</a>';
  APEX_MAIL.SEND(P_TO => '' || :P1_ITEM || ',' || '[email protected]', P_FROM => '[email protected]', P_BODY => L_BODY || L_FOOTER, P_BODY_HTML=> L_BODY || L_FOOTER, P_SUBJ => 'Text ' || :P1_ITEM || ' ] ');
END;
person kapiell    schedule 10.03.2017
comment
Привет, Kapiell, спасибо за ваш ответ. Я новичок в среде Oracle Apex. И я использую формат PLSQL ниже. - person Ammy Prabhu; 11.03.2017
comment
ОБЪЯВИТЬ l_body VARCHAR2 (32767); нижний колонтитул VARCHAR2 (32767); BEGIN l_body: = '‹html› Здесь я привожу HTML-код для примера ‹p› Мой текст' || : P1_ITEM || «‹/P› ‹/html›»; l_footer: = '‹BR› ‹BR› Перейти по ссылке ‹a href=URL› ссылка ‹/a›'; apex_mail.send (p_to = ›'' ||: P1_ITEM || ',' ||'[email protected] ', p_from =›' [email protected] ', p_body = ›l_body || l_footer, p_body_html = ›L_body || l_footer, p_subj =› 'Текст' ||: P1_ITEM || ']'); КОНЕЦ; - person Ammy Prabhu; 11.03.2017
comment
Добро пожаловать, Амрита. Я обновил свой ответ, создаю процедуру условного форматирования текста вашего сообщения электронной почты. - person kapiell; 11.03.2017