public string VendorBaseName(string Code)
    {
            string Name = "";
        string ConnectionDBStr = ((DatabaseSettings)ConfigurationManager.GetSection("dataConfiguration")).DefaultDatabase;
        OUT02 co_main = new OUT02(ConnectionDBStr);

        if (Code != "")
        {
            ArrayList ParameterList = new ArrayList();
            SQLHelper.SQLWhere(ref ParameterList, DbType.String, "MA.VENDOR", Code, "=", "and");//TextBoxCode.Text

            DataTable dt = co_main.QueryVendorBaseByFind_1(ParameterList); //查詢寫在DBO
            if (dt.Rows.Count > 0)
            { Name = dt.Rows[0]["VENDOR_NAME"].ToString().Trim(); }
            else
            { Name = "查無資料"; }
        }

        return Name;
    }
Beispiel #2
0
    }//page_load

    /// <summary>
    /// 繫結資料到控制項
    /// </summary>
    /// <param name="vdb">0:查詢鈕,1:匯出鈕</param>
    private void databind(char src)
    {
        //抓取本頁初次登記的時間
        string SessionIDName = "OUT021_" + PageTimeStamp.Value;

        OUT02 BCO = new OUT02(ConntionDB);
        DataTable Dt = BCO.QuerySKUByFind_2(ParameterList, src);
        DataTable dt = Dt.Copy(); //複製成另一份,因匯出時有將ID及Enable欄位移除
        Session["OUT02" + PageTimeStamp.Value] = dt;
        DataTable dtTemp = Dt.DefaultView.ToTable("TempTable", true, "ID",
             "VENDOR",
             "VENDOR_NAME",
             "VENDOR_OPEN_DATE",
             "VENDOR_CLOSE_DATE",
             "COST_SUBSIDY_PERCENT",
             "CLS_DATE",
             "ACCEPT_COST_TYPE",
             "BUSINESS_ADDR",
             "BUSINESS_FAX",
             "BUSINESS_CONTACT",
             "BUSINESS_EXTENSION",
             "BUSINESS_MAIL",
             "ACCOUNT_CONTACT",
             "ACCOUNT_EXTENSION",
             "ACCOUNT_MAIL",
             "ACC_VENDOR_CODE",
             "ACC_VENDOR_NAME",
             "COM_ADDR",
             "COM_ADDR_2",
             "LIMIT_NUM");

        Session["OUT021_" + PageTimeStamp.Value] = dtTemp;
        if (src == '0')
        {
            ViewState["SortField"] = null;
            GridView1.DataSource = dtTemp;
            //設定分頁大小
            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(drRow["ID"].ToString()); }
            Session["OUT021_SortKey" + PageTimeStamp.Value] = arl_Key;
            #endregion
        }
    }//databind
        /// <summary>
        /// �ت�:�N�W���ɮפ��e�A�s�J�Ȧs��
        /// </summary>
        public void FileToTmp(DataTable dt, DbTransaction RootDBT, string V_DATA_SOURCE, string V_CREATEUID, string V_EFF_START, out string ErrorMsg)
        {
            bool IsRootTranscation = false;

            try
            {
                OUT02 dbo = new OUT02(ref USEDB);

                ErrorMsg = "";
                //�P�_�O�_���ǤJRoot Transcation
                IsRootTranscation = (RootDBT == null) ? true : false;

                #region �Ұʥ���Ϋ��wRootTranscation

                if (IsRootTranscation)
                {
                    //�W�ߩI�s�Ұ�Transcation
                    Conn = USEDB.CreateConnection();
                    Conn.Open();
                    DBT = Conn.BeginTransaction();
                }
                else
                {
                    DBT = RootDBT;
                }

                #endregion

                #region �M��VDS_OUT_VENDOR_TMP

                dbo.doDeleteItemTmp(V_CREATEUID, DBT);

                #endregion

                #region FileToTmp
                ArrayList ParameterList = new ArrayList();
                string V_RESULT = "1";

                if (dt != null)
                {
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        if (V_RESULT == "1")
                        {
                            string[] V_DATA = dt.Rows[i][0].ToString().Split(',');

                            if (V_DATA.Length != 20)
                            {
                                ErrorMsg = "��J�~���������ɮץ��ѡA���ӼƤ��� 20 �ӡA���˵����`����I";
                                throw new Exception(ErrorMsg);
                            }
                            else
                            {
                                int [] V_LENGTH_ARRAY = {10,8,8,8,5,2,1,10,25,30,50,50,30,30,50,30,30,50,50,6};
                                string V_LENGTH_LIMIT = "10,17,19" ; // �i�H���ŭȪ����(���q�ǯu,�|�pE-MAIL,���f�a�}_2)
                                // Ū�J�}�C�����
                                string V_VENDOR = V_DATA[0];
                                string V_VENDOR_NAME = V_DATA[1];
                                string V_VENDOR_OPEN_DATE = V_DATA[2];
                                string V_VENDOR_CLOSE_DATE = V_DATA[3];
                                string V_DISCOUNT = V_DATA[4];
                                string V_CLS_DATE = V_DATA[5];
                                string V_ACCEPT_COST_TYPE = V_DATA[6];
                                string V_ACC_VENDOR_CODE = V_DATA[7];
                                string V_ACC_VENDOR_NAME = V_DATA[8];
                                string V_BUSINESS_FAX = V_DATA[9];
                                string V_BUSINESS_ADDR = V_DATA[10];
                                string V_BUSINESS_CONTACT = V_DATA[11];
                                string V_BUSINESS_EXTENSION = V_DATA[12];
                                string V_BUSINESS_MAIL = V_DATA[13];
                                string V_ACCOUNT_CONTACT = V_DATA[14];
                                string V_ACCOUNT_EXTENSION = V_DATA[15];
                                string V_ACCOUNT_MAIL = V_DATA[16];
                                string V_COM_ADDR = V_DATA[17];
                                string V_COM_ADDR_2 = V_DATA[18];
                                string V_LIMIT_NUM = V_DATA[19];
                                // ��ƪ����ˬd
                                for (int j = 0; j < V_LENGTH_ARRAY.Length;j++ )
                                {
                                    // ���o���ŭȪ�����ˬd
                                    if (V_DATA[j].Length <= 0 && V_LENGTH_LIMIT.IndexOf((j+1).ToString()) == -1)
                                    {
                                        ErrorMsg = string.Format("��J�~���������ɮץ��ѡA��{0}����ơA��{1}�����A�H�Ϥ��o���ŭȪ�����", i, j);
                                        throw new Exception(ErrorMsg);
                                    }
                                    // �����ת��ˬd
                                    if (V_DATA[j].Length > V_LENGTH_ARRAY[j])
                                    {
                                        ErrorMsg = string.Format("��J�~���������ɮץ��ѡA��{0}����ơA��{1}�����A��ƪ��׶W�L����", i, j);
                                        throw new Exception(ErrorMsg);
                                    }
                                }
                                // ��ƫ��O�ˬd
                                int V_IntTryParse;
                                Decimal V_DecTryParse;
                                if (!Decimal.TryParse(V_DISCOUNT, out V_DecTryParse) && !int.TryParse(V_LIMIT_NUM, out V_IntTryParse))
                                {
                                    ErrorMsg = "��J�~���������ɮץ��ѡA���˵����`����I";
                                    throw new Exception(ErrorMsg);
                                }

                                ParameterList.Clear();
                                ParameterList.Add(V_DATA_SOURCE);
                                ParameterList.Add(V_EFF_START);
                                ParameterList.Add(dt.Rows[i][0].ToString());
                                ParameterList.Add(V_CREATEUID);
                                ParameterList.Add(System.DateTime.Now);
                                dbo.doCreateItemTmp(ParameterList, DBT, out V_RESULT);
                            }

                        }
                    }
                }
                #endregion

                #region TmpToDB

                dbo.doCreateItem(Convert.ToDateTime(V_EFF_START), V_CREATEUID, DBT, out V_RESULT);

                if (V_RESULT == "0")
                    ErrorMsg = "��J�~���������ɮץ��ѡA���˵����`����I";
                #endregion

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation����
                    DBT.Commit();
                }
            }
            catch (Exception ex)
            {
                #region �������

                DBT.Rollback();
                #endregion

                throw ex;
            }
            finally
            {
                #region �P�_�O�_��������s�u

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation,�����s�u
                    if (Conn.State == ConnectionState.Connecting)
                    {
                        Conn.Close();
                    }
                }

                #endregion

            }
        }
 public SLP_OutVendorBase()
 {
     co_main = new OUT02(ConntionDB);
 }
 /// <summary>
 /// �ت�:�d�߿��~�T�����
 /// Table:
 ///  B=VDS_STM_ROUTE_STORE_TMP
 /// ����:[��ƫ��A]=2:���~��ơB[�إߤH��]=
 /// </summary>
 public DataTable QueryErrorByFind(string V_CREATEUID, DateTime V_CREATEDATE_S, DateTime V_CREATEDATE_E)
 {
     try
     {
         OUT02 dbo = new OUT02(ref USEDB);
         return dbo.doQueryItemTmpError(V_CREATEUID, V_CREATEDATE_S, V_CREATEDATE_E);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        /// <summary>
        /// �ت�:�d�ߤW�ǫ᪺���\����
        /// Table:VDS_VDM_VCMS_MAIN_TMP
        /// ����:V_CREATEUID
        /// </summary>
        public void QueryItemTmpImportStat(DateTime V_MDC_DATE_START, string V_CREATEUID, out int N_TMP_CNT, out int N_TAB_CNT)
        {
            try
            {
                OUT02 dbo = new OUT02(ref USEDB);

                dbo.doQueryItemTmpImportStat(V_MDC_DATE_START, V_CREATEUID, out N_TMP_CNT, out N_TAB_CNT);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 public DataTable QueryVendorBaseByLike2(ArrayList ParameterList)
 {
     try
     {
         DBO.OUT02 dbo = new OUT02(ref USEDB);
         return dbo.doQueryByLIKE2(ParameterList);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        /// <summary>
        /// �򥻪���sBCO
        /// </summary>
        /// <param name="ParameterList">��s�ܼ�</param>
        /// <param name="RootDBT">�O�_���D���,�L�D�����Jnull</param>
        /// <returns>�^�Ǽv�T����</returns>
        public void UpdateVendorBase(ArrayList ParameterList,
            DbTransaction RootDBT
            )
        {
            bool IsRootTranscation = false;

            try
            {
                //�P�_�O�_���ǤJRoot Transcation
                IsRootTranscation = (RootDBT == null) ? true : false;

                #region �Ұʥ���Ϋ��wRootTranscation

                if (IsRootTranscation)
                {
                    //�W�ߩI�s�Ұ�Transcation
                    Conn = USEDB.CreateConnection();
                    Conn.Open();
                    DBT = Conn.BeginTransaction();
                }
                else
                {
                    DBT = RootDBT;
                }

                #endregion

                DBO.OUT02 dbo = new OUT02(ref USEDB);
                dbo.doUpdate(ParameterList, DBT);

                #region ������\

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation����
                    DBT.Commit();
                }

                #endregion

            }
            catch (Exception ex)
            {
                #region �������

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation����
                    DBT.Rollback();
                }

                #endregion

                throw ex;
            }
            finally
            {
                #region �P�_�O�_��������s�u

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation,�����s�u
                    if (Conn.State == ConnectionState.Connecting)
                    {
                        Conn.Close();
                    }
                }

                #endregion

            }
        }
 public DataTable QueryVendorBaseByALL()
 {
     try
     {
         DBO.OUT02 dbo = new OUT02(ref USEDB);
         return dbo.doQueryAll();
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public DataTable QuerySwitch(QueryType QT,
            ArrayList ParameterList
            )
        {
            DBO.OUT02 dbo = new OUT02(ref USEDB);
            DataTable Dt;

            try
            {
                switch (QT)
                {
                    case QueryType.ALL:
                        Dt = dbo.doQueryAll();
                        break;
                    case QueryType.CODE:
                        Dt = dbo.doQueryByCode(ParameterList);
                        break;
                    case QueryType.ID:
                        Dt = dbo.doQueryByID(ParameterList);
                        break;
                    case QueryType.Custom:
                        Dt = dbo.doQueryByFind(ParameterList);
                        break;
                    default:
                        Dt = new DataTable();
                        break;
                }

                return Dt;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 /// <summary>
 /// �ˮ֨����ӦX���ΰӫ~���
 /// </summary>
 /// <param name="VENODR_CODE">�����ӽs��</param>
 /// <param name="CONTRACT_CNT">�^�Ǭd��VDS_VDM_CONTRACT_MST����</param>
 /// <param name="ITEM_CNT">�^�Ǭd��VDS_ITM_ITEM����</param>
 public void QueryForDelete(string VENODR_CODE, out string CONTRACT_CNT, out string ITEM_CNT)
 {
     try
     {
         DBO.OUT02 dbo = new OUT02(ref USEDB);
         dbo.QueryForDelete(VENODR_CODE, out CONTRACT_CNT, out ITEM_CNT);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
 public DataTable QueryByLikeForSLP(ArrayList ParameterList)
 {
     try
     {
         DBO.OUT02 dbo = new OUT02(ref USEDB);
         return dbo.doQueryLikeForSLP(ParameterList);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public int GetNewID()
        {
            int PID = 0;
            bool IsRootTranscation = false;

            try
            {
                DBO.OUT02 dbo = new OUT02(ref USEDB);

                #region �Ұʥ���Ϋ��wRootTranscation

                if (IsRootTranscation)
                {
                    //�W�ߩI�s�Ұ�Transcation
                    Conn = USEDB.CreateConnection();
                    Conn.Open();
                    DBT = Conn.BeginTransaction();
                }
                else
                {
                    DBT = null;
                }

                #endregion

                PID = dbo.doGetNewID();

                #region ������\

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation����
                    DBT.Commit();
                }

                #endregion

                return PID;
            }
            catch (Exception ex)
            {
                #region �������

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation����
                    DBT.Rollback();
                }

                #endregion

                throw ex;
            }
            finally
            {
                #region �P�_�O�_��������s�u

                if (IsRootTranscation)
                {
                    //�W�ߩI�sTranscation,�����s�u
                    if (Conn.State == ConnectionState.Connecting)
                    {
                        Conn.Close();
                    }
                }

                #endregion

            }
        }