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


Автоматическое изменение поля


Сообщений в теме: 9

#1 Jevgen

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 27 Июль 2010 - 15:24

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

И еще вопрос: Можно ли сделать, чтобы напоминание появлялось только при изменении поля. Сейчас сделано так, что если поле не пустое - есть напоминание и при редактироавнии любого другого поля и сохранении таблицы напоминание показывает снова. Нужно сделать, что бы при сохранении всей таблицы напоминание не появлялось, если значение поля 'Вопросы' не изменилось.
Сейчас:
`Назначил`='{текущий}' and `Вопросы`!=''
Нужно что-то вроде:
`Назначил`='{текущий}' and `Вопросы`!='{текущее значение}' and `Вопросы`!=''

#2 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 27 Июль 2010 - 16:59

Первый вопрос. Это реализуется с помощью вычислений. Примеры.
Второй вопрос. На изменение поля пока напоминаний нет, есть напоминания только на изменение записи.

#3 Jevgen

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 28 Июль 2010 - 14:19

Просмотр сообщенияТехподдержка (27.7.2010, 16:59) писал:

Это реализуется с помощью вычислений. Примеры.
Спасибо конечно за исчерпывающий ответ, но не получается. Не могли бы Вы привести конкретный пример кода к моему вопросу?

#4 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 28 Июль 2010 - 15:34

$data = data_table("Ваша таблица","id={ID}");
if ($data['проверка выполнения задания'] == 'Доработать'
return "Нет";
Этот код вставляете в поле Задание выполнено.

#5 Jevgen

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 29 Июль 2010 - 16:50

Просмотр сообщенияТехподдержка (28.7.2010, 15:34) писал:

$data = data_table("Ваша таблица","id={ID}");
if ($data['проверка выполнения задания'] == 'Доработать'
return "Нет";
Этот код вставляете в поле Задание выполнено.

Записал ваш код:
$data = data_table("Задания","id={ID}");
if ($data['Проверил выполнение задания'] == 'Доработать')
return "Нет";

Теперь поле "Задание выполнено" всегда пустое, что бы там не вводил. И только после того, как я в поле "Проверил выполнение задания" ставлю "Доработать" - в поле "Задание выполнено" всегда "Нет", во всех остальных вариантах это поле после сохранения обнуляется.

#6 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 02 Август 2010 - 15:44

$data = data_table("Ваша таблица","id={ID}");
if ($data['проверка выполнения задания'] == 'Доработать'
return "Нет";
else
return "Да";

#7 Jevgen

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 03 Август 2010 - 12:47

Просмотр сообщенияAnalitic (2.8.2010, 15:44) писал:

$data = data_table("Ваша таблица","id={ID}");
if ($data['проверка выполнения задания'] == 'Доработать'
return "Нет";
else
return "Да";

Теперь в поле "Задание выполнено" ставится - "Да" при его сохранении. То-есть, я дал сотруднику задание, он его просмотрел, сохранил и задание автоматически ставится как выполненное. Хотя он таблицу просто посмотрел при этом поле "Проверил выполнение задания" = "Нет".
Мне нужно, чтобы в поле "Задание выполнено" было "Нет", пока сотрудник его не изменит в ручную на "Да", после выполнения (при условии, что поле "Проверил выполнение задания" НЕ РАВНО "Доработать", а равно "Нет"), и только после этого, когда я проверю, я самостоятельно меняю поле "Проверил выполнение задания" на - "Да" (в этом случае все остается как есть) или "Доработать" (в этом случае поле "Задание выполнено" автоматически изменяется на - "Нет").

#8 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 03 Август 2010 - 15:41

Вы хотите более сложную логику работы. В данном случае поле доработать должно быть списком "Да" "Нет" "Доработать". Также необходимо создать отдельное вычисляемое поле например Доработать_вычисления. В данном поле уже писать php код который будет проверять несколько полей, и изменять нужные. В бесплатную тех поддержку написание данного кода не входит, но вы можете его заказать.

#9 Jevgen

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 04 Август 2010 - 17:02

Какова примерная цена вопроса?

#10 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 04 Август 2010 - 17:30

От 1000 р. Более подробный прайс тут: http://www.clientbase.ru/buy/add/





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

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