powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Использование checkbox2
39 сообщений из 39, показаны все 2 страниц
Использование checkbox2
    #38549959
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Передо мной стояла задача реализации группового заполнения (т.е. по кнопке происходит заполнение выбранных строк таблицы данными из итемов). Не смог понять, как привязать процесс к [row selector], поэтому создал apex_item.checkbox2(1, RowID) и работал с ним через apex_application.g_f01. Но с этим чекбоксом не работает встроенный процесс Multi Row Delete (пишет "ORA-06502: PL/SQL: ошибка преобразования символа в число ошибка числа или значения").

Отсюда возникли вопросы:
1. Есть ли возможность перенастроить Multi Row Delete на apex_item.checkbox2?
2. Как можно использовать [row selector] для группового заполнения?

P.S.: Процесс для удаления строк через apex_application.g_f01 написал, но всё же хотелось бы знать ответы на данные вопросы.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38556610
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ни у кого нет идей?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38556791
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

В этом случае встроенные процессы нужно переписать.

Или используете встроенные атрибуты без использования apex_item => сможете привязать процесс к tabular form и там написать нужную обработку (с 4.1).

Или пользуетесь только apex_item => пишите обработку на g_f коллекциях.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38556867
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

1. Каким образом можно переписать встроенные процессы?
2. Каким образом обращаться после этого к [row selector]?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38556921
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый1. Каким образом можно переписать встроенные процессы?
Удаляете стандартные, пишите свои, с insert, update, delete и т.д. запросами.
Данные берете или из g_f или или обращаетесь по алиасам столбцов, в зависимости от указанного выше способа

ВесёлыйКаким образом обращаться после этого к [row selector]?
Я так понял, вам эта информация нужна только в процессе обработки, delete из одной таблицы, insert в другую, скажем, пишите тогда соответствующий процесс с insert и delete.


А вот если вы эту информацию не планируете хранить в таблице, и она вам нужна где-то потом,
тогда в этом же процессе можно записать в её в коллекцию, примерно так:
14576693
Там про validations, с процессом тоже самое, привязываете процесс к Tabular Form, обращаетесь по алиасам, пишите в коллекцию,
потом можно будет к этой информации обращаться через вьюшку apex_collections

Или, если у вас apex_item, из g_f можно по аналогии записать в коллецию
...
Рейтинг: 0 / 0
Использование checkbox2
    #38557027
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВесёлыйНе смог понять, как привязать процесс к [row selector], поэтому создал apex_item.checkbox2(1, RowID)
Так же через g_f он и работает, если переписываете его через apex_item, тогда и обработку нужно переписывать, чтобы кучу всяких проблем в будущем исключить.
А обращаться также через g_f можно, тут когда-то давно приводил примеры 11041925

Но я не рекоммендую использовать g_f.
Если есть возможность, просто напишите обработку через процесс с привязкой к Tabular Form.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38560580
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevУдаляете стандартные, пишите свои, с insert, update, delete и т.д. запросами.
Данные берете или из g_f или или обращаетесь по алиасам столбцов, в зависимости от указанного выше способа

А, т.е. под переписыванием имелась в виду замена стандартных своими, а не их редактирование? :)
...
Рейтинг: 0 / 0
Использование checkbox2
    #38560581
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevНо я не рекоммендую использовать g_f.

Можно поподробней, почему? :)
...
Рейтинг: 0 / 0
Использование checkbox2
    #38561031
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

авторА, т.е. под переписыванием имелась в виду замена стандартных своими, а не их редактирование? :)
Если вы хотите переписать логику row selector, тогда и процесс нужно переписывать.

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

Можно поподробней, почему? :)
Из-за сложности сопровождения

Во-первых, ломается после апгрейдов (индексы смещаются)
Во вторых, может позвонить заказчик, и сказать: нужно добавить такой-то столбец, или поменять порядок столбцов, но высока вероятность, что разработчик, который этим займется, сломает что-нибудь, причем в самом неоржиданном месте может быть обращение к g_f, уже не говоря, о количестве индексов, которые придётся поменять, забудешь в одном месте индекс поправить - появятся новые баги и т.д.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38562775
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevВесёлый,
Вы про групповое заполнение очень абстрактно описали, не сильно понятно, что оно у вас представляет из себя в интерфейсе и в базе, возможно если вы опишите подробно исходную задачу, можно будет посоветовать, что-то поконкретнее и попроще.

На странице есть несколько итемов. В них вбиваются некоторые данные (строки, даты). Нужно, чтобы по кнопке эти данные заполняли соответствующие поля в отменных чекбоксами строках таблицы.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38562784
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

т.е нужно, чтобы checkbox для разных request работал и для заполнения, и для удаления, я так понял.

А в базе что происходит, эта операция только на форме, или заполнение идет сразу в таблицу под tabular form?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38564131
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сразу в таблицу. А для чего может понадобиться делать только на форме?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38564229
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВесёлыйСразу в таблицу. А для чего может понадобиться делать только на форме?
Для заполнения :)

Тогда проще, apex_item не нужен, коллекции тоже.
Привязываете процесс к tabular form, там обращаетесь к стандартному checkbox через алиас столбца,
в зависимости от request (нажатой кнопки) написать или insert (заполнение), или delete (удаление).
Стандартный multi row delete соответственно отключить.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38564270
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev, а, в этом плане... Нет, возможность заполнения по одной строке тоже присутствует.
А как обращаться через алиас столбца? :-[
...
Рейтинг: 0 / 0
Использование checkbox2
    #38564280
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDevСтандартный multi row delete соответственно отключить.

или его даже его не обязательно отключать, если у вас стандартный checkbox, достаточно, чтобы он выполнялся на свою кнопку (удалить).
SvDevПривязываете процесс к tabular form, там обращаетесь к стандартному checkbox через алиас столбца,
А этот привязать к своей кнопке (заполнить)
...
Рейтинг: 0 / 0
Использование checkbox2
    #38564292
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВесёлыйSvDev, а, в этом плане... Нет, возможность заполнения по одной строке тоже присутствует.
А как обращаться через алиас столбца? :-[
При создании процесса, там есть возможность привязать его к tabular form (с 4.1)

В частности для row selector см

APEX$ROW_SELECTOR, APEX$ROW_STATUS
...
Рейтинг: 0 / 0
Использование checkbox2
    #38565604
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev, спасибо :)
Хотя не до конца с синтаксисом разобрался... Разные варианты перебирал, но нужного не нашёл - то все поля в таблице обновляет, то вообще игнорирует...
...
Рейтинг: 0 / 0
Использование checkbox2
    #38565829
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Для For Created and Modified Rows выделение row selector не должно считаться изменением строки.

Поэтому All Submitted Rows Execution Scope выбираете, дальше для каждой строки смотреть :APEX$ROW_SELECTOR, null или не null
...
Рейтинг: 0 / 0
Использование checkbox2
    #38566960
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

А как именно просматривать строки в такой ситуации?
Ну, т.е. для apex_item я использовал

Код: plsql
1.
for i in 1..apex_application.g_f01.count



А тут идей и знаний нет...
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567214
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Он сам их все пройдет, сколько отправлено строк, столько и вызовется раз процесс...
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567243
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

А как привязать update к текущей строке?

Код: plsql
1.
2.
3.
4.
5.
Begin
   if :APEX$ROW_SELECTOR is null then
      update www set CoalMark = :P170_X;
   end if;
End;



Этот код ведь просто обновит поле CoalMark в каждой строке столько раз, сколько чекбоксов отмечено, верно?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567268
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Код: plsql
1.
2.
3.
   if :APEX$ROW_SELECTOR is not null then
      update www set CoalMark = :P170_X and id = :column_name ;
   end if;
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567279
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SvDev,

т.е. в where дописать, не с компьютера пишу
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567305
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

id - это RowID? И что такое column_name?
...
Рейтинг: 0 / 0
Использование checkbox2
    #38567359
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

id - столбец, по которому вы идентифицируете строку таблицы, primary key или rowid не важно
column_name - алиас столбца таблицы в tabular form, который сабмитится (т.е. тип должен быть hidden / text edit / и т.д. ), и который хранит соотв. значение
...
Рейтинг: 0 / 0
Использование checkbox2
    #38568263
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Заработало, спасибо :)
Единственный момент - я поставил у RowID тип hidden и теперь в конце каждой строки report у меня выводится
Код: plsql
1.
" />


Что, если честно, вводит меня в некоторый ступор %)
...
Рейтинг: 0 / 0
Использование checkbox2
    #38568342
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Плюс. после смены типа у RowID перестала работать встроенная функция ApplyMRD
...
Рейтинг: 0 / 0
Использование checkbox2
    #38568490
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делайте rowslelector самым первым столбцом, RowID = hidden - вторым
Раз используете RowID, стандартные процессы тоже делайте на него
В столбцах должны быть указаны source -поля таблицы

Если не получается, пересоздате табличную форму мастером, он сам сделает как надо
...
Рейтинг: 0 / 0
Использование checkbox2
    #38568606
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDevДелайте rowslelector самым первым столбцом, RowID = hidden - вторым
Он и так стоит первым. Более того, его невозможно подвинуть.

SvDevРаз используете RowID, стандартные процессы тоже делайте на него
Стандартные процессы и так привязаны к RowID.

SvDevВ столбцах должны быть указаны source -поля таблицы
Что это такое и где его найти? :-[
...
Рейтинг: 0 / 0
Использование checkbox2
    #38569044
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Reference Table Owner
...
Рейтинг: 0 / 0
Использование checkbox2
    #38569046
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... ,
Reference Table Name
Reference Column Name
...
Рейтинг: 0 / 0
Использование checkbox2
    #38571098
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Поля указаны.
Я попробовал менять тип поля RowID - если удаётся избавиться от " />, то перестаёт работать групповое заполнение, а если оно работает, то " /> неизменно завершает строки.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38571371
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Скорее всего или первые 2 столбца не в том порядке, или от apex_item не избавились где-то, но это все неважно, т.к. пересоздание формы решит любые проблемы - там ведь у вас всё стандартное используется, я так понимаю, теперь.
...
Рейтинг: 0 / 0
Использование checkbox2
    #38639614
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

сколько раз не пересоздавал и в каких формах не использовал - везде всплывают эти символы...
...
Рейтинг: 0 / 0
Использование checkbox2
    #38639703
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Значит должны уже были разобраться после каких конкретно действий они появляются

У вас где-то элементарная ошибка
...
Рейтинг: 0 / 0
Использование checkbox2
    #38639713
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы бы лучше source из запроса того столбца приложили и скриншот со страницы report attributes всех столбцов
...
Рейтинг: 0 / 0
Использование checkbox2
    #38639728
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. нужен:

1. полный код запроса под формой
2. скриншот со страницы report attributes всех столбцов

или сделайте пример на apex.oracle.com, логин и пароль от workspace приложите
...
Рейтинг: 0 / 0
Использование checkbox2
    #38645008
Весёлый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SvDev,

Workspace
VESELYY

Username
A.VESELIY@SIBENUGOL.RU

Password
QazwsX
...
Рейтинг: 0 / 0
Использование checkbox2
    #38645168
SvDev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлый,

Посмотрел, если тип табличной формы на основе ROWID, то тип столбца ROWID выбирается Standard Report Column.
В процессе update делайте where не по rowid, а на уникальные столбцы (например, primary key)
...
Рейтинг: 0 / 0
39 сообщений из 39, показаны все 2 страниц
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Использование checkbox2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]