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


Две связи в таблице


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

#1 epir

    Участник

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

Отправлено 14 Февраль 2011 - 10:22

Есть таблица "Контрагенты", каждый контрагент привязан к своему менеджеру. Есть подчиненная таблица "Сайты", у каждого сайта есть срок окончания регистрации, соответственно сайт привязан к контрагенту. Нужно сделать "Напоминание" об окончании регистрации, для этого в "напоминании" надо проставлять кому отравлять (в нашем случае менеджеру). Как сделать, чтобы поле менеджер заполнялось автоматически?

#2 Timur

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

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

Отправлено 14 Февраль 2011 - 12:46

Тогда Вам нужно создать вычисляемое поле, которое будет либо вычислять менеджера из таблицы контрагенты либо наоборот в таблицу контрагенты заносить срок окончания регистрации.

#3 epir

    Участник

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

Отправлено 14 Февраль 2011 - 23:17

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

Тогда Вам нужно создать вычисляемое поле, которое будет либо вычислять менеджера из таблицы контрагенты либо наоборот в таблицу контрагенты заносить срок окончания регистрации.
Как вычислить менеджера из таблицы контрагенты?
Я так понимаю, что вроде этого
$manager = data_table("Менеджер","id={ID}");
$kontr = data_table("Контрагенты","id=".$manager['Название']);
return $kontr['Менеджер'];
И ещё не понятно какой тип поля "менеджер" должен быть "пользователь" или "связь"?

#4 Timur

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

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

Отправлено 15 Февраль 2011 - 09:44

Наверное все же таблица сайты должна быть.

$manager = data_table("Сайты","id={ID}");
$kontr = data_table("Контрагенты","id=".$manager['Название']);
return $kontr['Менеджер'];

У поля менеджер должен быть тип "пользователь"

#5 epir

    Участник

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

Отправлено 15 Февраль 2011 - 11:18

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

Наверное все же таблица сайты должна быть.

$manager = data_table("Сайты","id={ID}");
$kontr = data_table("Контрагенты","id=".$manager['Название']);
return $kontr['Менеджер'];

У поля менеджер должен быть тип "пользователь"
В напоминаниях при добавлении условия Менеджер добавилось {current}, но вот само напоминание не приходит
Для проверки работы поставил условия:
`Окончание регистрации домена`='{current_date}' and `Менеджер`='{current}'
,
ну и соответственно добавил домен с сегодняшней датой, но напоминание не работает

#6 Timur

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

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

Отправлено 15 Февраль 2011 - 11:47

У Вас настроен крон? Напоминание должно высвечиваться в течении минуты. Также убедитесь, что Вы ждете напоминание именно под тем пользователем, который указан в записи "Сайты".

#7 epir

    Участник

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

Отправлено 15 Февраль 2011 - 12:47

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

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

#8 Timur

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

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

Отправлено 15 Февраль 2011 - 16:25

А где Вы вычисляемое поле создали? Если остается пустым, значит не работает вычисление

#9 epir

    Участник

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

Отправлено 17 Февраль 2011 - 11:43

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

А где Вы вычисляемое поле создали? Если остается пустым, значит не работает вычисление
В таблице "Сайты". Поля в этой таблице:
1) Контрагент - связь
2) Менеджер - Пользователь(вычисляемое)
$manager = data_table("Сайты","id={ID}");
$kontr = data_table("Контрагенты","id=".$manager['Название']);
return $kontr['Менеджер'];
3)URL - текст
4)Дата - дата/время

#10 Timur

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

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

Отправлено 17 Февраль 2011 - 12:18

Выглядит так, что должно работать. Посмотрите внимательнее.





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

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