Предлагаю всем желающим обновиться.
Ссылка для скачивания модуля новая: http://pihel.myjino.ru/files/punbb7.zip
Личный блог. Заметки о программировании и не только
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate", Array("MyClass", "OnBeforeIBlockElementUpdateHandler"));
class MyClass
{
function OnBeforeIBlockElementUpdateHandler(&$arFields)
{
$arFields["DETAIL_TEXT"] = str_replace('src="../../upload/', 'src="/upload/', $arFields["DETAIL_TEXT"]);
}
}
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate", Array("MyClass", "OnBeforeIBlockElementUpdateHandler"));
class MyClass
{
function OnBeforeIBlockElementUpdateHandler(&$arFields)
{
if(!empty($arFields["DETAIL_TEXT"])) {
$arFields["DETAIL_TEXT"] = str_replace('src="../../upload/', 'src="/upload/', $arFields["DETAIL_TEXT"]);
}
}
}
SELECT t1.id, t1.name FROM t1, (SELECT id FROM tmp WHERE tmp.sec_id = t1.id) as t2Но оказывается это ограничение можно обойти в ORACLE. Достаточно оформить подзапрос в функцию, возвращающую таблицу и все отработает без проблем.
SELECT t1.num, t1.name FROM t1, table (virtual_date_table(t1.num, sysdate, sysdate))Функция, возвращающая таблицу:
CREATE OR REPLACE
FUNCTION admin.virtual_date_table(p_num_rows in INTEGER, p_start_date IN DATE, p_end_date IN DATE)
RETURN virtual_date_table_type
IS
l_data virtual_date_table_type := virtual_date_table_type();
l_step NUMBER := 1;
BEGIN
l_step := (p_end_date - p_start_date) / p_num_rows;
FOR i IN 1 .. p_num_rows
LOOP
l_data.extend;
l_data(l_data.count) := p_start_date + i * l_step;
END LOOP;
RETURN l_data;
END;
/
Результат выборки:
num | name 1 | value1 3 | value3 3 | value3 3 | value3