CftClub.ru
Клуб специалистов ЦФТ-Банк

stdio.put_line_buf

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
erl
Участник


Вступление в Клуб: 12.08.2021
СообщениеПт Сен 09, 2022 05:33   stdio.put_line_buf Ответить с цитатой
Полезность: Нет оценки
Здравствуйте!

Есть таблица из 5 записей, например.
Нужно по этим данным отправить excel файл по почте. Каждая строка - один файл. Подскажите пожалуйста, как это можно реализовать?


Я пробовал вызовом другой операции так:
for (select c(distinct(c) :a) in [TABLE] where rownum<=5 )
loop
v_d := c.a;
stdio.put_line_buf('<% PLPCALL [SEND_MAIL](%PARAM%.P_THIS => %VAR%.v_d ) %>');
end loop;

Проблема в этом случае в том, что операция SEND_MAIL обрабатывает 5 раз только последний результат из селекта.
CSmaster
Участник со стажем


Вступление в Клуб: 24.09.2021
СообщениеПт Сен 09, 2022 08:30   Re: stdio.put_line_buf Ответить с цитатой
Полезность: Нет оценки
erl пишет:
Здравствуйте!

Есть таблица из 5 записей, например.
Нужно по этим данным отправить excel файл по почте. Каждая строка - один файл. Подскажите пожалуйста, как это можно реализовать?


Я пробовал вызовом другой операции так:
for (select c(distinct(c) :a) in [TABLE] where rownum<=5 )
loop
v_d := c.a;
stdio.put_line_buf('<% PLPCALL [SEND_MAIL](%PARAM%.P_THIS => %VAR%.v_d ) %>');
end loop;

Проблема в этом случае в том, что операция SEND_MAIL обрабатывает 5 раз только последний результат из селекта.

Здравствуйте. Посмотрите по F12 во что транслируется, вывести отладку. И попробуйте указать all.
Эмиралька
Эксперт


Вступление в Клуб: 09.11.2015
СообщениеВт Сен 13, 2022 18:19   Re: stdio.put_line_buf Ответить с цитатой
Полезность: Нет оценки
erl пишет:
Здравствуйте!

Есть таблица из 5 записей, например.
Нужно по этим данным отправить excel файл по почте. Каждая строка - один файл. Подскажите пожалуйста, как это можно реализовать?


Я пробовал вызовом другой операции так:
for (select c(distinct(c) :a) in [TABLE] where rownum<=5 )
loop
v_d := c.a;
stdio.put_line_buf('<% PLPCALL [SEND_MAIL](%PARAM%.P_THIS => %VAR%.v_d ) %>');
end loop;

Проблема в этом случае в том, что операция SEND_MAIL обрабатывает 5 раз только последний результат из селекта.


Несколько способов. Самый очевидный:
for i = 1 to 5
Runtime.PlayEx("<% PLPCALL [SEND_MAIL](%PARAM%.P_THIS => %VAR%.v_d ) %>")
next 'i
erl
Участник


Вступление в Клуб: 12.08.2021
СообщениеЧт Сен 15, 2022 05:47   Re: stdio.put_line_buf Ответить с цитатой
Полезность: Нет оценки
Спасибо! Проблема решена - передал значение переменной, а не саму переменную.

stdio.put_line_buf('<% PLPCALL [SEND_MAIL](%PARAM%.P_THIS => '''||v_d||''' ) %>');
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru