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


Публикации ildar_sh

4 публикаций создано ildar_sh (учитываются публикации только с 30-Март 23)


#6720 сделал кнопку с доп.действием - а она выдает ошибку

Отправлено от ildar_sh в 25 Апрель 2011 - 20:04 in Как это сделать

Здравствуйте.
В запросе из-за которого происходит ошибка полю присваивается псевдоним - cnt_rec, это псевдоним используется в служебном файле программы: templates\view_line.tpl. Думаю это говорит о том что ошибка происходит при выполнении кода Клиентской базы. Также в пользу этой версии то, что ошибка возникает именно после исполнения приведенного выше кода. Пробовал вставить в конец скрипта выход exit. До него ошибок нет.
Подскажите, пожалуйста, в чем может быть проблема.
Еще в таблице "Общая" есть поле с именем "Статус", в коде идет присвоение этому полю. Может это как-то отразится на служебном поле status?
$data = data_table("Общая", "id={ID}");
if($data['Статус'] == 'Размещена')// Ошибка происходит если выполняется это условие
{
//Код устанавливающий статус "Завершено"
$new_status['Статус']='Завершено';
update_query($new_status,"Общая", "id={ID}");
$data['Статус']='Завершено';
//Конец кода устанавливающего статус "Завершено"

//Дальше код из вычислений

// Сюда надо дописать координаторов, пример '-47-52-'
$coordinators = '-47-48-';

/* Список статусов
Возврат
Размещена
Завершено
Закрыта
Проверяется
*/

//Синхронизация статусов заказа общей таблицы и таблицы направления, откуда пришел заказ.
$data = data_table("Общая", "id={ID}");
$action = array();
$action['Дата'] = date("Y-m-d H:i:s");
$action['Кто изменил'] =$user['id'];
$action['id_заказа'] = "{ID}";
$action['Статус'] = $data['Статус'];
$action['Примечания менеджера'] = $data['Примечания менеджера'];
$action['Примечания трафика'] = $data['Примечания трафика'];
insert_query($action, "Ист. заказов");

$status = trim($data['Статус']);
if(in_array($status, array('Размещена','Возврат','Черновик','Завершено','Закрыта')))
{
	$new_data['координаторы'] = '';
	update_query($new_data,"Общая", "id={ID}");
}
else if(in_array($status, array('Проверяется')))
{
	
	$new_data['координаторы'] = $coordinators;
	update_query($new_data,"Общая", "id={ID}");
}

$vid = trim(strtok($data['Вид'], "\n"));

switch($vid) {
	case 'Одноклассники':
		$zakaz_table_name = 'Одноклассники';
		break;	
	case 'Яндекс Директ,':
	case 'Google,':
	case 'Вконтакте,':
		$zakaz_table_name = 'Объявления (яндекс, гугл, вконтакте)';
		break;	
	case 'Мэйл':
		$zakaz_table_name = 'Мэйл';
		break;	
	case 'Маяк':
		$zakaz_table_name = 'Маяк';
		break;
	case 'ДР':
		$zakaz_table_name = 'ДР';
		break;
	case 'Изг. роликов':
		$zakaz_table_name = 'Изг. Роликов';
		break;
	case 'Изг. баннеров':
		$zakaz_table_name = 'Изг. Баннеров';
		break;
	case 'Вконтакте':
		$zakaz_table_name = 'ВКонтакте';
		break;
	case 'Яндекс':
		$zakaz_table_name = 'Яндекс';
		break;
	case 'Яндекс МКБ':
		$zakaz_table_name = 'Яндекс МКБ';
		break;
}

$update_zakaz['Примечания трафика'] = $data['Примечания трафика'];
$update_zakaz['Статус'] = $status;
if(in_array($status, array('Возврат')))
{
	$update_zakaz['Кто добавил'] = $data['Менеджер'];
	$update_zakaz['Дата размещения'] = '0000-00-00 00:00:00';
}
else
{
	$update_zakaz['Кто добавил'] = 1;
}

if($zakaz_table_name) update_query($update_zakaz, $zakaz_table_name, "`id_заказа`='".$data["id_заказа"]."'");
}



#6380 Ошибка при выполнении действия.

Отправлено от ildar_sh в 29 Март 2011 - 19:34 in Как это сделать

Здравствуйте.

Добавил действие в таблицу.

При выполнении этого действия выскакивает ошибка:

Цитата

Fatal error: Unknown column 'Завершено' in 'where clause'
SELECT count(*) as cnt_rec FROM f5_data85 WHERE status=Завершено
in /home/s/smartmedia/public_html/md5/view_line.php on line 723

Таких запросов в моем коде действия не выполняется.
В чем может быть причина?



#6027 Версия 1.9.3

Отправлено от ildar_sh в 09 Март 2011 - 23:04 in Новые версии, новые возможности

Здравствуйте.

Цитата

- Возможность задания яваскрипта для полей

Возможно выполнить JavaScript перед сохранением записи? Для того чтобы проверить корректность введенных данных?



#5536 как сразу подставить "компанию" при добавлении "контактного лица...

Отправлено от ildar_sh в 21 Январь 2011 - 17:32 in Как это сделать

Здравствуйте.
Описанный Вами способ (создать запись в дочерней таблице, заполнить поля, и отправить на редактирование) можно организовать, но при этом в таблице контактные лица могут появится записи "призраки", например менеджер передумает сохранять контактное лицо, и не заполнив поля закроет форму ввода. Нужно другое решение.

Хотел уточнить вопрос topic startera.
У нас есть две таблицы. "Компании" и "Контактные лица". В таблице "Компании" есть поле типа связь "Контактное лицо".
В свою очередь в таблице "Контактные лица" есть поле типа связь "Компания"
Необходимо организовать удобное создание контактного лица при редактировании Компании.
Стандартными средствами контактное лицо привязывается к компании следующими действиями:
0. Просматриваем Компанию.
1. Переходим по ссылке "Контактные лица" в разделе "Связанные таблицы".
2. Жмем кнопку "Добавить Запись"
при этом открывается новая запись таблицы "Контактные лица" где в поле "Компания" указана компания которую мы редактировали.

Пробывал организовать создание контактного лица компании одним кликом, для этого в разделе "Дополнительные действия" создал кнопку "Добавить контактное лицо", в разделе вычилсения php добавил код:
echo "<script>location.href='".$config["site_root"]."/view_line.php?table=79&rel_table=42&rel_value={ID}&line=new'</script>";
Этот код выполняет переход по ссылке, аналогично пункту 2, когда мы делаем все вручную.

При этом желаемого результата я не достиг, поле "Компания" на открывшейся странице бывает пустым, а иногда заполнено др. компанией, не той что нужно.
Как можно организовать стандартный алгоритм, только вместо двух кликов было достаточно одного?