public function GetHistoryList($arOrder = array("ID" => "DESC"), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array()) { global $DB; if (count($arSelectFields) <= 0) { $arSelectFields = array("ID", "MODULE_ID", "ENTITY", "DOCUMENT_ID", "NAME", "DOCUMENT", "MODIFIED", "USER_ID"); } if (count(array_intersect($arSelectFields, array("MODULE_ID", "ENTITY", "DOCUMENT_ID"))) > 0) { if (!in_array("MODULE_ID", $arSelectFields)) { $arSelectFields[] = "MODULE_ID"; } if (!in_array("ENTITY", $arSelectFields)) { $arSelectFields[] = "ENTITY"; } if (!in_array("DOCUMENT_ID", $arSelectFields)) { $arSelectFields[] = "DOCUMENT_ID"; } } if (array_key_exists("DOCUMENT_ID", $arFilter)) { $d = CBPHelper::ParseDocumentId($arFilter["DOCUMENT_ID"]); $arFilter["MODULE_ID"] = $d[0]; $arFilter["ENTITY"] = $d[1]; $arFilter["DOCUMENT_ID"] = $d[2]; } static $arFields = array("ID" => array("FIELD" => "H.ID", "TYPE" => "int"), "MODULE_ID" => array("FIELD" => "H.MODULE_ID", "TYPE" => "string"), "ENTITY" => array("FIELD" => "H.ENTITY", "TYPE" => "string"), "DOCUMENT_ID" => array("FIELD" => "H.DOCUMENT_ID", "TYPE" => "string"), "NAME" => array("FIELD" => "H.NAME", "TYPE" => "string"), "DOCUMENT" => array("FIELD" => "H.DOCUMENT", "TYPE" => "string"), "MODIFIED" => array("FIELD" => "H.MODIFIED", "TYPE" => "datetime"), "USER_ID" => array("FIELD" => "H.USER_ID", "TYPE" => "int"), "USER_NAME" => array("FIELD" => "U.NAME", "TYPE" => "string", "FROM" => "INNER JOIN b_user U ON (H.USER_ID = U.ID)"), "USER_LAST_NAME" => array("FIELD" => "U.LAST_NAME", "TYPE" => "string", "FROM" => "INNER JOIN b_user U ON (H.USER_ID = U.ID)"), "USER_SECOND_NAME" => array("FIELD" => "U.SECOND_NAME", "TYPE" => "string", "FROM" => "INNER JOIN b_user U ON (H.USER_ID = U.ID)"), "USER_LOGIN" => array("FIELD" => "U.LOGIN", "TYPE" => "string", "FROM" => "INNER JOIN b_user U ON (H.USER_ID = U.ID)")); $arSqls = CBPHelper::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields); $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]); if (is_array($arGroupBy) && count($arGroupBy) == 0) { $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_history H " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!1!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); if ($arRes = $dbRes->Fetch()) { return $arRes["CNT"]; } else { return False; } } $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_history H " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } if (strlen($arSqls["ORDERBY"]) > 0) { $strSql .= "ORDER BY " . $arSqls["ORDERBY"] . " "; } if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) <= 0) { $strSql_tmp = "SELECT COUNT('x') as CNT " . "FROM b_bp_history H " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql_tmp .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql_tmp .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>"; $dbRes = $DB->Query($strSql_tmp, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); $cnt = 0; if (strlen($arSqls["GROUPBY"]) <= 0) { if ($arRes = $dbRes->Fetch()) { $cnt = $arRes["CNT"]; } } else { // рнкэйн дкъ MYSQL!!! дкъ ORACLE дпсцни йнд $cnt = $dbRes->SelectedRowsCount(); } $dbRes = new CDBResult(); //echo "!2.3!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes->NavQuery($strSql, $cnt, $arNavStartParams); } else { if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) > 0) { $strSql .= "LIMIT " . intval($arNavStartParams["nTopCount"]); } //echo "!3!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); } $dbRes = new CBPHistoryResult($dbRes, $this->useGZipCompression); return $dbRes; }
public static function GetList($arOrder = array("ID" => "DESC"), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array()) { global $DB; if (count($arSelectFields) <= 0) { $arSelectFields = array("ID", "WORKFLOW_ID", "ACTIVITY", "ACTIVITY_NAME", "MODIFIED", "OVERDUE_DATE", "NAME", "DESCRIPTION", "PARAMETERS"); } static $arFields = array("ID" => array("FIELD" => "T.ID", "TYPE" => "int"), "WORKFLOW_ID" => array("FIELD" => "T.WORKFLOW_ID", "TYPE" => "string"), "ACTIVITY" => array("FIELD" => "T.ACTIVITY", "TYPE" => "string"), "ACTIVITY_NAME" => array("FIELD" => "T.ACTIVITY_NAME", "TYPE" => "string"), "MODIFIED" => array("FIELD" => "T.MODIFIED", "TYPE" => "datetime"), "OVERDUE_DATE" => array("FIELD" => "T.OVERDUE_DATE", "TYPE" => "datetime"), "NAME" => array("FIELD" => "T.NAME", "TYPE" => "string"), "DESCRIPTION" => array("FIELD" => "T.DESCRIPTION", "TYPE" => "string"), "PARAMETERS" => array("FIELD" => "T.PARAMETERS", "TYPE" => "string"), "IS_INLINE" => array("FIELD" => "T.IS_INLINE", "TYPE" => "string"), "STATUS" => array("FIELD" => "T.STATUS", "TYPE" => "int"), 'DOCUMENT_NAME' => array("FIELD" => "T.DOCUMENT_NAME", "TYPE" => "string"), "USER_ID" => array("FIELD" => "TU.USER_ID", "TYPE" => "int", "FROM" => "INNER JOIN b_bp_task_user TU ON (T.ID = TU.TASK_ID)"), "USER_STATUS" => array("FIELD" => "TU.STATUS", "TYPE" => "int", "FROM" => "INNER JOIN b_bp_task_user TU ON (T.ID = TU.TASK_ID)"), "WORKFLOW_TEMPLATE_ID" => array("FIELD" => "WS.WORKFLOW_TEMPLATE_ID", "TYPE" => "int", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), "MODULE_ID" => array("FIELD" => "WS.MODULE_ID", "TYPE" => "string", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), "ENTITY" => array("FIELD" => "WS.ENTITY", "TYPE" => "string", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), "DOCUMENT_ID" => array("FIELD" => "WS.DOCUMENT_ID", "TYPE" => "string", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), "WORKFLOW_TEMPLATE_NAME" => array("FIELD" => "WT.NAME", "TYPE" => "string", "FROM" => array("INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)", "INNER JOIN b_bp_workflow_template WT ON (WS.WORKFLOW_TEMPLATE_ID = WT.ID)")), "WORKFLOW_TEMPLATE_TEMPLATE_ID" => array("FIELD" => "WT.ID", "TYPE" => "int", "FROM" => array("INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)", "INNER JOIN b_bp_workflow_template WT ON (WS.WORKFLOW_TEMPLATE_ID = WT.ID)")), 'WORKFLOW_STATE' => array("FIELD" => "WS.STATE_TITLE", "TYPE" => "string", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), 'WORKFLOW_STARTED' => array("FIELD" => "WS.STARTED", "TYPE" => "datetime", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)"), 'WORKFLOW_STARTED_BY' => array("FIELD" => "WS.STARTED_BY", "TYPE" => "int", "FROM" => "INNER JOIN b_bp_workflow_state WS ON (T.WORKFLOW_ID = WS.ID)")); $arSqls = CBPHelper::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields); $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]); if (is_array($arGroupBy) && count($arGroupBy) == 0) { $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_task T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); if ($arRes = $dbRes->Fetch()) { return $arRes["CNT"]; } else { return False; } } $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_task T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } if (strlen($arSqls["ORDERBY"]) > 0) { $strSql .= "ORDER BY " . $arSqls["ORDERBY"] . " "; } if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) <= 0) { $strSql_tmp = "SELECT COUNT('x') as CNT " . "FROM b_bp_task T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql_tmp .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql_tmp .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } $dbRes = $DB->Query($strSql_tmp, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); $cnt = 0; if (strlen($arSqls["GROUPBY"]) <= 0) { if ($arRes = $dbRes->Fetch()) { $cnt = $arRes["CNT"]; } } else { $cnt = $dbRes->SelectedRowsCount(); } $dbRes = new CDBResult(); $dbRes->NavQuery($strSql, $cnt, $arNavStartParams); } else { if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) > 0) { $strSql .= "LIMIT " . intval($arNavStartParams["nTopCount"]); } $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); } $dbRes = new CBPTaskResult($dbRes); return $dbRes; }
public function GetTemplatesList($arOrder = array("ID" => "DESC"), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array()) { global $DB; if (count($arSelectFields) <= 0) { $arSelectFields = array("ID", "MODULE_ID", "ENTITY", "DOCUMENT_TYPE", "AUTO_EXECUTE", "NAME", "DESCRIPTION", "TEMPLATE", "PARAMETERS", "VARIABLES", "CONSTANTS", "MODIFIED", "USER_ID", "ACTIVE", "IS_MODIFIED"); } if (count(array_intersect($arSelectFields, array("MODULE_ID", "ENTITY", "DOCUMENT_TYPE"))) > 0) { if (!in_array("MODULE_ID", $arSelectFields)) { $arSelectFields[] = "MODULE_ID"; } if (!in_array("ENTITY", $arSelectFields)) { $arSelectFields[] = "ENTITY"; } if (!in_array("DOCUMENT_TYPE", $arSelectFields)) { $arSelectFields[] = "DOCUMENT_TYPE"; } } if (array_key_exists("DOCUMENT_TYPE", $arFilter)) { $d = CBPHelper::ParseDocumentId($arFilter["DOCUMENT_TYPE"]); $arFilter["MODULE_ID"] = $d[0]; $arFilter["ENTITY"] = $d[1]; $arFilter["DOCUMENT_TYPE"] = $d[2]; } if (array_key_exists("AUTO_EXECUTE", $arFilter)) { $arFilter["AUTO_EXECUTE"] = intval($arFilter["AUTO_EXECUTE"]); if ($arFilter["AUTO_EXECUTE"] == CBPDocumentEventType::None) { $arFilter["AUTO_EXECUTE"] = 0; } elseif ($arFilter["AUTO_EXECUTE"] == CBPDocumentEventType::Create) { $arFilter["AUTO_EXECUTE"] = array(1, 3, 5, 7); } elseif ($arFilter["AUTO_EXECUTE"] == CBPDocumentEventType::Edit) { $arFilter["AUTO_EXECUTE"] = array(2, 3, 6, 7); } elseif ($arFilter["AUTO_EXECUTE"] == CBPDocumentEventType::Delete) { $arFilter["AUTO_EXECUTE"] = array(4, 5, 6, 7); } else { $arFilter["AUTO_EXECUTE"] = array(-1); } } static $arFields = array("ID" => array("FIELD" => "T.ID", "TYPE" => "int"), "MODULE_ID" => array("FIELD" => "T.MODULE_ID", "TYPE" => "string"), "ENTITY" => array("FIELD" => "T.ENTITY", "TYPE" => "string"), "DOCUMENT_TYPE" => array("FIELD" => "T.DOCUMENT_TYPE", "TYPE" => "string"), "AUTO_EXECUTE" => array("FIELD" => "T.AUTO_EXECUTE", "TYPE" => "int"), "NAME" => array("FIELD" => "T.NAME", "TYPE" => "string"), "DESCRIPTION" => array("FIELD" => "T.DESCRIPTION", "TYPE" => "string"), "TEMPLATE" => array("FIELD" => "T.TEMPLATE", "TYPE" => "string"), "PARAMETERS" => array("FIELD" => "T.PARAMETERS", "TYPE" => "string"), "VARIABLES" => array("FIELD" => "T.VARIABLES", "TYPE" => "string"), "CONSTANTS" => array("FIELD" => "T.CONSTANTS", "TYPE" => "string"), "MODIFIED" => array("FIELD" => "T.MODIFIED", "TYPE" => "datetime"), "USER_ID" => array("FIELD" => "T.USER_ID", "TYPE" => "int"), "SYSTEM_CODE" => array("FIELD" => "T.SYSTEM_CODE", "TYPE" => "string"), "ACTIVE" => array("FIELD" => "T.ACTIVE", "TYPE" => "string"), "IS_MODIFIED" => array("FIELD" => "T.IS_MODIFIED", "TYPE" => "string"), "USER_NAME" => array("FIELD" => "U.NAME", "TYPE" => "string", "FROM" => "LEFT JOIN b_user U ON (T.USER_ID = U.ID)"), "USER_LAST_NAME" => array("FIELD" => "U.LAST_NAME", "TYPE" => "string", "FROM" => "LEFT JOIN b_user U ON (T.USER_ID = U.ID)"), "USER_SECOND_NAME" => array("FIELD" => "U.SECOND_NAME", "TYPE" => "string", "FROM" => "LEFT JOIN b_user U ON (T.USER_ID = U.ID)"), "USER_LOGIN" => array("FIELD" => "U.LOGIN", "TYPE" => "string", "FROM" => "LEFT JOIN b_user U ON (T.USER_ID = U.ID)")); $arSqls = CBPHelper::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields); $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]); if (is_array($arGroupBy) && count($arGroupBy) == 0) { $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_workflow_template T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!1!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); if ($arRes = $dbRes->Fetch()) { return $arRes["CNT"]; } else { return False; } } $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_workflow_template T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } if (strlen($arSqls["ORDERBY"]) > 0) { $strSql .= "ORDER BY " . $arSqls["ORDERBY"] . " "; } if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) <= 0) { $strSql_tmp = "SELECT COUNT('x') as CNT " . "FROM b_bp_workflow_template T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql_tmp .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql_tmp .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>"; $dbRes = $DB->Query($strSql_tmp, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); $cnt = 0; if (strlen($arSqls["GROUPBY"]) <= 0) { if ($arRes = $dbRes->Fetch()) { $cnt = $arRes["CNT"]; } } else { // not for Oracle! $cnt = $dbRes->SelectedRowsCount(); } $dbRes = new CDBResult(); $dbRes->NavQuery($strSql, $cnt, $arNavStartParams); } else { if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) > 0) { $strSql .= "LIMIT " . intval($arNavStartParams["nTopCount"]); } //echo "!3!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); } $dbRes = new CBPWorkflowTemplateResult($dbRes, $this->useGZipCompression); return $dbRes; }
public static function GetList($arOrder = array("ID" => "DESC"), $arFilter = array(), $arGroupBy = false, $arNavStartParams = false, $arSelectFields = array()) { global $DB; if (count($arSelectFields) <= 0) { $arSelectFields = array("ID", "WORKFLOW_ID", "TYPE", "MODIFIED", "ACTION_NAME", "ACTION_TITLE", "EXECUTION_STATUS", "EXECUTION_RESULT", "ACTION_NOTE", "MODIFIED_BY"); } static $arFields = array("ID" => array("FIELD" => "T.ID", "TYPE" => "int"), "WORKFLOW_ID" => array("FIELD" => "T.WORKFLOW_ID", "TYPE" => "string"), "TYPE" => array("FIELD" => "T.TYPE", "TYPE" => "int"), "ACTION_NAME" => array("FIELD" => "T.ACTION_NAME", "TYPE" => "string"), "ACTION_TITLE" => array("FIELD" => "T.ACTION_TITLE", "TYPE" => "string"), "MODIFIED" => array("FIELD" => "T.MODIFIED", "TYPE" => "datetime"), "EXECUTION_STATUS" => array("FIELD" => "T.EXECUTION_STATUS", "TYPE" => "int"), "EXECUTION_RESULT" => array("FIELD" => "T.EXECUTION_RESULT", "TYPE" => "int"), "ACTION_NOTE" => array("FIELD" => "T.ACTION_NOTE", "TYPE" => "string"), "MODIFIED_BY" => array("FIELD" => "T.MODIFIED_BY", "TYPE" => "int")); $arSqls = CBPHelper::PrepareSql($arFields, $arOrder, $arFilter, $arGroupBy, $arSelectFields); $arSqls["SELECT"] = str_replace("%%_DISTINCT_%%", "", $arSqls["SELECT"]); if (is_array($arGroupBy) && count($arGroupBy) == 0) { $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_tracking T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!1!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); if ($arRes = $dbRes->Fetch()) { return $arRes["CNT"]; } else { return False; } } $strSql = "SELECT " . $arSqls["SELECT"] . " " . "FROM b_bp_tracking T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } if (strlen($arSqls["ORDERBY"]) > 0) { $strSql .= "ORDER BY " . $arSqls["ORDERBY"] . " "; } if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) <= 0) { $strSql_tmp = "SELECT COUNT('x') as CNT " . "FROM b_bp_tracking T " . "\t" . $arSqls["FROM"] . " "; if (strlen($arSqls["WHERE"]) > 0) { $strSql_tmp .= "WHERE " . $arSqls["WHERE"] . " "; } if (strlen($arSqls["GROUPBY"]) > 0) { $strSql_tmp .= "GROUP BY " . $arSqls["GROUPBY"] . " "; } //echo "!2.1!=".htmlspecialcharsbx($strSql_tmp)."<br>"; $dbRes = $DB->Query($strSql_tmp, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); $cnt = 0; if (strlen($arSqls["GROUPBY"]) <= 0) { if ($arRes = $dbRes->Fetch()) { $cnt = $arRes["CNT"]; } } else { // ТОЛЬКО ДЛЯ MYSQL!!! ДЛЯ ORACLE ДРУГОЙ КОД $cnt = $dbRes->SelectedRowsCount(); } $dbRes = new CDBResult(); //echo "!2.3!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes->NavQuery($strSql, $cnt, $arNavStartParams); } else { if (is_array($arNavStartParams) && IntVal($arNavStartParams["nTopCount"]) > 0) { $strSql .= "LIMIT " . intval($arNavStartParams["nTopCount"]); } //echo "!3!=".htmlspecialcharsbx($strSql)."<br>"; $dbRes = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); } return $dbRes; }