I have the below flow, and I would like the userGroup to be a loop as well according to data that's coming from another database lookup, Can you point me to the best way to approach this?
Your help is appreciated.
You cannot have nested loops in tXMLMap. Another way to achieve this is to build your XML by using the tWriteXMLField component where you can use the concept of Group and Loop Elements. In your example, your group element will be User whereas the loop element will be UserGroup. This allows the grouping (first loop) to be based on the User Tag, and the User Group tag will be your looping element (second loop) inside it. I have attached an image of an a sample:
Hope this helps.
Related
I am new to Blue Prism and Web scraping. I want to scrape a list of items under a header. The header won't change, but the items in the list will.
Example:
Member Listing
Charles Schwab
TD Ameritrade
List changes
Member Listing
Well Fargo
TD Ameritrade
So how do I ensure the attributes in the Application Modeller for the list will always be able to scrape the changing items in the list?
I note some attributes like
tag name = UI
path=/HTML/BODY(1)/SGX-HEADER(1)/HTML/BODY(1)/DIV(1)/MAIN(1)/DIV(1)/ARTICLE(1)/TEMPLATE-BASE(1)/DIV(1)/DIV(1)/SECTION(1)/DIV(1)/SGX-WIDGETS-WRAPPER(1)/WIDGET-RICH-TEXT(5)/UL(1)
What do these attributes mean? Thank you
You can create the attribute to be dynamic and verify it exists before reading it from the application. Once your app modeller is set up it will look something like
path=/HTML/BODY(1)/SGX-HEADER(1)/HTML/BODY(1)/DIV(1)/MAIN(1)/DIV(1)/ARTICLE(1)/TEMPLATE-BASE(1)/DIV(1)/DIV(1)/SECTION(1)/DIV(1)/SGX-WIDGETS-WRAPPER(1)/WIDGET-RICH-TEXT(5)/UL(1)
with this field being set to dynamic. At run time you have a flow that looks like the below:
this is what the flow would look like, check it exists then make space in a collection and read the value at the element path that exists. the wait stage looks like this:
so the flow Is straight forward enough, dynamic variable to track the element existing, once it exists confirmed by wait stage then read the contents at that path value and repeat until there are no more elements that exist and output the collection as a result.
The functionality I seek is very similar to the default ModelStructurePanel model browser, except that I need to list only a subset of elements, by passing a list of dbIds of the elements I want listed. By clicking on an element on that list, have the view focus on that element.
I figure there might be two ways of achieving this by using the ModelStructurePanel (although I'm open to using something else):
Creating a new instanceTree with only the specified elements, then doing something like viewer.modelstructure.setModel(newInstanceTree)
Overwriting the ModelStructurePanel.shouldInclude method to hide all elements but the specified ones.
I have googled for Viewer code boilerplate that would provide this functionality, but have not found it. Any help is very much appreciated.
There is a basic sample here very close to what you described, and I would go with customizing just one action instead create a new one, seems easier.
I've created a table for SSRS to show data for the current quarter, but end users now want to show previous quarters, when appropriate. The request would be simple if it had been given from the start, as I just need to group all of my rows inside of a "Quarter" group. But with the table already created and using multiple mixes of groups and blank rows, I can't figure out how to add Parent Group to the entire existing format. Ideally, the solution would be through the Design view, but I'm thinking it will have to be done by modifying the underlying XML code.
I was able to figure it out by modifying the XML code. I was wanting to add a Parent Row Group, so I found the TablixRowHierarchy tag and essentially mimicked the first TablixMember tag that contained a Group tag. And wrapped all the existing TablixMember tags inside of a new TablixMembers tag.
I assume the same process would apply to column groups, just starting at TablixColumnHierarchy instead.
I ran into other issues, that appear to be limitations regarding the PageName attribute, as I want each Quarter on a different page, but that is unrelated to the original question.
Using the designer, right click on the outer most group and choose add parent group. Adding the group in the XML code is very messy, and not recommended. The added parent group can use a custom expression if needed.
I'm using Delphi 2009 and I want to find index of HTML table which contains given element.
So, in the application, which I created, I use web browser to see the web page. I want to select element from this page and want to get Index of table which contains this element.
If someone can do it, please help me
Using the browser's DOM interfaces, locate the IHTMLElement interface of the desired HTML element as needed, then use its parentElement property to get its parent element, repeating as needed, until you find an element that supports the IHTMLTableCell interface. Its cellIndex property will tell you the index of the cell within its row. Keep iterating the parentElement chain until you find an element that supports the IHTMLTableRow interface. Its rowIndex property will tell you the index of the row within its table. If you need to access the table itself, keep iterating the parentElement chain until you find an element that supports the IHTMLTable interface.
I am stuck when it comes to adding more than one search element. I can get 1 search element to work using the Fusion tables layer wizard but any others added don't function? My website is called earthquakedamagemap.com. I'm trying to build a similar search function to that of newspapermap.com
It is my university project. Any advice would be much appreciated!
Try changing the id of your second select menu to search-string1. Then, in your changeMap1 function, pass 'search-string1' to the method document.getElementById().