Exemple #1
0
    private void GetCodeFileData(string Code)
    {
        ParameterList.Clear();
        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);
        ParameterList.Add(Code);
        DataTable Dt = BCO.QueryLineSwitch(SYSModel.MaintainCodeFile.QueryType.CODE, ParameterList);

        if (Dt.Rows.Count > 0)
            foreach (DataRow dr in Dt.Rows)
                SLP_CodeFile3.Items.Add(new ListItem(dr["EXPLAIN"].ToString().Trim(), dr["SCODE"].ToString().Trim()));
        UpdatePanel5.Update();
    }
 public CodeFile()
 {
     co_main = new BCO.MaintainCodeFile(ConntionDB);
 }
    public string CodeFileName(string Code,
                               string Category
                               )
    {
        string Name = "";
        string ConnectionDBStr = ((DatabaseSettings)ConfigurationManager.GetSection("dataConfiguration")).DefaultDatabase;
        MaintainCodeFile BCO = new MaintainCodeFile(ConnectionDBStr);

        if (Code != "")
        {
            ArrayList ParameterList = new ArrayList();
            ParameterList.Add(Category);
            ParameterList.Add(Code);

            DataTable Dt = BCO.QueryLineSwitch(MaintainCodeFile.QueryType.SLP,
                                               ParameterList
                                               );

            if (Dt.Rows.Count > 0)
            {
                Name = Dt.Rows[0]["EXPLAIN"].ToString().Trim();
            }
            else
            {
                Name = "查無資料";
            }
        }

        return Name;
    }
Exemple #4
0
    }//end InsertCancelButton_Click


    /// <summary>
    /// 由新增模式,確認新增
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void InsertButton_Click(object sender, EventArgs e)
    {
        int AddRecord = 0;
        try
        {
            #region 取得畫面元件的值
            string v_Code = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            string v_Name = ((TextBox)FormView1.FindControl("TextBoxName")).Text.Trim();
            DateTime processtime = DateTime.Now;
            string v_Explain = ((TextBox)FormView1.FindControl("TextBoxEXPLAIN")).Text.Trim();

            ParameterList.Clear();
            SYSModel.MaintainProgram Uniq = new SYSModel.MaintainProgram(ConnectionDB);
            ParameterList.Add(v_Code);
            ParameterList.Add("SYS_CODE_MAIN");
            ParameterList.Add("CODE");
            ParameterList.Add("");
            DataTable Dup = Uniq.QuerySwitch(SYSModel.MaintainProgram.QueryType.Duplicate,
                                         ParameterList
                                         );
            if (Dup.Rows.Count > 0)
            {
                if (Dup.Rows[0]["ENABLE"].ToString() == "1")
                {
                    throw new Exception("資料重覆!");
                }
            }
            #endregion
    #endregion

            #region 加入輸入條件

            ParameterList.Clear();

            ParameterList.Add(v_Code);
            ParameterList.Add(v_Name);
            ParameterList.Add(processtime);               //vCreateDate
            ParameterList.Add(Session["UID"].ToString()); //vCreateUID
            ParameterList.Add(processtime);               //vUpdateDate
            ParameterList.Add(Session["UID"].ToString()); //vUpdateUID
            ParameterList.Add(v_Explain);

            #endregion

            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
            AddRecord = BCO.CreateCodeFile(ParameterList, null);

            if (AddRecord == 0)
            {
                throw new Exception("新增0筆資料!");
            }
            else
            {
                Response.Write("<script>alert('新增完成');location.replace('SYS202.aspx?mode=readonly&ID=" + AddRecord + "');</script>");
            }
        }
        catch (Exception ex)
        {
            ErrorMsgLabel_Insert.Text = ex.Message;
        }
    }
        }//Initiziatoin_Component

        private DataTable Linedata()
        {
            ParameterList.Clear();
            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);
            ParameterList.Add(Category);
            ParameterList.Add(_Code);


            DataTable Dt = BCO.QueryLineSwitch(SYSModel.MaintainCodeFile.QueryType.SLP,
                                               ParameterList
                                               );

            return Dt;
        }
Exemple #6
0
 private DataTable Get_CodeFile(string strCategory)
 {
     ParameterList.Clear();
     SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);
     ParameterList.Add(strCategory);  //Category
     ParameterList.Add("");    //_Code
     DataTable dt = BCO.QueryLineSwitch(SYSModel.MaintainCodeFile.QueryType.SLP, ParameterList);
     return dt;
 }
Exemple #7
0
    }//end EditCancelButton_Click

    /// <summary>
    ///  編輯模式,按下更新確認鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void EditCommitButton_Click(object sender, EventArgs e)
    {
        //Trace.Warn("EditCommit");
        int UpdateRecord = 0;
        try
        {
            if (Dtl_Status != "readonly")
            {
                throw new Exception("請先將明細資料做[存檔]或[更新],再按主檔[更新]!");
            }
            else if (this.PanelDetail2.Visible == true)
            {
                throw new Exception("請先將清單資料做[存檔]或[更新],再按主檔[更新]!");
            }
            else
            {
                #region 取得畫面元件的值


                string v_Name = ((TextBox)FormView1.FindControl("TextBoxName")).Text.Trim();
                DateTime processtime = DateTime.Now;
                string v_Explain = ((TextBox)FormView1.FindControl("TextBoxEXPLAIN")).Text.Trim();
                string v_Enable = "1";// ((WUI.SLP.SLP_Boolean)FormView1.FindControl("SLP_Enable")).Text.Trim();           

                #region 取得更新前舊值


                #region 使用XML轉回DataSet

                DataSet Ds = new DataSet();
                DataTable Dt = dt_Result;

                #endregion

                if (Dt.Rows.Count == 0)
                {
                    throw new Exception("抓取不到舊值,更新失敗!");
                }

                #endregion

                DataTable dtData = dt_DetailOLDData;
                for (int i = 0; i < dtData.Rows.Count; i++)
                {

                    //檢查SCODE 是否已存在Dt
                    DataRow[] ins = dtData.Select(string.Format("SCODE='{0}'", dtData.Rows[i]["SCODE"].ToString()));
                    if (ins.Length > 1)
                    {
                        throw new Exception("明細代碼重覆!");
                    }
                }

                DataTable dtDetail2 = dt_TempDetail2;
                for (int i = 0; i < dtDetail2.Rows.Count; i++)
                {

                    //檢查SCODE 是否已存在Dt
                    DataRow[] ins = dtDetail2.Select(string.Format("SCODE='{0}' AND CODE='{1}'", dtDetail2.Rows[i]["SCODE"].ToString(), dtDetail2.Rows[i]["CODE"].ToString()));
                    if (ins.Length > 1)
                    {
                        throw new Exception("明細代碼:" + dtDetail2.Rows[i]["SCODE"].ToString() + "內的清單代碼重覆!");
                    }
                }

                #region 加入更新條件

                ParameterList.Clear();
                //舊值
                ParameterList.Add(Dt.Rows[0]["ID"]);
                ParameterList.Add(Dt.Rows[0]["CODE"]);
                ParameterList.Add(Dt.Rows[0]["NAME"]);
                ParameterList.Add(Dt.Rows[0]["CREATEDATE"]);
                ParameterList.Add(Dt.Rows[0]["CREATEUID"]);
                ParameterList.Add(Dt.Rows[0]["UPDATEDATE"]);
                ParameterList.Add(Dt.Rows[0]["UPDATEUID"]);
                ParameterList.Add(Dt.Rows[0]["ENABLE"]);
                ParameterList.Add(Dt.Rows[0]["EXPLAIN"]);

                //需要更新值

                ParameterList.Add(v_Name);
                ParameterList.Add(processtime);
                ParameterList.Add(Session["UID"].ToString());
                ParameterList.Add(v_Explain);
                ParameterList.Add(v_Enable);

                #endregion

                SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);

                System.Data.Common.DbTransaction DBT = BCO.DBT_Begin();

                //Update SYS_Code_MAIN
                UpdateRecord = BCO.UpdateCodeFile(ParameterList, DBT);

                //Update SYS_Code_DETL
                Update_Dtl(DBT);
                Update_Dtl2(DBT);
                BCO.DBT_End(DBT);

                Panel2.Visible = false;

                if (UpdateRecord == 0)
                {
                    throw new Exception("更新0筆資料!");
                }
                else
                {
                    ClientScript.RegisterClientScriptBlock(this.GetType(), "SYS202", "<script>alert('更改完成');</script>");
                    ChangeFormMode(FormViewMode.ReadOnly);
                }
            }

        }
        catch (Exception ex)
        {
            this.ErrorMsgLabel.Text = ex.Message;

            if (Dtl_Status == "insert")
            {
                this.Btn_Insert.Visible = true;
                this.Btn_Update.Visible = false;
            }
            else if (Dtl_Status == "edit")
            {
                this.Btn_Insert.Visible = false;
                this.Btn_Update.Visible = true;
            }
        }

    }
Exemple #8
0
    }//databind_Mst

    #endregion

    /// <summary>
    /// 繫結資料 DTL
    /// </summary>
    private void databind_Dtl()
    {
        #region
        try
        {
            //ErrorMsgLabel.Text = "";
            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);

            ParameterList.Clear();
            string v_Category = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            ParameterList.Add(v_Category);

            DataTable Dt = BCO.QueryLineData(ParameterList);

            #region 將明細資料放至DetailDt中
            Session[SessionIDName] = Dt;

            #endregion

            #region 使用XML放置到前端資料
            dt_DetailOLDData = Dt;

            #endregion
            GridView2.DataSource = Dt;
            GridView2.PageIndex = 0;
            GridView2.DataBind();

            Load_TempDetail2();
        }
        catch (Exception ex)
        {
        }
        #endregion
    }//databind_Dtl
Exemple #9
0
    }//databind_Dtl

    /// <summary>
    /// 繫結資料 DTL2
    /// </summary>
    private void Load_TempDetail2()
    {
        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
        ParameterList.Clear();
        string strCategory = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
        ParameterList.Add(strCategory);
        ParameterList.Add(DBNull.Value);
        ParameterList.Add(DBNull.Value);
        DataTable Dt = BCO.QueryTHRID(ParameterList);
        dt_TempDetail2 = Dt;//放入暫存檔    
        lblTitle.Text = "明細清單檔";
        lblTab3Msg.Text = "尚未選擇明細代碼";
        GridView3.DataSource = null;
        GridView3.DataBind();
        ButtonNewLine2.Visible = false;
        PanelDetail2.Visible = false;
        txtDetail2Code.Text = "";
        txtDetail2Explain.Text = "";
        upTab3Title.Update();
        upTab3Detail.Update();
    }
Exemple #10
0
    /// <summary>
    /// 清單插入鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Btn_Detail2Insert_Click(object sender, EventArgs e)
    {
        try
        {
            if (dt_TempDetail2.Rows.Count == 0)
            {
                //從DB讀取一空table回來                
                SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
                ParameterList.Add("X");
                ParameterList.Add("X");
                ParameterList.Add("X");
                dt_TempDetail2 = BCO.QueryTHRID(ParameterList);
            }

            int tempID = 0;

            DataView tempDT = new DataView();
            tempDT.Table = dt_TempDetail2.Copy();
            tempDT.Sort = "ID ASC";
            if (dt_TempDetail2.Rows.Count != 0)
            {
                tempID = Convert.ToInt32(tempDT[dt_TempDetail2.Rows.Count - 1]["ID"].ToString());
            }

            //ID和PID暫自訂, 真正寫入CO時會重取
            //LineItem畫面元件內容    
            string strCategory = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            int iPID = int.Parse(hdfSCODE_ID.Value);
            string strScode = hdfSCODE.Value;
            string strCode = this.txtDetail2Code.Text.Trim();
            string strExplain = this.txtDetail2Explain.Text.Trim();
            int iID = tempID + 1;

            //檢查SCODE 是否已存在Dt
            DataRow[] FindRows = dt_TempDetail2.Select(string.Format("CODE='{0}' AND SCODE='{1}'", strCode, strScode));
            if (FindRows.Length <= 0) //1:已存在Dt 0:不存在Dt
            {
                DataRow dRow = dt_TempDetail2.NewRow();
                dRow["ID"] = iID;
                dRow["PID"] = iPID;
                dRow["CREATEDATE"] = DateTime.Now;
                dRow["CREATEUID"] = Session["UID"].ToString();
                dRow["UPDATEDATE"] = DateTime.Now;
                dRow["UPDATEUID"] = Session["UID"].ToString();
                dRow["CATEGORY"] = strCategory;
                dRow["SCODE"] = strScode;
                dRow["CODE"] = strCode;
                dRow["EXPLAIN"] = strExplain;

                dt_TempDetail2.Rows.Add(dRow);

                this.txtDetail2Code.Text = "";
                this.txtDetail2Explain.Text = "";
                this.PanelDetail2.Visible = false;

                BindTempTable_Dtl2(strScode);

                this.ButtonNewLine2.Visible = true;

            }
            else
            {
                lblTab3Msg.Text = "清單代碼重覆!";
            }
        }
        catch (Exception ex)
        {
            lblTab3Msg.Text = ex.Message;
        }
        finally { }
    }
Exemple #11
0
    }//databind

    /// <summary>
    ///  繫結資料 MST
    /// </summary>
    /// <param name=VirtualDataID></param>
    private void databind_Mst(FormViewMode fvm)
    {
        try
        {
            string SessionIDName = "SYS202_" + PageTimeStamp.Value;

            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);

            ParameterList.Clear();
            if (Request["ID"] != null)
                ParameterList.Add(Request["ID"].ToString());
            else
                ParameterList.Add("0");

            dt_Result = BCO.QuerySwitch(SYSModel.MaintainCodeFile.QueryType.ID, ParameterList);

            if (dt_Result.Rows.Count > 0)
            {
                this.hiddenID.Value = dt_Result.Rows[0]["ID"].ToString();
                FormView1.DataSource = dt_Result;
                FormView1.DataBind();

                if (dt_Result.Rows[0]["ENABLE"].ToString() == "0")
                {
                    ((Button)FormView1.FindControl("EditButton")).Visible = false;
                    ((Button)FormView1.FindControl("DeleteButton")).Visible = false;
                }

            }

            AuthorityControls(this);

            //ToolBarStatus
            switch (fvm)
            {
                case FormViewMode.Edit:
                    ToolBarStatus("edit");
                    TextBox txtcode = ((TextBox)this.FormView1.FindControl("TextBoxCode").FindControl("TextBoxCode"));
                    TextBox txtname = ((TextBox)this.FormView1.FindControl("TextBoxCode").FindControl("TextBoxName"));
                    txtname.Visible = false;
                    txtcode.Width = Unit.Parse("18");

                    break;
                case FormViewMode.Insert:
                    ToolBarStatus("insert");
                    //TextBox txtcode2 = ((WUI.SLP.SLPUnique)this.FormView1.FindControl("TextBoxCode")).TextBox_Code;
                    //txtcode2.Width = Unit.Parse("18");
                    TextBox txtcode2 = ((TextBox)this.FormView1.FindControl("TextBoxCode").FindControl("TextBoxCode"));
                    txtcode2.Width = Unit.Parse("18");
                    break;

                case FormViewMode.ReadOnly:
                    ToolBarStatus("readonly");
                    TextBox txtcode1 = ((TextBox)this.FormView1.FindControl("TextBoxCode").FindControl("TextBoxCode"));
                    TextBox txtname1 = ((TextBox)this.FormView1.FindControl("TextBoxCode").FindControl("TextBoxName"));
                    txtname1.Visible = false;
                    txtcode1.Width = Unit.Parse("18");
                    break;
            }
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }

    }//databind_Mst
Exemple #12
0
    }//ButtonNewLine2_Click

    /// <summary>
    /// 明細插入鈕
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Btn_Insert_Click(object sender, EventArgs e)
    {
        DataTable Dt = new DataTable();
        DataSet Ds = new DataSet();
        DataTable Ds_detl = new DataTable();

        if (dt_DetailOLDData != null)
        {
            Ds_detl = dt_DetailOLDData;
        }

        try
        {
            if (Ds_detl.Rows.Count == 0) //if (Ds.Tables.Count == 0)
            {
                //從DB讀取一空table回來
                string SessionIDName = "SYS202_" + PageTimeStamp.Value;

                SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
                ParameterList.Clear();
                Dt = BCO.QueryLineSwitch(SYSModel.MaintainCodeFile.QueryType.Empty, ParameterList);
            }
            else
            {
                Dt = Ds_detl;//Ds.Tables[0];
            }

            tempID_dtl = 0;

            DataView tempDT = new DataView();
            tempDT.Table = Dt.Copy();
            tempDT.Sort = "ID ASC";
            if (Dt.Rows.Count != 0)
            {
                tempID_dtl = Convert.ToInt32(tempDT[Dt.Rows.Count - 1]["ID"].ToString());
            }

            //ID和PID暫自訂, 真正寫入CO時會重取
            //LineItem畫面元件內容    
            string v_Code = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            string v_Scode = this.TextBoxScode_Uniq.Text.Trim();
            string v_Explain = this.TextBoxExplain_Fvm.Text.Trim();
            int v_PID = int.Parse(((TextBox)FormView1.FindControl("TextBoxID")).Text.Trim());
            int v_ID = tempID_dtl + 1;

            //檢查SCODE 是否已存在Dt
            DataRow[] ins = Dt.Select(string.Format("SCODE='{0}'", v_Scode));
            if (ins.Length <= 0) //1:已存在Dt 0:不存在Dt
            {
                DataRow dRow = Dt.NewRow();

                dRow["ID"] = v_ID;
                dRow["PID"] = v_PID;
                dRow["CREATEDATE"] = DateTime.Now;
                dRow["UPDATEDATE"] = DateTime.Now;
                dRow["CREATEUID"] = Session["UID"];
                dRow["UPDATEUID"] = Session["UID"];
                dRow["ENABLE"] = "1";
                dRow["CATEGORY"] = v_Code;
                dRow["SCODE"] = v_Scode;
                dRow["EXPLAIN"] = v_Explain;

                Dt.Rows.Add(dRow);
            }
            else
            {
                this.ShowErrorMessage("明細代碼重覆!");
            }

            this.TextBoxScode_Uniq.Text = " ";
            this.TextBoxExplain_Fvm.Text = " ";
            this.PanelDetail.Visible = false;

            #region 使用XML放置到前端資料
            dt_DetailOLDData = Dt;
            #endregion

            BindTempTable_Dtl();

            this.ButtonNewLine.Visible = true;

            Dtl_Status = "readonly";
        }
        catch (Exception ex)
        {
            ErrorMsgLabel.Text = ex.Message;
        }
        finally { }
    }
Exemple #13
0
    protected void Update_Dtl2(System.Data.Common.DbTransaction DBT)
    {
        #region 取得temp中之資料

        try
        {
            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
            string strCATEGORY = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            DataTable dtData = dt_TempDetail2;

            //N_ID            IN NUMBER,
            //V_CODE          IN VARCHAR2,
            //V_SCODE         IN VARCHAR2,
            //V_CATEGORY      IN VARCHAR2,
            //D_UPDATEDATE    IN DATE,
            //V_UPDATEUID     IN VARCHAR2,
            //D_OLDUPDATEDATE IN DATE,
            //V_OLDUPDATEUID  IN VARCHAR2  
            ParameterList.Clear();
            ParameterList.Add(DBNull.Value);
            ParameterList.Add(DBNull.Value);
            ParameterList.Add(DBNull.Value);
            ParameterList.Add(strCATEGORY);
            ParameterList.Add(DateTime.Now);
            ParameterList.Add(Session["UID"].ToString());
            ParameterList.Add(DBNull.Value);
            ParameterList.Add(DBNull.Value);

            BCO.DeleteTHRID(ParameterList, DBT);

            for (int i = 0; i < dtData.Rows.Count; i++)
            {
                //N_PID        IN NUMBER,
                //D_CREATEDATE IN DATE,
                //V_CREATEUID  IN VARCHAR2,
                //D_UPDATEDATE IN DATE,
                //V_UPDATEUID  IN VARCHAR2,
                //V_CATEGORY   IN VARCHAR2,
                //V_SCODE      IN VARCHAR2,
                //V_CODE       IN VARCHAR2,
                //V_EXPLAIN            

                ParameterList.Clear();
                ParameterList.Add(int.Parse(dtData.Rows[i]["PID"].ToString()));
                ParameterList.Add(DateTime.Now);
                ParameterList.Add(Session["UID"].ToString());
                ParameterList.Add(DateTime.Now);
                ParameterList.Add(Session["UID"].ToString());
                ParameterList.Add(dtData.Rows[i]["CATEGORY"].ToString());
                ParameterList.Add(dtData.Rows[i]["SCODE"].ToString());
                ParameterList.Add(dtData.Rows[i]["CODE"].ToString());
                ParameterList.Add(dtData.Rows[i]["EXPLAIN"].ToString());
                BCO.CreateTHRID(ParameterList, DBT);
            }

        }

        catch (Exception ex)
        {
            throw new Exception(ex.Message);//error訊息丟出顯示
        }
        #endregion
    }
Exemple #14
0
    //Update GridView2
    protected void Update_Dtl(System.Data.Common.DbTransaction DBT)
    {
        #region 取得temp中之資料

        try
        {

            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
            string strCode = ((WUI.SLP.SLPUnique)FormView1.FindControl("TextBoxCode")).Text.Trim();
            DataTable dtData = dt_DetailOLDData;
            ParameterList.Clear();
            ParameterList.Add(strCode);
            ParameterList.Add(DateTime.Now);
            ParameterList.Add(Session["UID"].ToString());
            BCO.DelCodeFileDTLByCode(ParameterList, DBT);

            for (int i = 0; i < dtData.Rows.Count; i++)
            {
                ParameterList.Clear();
                ParameterList.Add(dtData.Rows[i]["PID"]); //CODE_MAIN的ID欄位
                ParameterList.Add(dtData.Rows[i]["CREATEDATE"]);
                ParameterList.Add(dtData.Rows[i]["CREATEUID"]);
                ParameterList.Add(DateTime.Now);
                ParameterList.Add(Session["UID"].ToString());
                ParameterList.Add(dtData.Rows[i]["CATEGORY"]);//CODE_MAIN的CODE欄位
                ParameterList.Add(dtData.Rows[i]["SCODE"]);
                ParameterList.Add(dtData.Rows[i]["EXPLAIN"]);

                BCO.CreateCodeFileDTL(ParameterList, DBT);
            }

        }

        catch (Exception ex)
        {
            throw new Exception(ex.Message);//error訊息丟出顯示
        }
        #endregion
    }
Exemple #15
0
    /// <summary>
    /// 查詢資料庫取得資料

    /// </summary> 
    private void databind()
    {
        //抓取本頁初次登記的時間

        string SessionIDName = "SYS201_" + PageTimeStamp.Value;

        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);

        ParameterList.Clear();
        ParameterList.Add(TextBoxCode.Text.Trim());
        ParameterList.Add(TextBoxName.Text.Trim());
        ParameterList.Add(TextBoxMain_Explain.Text.Trim());
        ParameterList.Add(TextBoxScode.Text.Trim());
        ParameterList.Add(TextBoxExplain.Text.Trim());
        ParameterList.Add("1");//SLP_Enable.Text.Trim());
        ParameterList.Add(TextBoxRowCountLimit.Text.Trim());

        DataTable Dt = BCO.QueryRow(ParameterList, CheckBoxLikeSearch.Checked);

        Session[SessionIDName] = Dt;
        GridView1.DataSource = Dt;
        //設定分頁大小
        if (TextBoxPagesize.Text == "0")
        {
            GridView1.PageSize = 1;
        }
        else
        {
            GridView1.PageSize = (TextBoxPagesize.Text == "") ? 10 : (int.Parse(TextBoxPagesize.Text) < 0) ? 10 : int.Parse(TextBoxPagesize.Text);
        }
        GridView1.PageIndex = 0;
        GridView1.DataBind();

        #region 將Key值存到Session中

        ArrayList arl_Key = new ArrayList();

        foreach (DataRow drRow in Dt.Rows)
        { arl_Key.Add("id=" + drRow["ID"].ToString()); }

        Session["SYS20_SortKey" + this.PageTimeStamp.Value] = arl_Key;

        #endregion

        //if (Dt.Rows.Count == 0)
        //{ this.ErrorMsgLabel.Text = "查無資料"; }    
    }
Exemple #16
0
    private void Loaddata(string NewCode)
    {
        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
        ParameterList.Clear();
        ParameterList.Add(NewCode);
        DataTable Dt = BCO.QueryCodeFileByCode(ParameterList);

        if (Dt != null)
        {
            if (Dt.Rows.Count == 0)
            {
                ArrayList AL = (ArrayList)Session["SYS20_SortKey" + Request.QueryString["SYS202_PageTimeStamp"]];

                string strRemove = "id=" + NewCode;
                AL.Remove(strRemove);
                Session["SYS20_SortKey" + Request.QueryString["SYS202_PageTimeStamp"]] = AL;

                throw new Exception("此筆資料已被其他使用者刪除,請點選上一筆/下一筆鈕或回查詢頁重新查詢!");
            }
        }
    }
Exemple #17
0
    private DataTable GetCodeFile(string strCategory)
    {
        ParameterList.Clear();
        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);

        ParameterList.Add(strCategory); //CATEGORY
        ParameterList.Add(""); //NAME 
        ParameterList.Add(""); //SCODE 
        ParameterList.Add(""); //EXPLAIN 
        ParameterList.Add(9999);

        return BCO.QueryByLikeForSLP(ParameterList);
    }
Exemple #18
0
    /// <summary>
    /// 取得所有Master資料以巡覽
    /// </summary>
    private void GetAllMasterRecordsForBrowse()
    {
        #region
        SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConnectionDB);
        DataTable dtTemp = BCO.QueryCodeFileByALL();
        DataView dvForBrowse = dtTemp.DefaultView;
        dtForBrowse = dvForBrowse.ToTable();

        #endregion
    }
        }//ButtonQuery_Click        

      
        private void databind()
        {
            //抓取本頁初次登記的時間

            string SessionIDName = "SYS_CodeFile_" + PageTimeStamp.Value;

            ParameterList.Clear();
            SYSModel.MaintainCodeFile BCO = new SYSModel.MaintainCodeFile(ConntionDB);

            //ParameterList.Add(TextBoxCode.Text); 
            ParameterList.Add(Category); //CATEGORY
            ParameterList.Add(TextBoxName.Text); //NAME 
            ParameterList.Add(TextBoxScode.Text); //SCODE 
            ParameterList.Add(TextBoxExplain.Text); //EXPLAIN 
            ParameterList.Add(TextBoxRowCountLimit.Text.Trim());

            DataTable Dt = BCO.QueryByLikeForSLP(ParameterList);
            firstpage = 0;
            firstindex = -1;

            //DataTable Dt = BCO.QueryLineSwitch(SYSModel.MaintainCodeFile.QueryType.CODE,
            //                               ParameterList
            //                               );
            Session[SessionIDName] = Dt;
            GridView1.DataSource = Dt;
            //設定分頁大小
            if (TextBoxPagesize.Text == "0")
            {
                GridView1.PageSize = 1;
            }
            else
            {
                GridView1.PageSize = (TextBoxPagesize.Text == "") ? 10 : (int.Parse(TextBoxPagesize.Text) < 0) ? 10 : int.Parse(TextBoxPagesize.Text);
            }
            GridView1.PageIndex = 0;
            GridView1.DataBind();
            GridView1.SelectedIndex = -1;
        }//databind
Exemple #20
0
    protected void DoAddDetail()
    {
        try
        {
            txtCheckQty.Text = txtAdjQty.Text;
            MaintainStoreTransfer bco = new MaintainStoreTransfer(ConnectionDB);
            DataTable dtPriceInfo = null;

            //依第一筆商品明細,取得 稅別、群分類、是否檔期、票期
            //並更新對應欄位的值
            ArrayList parameterList = new ArrayList();
            parameterList.Add(Session.SessionID);
            parameterList.Add(txtStore.Text);
            parameterList.Add(txtItem.Text);
            parameterList.Add(txtPeriod.Text);
            parameterList.Add(Convert.ToDateTime(txtSignDate.Text).ToString("yyyyMMdd"));

            if (int.Parse(ddlIOType.Text) == 24)
                parameterList.Add(31);
            else if (int.Parse(ddlIOType.Text) == 25)
                parameterList.Add(33);
            else
                parameterList.Add(int.Parse(ddlIOType.Text));

            dtPriceInfo = bco.GetPriceInfoList_PROMOTE(true, parameterList);

            if (dtPriceInfo.Rows[0]["PriceDiscountKind"].ToString() == "0")
            {
                ErrorMsgLabel.Text = dtPriceInfo.Rows[0]["MESSAGE"].ToString();
                return;
            }

            if (GridView1.Rows.Count == 0)
            {
                string taxType, rootNo, isSchedule;
                rootNo = dtPriceInfo.Rows[0]["RootNo"].ToString();
                taxType = dtPriceInfo.Rows[0]["TaxType"].ToString();
                int i = int.Parse(dtPriceInfo.Rows[0]["PriceDiscountKind"].ToString());
                isSchedule = i >= 64 ? "1" : "0";
                InvoiceDateRange = dtPriceInfo.Rows[0]["ChargeDate"].ToString();
                SLP_COL_DAYS.Text = InvoiceDateRange;
                rblTaxType.Text = taxType;
                txtRootNo.Text = rootNo;
                rblIsSchedule.Text = isSchedule;
                ItemKey = rootNo + taxType + isSchedule + InvoiceDateRange;

                slpPROMOTE_ID.Text = dtPriceInfo.Rows[0]["PROMOTE_ID"].ToString();

            }
            else
            {
                if (RowMode == RowEditMode.Add)
                {
                    int i = int.Parse(dtPriceInfo.Rows[0]["PriceDiscountKind"].ToString());
                    string isSchedule = i >= 64 ? "1" : "0";
                    if (dtPriceInfo.Rows[0]["RootNo"].ToString() +
                        dtPriceInfo.Rows[0]["TaxType"].ToString() +
                        isSchedule +
                        dtPriceInfo.Rows[0]["ChargeDate"].ToString() != ItemKey)
                    {
                        ErrorMsgLabel.Text = "稅別、群分類、是否檔期或票期不同無法新增";
                        return;
                    }
                    if (slpPROMOTE_ID.Text.Trim() != dtPriceInfo.Rows[0]["PROMOTE_ID"].ToString().Trim())
                    {
                        ErrorMsgLabel.Text = "檔期編號不同無法新增";
                        return;
                    }
                }
            }

            //3.4 記錄在暫存的TABLE內,待按下新增時才會存到資料庫
            //itemName, stAcceptQty, backwardQty, listDisRate, listPrice, retailPrice
            //品名 進貨數 退貨數 牌價折扣率 牌價 零售價
            MaintainCodeFile BCO = new MaintainCodeFile(ConnectionDB);
            ArrayList parameters = new ArrayList();
            DataTable dt = null;

            switch (RowMode)
            {
                case RowEditMode.Add:
                    MaintainSKU sku = new MaintainSKU(ConnectionDB);
                    ArrayList list = new ArrayList();
                    list.Add(txtItem.Text);
                    DataTable dtItem = sku.QuerySKUByCode(list);
                    string itemName = dtItem.Rows[0]["ITEM_NAME"].ToString();
                    IDataReader dr = bco.GetInvInfo(txtStore.Text, txtItem.Text, txtPeriod.Text);
                    string stAcceptQty, backwardQty = "";
                    if (!dr.Read())
                    {
                        stAcceptQty = "0";
                        backwardQty = "0";
                    }
                    else
                    {
                        stAcceptQty = dr["ST_ACCEPT_QTY"].ToString();
                        backwardQty = dr["BACKWARD_QTY"].ToString();
                    }
                    dr.Close();

                    string listDisRate, listPrice, retailPrice, srcCostPrice, priceDiscountKind;
                    listDisRate = dtPriceInfo.Rows[0]["LISTDISRATE"].ToString();
                    listPrice = dtPriceInfo.Rows[0]["LISTPRICE"].ToString();
                    retailPrice = dtPriceInfo.Rows[0]["SRC_RETAILPRICE"].ToString();
                    srcCostPrice = dtPriceInfo.Rows[0]["SRC_COSTPRICE"].ToString();
                    priceDiscountKind = dtPriceInfo.Rows[0]["PRICEDISCOUNTKIND"].ToString();

                    DataRow row = DiffData.NewRow();
                    row["Item"] = txtItem.Text;
                    row["ITEM_NAME"] = itemName;
                    row["Period"] = txtPeriod.Text;
                    row["PSS_ST_ACCEPT_QTY"] = stAcceptQty;
                    row["PSS_BACKWARD_QTY"] = backwardQty;
                    row["DIFF_QTY"] = txtAdjQty.Text;
                    if (txtCheckQty.Text.Length > 0)
                    {
                        row["CHECK_QTY"] = txtCheckQty.Text;
                    }
                    else
                    {
                        row["CHECK_QTY"] = System.DBNull.Value;
                    }
                    row["Cost"] = srcCostPrice;
                    row["Cost_Dis_Rate"] = decimal.Parse(listDisRate);
                    row["Cost_Dis"] = decimal.Parse(listPrice);
                    row["Price"] = decimal.Parse(retailPrice);
                    row["PDKIND"] = int.Parse(priceDiscountKind);
                    if (txtReason.Text.Length > 0)
                    {
                        row["CHECK_REASON"] = txtReason.Text;
                    }
                    else
                    {
                        row["CHECK_REASON"] = System.DBNull.Value;
                    }
                    parameters.Add("1"); /* 1是原因判斷的Category */
                    parameters.Add(txtReason.Text);
                    dt = BCO.QueryLineSwitch(MaintainCodeFile.QueryType.SLP,
                                             parameters
                                            );
                    row["EXPLAIN"] = dt.Rows[0]["EXPLAIN"].ToString();
                    DiffData.Rows.Add(row);
                    break;

                case RowEditMode.Edit:
                    DataRow[] dra = DiffData.Select(string.Format("Item = '{0}' AND Period = '{1}'", txtItem.Text, txtPeriod.Text));

                    parameters.Add("1"); /* 1是原因判斷的Category */
                    parameters.Add(txtReason.Text);
                    dt = BCO.QueryLineSwitch(MaintainCodeFile.QueryType.SLP,
                                             parameters
                                            );
                    if (txtReason.Text.Length > 0)
                    {
                        dra[0]["CHECK_REASON"] = txtReason.Text;
                    }
                    else
                    {
                        dra[0]["CHECK_REASON"] = System.DBNull.Value;
                    }

                    dra[0]["EXPLAIN"] = dt.Rows[0]["EXPLAIN"].ToString();
                    dra[0]["DIFF_QTY"] = txtAdjQty.Text;

                    if (txtCheckQty.Text.Length > 0)
                    {
                        dra[0]["CHECK_QTY"] = txtCheckQty.Text;
                    }
                    else
                    {
                        dra[0]["CHECK_QTY"] = System.DBNull.Value;
                    }
                    break;
            }

            GridView1.DataSource = DiffData;
            GridView1.DataBind();

            txtItem.Text = txtPeriod.Text = txtAdjQty.Text = txtCheckQty.Text = txtReason.Text = "";
            pnlAddDiffItem1.Visible = false;
            btnAddDiffItem.Visible = true;
        }
        catch (Exception ex)
        {
            WaringLogProcess(ex.Message);
            this.ErrorMsgLabel.Text = ex.Message.Split(Environment.NewLine.Replace(Environment.NewLine, "~").ToCharArray())[0];  //直接取第一個
        }
        finally { Finally_Function(); }
    }