В JS-версии не генерируется отчет со сложным SQL-запросом
Добавлено: 09 мар 2017, 12:12
Добрый день. Переделываю отчет из Flex версии под JS-версию. В нем имеется такой SQL-запрос:
Формирование данного отчета во Flex версии занимало около 2-х минут. В JS версии формирование не завершается вообще.
Единственное что удалось установить, это то, что выполнение останавливается в файле oracle.php
т.е. oci_execute не возвращает результат.
Еще раз повторю, во Flex-версии и в дизайнере базы данных этот же запрос работает.
Код: Выделить всё
SELECT *
FROM
(SELECT h4.h2h_char grup, h2.h2h_parent_id par_id,
h2.h2h_child_id child_id,
nvl(h2.h2h_char, to_char(h2.h2h_date, 'DD.MM.YYYY')) str,
t.STATUS stat
FROM TABLE(PKG_TREE_MANIPULATION.GET_EKD_TREE(2369045, to_char(SYSDATE, 'DD.MM.YYYY'), 1)) t,
ekd_h2h h
,ekd_h2h h1
,ekd_h2h h2
,ekd_h2h h3
,ekd_h2h h4
WHERE t.ID2 = h.h2h_parent_id
AND h.h2h_child_id = h1.h2h_parent_id
AND h1.h2h_child_id = h2.h2h_parent_id
AND h2.h2h_child_id IN (2369051, 2369052, 2369053, 2369054, 13293063)
AND h2.h2h_parent_id = h3.h2h_child_id
AND h3.h2h_char = 'branch' AND h3.h2h_value IS NULL
AND h3.h2h_parent_id = h4.h2h_parent_id AND h4.h2h_child_id = 3748678
ORDER BY h2.h2h_parent_id, h2.h2h_child_id) t
pivot (max (str)
for child_id in (2369051 as code, 2369052 as name, 2369053 as date_beg, 2369054 as date_end, 13293063 as tc_code)
)
ORDER BY grup
Единственное что удалось установить, это то, что выполнение останавливается в файле oracle.php
Код: Выделить всё
public function execute($queryString) {
$result = $this->connect();
if ($result->success) {
$query = oci_parse($this->link, $queryString);
if (!$query || !oci_execute($query)) return $this->getLastErrorResult();
Еще раз повторю, во Flex-версии и в дизайнере базы данных этот же запрос работает.