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


Копирование данных из таблицы в таблицу


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

#1 Whitescorpion

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

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

Отправлено 26 Сентябрь 2016 - 04:19

Добрый день. Такой вопрос. Есть две таблицы. Клиенты и заявки от партнеров. Ни одна из таблиц не является у другой подтаблицей. С помощью доп действия и вычисления, из таблицы Заявки от партнеров создается запись в таблице Клиенты.
$data['Идентификатор заявка партнера в клиент'] = $line['Идентификатор заявка партнера в клиент'];
$data['Кто добавил'] = $line['Кто добавил'];
$data['Источник заявки'] = "Партнер";
$data['Регион'] = $line['Регион'];
$data['Фамилия'] = $line['Фамилия'];
$data['Имя'] = $line['Имя'];
$data['Отчество'] = $line['Отчество'];
$data['Телефон'] = $line['Телефон'];
$data['Комментарий менеджера'] = $line['Комментарий партнера'];
$Klient_id = insert_query($data,"Клиенты");
$line['Договор'] = "Да";
echo "<script>";
	 echo "document.write(document.location.href = '/fields.php?table=11');";
	 echo "</script>";

Необходимо, чтобы в процессе работы с клиентом в таблице Клиенты, при сохранении изменений в записи, в таблице Заявки от клиентов обновлялись некоторые поля в записях из которых была создана запись клиента в таблице Клиенты.

Что-то я точно делаю не так, потому что ничего не получается. Но я пытаюсь это реализовать через вот такое вычисление в таблице Клиенты, срабатывающее при сохранении в таблице:
if ($line['Идентификатор заявка партнера в клиент'] != "") {
$line['Связь с заявки от партнеров']['Номер договора'] = $line['№ договора'];
$line['Связь с заявки от партнеров']['Дата заключения договора'] = $line['Дата заключения'];
$line['Связь с заявки от партнеров']['Сумма договора'] = $line['Сумма договора'];
$line['Связь с заявки от партнеров']['Первая оплата'] = $line['Первый платеж выплачен?'];
$line['Связь с заявки от партнеров']['Дата первой оплаты'] = $line['Первый платеж'];
$line['Связь с заявки от партнеров']['Номер дела'] = $line['Номер дела'];
$line['Связь с заявки от партнеров']['Дата следующего заседания'] = $line['Дата следующего заседания'];
}

Связь пытаюсь установить через поле [Идентификатор заявка партнера в клиент] .

Сообщение отредактировал Whitescorpion: 26 Сентябрь 2016 - 04:21


#2 CbCoder

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

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 26 Сентябрь 2016 - 09:20

А что-то я не вижу заполнения поля связи 'Связь с заявки от партнеров' в первом коде (т.е. при добавлении клиента). Или такого поля нет? Вы пишете "связь пытаюсь установить через поле 'Идентификатор заявка партнера в клиент'", но вместо этого в коде используете некую 'Связь с заявки от партнеров'. Как-то не улавливаю пока логики.

#3 Whitescorpion

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

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

Отправлено 26 Сентябрь 2016 - 09:29

Просмотр сообщенияCbCoder (26 Сентябрь 2016 - 09:20) писал:

А что-то я не вижу заполнения поля связи 'Связь с заявки от партнеров' в первом коде (т.е. при добавлении клиента). Или такого поля нет? Вы пишете "связь пытаюсь установить через поле 'Идентификатор заявка партнера в клиент'", но вместо этого в коде используете некую 'Связь с заявки от партнеров'. Как-то не улавливаю пока логики.
Может быть я напутал что-то.
$line['Связь с заявки от партнеров'] это поле связи, в котором настроена связь по полю ['Идентификатор заявка партнера в клиент'], которое я передаю в первом коде в таблицу клиенты.
А далее во втором коде пытаюсь передать информацию обратно через поле связи $line['Связь с заявки от партнеров'].

#4 CbCoder

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

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 26 Сентябрь 2016 - 09:43

Цитата

$line['Связь с заявки от партнеров'] это поле связи, в котором настроена связь по полю ['Идентификатор заявка партнера в клиент'], которое я передаю в первом коде в таблицу клиенты.

Ну вот я не вижу, где вы в первом коде передаете эту связь? Если вы про это:

$data['Идентификатор заявка партнера в клиент'] = $line['Идентификатор заявка партнера в клиент'];

то тут точно нет ее. Поле связи заполняется так:

$data['Связь с заявки от партнеров'] = $line['ID'];

Поясняю: в поле связи хранится ID связанной записи. В данном случае связанной является текущая запись (т.е. там где вычисление выполняется), которая передает свой ID в поле связи создаваемого клиента. Ну и естественно что в клиенте должно быть это поле связи - "Связь с заявки от партнеров" (или с любым другим именем), чтобы было куда связь передавать.





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

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