Перейти к содержимому


Добавление поля "Артикул" в складе


  • Вы не можете ответить в тему
В этой теме нет ответов

#1 Feerichno

    Участник

  • Пользователи
  • PipPip
  • 14 сообщений
  • Пол:Мужчина
  • Город:Москва

Отправлено 11 Август 2015 - 17:46

Добрый день.

Добавили в таблицу "Склад" поле "Артикул" (в прайс-листе у товаров также это поле есть), далее добавили "Артикул" в таблицы "Позиции прихода" и "Позиции расхода". По-умолчанию можно добавлять позиции в приходе только по названиям, автоматически подтягиваются единицы измерения и т.п. Код немного подправили, теперь при вводе названия подтягивается и артикул. Хотелось бы получить возможность вводить как наименование, так и артикул, чтобы остальные поля заполнялись автоматически. В вычислениях "Сохранение позиций прихода" скопировали условие, где проверяется изменение Наименования, и поменяли поля на Артикул:

/**
* Привязка к складу
*/
// при событии изменения наименования
if ($event['changed'][1137]) {
$goods_id = $line['Наименование']['raw'];
// подтягиваем единицу измерения
$line['Единица измерения'] = $line['Наименование']['Единица измерения']['raw'];
$line['Артикул/код'] = $line['Наименование']['raw'];
// если есть приход и выбран товар
if ($line['Приход']['raw'] && $goods_id) {
// ищем товар на складе
$result = data_select_array(85, "status=0 AND f1096=", $goods_id);
if ($result) {
$line['Склад'] = $result;
$line['Склад']['raw'] = $result['id'];
}
// если нет, создаем новый
else {
$new_ware_id = data_insert(85, EVENTS_ENABLE, array(
"f1095" => $line['Наименование']['Категория']['raw'],
"f1096" => $goods_id,
"f1097" => $line['Единица измерения']['raw'],
"f5090" => $line['Артикул/код']
));
$line['Склад'] = data_select_array(85, "id=", $new_ware_id);
$line['Склад']['raw'] = $new_ware_id;


}
}
}

/**
* Привязка к складу
*/
// при событии изменения артикула
if ($event['changed'][5100]) {
$goods_id = $line['Артикул/код']['raw'];
// подтягиваем единицу измерения
$line['Единица измерения'] = $line['Артикул/код']['Единица измерения']['raw'];
$line['Наименование'] = $line['Артикул/код']['raw'];
// если есть приход и выбран товар
if ($line['Приход']['raw'] && $goods_id) {
// ищем товар на складе
$result = data_select_array(85, "status=0 AND f5090=", $goods_id);
if ($result) {
$line['Склад'] = $result;
$line['Склад']['raw'] = $result['id'];
}
// если нет, создаем новый
else {
$new_ware_id = data_insert(85, EVENTS_ENABLE, array(
"f1095" => $line['Наименование']['Категория']['raw'],
"f1096" => $line['Наименование']['raw'],
"f1097" => $line['Единица измерения']['raw'],
"f5090" => $goods_id
));
$line['Склад'] = data_select_array(85, "id=", $new_ware_id);
$line['Склад']['raw'] = $new_ware_id;


}
}
}

Код идентичен, но если вносить Наименования, то все заполняется, а если Артикул, то нет. В чем могут быть неточности?
Рекламное агентство «Феерично»
Тел.: +7 (495) 227-55-75
www.feerichno.ru





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных