Ejemplo n.º 1
0
        public int LIZNI_SEQ(string sequence)
        {
            DBVal         dbv  = new DBVal(sesna);
            IDBValFactory idbv = dbv.CreateDBV();
            int           ID   = 0;

            if (idbv.Database == typeof(MSSQL))
            {
                if (sequence == "PRPL_ID")
                {
                    sequence = "P_SEQUENCE_PRPL";
                }
                if (sequence == "PLATBA_ID")
                {
                    sequence = "P_SEQUENCE_PLATBA";
                }
                DevExpress.Xpo.DB.SelectedData selData = sesna.ExecuteSproc("LIZNI_SEQ", new OperandValue(sequence));
                ID = Convert.ToInt32(selData.ResultSet[0].Rows[0].Values[0]);
            }

            if (idbv.GetType() == typeof(ORACLE))
            {
                if (sequence == "PRPL_ID")
                {
                    sequence = "P_SEQ_PRPL_ID";
                }
                if (sequence == "PLATBA_ID")
                {
                    sequence = "P_SEQ_PLATBA_ID";
                }
                object obj = sesna.ExecuteScalar("select " + sequence + ".Nextval ID from dual");
                ID = Convert.ToInt32(obj);
            }

            if (ID == 0)
            {
                throw new Exception(String.Format("chyba při čtení hodnoty sequence {0}", sequence));
            }

            return(ID);
        }