Пример #1
0
 void dgv采购需求单_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
     {
         string 订单号 = dgv采购需求单["用途", e.RowIndex].Value.ToString();
         mySystem.Process.Order.采购需求单 form = new mySystem.Process.Order.采购需求单(mainform, 订单号);
         form.Show();
     }
 }
Пример #2
0
        void 更新销售需求单和销售批准单()
        {
            string 订单号 = dtOuter.Rows[0]["订单号"].ToString();
            string 状态  = dtOuter.Rows[0]["状态"].ToString();

            if (状态.Equals("已生成采购需求单"))
            {
                mySystem.Process.Order.采购需求单 form = new mySystem.Process.Order.采购需求单(mainform, 订单号);
                form.更新();
                // 获取所有需求单流水号,每个流水号循环处理
                List <String> x需求单流水号 = form.get需求流水号();
                foreach (String l流水号 in x需求单流水号)
                {
                    // 查找批准单详细信息,是否有这个号
                    String            sql = "select * from 采购批准单详细信息 where 组件订单需求流水号='{0}' and 用途='{1}'";
                    SqlDataAdapter    da  = new SqlDataAdapter(String.Format(sql, l流水号, 订单号), mySystem.Parameter.conn);
                    SqlCommandBuilder cb  = new SqlCommandBuilder(da);
                    DataTable         dt  = new DataTable();
                    da.Fill(dt);
                    if (dt.Rows.Count > 0)
                    {
                        // 如果有,比较区别,记录变化
                        double 原来的数量 = Convert.ToDouble(dt.Rows[0]["采购数量"]);
                        double 原来的件数 = Convert.ToDouble(dt.Rows[0]["采购件数"]);

                        DataRow[] drs   = form.dtInner.Select("组件订单需求流水号='x需求单流水号'");
                        double    现在的数量 = Convert.ToDouble(drs[0]["采购数量"]);
                        double    现在的件数 = Convert.ToDouble(drs[0]["采购件数"]);
                        // 更新批准单详细信息
                        dt.Rows[0]["采购数量"] = 现在的数量;
                        dt.Rows[0]["采购件数"] = 现在的件数;
                        da.Update(dt);
                        // 拿到产品代码和批准单ID
                        string 代码    = dt.Rows[0]["存货代码"].ToString();
                        int    批准单id = Convert.ToInt32(dt.Rows[0]["ID"]);
                        // 更新实际购入信息
                        sql = "select * from 采购批准单实际购入信息 where 采购批准单ID={0} and 产品代码='{1}'";
                        da  = new SqlDataAdapter(String.Format(sql, 批准单id, 代码), mySystem.Parameter.conn);
                        cb  = new SqlCommandBuilder(da);
                        dt  = new DataTable();
                        da.Fill(dt);
                        dt.Rows[0]["订单需求数量"] = Convert.ToDouble(dt.Rows[0]["订单需求数量"]) + 现在的数量 - 原来的数量;
                        dt.Rows[0]["实际购入"]   = Convert.ToDouble(dt.Rows[0]["实际购入"]) + 现在的数量 - 原来的数量;
                        da.Update(dt);
                    }
                }
            }
        }
Пример #3
0
        private void btn添加采购需求单_Click(object sender, EventArgs e)
        {
            // 获取所有审核完成的订单
            SqlDataAdapter da = new SqlDataAdapter("select * from 销售订单 where 状态='审核完成'", mySystem.Parameter.conn);
            DataTable      dt = new DataTable();

            da.Fill(dt);
            try
            {
                String ids = mySystem.Other.InputDataGridView.getIDs("", dt, false);
                // 把id变成订单号
                if (ids != "")
                {
                    string 订单号 = dt.Select("ID=" + ids)[0]["订单号"].ToString();
                    mySystem.Process.Order.采购需求单 form = new mySystem.Process.Order.采购需求单(mainform, 订单号);
                    form.Show();
                }
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.StackTrace);
            }
        }