/// <summary>
        /// Delete the mobile business object.
        /// </summary>
        public void Delete()
        {
            lock (YPF.Comercial.RRCC.SUP.CRMMobileDesaDB._synchronizeLock)
            {
                Sybase.Persistence.ConnectionWrapper _conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBWriteConnection();
                try
                {
                    int count = 1;
                    System.Data.IDbCommand ps1 = com.sybase.afx.db.CommandUtil.CreateCommand(_conn, "delete co_crmmobiledesa_1_0_representantecomercialsp where \"user_sp\"=?");
                    com.sybase.afx.db.CommandUtil.SetString(_conn.GetConnectionProfile(), ps1, "user_sp", this.User_sp);
                    count = ps1.ExecuteNonQuery();
                    ps1.Dispose();;
                    _isNew     = false;
                    _isDeleted = true;
                }
                catch (System.Data.DataException ex)
                {
                    throw new Sybase.Persistence.PersistenceException(ex.ToString(), ex);
                }
                finally
                {
                    YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.ReleaseDBConnection();
                }
            }

            RepresentanteComercial.Unsubscribe_all_pull();
        }
        //public RepresentanteComercialModel(RepresentanteComercialModel obj) : base(obj) { }


        public static new RepresentanteComercialModel Create(RepresentanteComercial obj)
        {
            if (obj == null)
            {
                return(null);
            }
            return(new RepresentanteComercialModel(obj) as RepresentanteComercialModel);
        }
예제 #3
0
        public void SincronizacionCompleta(string username)
        {
            configureFechaSincronizacion();
            _loginSync             = true;
            SyncListener.StartTime = DateTime.Now;

            bool firstSync = !TablasMaestrasSincronizadas();

            if (firstSync)
            {
                /******** Sincronizacion de tablas maestras  *******/
                SincronizarTablasMaestras();
            }

            SincronizarParametros();

            /******** Sincronizacion de datos del representante comercial  *******/
            RepresentanteComercial representante = SincronizarRepresentanteComercial(username);
            string codRRCC = representante.CodigoRRCC.Trim();

            /******** Sincronizacion de datos de clientes para el representante comercial  *******/
            SincronizarClientes(codRRCC);

            /******** Sincronizacion de deudas de clientes  *******/
            GenericList <DireccionEntrega> clientes = DireccionEntrega.FindAll();

            if (clientes.Size() > 0)
            {
                SincronizarDeudaClientes(clientes, false);
            }

            /******** Sincronizacion de cabecera de pedidos  *******/
            SincronizarCabeceraPedidos(codRRCC);
            GenericList <ClienteCabeceraPedido> cabecerasPedidos = ClienteCabeceraPedido.FindAll();

            if (cabecerasPedidos.Size() > 0)
            {
                SincronizarDetallePedidos(cabecerasPedidos, codRRCC, false);
            }

            /******** Sincronizacion de facturacion  *******/
            // TODO: Descomentar.
            // SincronizarFacturacion(codRRCC);

            /******** Sincronizacion de datos de interacciones  *******/
            // TODO: Quitar true
            if (true || firstSync || !CRMMobileDesaDB.IsReplayQueueEmpty())
            {
                SincronizarInteraccionesXInterlocutor(codRRCC);
            }

            if (firstSync)
            {
                SincronizarCalendarioInteraccion();
            }
            _loginSync = false;
        }
예제 #4
0
        public static RepresentanteComercial GetRepresentanteComercial(string username)
        {
            Query         supQuery = new Query();
            AttributeTest at       = AttributeTest.Equal("usuario", username);

            supQuery.Where(at);

            return(RepresentanteComercial.FindWithQuery(supQuery).FirstOrDefault());
        }
예제 #5
0
 public RepresentanteComercial SincronizarRepresentanteComercial(string username)
 {
     configureFechaSincronizacion();
     if (RepresentanteComercial.FindAll().Size() == 0)
     {
         RepresentanteComercialSynchronizationParameters syncParams = App.CurrentSUPContext.GetRepresentanteComercial_SynchronizationParameters();
         if (syncParams.Usuario != username)
         {
             syncParams.Usuario = username;
             syncParams.Save();
         }
         App.CurrentSUPContext.Sync(REPRESENTANTE_COMERCIAL, "Representante Comercial");
     }
     return(RepresentanteComercial.FindAll().FirstOrDefault());
 }
 protected RepresentanteComercialModel(RepresentanteComercial obj) : base(obj)
 {
 }
예제 #7
0
 public RepresentanteComercialSynchronizationParameters GetRepresentanteComercial_SynchronizationParameters()
 {
     return(RepresentanteComercial.GetSynchronizationParameters());
 }