Beispiel #1
0
        private string parentTara(string CN)
        {
            StringBuilder sb = new StringBuilder();
            int           c  = 0;

            sb.Append(CN);
            do
            {
                c = 0;
                string[] sa = CN.Split(sc);
                foreach (string s in sa)
                {
                    MainDataSet.UYTRow zRow = mainDataSet.UYT.FindByYTK(s);
                    if (!string.IsNullOrWhiteSpace(zRow.PN))
                    {
                        string[] sa2 = zRow.PN.Split(sc);
                        foreach (string s2 in sa2)
                        {
                            if (!sb.ToString().Contains("," + s2 + ","))
                            {
                                sb.Append("," + s2);
                                c++;
                            }
                        }
                    }
                }
                CN = sb.ToString();
            } while (c > 0);

            return(CN);
        }
Beispiel #2
0
        private string childTara(string CN)
        {
            StringBuilder YtkS = new StringBuilder();
            int           c    = 0;

/*
 *          List<string> srcList = CN.Replace(" ", "").Split(sc).ToList();
 *          for (int i = 0; i < srcList.Count; i++)
 *          {
 *              if (YtkS.Length > 0)
 *                  YtkS.Append(",");
 *              YtkS.Append(srcList[i]);
 *
 *              MainDataSet.UYTRow zRow = mainDataSet.UYT.FindByYTK(srcList[i]);
 *              if (zRow != null && !zRow.IsCNNull())
 *              {
 *                  var dstList = zRow.CN.Replace(" ","").Split(sc).ToList();
 *                  for (int k = 0; k < dstList.Count; k++)
 *                  {
 *                      if (!string.IsNullOrWhiteSpace(dstList[k]) && !srcList.Contains(dstList[k]))
 *                          YtkS.Append("," + dstList[k]);
 *                  }
 *              }
 *          }
 *          return YtkS.ToString();
 */
            CN = CN.Replace(" ", "");
            YtkS.Append(CN);
            do
            {
                c = 0;
                string[] cYtkA = CN.Split(sc);
                foreach (string cYtk in cYtkA)
                {
                    MainDataSet.UYTRow zRow = mainDataSet.UYT.FindByYTK(cYtk);
                    if (zRow != null && !zRow.IsCNNull())
                    {
                        string[] zYtkA = zRow.CN.Replace(" ", "").Split(sc);
                        foreach (string zYtk in zYtkA)
                        {
                            //if (!sb.ToString().Contains("<"+s2+">"))
                            if (zYtk.Length > 1 && !("," + YtkS.ToString() + ",").Contains("," + zYtk + ","))
                            {
                                YtkS.Append(string.Format(",{0}", zYtk));
                                c++;
                            }
                        }
                    }
                }
                CN = YtkS.ToString();
            } while (c > 0);

            return(YtkS.ToString());
        }