Невозможно получить сведения о корреляции в сценариях Vugen
Ниже мой HTML-код
<tr role="row" class="even">
<td class="sorting_1">AMT New Test Class</td>
<td>FY19 - W14
<br>Apr-30-2018</td>
<td>FY19 - W14
<br>May-1-2018</td>
<td><span data-toggle="tooltip" data-original-title="Calendar"><a href="#" onclick="openCalenderModal(event,393517)" class="calenderPop"><i class="fa fa-calendar m-r-10" aria-hidden="true"></i></a></span><span data-toggle="tooltip" data-original-title="Copy"><a href="copySchedule?scheduleClassMainKey=393517&type=copySchedule"><i class="fa fa-clone m-r-10" aria-hidden="true"></i></a></span><span data-toggle="tooltip" style="cursor:pointer" data-original-title="Training Geography not available" onclick="doNothing(event)"><i class="fa fa-globe m-r-10" aria-hidden="true"></i></span><span data-toggle="tooltip" style="cursor:pointer" data-original-title="Comments: " onclick="doNothing(event)"><i class="fa fa-commenting m-r-10" aria-hidden="true"></i></span></td>
</tr>
<tr role="row" class="odd">
<td class="sorting_1">AMT New Test Class</td>
<td>FY19 - W14<br>Apr-30-2018</td>
<td>FY19 - W14<br>May-1-2018</td>
<td><span data-toggle="tooltip" data-original-title="Calendar"><a href="#" onclick="openCalenderModal(event,393528)" class="calenderPop"><i class="fa fa-calendar m-r-10" aria-hidden="true"></i></a></span><span data-toggle="tooltip" data-original-title="Copy"><a href="copySchedule?scheduleClassMainKey=393528&type=copySchedule"><i class="fa fa-clone m-r-10" aria-hidden="true"></i></a></span><span data-toggle="tooltip" style="cursor:pointer" data-original-title="Training Geography not available" onclick="doNothing(event)"><i class="fa fa-globe m-r-10" aria-hidden="true"></i></span><span data-toggle="tooltip" style="cursor:pointer" data-original-title="Comments: " onclick="doNothing(event)"><i class="fa fa-commenting m-r-10" aria-hidden="true"></i></span></td>
</tr>
мой vugen
Сценарий выглядит
web_submit_data("getClassDetails_2",
"Action= websiteURL /getClassDetails",
"Method=POST",
"RecContentType=application/json",
"Referer= websiteURL /manage_schedules",
"Snapshot=t320.inf",
"Mode=HTTP",
ITEMDATA,
"Name=draw", "Value=1", ENDITEM,
"Name=columns", "Value=classSubtypeMaster.classSubtypeName,classSubtypeMaster.classSubtypeKey,divRegJson,finalWeekMapJson,finalWeekMapJson,createdOnDate,createdByUserId,scheduleClassMainKey,scheduleStartId.clndrDate,scheduleEndId.clndrDate,occrStartFiscalWeek,occrEndFiscalWeek,comments", ENDITEM,
"Name=order[0][column]", "Value=0", ENDITEM,
"Name=order[0][dir]", "Value=asc", ENDITEM,
"Name=start", "Value=0", ENDITEM,
"Name=length", "Value=10", ENDITEM,
"Name=search[value]", "Value=", ENDITEM,
"Name=search[regex]", "Value=false", ENDITEM,
"Name=nodeList", "Value=18", ENDITEM,
"Name=nodeIdList", "Value=3", ENDITEM,
"Name=searchColumns", "Value=classSubtypeMaster.classSubtypeKey,divRegJson,finalWeekMapJson", ENDITEM,
LAST);
перед этим шагом я размещаю их ниже web_reg_save_param_ex
функции
И я попробовал с ниже web_reg_save_param_ex
1-я попытка
web_reg_save_param_ex(
"ParamName=scheduleClassMainKey",
"LB=onclick=\"openCalenderModal(event,",
"RB=)\" class=\"calenderPop\">",
"NotFound=error",
"Ordinal=all",
SEARCH_FILTERS,
"Scope=BODY",
"IgnoreRedirections=Yes",
LAST);
2-я попытка
web_reg_save_param_ex(
"ParamName=scheduleClassMainKey",
"LB/RE=<a href=\"copySchedule?scheduleClassMainKey=",
"RB=&type=copySchedule\"><i ",
"NotFound=warning",
"Ordinal=all",
SEARCH_FILTERS,
"Scope=ALL",
"IgnoreRedirections=Yes",
LAST);
Но получаю ошибку в выводе
1-й Попытка вывода
Action.c(213): web_reg_save_param_ex started [MsgId: MMSG-26355]
Action.c(213): Registering web_reg_save_param_ex was successful [MsgId: MMSG-26390]
Action.c(224): web_submit_data("getClassDetails") started [MsgId: MMSG-26355]
Action.c(224): Error -26377: No match found for the requested parameter "scheduleClassMainKey". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 256 bytes, use web_set_max_html_param_len to increase the parameter size [MsgId: MERR-26377]
Action.c(224): Notify: Saving Parameter "scheduleClassMainKey_count = 0"
сохранение параметров как lr_output_message("PC:%d",atoi(lr_eval_string("{scheduleClassMainKey_count}")));
а также
2-я попытка
Action.c(245): Notify: Parameter Substitution: parameter "scheduleClassMainKey_count" = "0"
Action.c(245): 0
Action.c(246): Warning:
Судя по комментариям, пробовал, но все еще становится ниже ошибки в панели вывода:
Action.c(203): web_submit_data("getClassDetails_2") started [MsgId: MMSG-26355]
Action.c(203): Error -26377: No match found for the requested parameter "scheduleClassMainKey". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 256 bytes, use web_set_max_html_param_len to increase the parameter size [MsgId: MERR-26377]
Action.c(203): Error -26377: No match found for the requested parameter "_scheduleClassMainKey". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 256 bytes, use web_set_max_html_param_len to increase the parameter size [MsgId: MERR-26377]
Action.c(203): web_submit_data("getClassDetails_2") highest severity level was "ERROR", 177 body bytes, 510 header bytes, 11 chunking overhead bytes [MsgId: MMSG-26387]
Ending action Action.
может кто-нибудь сказать мне, где я делаю не так.
2 ответа
Обе упрощенные версии web_reg_save_param_ex успешно извлекают значения из предоставленного фрагмента ответа.
web_reg_save_param_ex(
"ParamName=scheduleClassMainKey",
"LB=onclick=\"openCalenderModal(event,",
"RB=)\" class=\"calenderPop\">",
"Ordinal=all",
SEARCH_FILTERS,
"Scope=Body",
LAST);
web_reg_save_param_ex(
"ParamName=_scheduleClassMainKey",
"LB=<a href=\"copySchedule?scheduleClassMainKey=",
"RB=&type=copySchedule\"><i ",
"Ordinal=all",
SEARCH_FILTERS,
"Scope=Body",
LAST);
Выход:
Notify: Saving Parameter "scheduleClassMainKey_1 = 393517".
Notify: Saving Parameter "_scheduleClassMainKey_1 = 393517".
Notify: Saving Parameter "scheduleClassMainKey_2 = 393528".
Notify: Saving Parameter "_scheduleClassMainKey_2 = 393528".
...
Notify: Saving Parameter "scheduleClassMainKey_count = 2".
Notify: Saving Parameter "_scheduleClassMainKey_count = 2".
Пожалуйста, подтвердите, что у вас нет других ошибок / предупреждений в журнале воспроизведения и что фактический ответ сервера содержит ожидаемый HTML-код.
После вашего последнего обновления. Эта цитата из журнала воспроизведения показывает, что размер тела ответа был намного меньше (177 байт) относительно предоставленного фрагмента ответа.
Action.c (203): самый высокий уровень серьезности web_submit_data("getClassDetails_2") был "ОШИБКА", 177 байтов тела, 510 байтов заголовка, 11 байтов служебной информации
Включите расширенный журнал в настройках времени выполнения, которые включают "Расширенная трассировка" и "Данные, возвращаемые сервером", и снова запустите сценарий, чтобы увидеть, содержит ли фактический ответ сервера ожидаемые данные.
Вы сохраняете оба параметра под одним и тем же именем "scheduleClassMainKey"?
Также согласно документации:
The web_reg_save_param_ex function also supports array type parameters. When
you specify Ordinal=All, all the occurrences of the match are saved in an
array. Each element of the array is represented by the ParamName_index. See
Example of Parameter Arrays.
In the following example, the parameter name is A:
web_reg_save_param_ex("ParamName=A", "LB/ic=<a href=", "RB=\'>",
"Ordinal=All", LAST );
The first match is saved as A_1, the second match is saved as A_2, and so
forth. You can retrieve the total number of matches by using the following
term: ParamName_count. For example, to retrieve the total number of matches
saved to the parameter array, use:
TotalNumberOfMatches=atoi(lr_eval_string("{A_count}"));
Следовательно, вам нужно использовать параметр scheduleClassMainKey_1