Пример #1
0
 void OnExpandAllChildren(object sender, EventArgs e)
 {
     BeginUpdate();
     if (MultiSelect && NodesSelection.Count > 0)
     {
         foreach (CommonTools.Node selnode in NodesSelection)
         {
             selnode.ExpandAll();
         }
         NodesSelection.Clear();
     }
     if (FocusedNode != null)
     {
         FocusedNode.ExpandAll();
     }
     EndUpdate();
 }
Пример #2
0
        private void btnBusinessRequired_Click(object sender, EventArgs e)
        {
            //check selections
            NodesSelection selectionsDB = treeListViewStaging.NodesSelection;

            if (selectionsDB.Count < 1)
            {
                MessageBox.Show("Please select one item from Staging");
                return;
            }

            for (int x = 0; x < selectionsDB.Count; x++)
            {
                CommonTools.Node nodeStaging = selectionsDB[x];

                if (nodeStaging.Parent == null)
                {
                    MessageBox.Show("You are not allowed to select " + nodeStaging[0].ToString() + ". Please select columns instead of Table");
                    continue;
                }

                CommonTools.Node nodeMapping;
                nodeMapping = new CommonTools.Node(new object[] {
                    nodeStaging.Parent["name"].ToString() + "." + nodeStaging["name"].ToString(), BusinessConstraint.BusinessRequired.ToString()
                })
                {
                    ImageId = 0
                };
                int currentNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewAccurateXML.Nodes, nodeMapping[0]);
                if (currentNodeIndex < 0)
                {
                    treeListViewAccurateXML.Nodes.Add(nodeMapping);
                }
                else
                {
                    MessageBox.Show("double map is not allowed");
                    return;
                }
            }

            calculateAccuracy();
        }
Пример #3
0
 void OnCollapseAllChildren(object sender, EventArgs e)
 {
     BeginUpdate();
     if (MultiSelect && NodesSelection.Count > 0)
     {
         foreach (CommonTools.Node selnode in NodesSelection)
         {
             foreach (CommonTools.Node node in selnode.Nodes)
             {
                 node.Collapse();
             }
         }
         NodesSelection.Clear();
     }
     if (FocusedNode != null && FocusedNode.HasChildren)
     {
         foreach (CommonTools.Node node in FocusedNode.Nodes)
         {
             node.Collapse();
         }
     }
     EndUpdate();
 }
Пример #4
0
        private void btnRemove_Click(object sender, EventArgs e)
        {
            NodesSelection selectionsMapping = treeListViewAccurateXML.NodesSelection;

            if (selectionsMapping.Count != 1)
            {
                MessageBox.Show("Please select one item from Mapping to remove");
            }
            else
            {
                if (treeListViewAccurateXML.Nodes.Count <= 0)
                {
                    MessageBox.Show("No record found to delete");
                }
                else
                {
                    int currentNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewAccurateXML.Nodes, selectionsMapping[0]);
                    if (currentNodeIndex == 0) //bug in treeListViewAccurateXML when first node remove the view
                    {
                        NodeCollection nodes = treeListViewAccurateXML.Nodes.Clone();
                        if (selectionsMapping[0].Parent == null)
                        {
                            nodes.Remove(selectionsMapping[0]);
                        }
                        else
                        {
                            nodes[currentNodeIndex].Nodes.Remove(selectionsMapping[0]);
                        }
                        treeListViewAccurateXML.Nodes.Clear();
                        for (int i = 0; i < nodes.Count; i++)
                        {
                            nodes[i].CleanOwner();
                            treeListViewAccurateXML.Nodes.Add(nodes[i]);
                        }
                    }
                    else
                    if (selectionsMapping[0].Parent == null)
                    {
                        treeListViewAccurateXML.Nodes.Remove(selectionsMapping[0]);
                    }
                    else
                    {
                        treeListViewAccurateXML.Nodes[currentNodeIndex].Nodes.Remove(selectionsMapping[0]);
                    }

                    treeListViewAccurateXML.NodesSelection.Clear();

                    if (treeListViewAccurateXML.Nodes.Count > 0)
                    {
                        if (currentNodeIndex < treeListViewAccurateXML.Nodes.Count)
                        {
                            treeListViewAccurateXML.NodesSelection.Add(treeListViewAccurateXML.Nodes[currentNodeIndex]);
                        }
                        else
                        {
                            treeListViewAccurateXML.NodesSelection.Add(treeListViewAccurateXML.Nodes[currentNodeIndex - 1]);
                        }
                    }
                }
            }
        }
Пример #5
0
        private void btnMap_Click(object sender, EventArgs e)
        {
            //check selections
            NodesSelection selectionsDB = treeListViewDatabase.NodesSelection;

            if (selectionsDB.Count < 1)
            {
                MessageBox.Show("Please select one item from Source Database");
                return;
            }
            NodesSelection selectionsStagingDB = treeListViewStagingDatabase.NodesSelection;

            if (selectionsStagingDB.Count < 1)
            {
                MessageBox.Show("Please select one item from Staging Database to map");
                return;
            }
            if (selectionsDB.Count != selectionsStagingDB.Count)
            {
                MessageBox.Show("Items must have same number in both side");
                return;
            }

            for (int x = 0; x < selectionsDB.Count; x++)
            {
                Node nodeSourceDB  = selectionsDB[x];
                Node nodeStagingDB = selectionsStagingDB[x];

                if ((nodeSourceDB.Parent != null && nodeStagingDB.Parent == null) || (nodeSourceDB.Parent == null && nodeStagingDB.Parent != null))
                {
                    MessageBox.Show("Each selection must be in same level for a node");
                    return;
                }

                if (nodeSourceDB.Nodes.Count != nodeStagingDB.Nodes.Count)
                {
                    MessageBox.Show("Each node must have same number of child nodes in both side");
                    return;
                }

                Node nodeMapping;
                if (nodeSourceDB.Parent != null)
                {
                    nodeMapping = new Node(new object[] {
                        nodeSourceDB.Parent["name"].ToString() + "." + nodeSourceDB["name"].ToString(), nodeSourceDB["type"].ToString(),
                        nodeStagingDB.Parent["name"].ToString() + "." + nodeStagingDB["name"].ToString(), nodeStagingDB["type"].ToString()
                    })
                    {
                        ImageId = 0
                    };
                    int currentNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewMap.Nodes, nodeMapping);
                    if (currentNodeIndex < 0)
                    {
                        int selectedNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewMap.Nodes, nodeStagingDB.Parent["name"].ToString());
                        if (selectedNodeIndex >= 0)
                        {
                            treeListViewMap.Nodes.NodeAtIndex(selectedNodeIndex).Nodes.Add(nodeMapping);
                        }
                        else
                        {
                            treeListViewMap.Nodes.Add(new Node(nodeMapping[2].ToString().Split('.')[0])
                            {
                                ImageId = 1
                            }).Nodes.Add(nodeMapping);
                        }
                    }
                    else
                    {
                        MessageBox.Show("double map is not allowed");
                        return;
                    }
                }
                else
                {
                    for (int i = 0; i < nodeSourceDB.Nodes.Count; i++)
                    {
                        nodeMapping = new Node(new object[] {
                            nodeSourceDB["name"].ToString() + "." + nodeSourceDB.Nodes[i]["name"].ToString(), nodeSourceDB.Nodes[i]["type"].ToString(),
                            nodeStagingDB["name"].ToString() + "." + nodeStagingDB.Nodes[i]["name"].ToString(), nodeStagingDB.Nodes[i]["type"].ToString()
                        })
                        {
                            ImageId = 0
                        };
                        int currentNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewMap.Nodes, nodeMapping);
                        if (currentNodeIndex < 0)
                        {
                            int selectedNodeIndex = CRMOntology.BusinessLayer.Node.GetNodeIndex(treeListViewMap.Nodes, nodeStagingDB["name"].ToString());
                            if (selectedNodeIndex >= 0)
                            {
                                treeListViewMap.Nodes.NodeAtIndex(selectedNodeIndex).Nodes.Add(nodeMapping);
                            }
                            else
                            {
                                treeListViewMap.Nodes.Add(new Node(nodeMapping[2].ToString().Split('.')[0])
                                {
                                    ImageId = 1
                                }).Nodes.Add(nodeMapping);
                            }
                        }
                        else
                        {
                            MessageBox.Show("double map is not allowed");
                            return;
                        }
                    }
                }
            }
        }