本文整理汇总了PHP中CSaleOrderProps::CheckFields方法的典型用法代码示例。如果您正苦于以下问题:PHP CSaleOrderProps::CheckFields方法的具体用法?PHP CSaleOrderProps::CheckFields怎么用?PHP CSaleOrderProps::CheckFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSaleOrderProps
的用法示例。
在下文中一共展示了CSaleOrderProps::CheckFields方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Add
function Add($arFields)
{
global $DB;
if (!CSaleOrderProps::CheckFields("ADD", $arFields)) {
return false;
}
$arInsert = $DB->PrepareInsert("b_sale_order_props", $arFields);
$strSql = "INSERT INTO b_sale_order_props(" . $arInsert[0] . ") " . "VALUES(" . $arInsert[1] . ")";
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$ID = IntVal($DB->LastID());
return $ID;
}
示例2: Update
function Update($ID, $arFields)
{
global $DB;
$ID = IntVal($ID);
if (!CSaleOrderProps::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$strUpdate = $DB->PrepareUpdate("b_sale_order_props", $arFields);
$strSql = "UPDATE b_sale_order_props SET " . $strUpdate . " WHERE ID = " . $ID . "";
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
return $ID;
}
示例3: Add
//.........这里部分代码省略.........
* <li> <b>PROPS_GROUP_ID</b> - код группы свойств;</li> <li> <b>SIZE1</b> - ширина поля
* (размер по горизонтали);</li> <li> <b>SIZE2</b> - высота поля (размер по
* вертикали);</li> <li> <b>DESCRIPTION</b> - описание свойства;</li> <li> <b>IS_EMAIL</b> -
* флаг (Y/N) использовать ли значение свойства как E-Mail покупателя;</li>
* <li> <b>IS_PROFILE_NAME</b> - флаг (Y/N) использовать ли значение свойства как
* название профиля покупателя; </li> <li> <b>IS_PAYER</b> - флаг (Y/N)
* использовать ли значение свойства как имя плательщика;</li> <li>
* <b>IS_LOCATION4TAX</b> - флаг (Y/N) использовать ли значение свойства как
* местоположение покупателя для расчёта налогов (только для
* свойств типа <b>LOCATION</b>);</li> <li> <b>CODE</b> - символьный код свойства.</li>
* <li> <b>IS_FILTERED</b> - свойство доступно в фильтре по заказам. С версии
* 10.0.</li> <li> <b>IS_ZIP</b> - использовать как почтовый индекс. С версии
* 10.0.</li> <li> <b>UTIL</b> - позволяет использовать свойство только в
* административной части. С версии 11.0.</li> </ul>
*
*
*
* @return int <p>Возвращается код добавленного свойства заказа.</p> <a name="examples"></a>
*
*
* <h4>Example</h4>
* <pre>
* <?
* $arFields = array(
* "PERSON_TYPE_ID" => 2,
* "NAME" => "Комплектация",
* "TYPE" => "RADIO",
* "REQUIED" => "Y",
* "DEFAULT_VALUE" => "F",
* "SORT" => 100,
* "CODE" => "COMPLECT",
* "USER_PROPS" => "N",
* "IS_LOCATION" => "N",
* "IS_LOCATION4TAX" => "N",
* "PROPS_GROUP_ID" => 1,
* "SIZE1" => 0,
* "SIZE2" => 0,
* "DESCRIPTION" => "",
* "IS_EMAIL" => "N",
* "IS_PROFILE_NAME" => "N",
* "IS_PAYER" => "N"
* );
*
* // Если установлен код свойства, то изменяем свойство с этим кодом,
* // иначе добавляем новой свойство
* if ($ID>0)
* {
* if (!CSaleOrderProps::Update($ID, $arFields))
* {
* echo "Ошибка изменения параметров свойства";
* }
* else
* {
* // Обновим символьный код у значений свойства
* // (хранение избыточных данных для оптимизации работы)
* $db_order_props_tmp =
* CSaleOrderPropsValue::GetList(($b="NAME"),
* ($o="ASC"),
* Array("ORDER_PROPS_ID"=>$ID));
* while ($ar_order_props_tmp = $db_order_props_tmp->Fetch())
* {
* CSaleOrderPropsValue::Update($ar_order_props_tmp["ID"],
* array("CODE" => "COMPLECT"));
* }
* }
* }
* else
* {
* $ID = CSaleOrderProps::Add($arFields);
* if ($ID<=0)
* echo "Ошибка добавления свойства";
* }
* ?>
* </pre>
*
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/sale/classes/csaleorderprops/csaleorderprops__add.b64a5ac9.php
* @author Bitrix
*/
public static function Add($arFields)
{
global $DB;
foreach (GetModuleEvents("sale", "OnBeforeOrderPropsAdd", true) as $arEvent) {
if (ExecuteModuleEventEx($arEvent, array(&$arFields)) === false) {
return false;
}
}
if (!CSaleOrderProps::CheckFields("ADD", $arFields)) {
return false;
}
$arInsert = $DB->PrepareInsert("b_sale_order_props", $arFields);
$strSql = "INSERT INTO b_sale_order_props(" . $arInsert[0] . ") VALUES(" . $arInsert[1] . ")";
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$ID = intval($DB->LastID());
foreach (GetModuleEvents("sale", "OnOrderPropsAdd", true) as $arEvent) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
return $ID;
}
示例4: Update
//.........这里部分代码省略.........
* вертикали);</li> <li> <b>DESCRIPTION</b> - описание свойства;</li> <li> <b>IS_EMAIL</b> -
* флаг (Y/N) использовать ли значение свойства как E-Mail покупателя;</li>
* <li> <b>IS_PROFILE_NAME</b> - флаг (Y/N) использовать ли значение свойства как
* название профиля покупателя; </li> <li> <b>IS_PAYER</b> - флаг (Y/N)
* использовать ли значение свойства как имя плательщика;</li> <li>
* <b>IS_LOCATION4TAX</b> - флаг (Y/N) использовать ли значение свойства как
* местоположение покупателя для расчёта налогов (только для
* свойств типа <b>LOCATION</b>);</li> <li> <b>CODE</b> - символьный код свойства.</li>
* </ul>
*
*
*
* @return int <p>Возвращается код измененного свойства заказа.</p> <a name="examples"></a>
*
*
* <h4>Example</h4>
* <pre>
* <?
* $arFields = array(
* "PERSON_TYPE_ID" => 2,
* "NAME" => "Комплектация",
* "TYPE" => "RADIO",
* "REQUIED" => "Y",
* "DEFAULT_VALUE" => "F",
* "SORT" => 100,
* "CODE" => "COMPLECT",
* "USER_PROPS" => "N",
* "IS_LOCATION" => "N",
* "IS_LOCATION4TAX" => "N",
* "PROPS_GROUP_ID" => 1,
* "SIZE1" => 0,
* "SIZE2" => 0,
* "DESCRIPTION" => "",
* "IS_EMAIL" => "N",
* "IS_PROFILE_NAME" => "N",
* "IS_PAYER" => "N"
* );
*
* // Если установлен код свойства, то изменяем свойство с этим кодом,
* // иначе добавляем новой свойство
* if ($ID>0)
* {
* if (!CSaleOrderProps::Update($ID, $arFields))
* {
* echo "Ошибка изменения параметров свойства";
* }
* else
* {
* // Обновим символьный код у значений свойства
* // (хранение избыточных данных для оптимизации работы)
* $db_order_props_tmp =
* CSaleOrderPropsValue::GetList(($b="NAME"),
* ($o="ASC"),
* Array("ORDER_PROPS_ID"=>$ID));
* while ($ar_order_props_tmp = $db_order_props_tmp->Fetch())
* {
* CSaleOrderPropsValue::Update($ar_order_props_tmp["ID"],
* array("CODE" => "COMPLECT"));
* }
* }
* }
* else
* {
* $ID = CSaleOrderProps::Add($arFields);
* if ($ID<=0)
* echo "Ошибка добавления свойства";
* }
* ?>
* </pre>
*
*
* @static
* @link http://dev.1c-bitrix.ru/api_help/sale/classes/csaleorderprops/csaleorderprops__update.6e284623.php
* @author Bitrix
*/
public static function Update($ID, $arFields)
{
global $DB;
$ID = intval($ID);
if ($ID <= 0) {
return false;
}
foreach (GetModuleEvents("sale", "OnBeforeOrderPropsUpdate", true) as $arEvent) {
if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false) {
return false;
}
}
if (!CSaleOrderProps::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$strUpdate = $DB->PrepareUpdate("b_sale_order_props", $arFields);
if (!empty($strUpdate)) {
$strSql = "UPDATE b_sale_order_props SET " . $strUpdate . " WHERE ID = " . $ID;
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
}
foreach (GetModuleEvents("sale", "OnOrderPropsUpdate", true) as $arEvent) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
return $ID;
}
示例5: Update
function Update($ID, $arFields)
{
global $DB;
$ID = intval($ID);
if ($ID <= 0) {
return false;
}
foreach (GetModuleEvents("sale", "OnBeforeOrderPropsUpdate", true) as $arEvent) {
if (ExecuteModuleEventEx($arEvent, array($ID, &$arFields)) === false) {
return false;
}
}
$prevDefault = $arFields['DEFAULT_VALUE'];
// need to check here if we got CODE or ID came
if (isset($arFields['DEFAULT_VALUE']) && (string) $arFields['DEFAULT_VALUE'] != '' && CSaleLocation::isLocationProMigrated()) {
$type = '';
if (!isset($arFields['TYPE'])) {
$prop = self::GetByID($ID);
$type = $prop['TYPE'];
} else {
$type = $arFields['TYPE'];
}
if ($type == 'LOCATION') {
$arFields['DEFAULT_VALUE'] = CSaleLocation::tryTranslateIDToCode($arFields['DEFAULT_VALUE']);
}
}
if (!CSaleOrderProps::CheckFields("UPDATE", $arFields, $ID)) {
return false;
}
$strUpdate = $DB->PrepareUpdate("b_sale_order_props", $arFields);
if (!empty($strUpdate)) {
$strSql = "UPDATE b_sale_order_props SET " . $strUpdate . " WHERE ID = " . $ID;
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
}
$arFields['DEFAULT_VALUE'] = $prevDefault;
foreach (GetModuleEvents("sale", "OnOrderPropsUpdate", true) as $arEvent) {
ExecuteModuleEventEx($arEvent, array($ID, $arFields));
}
return $ID;
}