|
|
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Не нашел документированных вариантов такой кастомизации "от вендора". Варианты от кулибиных типа Update Apex Tabular form with PLSQL преподносят сюрпризы: я не могу "look for the names of the controls, e.g. "f03_0001". Для формы выбран PK = ROWID. Есть в списке полей и реальный ID, но он "show = 0" (т.е. в html не выводится никак). И как мне идентифицировать запись, в которой произошли изменения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:10 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльНе нашел документированных вариантов такой кастомизации "от вендора". Варианты от кулибиных типа Update Apex Tabular form with PLSQL преподносят сюрпризы: я не могу "look for the names of the controls, e.g. "f03_0001". Для формы выбран PK = ROWID. Есть в списке полей и реальный ID, но он "show = 0" (т.е. в html не выводится никак). И как мне идентифицировать запись, в которой произошли изменения? Уверен что никак не выводится? Если поле hidden, это не означает что его нет, и к нему нельзя обратится в PL/SQL блоке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:18 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльНе нашел документированных вариантов такой кастомизации "от вендора". Варианты от кулибиных типа Update Apex Tabular form with PLSQL преподносят сюрпризы: я не могу "look for the names of the controls, e.g. "f03_0001". Для формы выбран PK = ROWID. Есть в списке полей и реальный ID, но он "show = 0" (т.е. в html не выводится никак). И как мне идентифицировать запись, в которой произошли изменения? Изначально не понял вопроса, тебе нужно именно строки в которых произошли изменения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:19 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
blkangel, Вообще-то хотелось бы выявить именно изменившиеся записи. Но 2-м сортом пойдет и так. Я нашел идентификатор в массиве: apex_application.g_frowid(i). Но вот какая фигня - апекс не дает удалить старый процесс ApplyMRU... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:32 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Ага, это решилось - надо было последовательность изменить (не дает удалить только первый процесс) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:39 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Ага! теперь ошибка • ORA-01722: invalid number (Row 1) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:46 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльАга! теперь ошибка • ORA-01722: invalid number (Row 1) Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. ты чекбоксишь строчки? Цикл бежит только по отмеченным записям. у тебя примерно так должно быть. Код: plsql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:51 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
blkangelты чекбоксишь строчки? Цикл бежит только по отмеченным записям. у тебя примерно так должно быть. Код: plsql 1. 2. 3. 4. 5. 6. Не чекбоксю. Юзеру не дозволено удалять строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:54 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдль, Т.е для понимания, отмеченная галочкой строчка, она может быть ROWID=3, а в цикле она встретится на первом витке и оракл попытается сделать как то так Код: plsql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:54 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдльblkangelты чекбоксишь строчки? Цикл бежит только по отмеченным записям. у тебя примерно так должно быть. Код: plsql 1. 2. 3. 4. 5. 6. Не чекбоксю. Юзеру не дозволено удалять строки. Тогда у тебя проблемы :) Тогда тебе необходимо организовывать цикл по другому полю, которое будет всегда заполнено например всегда "1". Или тут ты можешь сделать, так что при изменение записи туда единица писалась и тогда ты решишь проблему "Измененной строчки". :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:58 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
blkangel, чекбоксов перед строками нет. Только поля данных и ячейки со статическим текстом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 16:58 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдльblkangel, чекбоксов перед строками нет. Только поля данных и ячейки со статическим текстом. Я говорю про скрытое "служебное поле". Кстати говоря, ты его лучше id строки заполняй, так меньше гемороя в последствии. а на строчке со статическим текстом, добавь в атрибут. Код: javascript 1. Выделенное красным заменить на заголовок твоего служебного поля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 17:10 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдльblkangelты чекбоксишь строчки? Цикл бежит только по отмеченным записям. у тебя примерно так должно быть. Код: plsql 1. 2. 3. 4. 5. 6. Не чекбоксю. Юзеру не дозволено удалять строки. А может просто юзверу кнопку "Удалить" скрыть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 17:23 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
blkangel, А я разве не могу сравнить текущее содержание поля записи с ячейкой массива и принять решение "изменилась / не изменилась"?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2015, 19:23 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
В общем, я вкурил почти все премудрости кастомной MRU Вот что не вкурил: не срабатывает Код: plsql 1. также как Код: plsql 1. но в моем случае срабатывает Код: plsql 1. Возможно из-за того, что F01 у меня hidden Если ни одно поле не меняется - цикл не стартует. Но если меняется хоть одно поле в одной строке - цикл пробегает по всем записям. В простейшем случае отрабатывает такой блок: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2015, 20:34 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльВ общем, я вкурил почти все премудрости кастомной MRU Вот что не вкурил: не срабатывает Код: plsql 1. также как Код: plsql 1. но в моем случае срабатывает Код: plsql 1. Возможно из-за того, что F01 у меня hidden Если ни одно поле не меняется - цикл не стартует. Но если меняется хоть одно поле в одной строке - цикл пробегает по всем записям. В простейшем случае отрабатывает такой блок: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Мне сложно сказать, не видя структуру табуляра, запроса и т.д. Добавь в начале процедуры вот это, и картина станет более понятной. Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:26 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдль, Строчки поочередно включай :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:27 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдльblkangel, А я разве не могу сравнить текущее содержание поля записи с ячейкой массива и принять решение "изменилась / не изменилась"?.. Можешь, но это лишнее обращение к БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:31 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Коллеги! Спасибо за дельные советы. Но я оценил "за" и "против" и предпочел перенести логику в триггер. (Задача была заполнить одно поле данными, получившимися в результате замысловатого анализа других полей). Я не могу позволить себе длительные изыскания "лучшей практики" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:53 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльКоллеги! Спасибо за дельные советы. Но я оценил "за" и "против" и предпочел перенести логику в триггер. (Задача была заполнить одно поле данными, получившимися в результате замысловатого анализа других полей). Я не могу позволить себе длительные изыскания "лучшей практики" :) Может тогда не триггер? А вычисляемое поле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:55 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
Курдль, В любом случае, это уже вопрос не Апекса :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 09:56 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльНо я оценил "за" и "против" и предпочел перенести логику в триггер. +1 тоже переношу максимально в триггер, чтобы клиент был как можно тоньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 10:05 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
blkangelМожет тогда не триггер? А вычисляемое поле? А что, у табулярной формы есть вычисляемое и сохраняемое поле?!! Тогда я - лох! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 11:03 |
|
||
|
Кастомизация процесса Multi Row Update
|
|||
|---|---|---|---|
|
#18+
КурдльblkangelМожет тогда не триггер? А вычисляемое поле? А что, у табулярной формы есть вычисляемое и сохраняемое поле?!! Тогда я - лох! :) Вычисляемое поле есть в БД (11g) А в табуляре ты его выводить можешь просто. Ты же его не меняешь? А если меняешь, тогда триггер зачем не понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2015, 12:06 |
|
||
|
|

start [/forum/topic.php?fid=50&msg=38868015&tid=1875107]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
183ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
75ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 520ms |

| 0 / 0 |
