

Вычисления
#1
Отправлено 10 Ноябрь 2009 - 21:09
#2
Отправлено 11 Ноябрь 2009 - 16:16
VladMgn (10.11.2009, 21:09) писал:
VladMgn (10.11.2009, 21:09) писал:
VladMgn (10.11.2009, 21:09) писал:
#3
Отправлено 12 Ноябрь 2009 - 19:04
Напишите как пользоваться Вычислениями в свойствах поля для версии 1.5.
Задача в следующем, нужно разграничить для групп доступа клиентов (для разных групп свои клиенты и остальных им видеть не нужно).
В таблице это мы сделали с помощью фильтров.
Теперь вопрос в другом как ограничить список клиентов, согласно фильтрам, при редактировании ссылки на таблицу клиентов, т.е. в таблице задач есть поле клиент в котором выбирается клиент при этом в выпадающем списке выдает всех клиентов.
Такая же картина и при поиске в таблице задач по полю клиент.
Вторая ситуация, я хочу чтоб в таблице заданий отображался телефон и контактное лицо для выбранного клиента в поле клиент.
#4
Отправлено 13 Ноябрь 2009 - 11:00
DarkNight (12.11.2009, 19:04) писал:
DarkNight (12.11.2009, 19:04) писал:
$zadanie = data_table("Задания","id={ID}"); $client = data_table("Клиенты", "id='".$zadanie['Компания']."'"); return $client['Телефон']; // для контактного лица соответственно Контактное лицо
#5
Отправлено 22 Декабрь 2009 - 04:08
https://info.crm-master.info
#7
Отправлено 22 Декабрь 2009 - 17:31
Вообще-то цель, например, сохранить (перенести) значение названия клиента в несколько последовательно подчиненных таблиц, где связи уже не через поле клиента делаются.
Например, такие связи:
"Клиент"(название)-"Оборудование"(серйный номер)-"Процедуры с оборудованием".
Вот как здесь в последней таблице "Процедуры с оборудованием" отобразить название клиента?
Спасибо!
https://info.crm-master.info
#8
Отправлено 22 Декабрь 2009 - 17:51
#9
Отправлено 22 Декабрь 2009 - 20:16
Затем, используя поле Клиент1, я смогу сделать связь с таблицей "Процедуры с оборудованием".
Также в таблице оборудование есть поле Клиент, через которое установлено подчинение таблице "Клиенты".
$client = data_table("Оборудование","id={ID}"); // запоминаем текщую строку таблицы "Оборудование"
$cl = data_table("Клиенты", "id='".$client['Клиент']."'"); // находим в таблице "Клиенты" по полю Клиент "Оборудование" название и запоминаем его.
return $cl['Клиент1']; //возвращаем значение в скрытое поле Клиент1
Вроде все верно, но не работает((
https://info.crm-master.info
#10
Отправлено 23 Декабрь 2009 - 09:36
Хотя я не совсем понял зачем вам создавать вычисляемое поле в таблице Оборудование, когда вам нужно получить клиента в таблице "Процедуры с оборудованием", как я понял. Для этого вам нужно: а) создать поле связи Клиент в таблице "Процедуры с оборудованием"; б) забить в вычисления этого поля код который возвращает клиента из вышестоящей таблицы, т.е. из Оборудования.
#11
Отправлено 23 Декабрь 2009 - 11:07
Tony999 (22.12.2009, 20:16) писал:
Затем, используя поле Клиент1, я смогу сделать связь с таблицей "Процедуры с оборудованием".
Также в таблице оборудование есть поле Клиент, через которое установлено подчинение таблице "Клиенты".
$client = data_table("Оборудование","id={ID}"); // запоминаем текщую строку таблицы "Оборудование"
$cl = data_table("Клиенты", "id='".$client['Клиент']."'"); // находим в таблице "Клиенты" по полю Клиент "Оборудование" название и запоминаем его.
return $cl['Клиент1']; //возвращаем значение в скрытое поле Клиент1
Вроде все верно, но не работает((
Есть небольшой подводный камень, в случае если вдруг названия клиентов или оборудование у разных клиентов окажутся одинаковыми. Лучше через ID.
#12
Отправлено 23 Декабрь 2009 - 11:12
https://info.crm-master.info
#13
Отправлено 14 Май 2010 - 15:46
Сначала заводится «Жилец квартиры» с квартирой и привязкой к Адресу, а затем, по «Квартире», добавляются «Активности». У нас возникала потребность перестроить работу с использованием новых возможностей программы и отобразить в таблице «Активности» Адреса квартир (для экспорта, удобства работы и фильтрации).
Код Вычисляемого поля такой:
$act = data_table("Активности","id={ID}");
$git = data_table("Жители","id='".$act['Квартира']."'");
return $git['Адрес'];
Все работает, только возвращает не Адрес, а индекс Адреса.
Можно ли сделать так, чтобы возвращался Адрес?
(веб 1.6.4.)
Спасибо!
#14
Отправлено 14 Май 2010 - 18:31
#16
Отправлено 17 Май 2010 - 08:42
$act = data_table("Активности","id={ID}");
$git = data_table("Жители","id='".$act['Квартира']."'");
$adr = data_table("Таблица с адресами","id='".$git['Адрес']."'");
return $adr['Поле с адресом'];
Вместо Таблица с адресами и Поле с адресом ставите реальные имена.
#17
Отправлено 09 Июнь 2010 - 09:29
Создал новую таблицу "Тест"
В нее занес поле "контрагент" связь с таблицей "Контрагенты" по полю "название"
Создал поле "тест" в которое хочу записывать данные с таблицы "истории" - "последний" разговор.. то что я сделал это скопировал вычисления из базовой установки из поля "последний разговор" в таблице "контрагенты" (версия 1,7,0)
$sqlQuery = "SELECT * FROM ".DATA_TABLE."62 WHERE f723='{ID}' ORDER BY f724 desc LIMIT 1";
$result = mysql_query($sqlQuery);
$row = mysql_fetch_array($result);
return $row['f725'];
Почему-то не работает, в чем косяк?
#18
Отправлено 09 Июнь 2010 - 11:27
В частности в данном примере в запросе идет выборка по ID текущей строки таблицы Контрагенты (f723='{ID}'). Т.к. у вас другая таблица - данный код бессмысленен. Замените {ID} на значение из связанного с таблицей Контрагенты поля.
#19
Отправлено 09 Июнь 2010 - 12:49
Я добавил в сообщении доп данные
Создал новую таблицу "Тест" номер таблицы 85
В нее занес поле "контрагент" (поле 921 таблица 85) связь с таблицей "Контрагенты" (таблица 42) по полю "название" (поле 435)
Создал поле "тест" (поле 924 таблица 85) в которое хочу записывать данные с таблицы "истории" (таблица 62) - "последний разговор" (поле 725, таблица 62) .
При этих данных как должен выглядеть код в поле "тест"?
#20
Отправлено 09 Июнь 2010 - 14:04
Alexander (9.6.2010, 12:49) писал:
Я добавил в сообщении доп данные
Создал новую таблицу "Тест" номер таблицы 85
В нее занес поле "контрагент" (поле 921 таблица 85) связь с таблицей "Контрагенты" (таблица 42) по полю "название" (поле 435)
Создал поле "тест" (поле 924 таблица 85) в которое хочу записывать данные с таблицы "истории" (таблица 62) - "последний разговор" (поле 725, таблица 62) .
При этих данных как должен выглядеть код в поле "тест"?
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных