Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Входной параметр к htp.tabledata  [new]
Dado
Member

Откуда:
Сообщений: 30
Доброго времени суток.
Формирую HTML страничку по по средствам вызова процедур и функций HTP пакета.
Столкнулся с проблемой, на страничке организовываю таблицу, в полях которой располагаю текстовые поля и поля со списком, используется для расписания занятий (семестр, нагрузка и преподаватель)
   htp.tabledata(
                    htf.formselectopen('s1_d')||
                    t_card.raspisanie.profession_test_r_(1,'o',s1_d_,prof)||
                    htf.formselectclose||'Л'||        
                        htf.formtext('n1_d_lect1','3','3',n1_d_.lect1)|| ' / '||'Л'||        
                        htf.formtext('n1_d_lect2','3','3',n1_d_.lect2)||
                        ||' Преподаватель '||
                        htf.formselectopen('pr1_d')||
                        t_card.raspisanie.prepod_test_r_(pr1_d_)||
                        htf.formselectclose||htf.br||

                    htf.formselectopen('s2_d')||
                    t_card.raspisanie.profession_test_r_(1,'o',s2_d_,prof)||
                    htf.formselectclose||'Л'||        
                        htf.formtext('n2_d_lect1','3','3',n2_d_.lect1)|| ' / '||'Л'||        
                        htf.formtext('n2_d_lect2','3','3',n2_d_.lect2)
                        ||' Преподаватель '||
                        htf.formselectopen('pr2_d')||
                        t_card.raspisanie.prepod_test_r_(pr2_d_)||
                        htf.formselectclose                          
                    );

В данном примере получается как на рисунке
Картинка с другого сайта.
Процедуры profession_test_r_ и prepod_test_r_ формируют наполнение для полей со списком, соответственно номеров семестров и преподавателей, возвращают текстовые строки. При указании для дисциплины 4-х записей, по семестрам (см рис.)
Картинка с другого сайта.
все обрабатывается номально, но при попытке указать 5 семестров для дисциплины генерируется ошибка, так как строка передаваема в качестве параметра в htp.tabledata получается длиной в > 41000 символов, а тип входного параметра для значения в htp.tabledata есть varchar2, который ограничен в 32 тыс. с чем то символов.
Может кто сталкивался с подобной задачей, как ее можно разрешить?

PS. Конечно можно открывать новую строку и туда писать 5 и 6 записи о семестрах, но в таблице есть вторая колонка, которую заполняю по другим условиям, и придется извращаться.
9 июл 12, 10:30    [12837211]     Ответить | Цитировать Сообщить модератору
 Re: Входной параметр к htp.tabledata  [new]
Изя Кацман
Member

Откуда: Великий Эксперимент
Сообщений: 2019
   htp.p('<TD>');
                    htp.formselectopen('s1_d');
                    htp.p(t_card.raspisanie.profession_test_r_(1,'o',s1_d_,prof));
                    htp.formselectclose
                    htp.p('Л');
                        htp.formtext('n1_d_lect1','3','3',n1_d_.lect1);
                        htp.p(|| ' / '||'Л');
                        htp.formtext('n1_d_lect2','3','3',n1_d_.lect2);
                        htp.p(' Преподаватель ');
                        htp.formselectopen('pr1_d');
                        htp.p(t_card.raspisanie.prepod_test_r_(pr1_d_));
                        htp.formselectclose;
                        htp.br;

                    htp.formselectopen('s2_d');
                    htp.p(t_card.raspisanie.profession_test_r_(1,'o',s2_d_,prof));
                    htp.formselectclose;
                    htp.p('Л');
                        htp.formtext('n2_d_lect1','3','3',n2_d_.lect1);
                        htp.p(' / '||'Л');
                        htp.formtext('n2_d_lect2','3','3',n2_d_.lect2);
                        htp.p(' Преподаватель ');
                        htp.formselectopen('pr2_d');
                        htp.p(t_card.raspisanie.prepod_test_r_(pr2_d_));
                        htp.formselectclose;
   htp.p('</TD>');
[/quot]
9 июл 12, 11:13    [12837477]     Ответить | Цитировать Сообщить модератору
 Re: Входной параметр к htp.tabledata  [new]
Dado
Member

Откуда:
Сообщений: 30
Спасибо, как говорится: "Все гениальное просто"
9 июл 12, 12:32    [12838077]     Ответить | Цитировать Сообщить модератору
 Re: Входной параметр к htp.tabledata  [new]
Изя Кацман
Member

Откуда: Великий Эксперимент
Сообщений: 2019
Пожауйста, камрад :)
9 июл 12, 12:59    [12838238]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить