Добавление записи через вычисление
#81
Отправлено 05 Август 2013 - 16:43
#82
Отправлено 05 Август 2013 - 17:16
#83
Отправлено 30 Сентябрь 2013 - 12:27
При создании записи в одной таблице автоматически создается запись в другой.
if ($line['Задание на замер создано?'] != 'Да')
{
$ins_data['Номер'] = $line['Номер'];
$ins_data['Город'] = $line['Город'];
$ins_data['ФИО клиента'] = $line['ФИО клиента'];
$ins_data['Адрес'] = $line['Адрес'];
$ins_data['Телефон'] = $line['Телефон'];
$ins_data['Дата и время'] = $line['Дата замера'];
$ins_data['Статус заявки'] = $line['Статус заявки'];
insert_query($ins_data, "График замеров");
$line['Задание на замер создано?'] = 'Да';
}
Как сделать так, чтобы запись во второй таблице создавалась только при заполнении поля "Адрес" в первой таблице? (или поля "Дата замера). Сейчас она добавляется в любом случае.
Сообщение отредактировал keswa: 30 Сентябрь 2013 - 12:27
#84
Отправлено 30 Сентябрь 2013 - 12:49
if ($line['Задание на замер создано?'] != 'Да' and $line['Адрес'] != '' )
{
.....
#85
Отправлено 02 Октябрь 2013 - 14:30
#86
Отправлено 08 Октябрь 2013 - 11:02
Есть основная таблица, при создании записи в которой, создается запись в подчиненной таблице:
if ($line['Задание на замер создано?'] != 'Да' and $line['Установка'] != '')
{
$ins_data['Номер'] = $line['Номер договора'];
$ins_data['Установка'] = $line['Дата'];
$ins_data['Город'] = $line['Город'];
insert_query($ins_data, "Баланс");
}
Могу ли я добавлять в подчиненную таблицу записи из третьей таблицы (также подчиненной основной)?
В ту же строку? И как это можно прописать?
#87
Отправлено 08 Октябрь 2013 - 11:45
#88
Отправлено 16 Октябрь 2013 - 17:52
Пытаюсь написать вычисление. Результатом его должно являться отображение данных из полей "Кол-во" и "Ед.изм" из подчиненой таблици "Позиции счета-фактуры" в родительской таблице "Счет-Фактура". Конфигурация стандартная, за исключением того, что в талицу "Счет-фактура" добавлены соответсвующие поля. т.е. "Кол-во" и "Ед.изм".
Пишу вычисление аналогично мануалу http://clientbase.ru...6/calculations/, конкретно вот этой его части:
"Подобное вычисление может работать и в обратную сторону,
когда согласно записи в подтаблице определенное значение будет переноситься в основную таблицу. Например, так:
$line['Компания']['Телефон']=$line['Новый телефон'];Согласно этому вычислению, в родительскую таблицу "Компания" в поле "Телефон" будет внесено значение из поля
"Новый телефон" подчиненной таблицы. Вычисление при этом заноситься в подтаблицу."
Выглядит мое вычисление так:
$line['Счет-фактура']['Кол-во']=$line['Кол-во'];
$line['Счет-фактура']['Ед.изм']=$line['Ед.изм'];
Заношу это вычисление в подтаблицу "Позиции счета-фактуры".
Результата нет. Хочется понять почему? И что делать?))
#89
Отправлено 21 Октябрь 2013 - 12:20
#90
Отправлено 21 Октябрь 2013 - 17:36
#91
Отправлено 22 Октябрь 2013 - 09:36
#92
Отправлено 03 Ноябрь 2013 - 01:27
Есть две таблицы:
Контакты (родительская)
Телефоны (подчиненная)
При добавлении новой записи в подчиненной таблице, необходимо чтобы она появлялась в родительской таблице с новой строчки.
И соответственно при изменении записи, эти же изменения происходили в родительской таблице.
Пример во вложении.
Пожалуйста напишите как может выглядеть вычисление.
#93
Отправлено 03 Ноябрь 2013 - 14:39
#94
Отправлено 10 Декабрь 2013 - 13:22
CbCoder (03 Ноябрь 2013 - 14:39) писал:
#95
Отправлено 11 Декабрь 2013 - 11:08
Это элементарные правила PHP, к КБ уже прямого отношения не имеющие. Рекомендую почитать руководство по языку.
#96
Отправлено 11 Март 2014 - 19:44
Нужно сделать так, чтобы в зависимости от значения одного из полей в таблице, для каждой конкретной строки становились обязательными для заполнения разные колонки. Вот пример - допустим, есть три поля:
F1 - поле типа "список", может принимать значение 2 или 3.
F2 - поле типа "связь", оно отображается и становится обязательно для заполнения только если в поле F1 выбрано значение 2.
F3 - поле типа "связь", оно отображается и становится обязательно для заполнения только если в поле F1 выбрано значение 3.
Т.е. если пользователь в списке F1 выбирает значение 2 - то он должен заполнить поле F2, а поле F3 - не отображается в форме. Если выбирает значение 3 - то, соответственно, должен заполнить поле F3, а поле F2 - не отображается.
Я написал JavaScript, который в зависимости от значения F1 показывает/скрывает поля F2 и F3 при изменении значения поля F1, а также при загрузке страницы с формой для добавления/редактирования записи. Но вот как быть с обязательностью заполнения того или иного поля - никак не соображу... Основная проблема в том, что это поля типа "связь". Т.е. не достаточно просто на том же JS проверить, что в поле что-то есть и соответствует определённому формату, а нужно убедиться, что в связанной таблице есть такое значение. При этом и просто поставить галочку в настройках таблицы, что поле является обязательным - тоже нельзя, поскольку эта галочка применяется для всех записей в таблице. А мне нужно, чтобы для каждой строки в таблице обязательными для заполнения могли быть разные поля в зависимости от значения одного из полей той же строки. Предусмотрена ли такая возможность в программе?
Можно ли это сделать с помощью вычислений? Могу ли я в вычислении на сохранение данных отклонить запись данных из формы в таблицу и сформировать текст сообщения причины отказа? Не нашёл такой информации в описании вычислений...
#97
Отправлено 13 Март 2014 - 14:30
#99
Отправлено 13 Март 2014 - 17:34
OlegSmirnov (11 Март 2014 - 19:44) писал:
Отклонить запись через вычисление вы не сможете, она в любом случае сохранится. Так что остается javascript, только проверять надо не значение текстового поля, в котором пользователь забивает текст для поиска, а значение скрытого поля, в которое подставляется id связанной записи. Если там пусто - значит реальное значение из списка выбрано не было.
#100
Отправлено 13 Март 2014 - 17:51
благодарю за ответ. Не обратил внимание на наличие скрытого поля с id связанной записи.
Количество пользователей, читающих эту тему: 11
0 пользователей, 11 гостей, 0 анонимных