Example #1
0
        public static void Exec()
        {
            //const string sql = "SELECT * FROM Contacts";
            DataTable dt = new DataTable();

            dt = GetInfo("SELECT USERID,Name,Email FROM Users");
            List <ZohoUser> lzus = new List <Zoho.ZohoUser>();

            foreach (DataRow row in dt.Rows)
            {
                lzus.Add(new Zoho.ZohoUser()
                {
                    USERID = row["USERID"].ToString(),
                    NameEm = string.Format("{0}  ({1})", row["Name"], row["Email"])
                });
            }

            ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\ZohoUser.json", JsonConvert.SerializeObject(lzus));

            dt = GetInfo("select* from Contacts where  CONTACTID = 123456789");
            List <string> columns = new List <string>();

            foreach (DataColumn col in dt.Columns)
            {
                columns.Add(col.ColumnName);
            }

            ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\ZohoColumns.json", JsonConvert.SerializeObject(columns));
        }
Example #2
0
        public static void Exec(bool isInsert = true)
        {
            string sqls = File.ReadAllText(@"D:\web\AskFormCustom\Zoho\Package\SQL.json");

            if (sqls.Trim().Length == 0)
            {
                return;
            }
            List <Sqls> ls = JsonConvert.DeserializeObject <List <Sqls> >(sqls);

            if (ls.Count == 0)
            {
                return;
            }

            //已执行的拥有者ID
            List <string> Owns = new List <string>();

            if (isInsert)
            {
                //所有添加语句
                var inserts = ls.FindAll(x => x.Email == string.Empty);
                inserts.ForEach(x =>
                {
                    try
                    {
                        ToZoho(x.SQL);

                        //移除已执行的新增语句
                        ls.Remove(x);
                    }
                    catch (Exception ex) { }
                });

                //所有修改语句
                ZohoWrite.Write(@"D:\web\AskFormCustom\Zoho\Package\SQL.json", JsonConvert.SerializeObject(ls));
                return;
            }
            else
            {
                //所有修改语句
                var updates = ls.FindAll(x => x.Email != string.Empty);

                foreach (var u in updates)
                {
                    if (!Owns.Contains(u.OwnID))
                    {
                        var dt = GetDtByOwnID(u.OwnID);

                        if (dt.Rows.Count == 0)
                        {
                            continue;
                        }

                        //当前用户要有更新语句
                        var ownUpdates = updates.FindAll(n => n.OwnID == u.OwnID);

                        foreach (var o in ownUpdates)
                        {
                            DataRow[] drs = dt.Select(string.Format("Email='{0}'", o.Email));
                            if (drs.Length != 0)
                            {
                                string N_CONTACTID = drs[0]["CONTACTID"].ToString();
                                if (N_CONTACTID.Length > 0 && o.SQL.IndexOf("N_CONTACTID") >= 0)
                                {
                                    string sql = o.SQL.Replace("N_CONTACTID", N_CONTACTID);
                                    ToZoho(sql);
                                    Console.WriteLine("Zoho更新了一条数据");
                                }
                            }
                        }
                        Owns.Add(u.OwnID);
                    }
                }
            }
        }