}
             }
             if (!empty($fieldsList)) {
                 \Bitrix\Sale\Delivery\Services\Table::setChildrenFieldsValues($ID, $fieldsList);
             }
         }
     } else {
         $strError .= Loc::getMessage("SALE_DSE_ERROR_EDIT_DELIVERY") . "<br>" . implode("<br>", $res->getErrorMessages());
     }
 } else {
     $res = \Bitrix\Sale\Delivery\Services\Table::add($fields);
     if (!$res->isSuccess()) {
         $strError .= Loc::getMessage("SALE_DSE_ERROR_ADD_DELIVERY") . "<br>" . implode("<br>", $res->getErrorMessages());
     } else {
         $ID = $res->getId();
         Services\Manager::onAfterAdd($ID, $fields);
     }
 }
 if ($ID > 0) {
     //stores
     unset($res);
     if (isset($_POST["STORES_SHOW"]) && $_POST["STORES_SHOW"] == "Y" && isset($_POST["STORES"]["PARAMS"]["STORES"])) {
         $res = ExtraServices\Manager::saveStores($ID, Bitrix\Sale\Delivery\ExtraServices\Store::getStoresIdsFromParams($_POST["STORES"]["PARAMS"]));
     } else {
         $storesFields = ExtraServices\Manager::getStoresFields($ID);
         if (!empty($storesFields)) {
             $res = Delivery\ExtraServices\Table::delete($storesFields["ID"]);
         }
     }
     if ($res && !$res->isSuccess()) {
         $strError .= implode("<br>\n", $res->getErrorMessages());