How to update mat-tree nodes in angular 7 - angular7

I have an object and also a from. I am inserting data from input value in my form to my object which is a nested tree. I can see in console that the data is adding to my tree but I can not see the new data in my UI. I have tried to update but nothing worked. My form is in a separate component than my tree and object is in a separate service. how can I show the new children in my list ?

Related

List management

I have a datasource, which I show as a list in a Flex UI.
I refresh the list periodically, One of my UI requirements is to gracefully show when the datasource removes an item from the list, So I'm correlating the current list against the incoming datasource.
The correlation process is this:
Refresh the datasource.
Loop through the existing dataset, Check each ID against the incoming items, if I can't find a match, flag the existing item as closed. (UI handles this flag on item update and does it's visual trick.)
On the next refresh of data, look for flagged items in the current list and remove them.
Here's my question, am I doing this in the most efficient manner? Or is there some simple trick I'm missing?
Update: would a JAXB equivalent for as3 help here?
As I understand it, you probably want to have an custom item renderer for each item in the list. Then, when you merge the original list with the updated list, if an item has been deleted, you set a property on the list object(e.g., x[i].deleted=true). Then in your custom item renderer, you just render it differently depending on the state of the "deleted" property.
Simple.
I'm not sure I quite follow, but could you just use the new data from the data source as the data provider to the list i.e. bind it to the result of the data source update?

ADF tree binding issue

I'm using 3 levels tree VO's. All three VO's has bind variables. The VO's are connected via View link. I'm using createViewLinkAccessorRS in order to pass the variables from parent to child VO.. i defined Target Data Source (EL_expression) for second and third level.The tree works fine, and the nodes filled correctly (all the way down). The Problem is that the second and the third tree level attributes are only shown in the tree component. anywhere else in the page it looks like they are empty ({bindings.(attname).inputValue} = null) (E.g - after dragging the third tree level "FlowOrder" from the AppModuleDataControl and create a form out of it, and selecting the second node of the tree will update all the third level tree node (please see attached image), but will leave the entire form which was just created empty)
Any idea why the FlowOrder bindings are empty? i assume that maybe it has to do with the bind variable of the VO .. i even thought i would change the tree selection listener so on the second level click it will perform a full query of "FlowOrder" via executewithparams, but it does not make any sense because the data was fetched already after clicking level 2 tree)
(Jdeveloper : 12.2.1.2.0)
attached image: Details
Check out my explanation on trees and example application in another post: ADF filter table based on tree selection The tree shows data from view link accessors. The form shows data from view instance. They are in different state.

Treepanel losing selection after appending nodes. (ExtJS / Rally)

I am creating a treepanel object in Ext JS which dynamically adds nodes to the tree based on child information returned from the server. The problem I'm having is that I would like to be able to select multiple objects from the tree and have that selection remain after expanding a node. Since appending nodes is effectively changing the tree, the selection is lost. Is there any way I can preserve this selection after appending the new nodes?
you could save the nodes or ids of the nodes being selected and then reselect them after appending additional nods.

How to Access DataTable Information Filled By a Module From a Form

I have a DataSet named BillMat.xsd
When my application loads, a module fills that dataset's DataTable with the correct information.
My question is ... How can I access that DataTable's already filled information from another form?
Here's how I tried to access it on one of my forms:
Dim View As New DataView
View.Table = BillMat.Tables("dtBillHeader")
But I get the following error:
If I create a new instance of my dataset and store it in a variable, I'll be able to get rid of this error message but it will also get rid of all my data in my dataset's datatables ... Is there a way to access a DataTable's information from another form?
You need to fix it so both forms are referencing the same DataSet or DataTable object. If one is a "child" form of the other, such as a dialog, you can pass it from the parent to the child via a property. Otherwise, ideally, the same data object would be injected into both forms by some third object which created both of the forms. Short of all that, you could create a singleton or global variable, but please don't!

How to update data with TreeStore or TreeEditor component?

I use tree.Panel and TreeStore component. I use JSON file to store my datas but i would like know, how to upgrade my data with a TreeStore ?!
I explain my problem : I have 2 components on my page :
Tree.Panel who display data with TreeStore and Panel to editing data, because i don't find how to editing tree directly ?!
I want to use a Submit button to update data on my tree but i don't understand how to do this?!
If its possible ?!
I don't understand how i can add new node , upgrade node and delete node ?!
Or there exist maybe TreeEditor component ?!
Thanks a lot to helps :)
I think we are yet to see a TreeEditor component. But there are ways to manipulate your existing tree. You should be able to add, update, remove tree nodes using the methods of NodeInterface.
You have methods like:
appendChild
insertChild
insertBefore
removeChild
replaceChild
etc...
Here is a sample code how you can append a new node to your tree:
var node = myTreeStore.getRootNode();
node.appendChild({
text: 'A New node'
});
Similarly you can make use of other methods to manipulate the tree. To insert node into specific location, you will have to use the insertChild. For this method, you will have to specify the location as well.
In short, the access point of editing your tree is your TreeStore's getRootNode() method.

Resources