Вычисления: присвоение значения из двух таблиц
#1
Отправлено 21 Март 2016 - 09:51
Присвоить наименование организации в зависимости от того заполнено ли это поле в таблице договоры или в заявке.
По следующему коду присвоение не идет...
if ($line['Номер договора']['Наименование организации']['Наименование организации']<>"")
$line['Организация'] = $line['Номер договора']['Наименование организации']['Наименование организации'];
else $line['Организация'] = $line['Номер заявки']['Наименование организации']['Наименование организации'];
#2
Отправлено 21 Март 2016 - 09:58
#3
Отправлено 21 Март 2016 - 10:33
['Номер заявки'] - текстовое поле таблицы "Заявки"
['Наименование организации'] таблицы "Заявки" - текстовое поле. связано с таблицей "Юр. лица" из которой присваивается значение
['Номер договора'] - текстовое поле таблицы "Договоры"
['Наименование организации'] таблицы "Договоры" - текстовое поле. связано с таблицей "Юр. лица" из которой присваивается значение
#4
Отправлено 21 Март 2016 - 11:05
Цитата
1. Если это поле из таблицы Заявки, то как оно оказалось в вычислении таблицы Слушатели? К полю из другой таблицы можно обратится только через поле связи, а не напямую.
2. Если это поле текстовое, то почему оно раскрывается затем в массив полей из других таблиц, как будто это поле связи?
Вы точно не перепутали ничего в местонахождении и типах полей Номер заявки и Номер договора ?
Да и другие поля как-то странно описаны. Например, "текстовое поле. связано с таблицей"
Совет: зайдите в настройки таблицы, в список полей, и посмотрите точный тип там.
#5
Отправлено 21 Март 2016 - 11:13
#6
Отправлено 21 Март 2016 - 11:25
В вашем случае это означает, что:
1. Организация, Номер договора и Номер заявки - из одной таблицы, там же где находится вычисление
2. Номер договора, Номер заявки и Наименование организации (второго уровня) - поля связи (т.к. раскрываются)
3. Организация и Наименование организации (третьего уровня) - одного типа, например оба текстовые
#7
Отправлено 21 Март 2016 - 11:48
точно можно использовать вычисления по нескольким таблицам?
код php верный в данном случае?
#8
Отправлено 21 Март 2016 - 12:10
К "верности кода" уже относились мои вопросы выше по полям. Если с ними все в порядке - то код в целом корректный.
#9
Отправлено 21 Март 2016 - 12:20
Почему-то если в режиме эксперта вставить код, поле перестает быть выделенным другим цветом при вводе данных.
#10
Отправлено 21 Март 2016 - 12:24
#11
Отправлено 21 Март 2016 - 14:05
Сообщение отредактировал nipk: 21 Март 2016 - 14:06
#12
Отправлено 21 Март 2016 - 14:14
$line['Организация'] = $line['Номер договора']['Наименование организации']['Наименование организации']; if ($line['Организация']=='') $line['Организация'] = $line['Номер заявки']['Наименование организации']['Наименование организации'];
#13
Отправлено 21 Март 2016 - 14:21
#14
Отправлено 21 Март 2016 - 14:23
#15
Отправлено 21 Март 2016 - 14:26
#16
Отправлено 21 Март 2016 - 14:29
#17
Отправлено 21 Март 2016 - 14:54
#18
Отправлено 21 Март 2016 - 14:57
#19
Отправлено 21 Март 2016 - 15:00
#20
Отправлено 21 Март 2016 - 15:02
Цитата
А для чего вы оставили его редактируемым? Почему просто не отключить права на изменение поля? И никто ничего не введет.
Насчет пропадания цвета ничего не могу сказать. Если считаете это багом - можете отправить заявку в техподдержку.
Количество пользователей, читающих эту тему: 6
0 пользователей, 6 гостей, 0 анонимных