Здравствуйте,
1. Есть необходимость менять значение поля "Воронка" на "Холодный", если значение поля "Статус" меняется на "В работе".
Применяю следующее вычесление:
if ($line['Статус'] = 'В работе'){
$line['Воронка'] = 'Холодный';
} else {;
}
Вычисление срабатывает, однако после этого, когда я хочу поменять значение поля "Статус" на другое, после сохранения все равно остается прежнее значение "В работе".
2. Как можно в одном выичслении объединить несколько условий?
Если Статус = "В работе", то "Воронка = "Холодный",
Если Контакт с ЛПР = "Да, то "Воронка" = "Контакт ЛПР",
Если "Пользуются" != "" (пусто) и Наличие базы != "" (пусто), то "Воронка" = "Выявление потребности",
Если "Статус" = "Интерес", то "Воронка" = "Интерес".
3. Также необходимо, чтобы при изменении поля "Воронка" на какое-либо значение, в поле-флаг подставлялась текущая дата.
У поля "Воронка" - 4 значения, соответственно 4 поля-флага для подставновки даты.
Т.е. примерно это выглядит так:
При изменении поля "Воронка" на "Холодый", в поле "Дата.Холодный", должна подставляться тек. дата.
При изменении поля "Воронка" на "Контакт ЛПР", в поле "Дата.Контакт с ЛПР", должна подставляться тек. дата.
Спасибо.
1
Вопросы по вычислениям.
Автор TelecomMedia, 06 апр. 2014 14:35
Сообщений в теме: 7
#1
Отправлено 06 Апрель 2014 - 14:35
#2
Отправлено 07 Апрель 2014 - 08:54
1. Или я что-то не понимаю, или приведенный пример никак не может влиять на это.
2. Не совсем понял, в чем проблема именно так и задать.
3. Добавляете вычисление на изменение поля Воронка. Далее просто условия "если поле "Воронка" равно "Холодный" то поле "Дата.Холодный" равно тек.дата" и т.д.
2. Не совсем понял, в чем проблема именно так и задать.
3. Добавляете вычисление на изменение поля Воронка. Далее просто условия "если поле "Воронка" равно "Холодный" то поле "Дата.Холодный" равно тек.дата" и т.д.
#3
Отправлено 07 Апрель 2014 - 13:40
CbCoder (07 Апрель 2014 - 08:54) писал:
1. Или я что-то не понимаю, или приведенный пример никак не может влиять на это.
Какое в таком случае будет правильное вычисление?
CbCoder (07 Апрель 2014 - 08:54) писал:
2. Не совсем понял, в чем проблема именно так и задать.
Извините, но в php не силен, как можно использовать if else если значений несколько?
Можете привести пример, основываясь на моих условиях?
#4
Отправлено 07 Апрель 2014 - 15:32
1. Вычисление правильное, я имел ввиду что оно никак не должно влиять на то, что "когда я хочу поменять значение поля "Статус" на другое, после сохранения все равно остается прежнее значение "В работе""
2. Полно же документации по PHP в интернете, например здесь. Да и php тут собственно говоря ни при чем, это элементарная логика программирования, общая для всех языков:
if (условие1) действие1
else if (условие2) действие2
else if (условие3) действие3
else if (условие4) действие4
.........
else действие N
Если же условия взаимоисключающие (туфля не может белой и черной одновременно), то все еще проще, без всяких else:
if (туфля белый) действие1
if (туфля черный) действие2
Т.е. именно так, как у вас и написано.
2. Полно же документации по PHP в интернете, например здесь. Да и php тут собственно говоря ни при чем, это элементарная логика программирования, общая для всех языков:
if (условие1) действие1
else if (условие2) действие2
else if (условие3) действие3
else if (условие4) действие4
.........
else действие N
Если же условия взаимоисключающие (туфля не может белой и черной одновременно), то все еще проще, без всяких else:
if (туфля белый) действие1
if (туфля черный) действие2
Т.е. именно так, как у вас и написано.
#5
Отправлено 09 Апрель 2014 - 16:18
CbCoder (07 Апрель 2014 - 15:32) писал:
1. Вычисление правильное, я имел ввиду что оно никак не должно влиять на то, что "когда я хочу поменять значение поля "Статус" на другое, после сохранения все равно остается прежнее значение "В работе""
Вот пример еще одного вычисления, после которого не удается поменять значение поля "Статус":
if ($line['Срочность'] != ''){
$line['Приоритет'] = 'Высокий'
and $line['Менеджер'] = $line['Менеджер для срочных заявок']
and $line['Статус'] = 'Новая';
$arr['Компания'] = $ID;
$arr['Менеджер'] = $line['Менеджер'];
$arr['Действие'] = 'Позвонить';
$arr['Дата след.действия'] = $line['Когда перезвонить'];
$newid = insert_query($arr, "Работа с ЛПР");
} else {
$line['Приоритет'] = '';
}
Срабатывает на сохранение в таблице и изменении поля "Приоритет"
Т.е. насколько я понимаю, данное вычисление будет принудительно проставлять статус "Новая" при условии, что подходят параметры.
Соответственно вопрос: как нужно переписать вычисление, чтобы "Статус" принимал значение "Новая" только 1 раз (когда назначается новая заявка)?
Записал экран, чтобы было понятнее что именно не работает -
#6
Отправлено 10 Апрель 2014 - 08:54
Можно использовать проверку if ($event['is_new_line']) на новую запись.
#7
Отправлено 10 Апрель 2014 - 09:04
Подскажите, пожалуйста, в каком месте в моем вычислении нужно подставить данную проверку
#8
Отправлено 10 Апрель 2014 - 09:09
Очевидно, в том месте, где вы ставите условие перед тем как производить какие то изменения.
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных