Сообщение отредактировал wondertalik: 27 Ноябрь 2012 - 14:52
Вычисления php и яваскрипт в подчиненных таблицах.
#41
Отправлено 26 Ноябрь 2012 - 16:13
#42
Отправлено 27 Ноябрь 2012 - 12:28
#43
Отправлено 27 Ноябрь 2012 - 16:20
Цитата
ревизия 6445 от 27/11/12
#44
Отправлено 27 Ноябрь 2012 - 16:43
UmaCat (27 Ноябрь 2012 - 16:20) писал:
ревизия 6445 от 27/11/12
Решаем: http://clientbase.ru...indpost&p=16073
#45
Отправлено 27 Ноябрь 2012 - 23:39
Цитата
Сообщение отредактировал wondertalik: 27 Ноябрь 2012 - 23:52
#46
Отправлено 01 Декабрь 2012 - 00:55
Сообщение отредактировал wondertalik: 01 Декабрь 2012 - 00:56
#47
Отправлено 03 Декабрь 2012 - 10:09
wondertalik (01 Декабрь 2012 - 00:55) писал:
#48
Отправлено 03 Декабрь 2012 - 12:24
#49
Отправлено 04 Декабрь 2012 - 12:37
#50
Отправлено 04 Декабрь 2012 - 17:03
#51
Отправлено 07 Декабрь 2012 - 02:30
#52
Отправлено 13 Декабрь 2012 - 12:02
#53
Отправлено 28 Декабрь 2012 - 13:55
global $event;
$line['Сумма РУБ'] = $line['Кол-во']*$line['Цена РУБ'];
$line['Сумма USD'] = $line['Кол-во']*$line['Цена USD'];
$line['Сумма EUR'] = $line['Кол-во']*$line['Цена EUR'];
if($line['Статус'] == "Оприходовано" && $user['id'] == 1) {
//Если изменилось поле КОЛИЧЕСТВО
if(isset($event['changed']['1140'])) {
//Старое значение количества
$count_old = $event['changed']['1140']['old'];
//Новое значение количества
$count_new = $event['changed']['1140']['new'];
$line['Основание']['Сумма RUB'] = $line['Основание']['Сумма RUB'] - $line['Цена РУБ'] * ($count_old - $count_new);
$line['Основание']['Сумма USD'] = $line['Основание']['Сумма USD'] - $line['Цена USD'] * ($count_old - $count_new);
$line['Основание']['Сумма EUR'] = $line['Основание']['Сумма EUR'] - $line['Цена EUR'] * ($count_old - $count_new);
} elseif (isset($event['changed']['1139'])) {
/**
Если изменилось поле Цена РУБ
*/
$line['Основание']['Сумма RUB'] = $line['Основание']['Сумма RUB'] - $line['Кол-во'] * ($event['changed']['1139']['old'] - $event['changed']['1139']['new']);
} elseif (isset($event['changed']['1324'])) {
/**
Если изменилось поле Цена USD
*/
$line['Основание']['Сумма USD'] = $line['Основание']['Сумма USD'] - $line['Кол-во'] * ($event['changed']['1324']['old'] - $event['changed']['1324']['new']);
} elseif (isset($event['changed']['1325'])) {
/**
Если изменилось поле Цена EUR
*/
$line['Основание']['Сумма EUR'] = $line['Основание']['Сумма EUR'] - $line['Кол-во'] * ($event['changed']['1325']['old'] - $event['changed']['1325']['new']);
}
}
Если я изменяю количество, тогда вычисление срабатывает верно. Однако, если я меняю одну из цен, Например РУБ, тогда вычисление не срабатывает верно, а точнее $line['Основание']['Сумма RUB'] - всегда значение 0! Почему так? Это баг?
#54
Отправлено 29 Декабрь 2012 - 11:08
#55
Отправлено 14 Февраль 2013 - 04:04
$sqlQuery = "SELECT `f731` as number FROM ".DATA_TABLE."11 WHERE `f571` = ".intval($line['Заказ']['ID'])." AND `id` != ".intval($line['ID'])." AND`status` = 0 ORDER BY f731 DESC LIMIT 1";
$result = mysql_query($sqlQuery) or die(mysql_error()."<br />".$sqlQuery);
$row = mysql_fetch_assoc($result);
if(mysql_num_rows($result) > 0) {
$line['№'] = ++$row['number'];
} else {
$line['№'] = 1;
}
И теперь хочется дополнительного функционала, если позиция из перечня будет удалена, чтобы все номера по-порядку пересчитались и отобразились новые. Я понимаю, что придется немного поменять алгоритм, однако как можно изменить эти значения без перезагрузки страниц?
#56
Отправлено 14 Февраль 2013 - 10:39
Количество пользователей, читающих эту тему: 3
0 пользователей, 3 гостей, 0 анонимных













