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

Axaxa

Регистрация: 12 янв 2010
Offline Активность: 15 дек 2010 14:31
-----

Мои сообщения

В теме: web_submit_data: Изменяемое кол-во параметров.

15 декабря 2010 - 14:13

Нужно вместо web_submit_data использовать web_custom_request

Вот решение:
/*	now write out changed and saved parameters		*/
	for (i = 0;  i < numrecords;  i++)
		{
		sprintf(tmpname, "xxxxxxxnts%d", i);
		lr_save_string(rget_parm(tmpname), "VALUE");
		make_html_parm("VALUE");
		strcat(wcr_buf, tmpname);
		strcat(wcr_buf, "=");
		strcat(wcr_buf, lr_eval_string("{HTML_VALUE}"));
		strcat(wcr_buf, "&");
	
		for (j = 1;  j <= 3;  j++)
			{
			sprintf(tmpname, "xxxxxxe%d_%d", j, i);
			lr_save_string(rget_parm(tmpname), "VALUE");
			make_html_parm("VALUE");

			strcat(wcr_buf, tmpname);
			strcat(wcr_buf, "=");
			strcat(wcr_buf, lr_eval_string("{HTML_VALUE}"));
			strcat(wcr_buf, "&");
			}
		}

	strcat(wcr_buf, "command=Save+Changes");

	web_reg_find("Text=Your changes have been saved", LAST);

	web_revert_auto_header("Pragma");

	lr_start_transaction("xxxxxxxxxxxxxxxx_Save");

	web_custom_request("xxxxxxxxxxxxx_3",
		"URL=http://{SERVER_NAME}/{APP_BASE_DIR}/xxxxxxxxxxxxr",
		"Method=POST",
		"Resource=0",
		"RecContentType=text/html",
		"Referer=http://{SERVER_NAME}/{APP_BASE_DIR}/CppController",
		"Snapshot=t5.inf",
		"Mode=HTTP",
		[b]wcr_buf,[/b]
		LAST);

В теме: Использование оракловых процедур внутри LR скрипта

15 декабря 2010 - 13:48

Смотрите, если нужно просто дергать процедуру, то можно подойти к вопросу как разработчик.
Как вариант найти как в C++ осуществлять соединение с БД ну собственно и использовать его для запуска процедуры.
В таком случае вам не понадобится второй протокол.

В теме: LR скрипты, для тестирования отчетов.

12 января 2010 - 12:19

Попробуйте в настройках вашего скрипта Preferences -> Options далее там увидите Http-request***
Там попробуйте поменять.
Как альтернативный вариант Вы можете замерять время с помощью транзакций, а потом смотреть(lr_get_trans_instance_duration(parent_trans_handle);)
если оно дольше 30 сек, то генерить ошибку ну или выставлять транзакцию в FAIL.