The Search section used both in HttpParsingRules and StringScriptingRules contains a feature that allows to extract rule hits by tokenizing the search result. The idea is that each substring extracted (for example, using the various left/right boundary options) is not the rule hit itself, but can be "tokenized" to yield several rule hits. This tokenizing can be done in several ways and is specified by the xml tag Tokenize.
The tokenizing methods SiebelTokenHtmlSingleQuote and SiebelTokenHtml tokenize the search result into individual strings enclosed either in single or in double quotes. The tokenizing method SiebelTokenApplet tokenizes the search result assuming a series of length prefixed strings as used in applet responses in the Siebel 7 web application.
<HttpParsingRule> <Name>Siebel Submit Data Array in HTML (from Javascript function call)</Name> <Active>true</Active> <Search> <SearchIn>Body</SearchIn> <LB> <Str>SWESubmitForm</Str> </LB> <RB> <Str>'</Str> </RB> <Tokenize>SiebelTokenHtml</Tokenize> <CondResultLen>1-</CondResultLen> </Search> <ScriptGen> ... </ScriptGen> </HttpParsingRule>
var gsRowValArray_003 : string; // 0*19*02/21/2003 08:20:176*SADMIN4*Note5*1-1P5 // ... WebParseDataBoundEx(gsRowValArray_003, sizeof(gsRowValArray_003), "ValueArray`", WEB_OCCURENCE_LAST, "`", WEB_FLAG_IGNORE_WHITE_SPACE, 1); WebPageForm("http://lab72/sales_enu/start.swe", SALES_ENU_START_SWE026, "Account Note Applet: InvokeMethod: NewRecord"); Print("Parsed \"RowValArray_003\", result: \"" + gsRowValArray_003 + "\""); // Was "0*19*02/21/2003 08:20:176*SADMIN4*Note5*1-1P5" when recording // ... dclform // ... SALES_ENU_START_SWE027: "SWEMethod" := "GetQuickPickInfo", "SWEVI" := "", "SWEView" := "Account Note View", "SWEApplet" := "Account Note Applet", "SWEField" := "s_2_2_24_0", "SWER" := "0", "SWEReqRowId" := "1", "s_2_2_26_0" := "2/21/2003 08:20:17 AM", "s_2_2_27_0" := SiebelTokenApplet(gsRowValArray_003, 2), // value: "SADMIN" "s_2_2_24_0" := SiebelTokenApplet(gsRowValArray_003, 3), // value: "Note" "s_2_2_25_0" := "", "SWERPC" := "1", "SWEC" := "11", "SWEActiveApplet" := "Account Note Applet", "SWEActiveView" := "Account Note View", "SWECmd" := "InvokeMethod", "SWERowId" := SiebelTokenApplet(gsRowValArray_003, 4), // value: "1-1P5" "SWERowIds" := "SWERowId0=" + SiebelTokenHtml(gsRowValArray_002, 18), // value: "SWERowId0=1-2T" "SWEP" := "", "SWEJI" := "false", "SWETS" := GetTimeStamp(); // value: "1045844419057"