if (!$bSuccess) { $arResult['ERROR_MESSAGE'] = !empty($arFields['RESULT_MESSAGE']) ? $arFields['RESULT_MESSAGE'] : GetMessage('UNKNOWN_ERROR'); } } } if ($bSuccess) { $DB->Commit(); } else { $DB->Rollback(); $arResult['ERROR_MESSAGE'] = !empty($arFields['RESULT_MESSAGE']) ? $arFields['RESULT_MESSAGE'] : GetMessage('UNKNOWN_ERROR'); } } if (intval($_POST['SYNC_ORDER_ID']) > 0) { $imp = new CCrmExternalSaleImport($originatorId); if ($imp->IsInitialized()) { $r = $imp->GetOrderData($originId, true); if ($r == CCrmExternalSaleImport::SyncStatusError) { $arErrors = $imp->GetErrors(); foreach ($arErrors as $err) { $arResult['ERROR_MESSAGE'] .= $err[1] . '<br />'; } } } } if (empty($arResult['ERROR_MESSAGE'])) { if (!$CCrmBizProc->StartWorkflow($arResult['ELEMENT']['ID'], $arBizProcParametersValues)) { $arResult['ERROR_MESSAGE'] = $CCrmBizProc->LAST_ERROR; } } $ID = isset($arResult['ELEMENT']['ID']) ? $arResult['ELEMENT']['ID'] : 0; if (!empty($arResult['ERROR_MESSAGE'])) {
$arFields['PATH_TO_USER_MODIFIER'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_USER_PROFILE'], array('user_id' => $arFields['MODIFY_BY'])); $arFields['ORIGIN_ID'] = isset($arFields['ORIGIN_ID']) ? intval($arFields['ORIGIN_ID']) : 0; $arFields['ORIGINATOR_ID'] = isset($arFields['ORIGINATOR_ID']) ? intval($arFields['ORIGINATOR_ID']) : 0; $arResult['ELEMENT'] = $arFields; unset($arFields); if (empty($arResult['ELEMENT']['ID'])) { LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_DEAL_LIST'], array())); } $contactID = isset($arResult['ELEMENT']['CONTACT_ID']) ? intval($arResult['ELEMENT']['CONTACT_ID']) : 0; $companyID = isset($arResult['ELEMENT']['COMPANY_ID']) ? intval($arResult['ELEMENT']['COMPANY_ID']) : 0; $currentUserPermissions = CCrmPerms::GetCurrentUserPermissions(); $arResult['ERROR_MESSAGE'] = ''; if (intval($_REQUEST["SYNC_ORDER_ID"]) > 0) { $imp = new CCrmExternalSaleImport($arResult['ELEMENT']["ORIGINATOR_ID"]); if ($imp->IsInitialized()) { $r = $imp->GetOrderData($arResult['ELEMENT']["ORIGIN_ID"], false); if ($r != CCrmExternalSaleImport::SyncStatusError) { LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_DEAL_SHOW'], array('deal_id' => $arResult['ELEMENT']['ID']))); } else { $arErrors = $imp->GetErrors(); foreach ($arErrors as $err) { $arResult['ERROR_MESSAGE'] .= $err[1] . "<br />"; } } } } $isExternal = $arResult['IS_EXTERNAL'] = $arResult['ELEMENT']['ORIGINATOR_ID'] > 0 && $arResult['ELEMENT']['ORIGIN_ID'] > 0; $arResult['FORM_ID'] = 'CRM_DEAL_SHOW_V12' . ($isExternal ? "_E" : ""); $arResult['GRID_ID'] = 'CRM_DEAL_LIST_V12' . ($isExternal ? "_E" : ""); $arResult['PRODUCT_ROW_TAB_ID'] = 'tab_product_rows'; $arResult['BACK_URL'] = $arParams['PATH_TO_DEAL_LIST'];