Отправка счета
#1
Отправлено 29 Апрель 2014 - 10:59
В таблице "Счета" сделать доп. действие "Отправить счет", которое бы отображало форму с выбором нескольких вариантов почты из т. Сотрудники, связанной с т. "Контрагенты"?
Т.е., например, есть клиент "ООО Астра". В нем есть связанная т. Сотрудники, где есть контакты (и соответственно e-mail), менеджера, бухгалтера и директора.
А из т. Счета можно было бы выбрать конкретно кому (или всем) необходимо направить счет.
#2
Отправлено 06 Май 2014 - 06:56
#3
Отправлено 06 Май 2014 - 08:51
#4
Отправлено 06 Май 2014 - 09:42
$line['E-mail']=$line['E-mail'];
send_template(1251,"id=$ID");
Как в таком случае в отдельном окне можно подтянуть поля из которых выбрать email?
#5
Отправлено 06 Май 2014 - 12:54
$line['E-mail'] = $_REQUEST['email'];
send_template(1251,"id=$ID");
#6
Отправлено 06 Май 2014 - 15:15
Мне нужно сделать запрос к след. таблица и полям:
42, 442 (где 42-id таблицы, 442-id поля)
42, 10551
51, 549
571, 12881
И что значит $_REQUEST['email']; ?
#7
Отправлено 06 Май 2014 - 15:21
#8
Отправлено 08 Май 2014 - 08:06
Взял за основу пример, приведенный на форуме.
Хочу взять из таблицы 42 (Контрагенты) поле f442 (email):
$line['E-mail'] = $_REQUEST['email']; $sqlQuery = "SELECT f442 FROM ".DATA_TABLE."42"; $result = mysql_query($sqlQuery); echo "<form method='get'>"; echo "Выберите E-mail:"; echo "n<input type='hidden' name='id' value='$button_id'>"; // Передаем значение кнопки echo "<input type='hidden' name='line_id' value=$ID>"; // Значение строки echo "<SELECT name='email'>"; while ($row = mysql_fetch_array($result)) echo "<OPTION VALUE='".$row['ID']."'>".$row['ID']."</OPTION>"; echo "</SELECT>"; echo "<input type='submit' value='Передать'>"; echo "</form>";
Но на выходе получается следующее:
Сообщение отредактировал fabrika-r: 08 Май 2014 - 08:09
#9
Отправлено 08 Май 2014 - 10:03
fabrika-r (08 Май 2014 - 08:06) писал:
Взял за основу пример, приведенный на форуме.
Хочу взять из таблицы 42 (Контрагенты) поле f442 (email):
$line['E-mail'] = $_REQUEST['email']; $sqlQuery = "SELECT f442 FROM ".DATA_TABLE."42"; $result = mysql_query($sqlQuery); echo "<form method='get'>"; echo "Выберите E-mail:"; echo "n<input type='hidden' name='id' value='$button_id'>"; // Передаем значение кнопки echo "<input type='hidden' name='line_id' value=$ID>"; // Значение строки echo "<SELECT name='email'>"; while ($row = mysql_fetch_array($result)) echo "<OPTION VALUE='".$row['ID']."'>".$row['ID']."</OPTION>"; echo "</SELECT>"; echo "<input type='submit' value='Передать'>"; echo "</form>";
Но на выходе получается следующее:
К слову, в качестве значения (value) использование $row['id'] оправдано, но зачем в качестве аргумента его использовать? Может лучше вывести список из Имен Контрагентов?
Творческая группа "ТАВР".
www.TAVR.pro Художественная ковка, металлоконструкции.
www.СтолМет.рф Складные столы, стулья и системы для их хранения
#10
Отправлено 11 Май 2014 - 17:25
Вообще ни на форуме, ни в документации не могу найти ни одного нормального примера доп. действия в отдельном окне.
Для начала даже можно упростить задачу: В вызванном окне высветить поле E-mail таблицы Контрагенты..
#11
Отправлено 12 Май 2014 - 09:47
fabrika-r (11 Май 2014 - 17:25) писал:
Вам же не из Контрагентов емейлы нужны, а из Сотрудников. Из контрагента даже запрос не нужен, можно просто $line['На кого']['E-mail'] вывести. Если же из Сотрудников, то делаем стандартный запрос:
$result = data_select(51, "f545=",$line['На кого']['ID']); while ($row = sql_fetch_array($result)) { echo $row['f549']."<br>"; }
Соответственно, оформляете затем это внутрь формы.
#12
Отправлено 12 Май 2014 - 16:52
fabrika-r (08 Май 2014 - 08:06) писал:
Взял за основу пример, приведенный на форуме.
Хочу взять из таблицы 42 (Контрагенты) поле f442 (email):
$line['E-mail'] = $_REQUEST['email']; $sqlQuery = "SELECT f442 FROM ".DATA_TABLE."42"; $result = mysql_query($sqlQuery); echo "<form method='get'>"; echo "Выберите E-mail:"; echo "n<input type='hidden' name='id' value='$button_id'>"; // Передаем значение кнопки echo "<input type='hidden' name='line_id' value=$ID>"; // Значение строки echo "<SELECT name='email'>"; while ($row = mysql_fetch_array($result)) echo "<OPTION VALUE='".$row['ID']."'>".$row['ID']."</OPTION>"; echo "</SELECT>"; echo "<input type='submit' value='Передать'>"; echo "</form>";
Но на выходе получается следующее:
Замените на "SELECT * FROM" - все поля (или перечислите нужные) и про маленькие буквы в row['id'] не забудьте. Если не сейчас, то на будущее пригодится.
Творческая группа "ТАВР".
www.TAVR.pro Художественная ковка, металлоконструкции.
www.СтолМет.рф Складные столы, стулья и системы для их хранения
#13
Отправлено 19 Май 2014 - 15:26
CbCoder (12 Май 2014 - 09:47) писал:
$result = data_select(51, "f545=",$line['На кого']['ID']); while ($row = sql_fetch_array($result)) { echo $row['f549']."<br>"; }
Соответственно, оформляете затем это внутрь формы.
Так и сделал, получаю пустое окно.
#14
Отправлено 19 Май 2014 - 15:34
1. Отсутствуют записи в Сотрудниках связанные с данным контрагентом.
3. Сотрудники есть, но поля емейла у всех сотрудников пустые.
2. Поле емейла у вас имеет другой id.
Я проверял на стандартной конфигурации - у меня все выводило.
#15
Отправлено 19 Май 2014 - 15:44
Хорошо, теперь доп. действие выводит все емайлы, закрепленные за контрагентов в т. Сотрудники.
А как тогда сделать возможность выбора одного/или нескольких емайлов?
Чтобы можно было выбрать, нажать на Submit и счет ушел.
#16
Отправлено 19 Май 2014 - 16:34
#17
Отправлено 20 Май 2014 - 11:11
echo "<form method='get'>";
echo "<input type='checkbox' name='f549' value='$ID'>";
echo "<input type='submit' value='Отправить'>";
echo "</form>";
Как отобразить чекбокс понятно, но как напротив него подставить e-mail не совсем.
#18
Отправлено 20 Май 2014 - 11:19
echo "<input type='checkbox' name='f549' value='$ID'>".$row['f549'];
Вроде бы работа с формами и тем более простой вывод строки - это элементарные знания по PHP.
#19
Отправлено 20 Май 2014 - 11:26
привожу полный код:
$result = data_select(51, "f545=",$line['На кого']['ID']); while ($row = sql_fetch_array($result)) { echo $row['f549']."<br>"; } echo "<form method='get'>"; echo "<input type='checkbox' name='f549' value='$ID'>".$row['f549']; echo "<input type='submit' value='Отправить'>"; echo "</form>";
#20
Отправлено 20 Май 2014 - 12:03
echo "<form method='get'>"; $result = data_select(51, "f545=",$line['На кого']['ID']); while ($row = sql_fetch_array($result)) { echo "<input type='checkbox' name='emails[]' value='".$row['f549']."'>".$row['f549']."<br>"; } echo "<input type='submit' value='Отправить'>"; echo "</form>";
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных