Example #1
0
        //--------------------
        //����ı���ֶΡ����ʽ�������������ȵĴ���
        public void GetPara(string BaseItem)
        {
            string[] myValue;
            //��������
            string[] mySplit;
            //string[] myAssicate;
            //������ָ��
            char[] a;
            //�������ڷָ��
            char[] b;
            char[] c;
            char[] d;
            d = "[".ToCharArray();
            c = ",".ToCharArray();
            a = "~".ToCharArray();
            b = ":".ToCharArray();

            //-----------------------------
            string[] myAssicate;
            SqlDataReader objAssReader;
            dealData getTF = new dealData();
            objAssReader = getTF.getAssicate(m_strMainObject);
            //if (!In(m_strMainObject + ".ZA0100", mAssicate))
            //{
            //    mAssicate.Add(m_strMainObject + ".ZA0100");
            //}
            while (objAssReader.Read())
            {
                myAssicate = objAssReader[ILC.PROPERTYSET].ToString().Split(c);
                for (int i = 0; i <= myAssicate.Length - 1; i++)
                {
                    if (!In(m_strMainObject + "." + myAssicate[i].ToString().Trim(), mAssicate) && myAssicate[i].ToString().Trim() != "")
                    {
                        mAssicate.Add(m_strMainObject + "." + myAssicate[i].ToString().Trim());
                    }
                }
            }
            //------------------------------------

            //--------------------------

            myValue = BaseItem.Split(a);
            if (BaseItem != "")
            {
                //һ��ѭ���ֽⳣ�������ʽ----------------------------------------------
                for (int i = myValue.Length - 1; i >= 0; i--)
                {
                    //mysplit[4]:�洢����������Ϊ����ı��ʽ;
                    //mysplit[5]:�洢������ʽָ��;
                    //mysplit[7]:�洢������ʽ��ֵ�����г���,��������֮��ı��ʽ���޷���ֵ�ĺ���
                    //��ʶ������$,����#,���ʽ^
                    mySplit = myValue[i].ToString().Split(b);
                    //����split[4]
                    if (mySplit[4].ToString().Trim() != "" && mySplit[4].ToString().Trim() != ".")
                    {
                        switch (mySplit[4].ToString().Trim().Substring(0, 1).ToString())
                        {
                            case "#"://����
                                if (!In(mySplit[4].ToString().Trim().Substring(1).ToString(), mFunction))
                                {
                                    mFunction.Add(mySplit[4].ToString().Trim().Substring(1).ToString());
                                }
                                break;
                            case "^"://���ʽ
                                if (!In(mySplit[4].ToString().Trim().Substring(1).ToString(), mExpress))
                                {
                                    mExpress.Add(mySplit[4].ToString().Trim().Substring(1).ToString());
                                }
                                break;
                            default:
                                break;
                        }
                    }
                    //����split[7]
                    if (mySplit[7].ToString().Trim() != "" && mySplit[7].ToString().Trim() != ".")
                    {
                        switch (mySplit[7].ToString().Trim().Substring(0, 1).ToString())
                        {
                            case "#"://����
                                if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mFunction))
                                {
                                    //if(mySplit[7].ToString().Trim().Substring(1).ToString()!="��ֵ")
                                    mFunction.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                }
                                break;
                            case "^"://���ʽ
                                if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mExpress))
                                {
                                    mExpress.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                }
                                break;
                            case "$"://����
                                if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mConst) && mySplit[7].ToString().Trim().Substring(1).ToString() != "")
                                {
                                    mConst.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                }
                                break;
                            default:
                                break;
                        }
                    }
                    //����split[5]
                    string temp;
                    if (mySplit[5].ToString().Trim() != ".")
                    {
                        temp = mySplit[5].ToString().Trim().Substring(0, 4).ToString();
                        if (temp != "")
                        {
                            if (mySplit[5].ToString().Trim().Substring(0, 4).ToString() != m_strMainObject)
                            {
                                if (!In(mySplit[5].ToString().Trim().Substring(0, 4).ToString(), mTable) && mySplit[5].ToString().Trim().Substring(0, 4).ToString() != "")
                                {
                                    mTable.Add(mySplit[5].ToString().Trim().Substring(0, 4).ToString());
                                }
                            }
                            if (!In(mySplit[5].ToString().Trim().Substring(0).ToString(), mField) && !In(mySplit[5].ToString().Trim().Substring(0).ToString(), mAssicate) && m_strMainObject + ".ZA0100" != mySplit[5].ToString().Trim().Substring(0).ToString() && mySplit[5].ToString().Trim().Substring(0).ToString() != "")
                            {
                                mField.Add(mySplit[5].ToString().Trim().Substring(0).ToString());
                            }
                        }
                    }
                }
            }

            //�ֽ���ʽ�ͳ���---------------------------------------------
        }
Example #2
0
        //--------------------------------------------------------------------------
        //����ı���ֶΡ����ʽ�������������ȵĴ���
        public void GetPara(int m_TypeNo, int m_SetTableNo, int m_TableNo)
        {
            string[] myValue;
            //��������
            string[] mySplit;
            string[] myAssicate;
            //������ָ��
            char[] a;
            //�������ڷָ��
            char[] b;
            char[] c;
            char[] d;
            d = "[".ToCharArray();
            c = ",".ToCharArray();
            a = "~".ToCharArray();
            b = ":".ToCharArray();
            //strSQl = "";
            SqlDataReader objAssReader;
            SqlDataReader objdataReader;
            dealData getTF = new dealData();

            //��ȡ�ֶα��ʽ����Ϣ
            //objdataReader = getTF.getTableField(m_TypeNo, m_SetTableNo, m_TableNo);
            //�����Ǵ�������ֶ�
            //����������������������������������
            objAssReader = getTF.getAssicate(m_strMainObject);
            //if (!In(m_strMainObject + ".ZA0100", mAssicate))
            //{
            //    mAssicate.Add(m_strMainObject + ".ZA0100");
            //}
            while (objAssReader.Read())
            {
                myAssicate = objAssReader[ILC.PROPERTYSET].ToString().Split(c);
                for (int i = 0; i <= myAssicate.Length - 1; i++)
                {
                    if (!In(m_strMainObject + "." + myAssicate[i].ToString().Trim(), mAssicate) && myAssicate[i].ToString().Trim() != "")
                    {
                        mAssicate.Add(m_strMainObject + "." + myAssicate[i].ToString().Trim());
                    }
                }
            }
            objAssReader.Close();
            //------------------------------------
            //��ȡ�ֶα��ʽ����Ϣ
            objdataReader = getTF.getTableField(m_TypeNo, m_SetTableNo, m_TableNo);
            while (objdataReader.Read())
            {
                //��������д����ֶ����е��ֶ�
                myAssicate = objdataReader[ILC.DEALFIELDNAME].ToString().Split(d);
                for (int i = 1; i <= myAssicate.Length - 1; i++)
                {
                    if (myAssicate[i].ToString().Trim() != "" && !In(myAssicate[i].ToString().Substring(0, 11).Trim(), mField))
                    {
                        mField.Add(myAssicate[i].ToString().Substring(0, 11).Trim());
                    }
                    if (myAssicate[i].ToString().Trim() != "" && !In(myAssicate[i].ToString().Substring(0, 4).Trim(), mTable) && myAssicate[i].ToString().Substring(0, 4).Trim() != m_strMainObject)
                    {
                        mTable.Add(myAssicate[i].ToString().Substring(0, 4).Trim());
                    }
                }

                //mTable
                //---------------------------------------------------------------
                myValue = objdataReader[ILC.BASEITEM].ToString().Split(a);
                if (objdataReader[ILC.BASEITEM].ToString() != "")
                {
                    //һ��ѭ���ֽⳣ�������ʽ----------------------------------------------
                    for (int i = myValue.Length - 1; i >= 0; i--)
                    {
                        //mysplit[4]:�洢����������Ϊ����ı��ʽ;
                        //mysplit[5]:�洢������ʽָ��;
                        //mysplit[7]:�洢������ʽ��ֵ�����г���,��������֮��ı��ʽ���޷���ֵ�ĺ���
                        //��ʶ������$,����#,���ʽ^
                        mySplit = myValue[i].ToString().Split(b);
                        //����split[4]
                        if (mySplit[4].ToString().Trim() != "" && mySplit[4].ToString().Trim() != ".")
                        {
                            switch (mySplit[4].ToString().Trim().Substring(0, 1).ToString())
                            {
                                case "#"://����
                                    if (!In(mySplit[4].ToString().Trim().Substring(1).ToString(), mFunction))
                                    {
                                        mFunction.Add(mySplit[4].ToString().Trim().Substring(1).ToString());
                                    }
                                    break;
                                case "^"://���ʽ
                                    if (!In(mySplit[4].ToString().Trim().Substring(1).ToString(), mExpress))
                                    {
                                        mExpress.Add(mySplit[4].ToString().Trim().Substring(1).ToString());
                                    }
                                    break;
                                default:
                                    break;
                            }
                        }
                        //����split[7]
                        if (mySplit[7].ToString().Trim() != "" && mySplit[7].ToString().Trim() != ".")
                        {
                            switch (mySplit[7].ToString().Trim().Substring(0, 1).ToString())
                            {
                                case "#"://����
                                    if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mFunction))
                                    {
                                        //if(mySplit[7].ToString().Trim().Substring(1).ToString()!="��ֵ")
                                        mFunction.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                    }
                                    break;
                                case "^"://���ʽ
                                    if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mExpress))
                                    {
                                        mExpress.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                    }
                                    break;
                                case "$"://����
                                    if (!In(mySplit[7].ToString().Trim().Substring(1).ToString(), mConst) && mySplit[7].ToString().Trim().Substring(1).ToString() != "")
                                    {
                                        mConst.Add(mySplit[7].ToString().Trim().Substring(1).ToString());
                                    }
                                    break;
                                default:
                                    break;
                            }
                        }
                        //����split[5]
                        string temp;
                        if (mySplit[5].ToString().Trim() != ".")
                        {
                            //hjh 2004.12.29
                            if (mySplit[5].ToString().Length > 14)
                            {
                                break;
                            }
                            //end hjh
                            temp = mySplit[5].ToString().Trim().Substring(0, 4).ToString();
                            if (temp != "")
                            {
                                if (mySplit[5].ToString().Trim().Substring(0, 4).ToString() != m_strMainObject)
                                {
                                    if (!In(mySplit[5].ToString().Trim().Substring(0, 4).ToString(), mTable) && mySplit[5].ToString().Trim().Substring(0, 4).ToString() != "")
                                    {
                                        mTable.Add(mySplit[5].ToString().Trim().Substring(0, 4).ToString());
                                    }
                                }
                                if (!In(mySplit[5].ToString().Trim().Substring(0).ToString(), mField) && !In(mySplit[5].ToString().Trim().Substring(0).ToString(), mAssicate) && m_strMainObject + ".ZA0100" != mySplit[5].ToString().Trim().Substring(0).ToString() && mySplit[5].ToString().Trim().Substring(0).ToString() != "")
                                {
                                    mField.Add(mySplit[5].ToString().Trim().Substring(0).ToString());
                                }
                            }
                        }
                    }
                }

                //�ֽ���ʽ�ͳ���---------------------------------------------
            }
            objdataReader.Close();
        }