Noman Suleman Ответов: 1

Множественная иерархия дочерних элементов parant.


1) у меня есть таблица под названием "цепочка поставок", в которой содержатся данные о клиентах, таких как отношения продавцов и покупателей

2) я хочу отобразить эти множественные отношения в диаграмме типа "организационная диаграмма".

Что я уже пробовал:

HTML
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script type="text/javascript" src="https://www.google.com/jsapi"></script>
        <script type="text/javascript">
            google.load("visualization", "1", { packages: ["orgchart"] });
            google.setOnLoadCallback(drawChart);
            function drawChart() {
                $.ajax({
                    type: "POST",
                    url: "CS.aspx/GetChartData",
                    data: '{}',
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (r) {
                        var data = new google.visualization.DataTable();
                        data.addColumn('string', 'Entity');
                        data.addColumn('string', 'ParentEntity');
                        data.addColumn('string', 'ToolTip');
                       
                        for (var i = 0; i < r.d.length; i++)
                        {
                            //var employeeId = r.d[i][0].toString();
                            //var employeeName = r.d[i][1];
                            //var designation = r.d[i][2];
                            //var reportingManager = r.d[i][3] != null ? r.d[i][3].toString() : '';
                            //data.addRows
                            var employeeId = r.d[i][0].toString();
                            var employeeName = r.d[i][1]
                            var designation = r.d[i][2];
                            var reportingManager = r.d[i][3];
                            var reportingManager = r.d[i][3] != null ? r.d[i][3].toString() : '';
                            data.addRows
                                ([[{
                                f: employeeName,
                                v: employeeId,
                                 //+ '<div>(<span>' + designation + '</span>)</div><img src = "Pictures/' + employeeId + '.jpg" />'
                            }, reportingManager, designation]]);
                        }
                        var chart = new google.visualization.OrgChart($("#chart")[0]);
                        chart.draw(data, { allowHtml: true });
                    },
                    failure: function (r) {
                        alert(r.d);
                    },
                    error: function (r) {
                        alert(r.d);
                    }
                });
            }
        </script>

код cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Web.Services;
using System.Configuration;
using System.Data.SqlClient;
using SPM.BLL;
using DevExpress.Web;

namespace SPM
{
    public partial class CS : System.Web.UI.Page
    {

        public static string TypeID, ID;

        [WebMethod]
        
        public static List<object> GetChartData()
        {
            string query = "SELECT     SupplyChain.SellerID, SupplyChain.BuyerID, ViewAllCustomerForSpplyChain_1.CompanyName AS SellerName,  ViewAllCustomerForSpplyChain.CompanyName AS BuyerName FROM         SupplyChain INNER JOIN ViewAllCustomerForSpplyChain AS ViewAllCustomerForSpplyChain_1 ON SupplyChain.MasterID = ViewAllCustomerForSpplyChain_1.ID AND SupplyChain.MasterTypeID = ViewAllCustomerForSpplyChain_1.TypeID INNER JOIN  ViewAllCustomerForSpplyChain ON SupplyChain.ChildID = ViewAllCustomerForSpplyChain.ID AND SupplyChain.ChildTypeID = ViewAllCustomerForSpplyChain.TypeID WHERE     (SupplyChain.DeleteStatus = 0)";
            //query += " FROM EmployeeHierarchy";
            string constr = ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString;
            using (SqlConnection con = new SqlConnection(constr))
            {
                using (SqlCommand cmd = new SqlCommand(query))
                {
                    List<object> chartData = new List<object>();
                    cmd.CommandType = CommandType.Text;
                    cmd.Connection = con;
                    con.Open();
                    using (SqlDataReader sdr = cmd.ExecuteReader())
                    {
                        while (sdr.Read())
                        {
                            chartData.Add(new object[]
                {
                     sdr["SellerID"], sdr["SellerName"], sdr["BuyerName"] , sdr["BuyerID"]
                });
                        }
                    }
                    con.Close();
                    return chartData;

                }
            }
        }
    }
}

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Приятно!!! Так в чем же вопрос?

Noman Suleman

я уже упоминал выше, что мне нужно

Maciej Los

Мы знаем, чего вы хотите достичь, но мы не знаем, какую проблему вы получаете...

Noman Suleman

у меня есть несколько родительских дочерних записей в таблице, что означает, что моя дочерняя запись в некоторых случаях становится родителем другой дочерней записи, а другая дочерняя запись будет родителем другой дочерней записи.

1 Ответов