I am trying to dynamically hide a table column in LiveCycle Designer. The table spans multiple pages, and there is a header row at the top of each page. When I set the presence of the header row cell to "hidden", only the cell on the first page is hidden. How do I hide the header row cells on subsequent pages?
I accomplished this by creating an additional section with its own sub-record detail to house what would span multiple pages and left the original section to house only the header record.
So the breakdown looked something like this in the Hierarchy pane:
MainForm
+-MasterPage (Main layout)
+-subForm (Layer over Main page)
+-SubFormDetail (Sub For on Layer)
+-MainTable (Primary Table)
+-HeaderSection (Section to display first page only header)
+-DetailSection (Section to display multi-page rows)
+-DetailRows (Rows to display each records data)
Although admittedly this may not be the best method to accomplish what you are trying to do, it worked for my needs.
Hope that helps.
Related
Relatively new to C/AL development. We have a FactBox page that contains a repeater with a Temporary table page source. The number of lines in the FactBox matches the number of lines in the parent page. The temporary records in the FactBox are accumulated one at a time based on a call from the parent page OnAfterGetRecord trigger. They are loaded into the FactBox based on a call from the parent page OnAfterGetCurrRecord trigger.
1a. For purposes of discussion, lets say there are 10 records in the parent page and in the FactBox page. How do I highlight the matching row in the FactBox when the user selects a given row in the parent page (e.g. they select row 3, I want to highlight row 3 in the FactBox)?
1b. How do I highlight multiple rows if the user selects multiple rows with Shift+Click or Ctrl+Click?
In the case of 1a above, OnAfterGetRecord is fired in the parent page with a filter equal to the key. In the second case, OnAfterGetRecord is fired in the parent page for each record selected by the user with a filter equal to 'Marked: Yes'. If I try to use Mark in the FactBox page, it filters the records so that only the selected ones are displayed in the FactBox, which is not what I want.
We are using 2013R2, although I would be interested in answers for other versions as well.
Thanks in advance for any ideas and/or suggestions.
PS. The FactBox is kind of a summary at a glance idea for each list row contained in the parent page. It contains a handful of temporary table fields that are populated from the parent page row primary key when the parent page OnAfterGetRecord and OnAfterGetCurrRecord triggers are fired. There is a 1 to 1 relationship between parent page lines and FactBox lines.
Basically, instead of having the FactBox oriented vertically displaying data only for the active parent page row, we transposed the FactBox vertical fields into a horizontal row of fields and display one row of FactBox data for each row of parent page data. The FactBox resyncs when the user sorts the parent page by clicking on the headers, etc.
Now I can’t even imagine your business case. Maybe if you spill it you will get a better advice.
Short answer for what you’re asking is.. you can’t. And you don’t want to. This is a factbox. It should provide extended information about line which you don’t want to put into repeater or fasttab because it is from related table. Hence the limitations.
And one more thing. Nav is very limited in terms of different fancy events and triggers. The only way to make it more advance is to write your own visual plugin which will replace most of the page’s interface. There you can do whatever JS (for example) allows you to do.
We have some tables in our database that all have the same attributes but the table is named differently for each. I'm not sure of the Architect's original intent in creating them in this way, but this is what I have to work with.
My question for all the expert Oracle APEX developers: is there away to create a reusable page that I can pass the table name to and that table name would be used in the reporting region and DML processing of that page?
I've read up on templates and plugins and don't see a path forward with those options. Of course, I'm new to webdevelopment, so forgive my ignorance.
We are using version 18.2.
Thanks,
Brian
For reporting purposes, you could use a source which is a function that returns a query (i.e. a SELECT statement). Doing so, you'd dynamically decide which table to select from.
However, DML isn't that simple. Instead of default row processing, you should write your own process(es) so that you'd insert/update/delete rows in the right table. I've never done that, but I'd say that it is possible. Basically, you'd keep all logic in the database (for example, a package) and call those procedures from your Apex application.
You could have multiple regions on one page; one region per table. Then use dynamic actions to show/hide the regions and run the select query based on a table name selected by the user.
Select table name from a dropdown or list
Show the region that matches the table name (dynamic action)
Hide the any other regions that are visible (dynamic action)
Refresh the selected region so the data loads (dynamic action)
If that idea works let me know and I can provide a bit more guidance.
I never tried it with reports, but would it work to put all three reports in a single page, and set them via an Item to have Server-Side Conditions that decide what gets shown in the page? You'd likely need separate items with a determined value for the page to recognize and display.
I know I did that to set buttons such as Delete, Save and Create dynamically, rather than creating two or more separate pages for handling editing of certain information. In this case it regarded which buttons to shown based on a reports' primary key being sent to said "Edit" page. If the value was empty, it meant you wanted to create a new record (also because the create button/link sent no PK). If said PK was sent (via a edit button/link), then you'd have the page recognize it and hide the create button and rather show the edit button.
I'm writing an application that will allow a user to drag/drop specific files onto the application window, parse those files, put the contents into a table (via a QStandardItemModel), and add each file's name (or alias) to a separate tree view (which acts as the document switcher).
I'll use NotePad++ as a simple example.
When I click any of the new files in the leftmost "Doc Switcher," it shows the contents in the right pane. Imagine that right pane is a table. And for instance, imagine that the list on the left is a list of .csv files that were imported into the application.
What I want to do is, upon clicking each item in the list, I want the corresponding parsed .csv file to show up in the table pane on the right.
My table is just a QTableView that displays the contents of the .csv files in a QStandardItemModel. Everything works when it comes to implementing the table and parsing the files.
I also set up a QTreeWidget as the "document switcher." Now, I need to link the document switcher selection to the table so that each file's respective contents will be shown in the table view.
I can have the application populate the tableView with the model contents when the QTreeView's top level item selection changes. That's no problem. The problem is with what I should be checking for when that selection changes and how.
I'm unsure of how to implement this. How do I store a bunch of QStandardItemModel objects and then link them to their names in the document switcher? Should I even be doing that? Do I have to create a new QStandardItemModel for each file that is imported? Should I create one QStandardItemModel, then somehow save it to be pulled back up later and re-use that same table model object for each file that is added? I'm just unsure how how this is supposed to work and feel like I am missing a fundamental part of all of this.
I would suggest two approaches to solve your problem:
You can watch document switcher signal (selection changed) and create new model for the currently selected data. Your table view in the right should show the data, when you set the model. When new file item selected, delete existing model and create new one with new data,
The same as first approach, but instead of recreating model for each data change you can use a single model, but reset its data each time you switch the file.
I am making a nice dashboard. I have Geo-map with projects. When a user clicks on a particular project it will take the user to a detailed page about the project. I want to give this page (sheet) a dynamic title.
For example: The user clicks on the GEO map on the project in Aalst, he will be redirected to the detail page with a tittle "Costs and revenues for Project in Aalst".
Pictures of my dashboard:
enter image description here
enter image description here
I was working with VA 7.1 and there wasn't any way to parameterized text fields in VA reports. I've heard SAS wants to add this function in future release and at this moment you have to find a different way to put dynamic label on the report.
For example you can put a flat table with combination of every posible title you need. Then change style parameters for this table. You can turn off borders and column headers, change table background color, text font size and color, so you can make it looks like as a title field. Then you define filter connection between GEO map and this table, so when you click on the GEO map it will filter single record with correct title.
I'm using LiveCycle Designer ES 8.2.1. I also have a web application injecting data into the report I created with LiveCycle. The basic structure is the following:
1 Master page with 1 page and a content area containing a table filled with a list of object. My table has 1 header row, 2 body rows and a footer row that is added dynamically with page break condition.
The logic behind that is written in FormCalc. Our objects are sent as a list which fills either one or the other body row based on a type. Each object has an "authority" property with a certain value that are used to mark the pages. The list of object is sorted by authority. So, when the current iterating object has a different authority than the previous one, we insert a page brake and the footer row. Everything is wraped in a subform that is "In Content Area" (Object/Pagination/Place).
The problem is that the footer row is not considered as part of the content area. If the last line of a section fits tight in the content area, the footer row overflows outside the content area and even the whole page in some cases.
Here are more details:
We tried any combination of subform wraping and ticking of the "Allow page break with content" check box.
We tried changing the type of the footer row for a body row in case footers were different than body rows.
We tried every combination of "Keep with" and "place".
We tried to change the footer row to a body row and have it displayed on every page and that work, but our client refused the solution...
Starting with the above (pt 4) template and changing back the body to footer row brought us to the begining
To the best of our knowledge, we tried everyting possible...
What I'm looking for is either a confirmed bug for version 8.2.1 about this or a solution other than redesigning the whole report.