Beispiel #1
0
        //-------------------------------------------------------------------
        /// <summary>
        /// Retrourne un nouveau numéro de Ticket unique sous forme d'un entier
        /// </summary>
        /// <returns></returns>
        public int GetNewTicketNumber()
        {
            lock (typeof(CTicketServeur))
            {
                CDatabaseRegistre reg = new CDatabaseRegistre(IdSession);
                long nNumero          = reg.GetValeurLong(c_numTikcet, 100000);
                nNumero++;
                if (!reg.SetValeur(c_numTikcet, nNumero.ToString()))
                {
                    return(-1);
                }

                return((int)nNumero);
            }
        }
Beispiel #2
0
        //-------------------------------------------------------------------
        public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte)
        {
            CResultAErreur result = CResultAErreur.True;
            DataTable      table  = contexte.Tables[GetNomTable()];

            foreach (DataRow row in table.Rows)
            {
                C2iRapportCrystal rapport = new C2iRapportCrystal(row);
                if (row.RowState == DataRowState.Modified)
                {
                    rapport.NumVersion++;
                }
                else if (row.RowState == DataRowState.Added)
                {
                    lock (this)
                    {
                        CDatabaseRegistre registre = new CDatabaseRegistre(m_nIdSession);
                        rapport.CodeEtat = (int)registre.GetValeurLong(c_strNewCodeEtat, 1000);
                        registre.SetValeur(c_strNewCodeEtat, (rapport.CodeEtat + 1).ToString());
                    }
                }
            }
            return(result);
        }