예제 #1
0
        /// <summary>
        /// Sybase internal use only.
        /// <summary>
        public void RbsReplayInternal(YPF.Comercial.RRCC.SUP.ClienteDetallePedido entity)
        {
            YPF.Comercial.RRCC.SUP.intrnl.OperationReplay _replay = new YPF.Comercial.RRCC.SUP.intrnl.OperationReplay();
            _replay.RemoteId  = (".");
            _replay.Component = ("CRMMobileDesa.ClienteDetallePedido_rs");
            _replay.EntityKey = (entity.KeyToString());
            _replay.Operation = (entity.LastOperation);
            bool _includeBig = !("delete").Equals(_replay.Operation);

            com.sybase.afx.json.JsonObject _parameters = new com.sybase.afx.json.JsonObject();
            _parameters.Put("entity", YPF.Comercial.RRCC.SUP.ClienteDetallePedido.__toJSON(entity, _includeBig));
            //_replay.Parameters =(_parameters.ToString());
            //lock(typeof(YPF.Comercial.RRCC.SUP.CRMMobileDesaDB))
            //{
            Sybase.Persistence.ConnectionWrapper _conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBWriteConnection();
            Sybase.Persistence.LocalTransaction  _tran = null;
            try
            {
                _tran = _conn.BeginTransaction();

                com.sybase.afx.json.JsonObject _json = new com.sybase.afx.json.JsonObject();
                _replay.Attributes = (_json.ToString());
                _replay.Save();
                _replay.SaveParameter(_parameters);
                _tran.Commit();
            }
            catch (Sybase.Persistence.PersistenceException pe)
            {
                _tran.Rollback();
                throw pe;
            }
            catch (System.ApplicationException e)
            {
                _tran.Rollback();
                throw e;
            }
            //}
        }
예제 #2
0
 protected  override void Bind(Sybase.Persistence.ConnectionProfile profile, System.Data.IDataReader rs) 
 {
     this.__pedido_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"pedido_CodigoSAP",0);
     this.__pedido_Cuenta = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"pedido_Cuenta",1);
     this.__pedido_Estado_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"pedido_Estado_CodigoSAP",2);
     this.__pedido_direccionEntrega = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"pedido_direccionEntrega",3);
     this.__pedido_FechaCreacion = com.sybase.afx.db.ReaderUtil.GetNullableDate(profile,rs,"pedido_FechaCreacion",4);
     this.__pedido_HoraCreacion = com.sybase.afx.db.ReaderUtil.GetNullableTime(profile,rs,"pedido_HoraCreacion",5);
     this.__pedido_FechaAprobacion = com.sybase.afx.db.ReaderUtil.GetNullableDate(profile,rs,"pedido_FechaAprobacion",6);
     this.__pedido_HoraAprobacion = com.sybase.afx.db.ReaderUtil.GetNullableTime(profile,rs,"pedido_HoraAprobacion",7);
     this.__pedido_ImporteTotal = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"pedido_ImporteTotal",8);
     this.__pedido_ImporteFacturado = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"pedido_ImporteFacturado",9);
     this.__producto_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"producto_CodigoSAP",10);
     this.__producto_Estado_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"producto_Estado_CodigoSAP",11);
     this.__producto_Terminal_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"producto_Terminal_CodigoSAP",12);
     this.__producto_VolumenTotal = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"producto_VolumenTotal",13);
     this.__producto_VolumenPendiente = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"producto_VolumenPendiente",14);
     this.__producto_VolumenDespachado = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"producto_VolumenDespachado",15);
     this.__producto_UnidadMedida = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"producto_UnidadMedida",16);
     this.__producto_ImporteTotal = com.sybase.afx.db.ReaderUtil.GetDecimal(profile,rs,"producto_ImporteTotal",17);
     this.__entrega_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"entrega_CodigoSAP",18);
     this.__entrega_NumeroRemito = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"entrega_NumeroRemito",19);
     this.__entrega_Estado_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"entrega_Estado_CodigoSAP",20);
     this.__entrega_Patente = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"entrega_Patente",21);
     this.__entrega_EstadoTransporte_CodigoSAP = com.sybase.afx.db.ReaderUtil.GetString(profile,rs,"entrega_EstadoTransporte_CodigoSAP",22);
     this.__entrega_FechaPlanificada = com.sybase.afx.db.ReaderUtil.GetNullableDate(profile,rs,"entrega_FechaPlanificada",23);
     this.__entrega_FechaCarga = com.sybase.afx.db.ReaderUtil.GetNullableDate(profile,rs,"entrega_FechaCarga",24);
     this.__entrega_FechaInicio = com.sybase.afx.db.ReaderUtil.GetNullableDate(profile,rs,"entrega_FechaInicio",25);
     this.__pending = com.sybase.afx.db.ReaderUtil.GetBoolean(profile,rs,"pending",26);
     this.__pendingChange = com.sybase.afx.db.ReaderUtil.GetChar(profile,rs,"pendingChange",27);
     this.__replayPending = com.sybase.afx.db.ReaderUtil.GetLong(profile,rs,"replayPending",28);
     this.__replayFailure = com.sybase.afx.db.ReaderUtil.GetLong(profile,rs,"replayFailure",29);
     this.__surrogateKey = com.sybase.afx.db.ReaderUtil.GetLong(profile,rs,"surrogateKey",30);
     this.__replayCounter = com.sybase.afx.db.ReaderUtil.GetLong(profile,rs,"replayCounter",31);
     this.__disableSubmit = com.sybase.afx.db.ReaderUtil.GetBoolean(profile,rs,"disableSubmit",32);
     _isNew = false;
     _isDirty = false;
     if (this.IsPending)
     {
         this.SetOriginalState(null);
         this.__originalStateValid = false;
     }
     else
     {
         YPF.Comercial.RRCC.SUP.ClienteDetallePedido os_1 = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
         os_1.CopyAll(this);
         this.SetOriginalState(os_1);
     }
 }
예제 #3
0
 private static YPF.Comercial.RRCC.SUP.ClienteDetallePedido _find(long id, String sql, bool findOs, bool findNonPending)
 {
     Sybase.Persistence.ConnectionWrapper _conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBReadConnection();
     System.Data.IDataReader _rs = null;
     int count = 0;
     try
     {
         YPF.Comercial.RRCC.SUP.ClienteDetallePedido _rt = null;
         System.Data.IDbCommand ps = com.sybase.afx.db.CommandUtil.CreateCommand(_conn, sql);
         com.sybase.afx.db.CommandUtil.SetLong(_conn.GetConnectionProfile(), ps, "surrogateKey", id);
         _rs = ps.ExecuteReader();
         Sybase.Persistence.ConnectionProfile profile = _conn.GetConnectionProfile();
         while (com.sybase.afx.db.ReaderUtil.Read(profile, _rs))
         {
             _rt = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
             _rt.Bind(profile, _rs);
             count++;
             if(findOs)
             {
                 _rt.__isOsEntity = true;
                 _rt.__pending = false;  
             }
             if( !findNonPending )
             {
                 if(_rt.IsPending)
                 {
                     break;
                 }
             }
             else
             {
                 if( !_rt.IsPending )
                 {
                     break;
                 }
                 else
                 {
                     _rt = null;
                 }
             }
         }
         if (_rs != null) com.sybase.afx.db.ReaderUtil.Close(profile, _rs, count);
         if (ps != null) ps.Dispose();
         return _rt;
     }
     catch(System.Data.DataException ex)
     {
         throw new Sybase.Persistence.PersistenceException(ex.ToString(), ex);
     }
     finally
     {
         YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.ReleaseDBConnection();
     }
 }
예제 #4
0
 /// <summary>
 /// Refresh the mobile business object from database.
 /// </summary>
 public void Refresh()
 {
     if (!_isNew && !__isOsEntity)
     {
         YPF.Comercial.RRCC.SUP.ClienteDetallePedido ent = Load(_pk());
         CopyAll(ent);
         if (this.IsPending)
         {
             this.SetOriginalState(null);
             this.__originalStateValid = false;
         }
         else
         {
             YPF.Comercial.RRCC.SUP.ClienteDetallePedido os_1 = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
             os_1.CopyAll(this);
             this.SetOriginalState(os_1);
         }
         _isNew = false;
         _isDirty = false;
     }
 }
예제 #5
0
 internal static YPF.Comercial.RRCC.SUP.ClienteDetallePedido FromJSON(object _json)
 {
     if (_json == null)
     {
         return null;
     }
     else
     {
         YPF.Comercial.RRCC.SUP.ClienteDetallePedido _obj = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
         _obj._fromJSON((com.sybase.afx.json.JsonObject)_json);
         return _obj;
     }
 }
예제 #6
0
 /// <summary>
 /// Find a List of YPF.Comercial.RRCC.SUP.ClienteDetallePedido
 /// </summary>
 /// <exception cref="PersistentException">Thrown if unable to retrieve mobile business object.</exception>
 /// <remarks> </remarks>
 public static Sybase.Collections.GenericList<YPF.Comercial.RRCC.SUP.ClienteDetallePedido> GetPendingObjects(char pendingChange, int skip, int take)
 {
         skip = skip + 1;
     Sybase.Collections.GenericList<YPF.Comercial.RRCC.SUP.ClienteDetallePedido> result_2 = new Sybase.Collections.GenericList<YPF.Comercial.RRCC.SUP.ClienteDetallePedido>();
     System.Data.IDataReader rs_4 = null;
     int count_5 = 0;
     Sybase.Persistence.ConnectionWrapper _conn = null;
     try
     {
         _conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBReadConnection();
         string _selectSQL = " x.\"a\",x.\"b\",x.\"c\",x.\"d\",x.\"e\",x.\"f\",x.\"g\",x.\"h\",x.\"i\",x.\"j\",x.\"l\",x.\"m\",x.\"n\",x.\"o\",x.\"p\",x.\"q\",x.\"r\",x.\"s\",x.\"t\",x.\"u\",x.\"v\",x.\"w\",x.\"x\",x.\"y\",x.\"z\",x.\"ba\",x.\"pending\",x.\"_pc\",x.\"_rp\",x.\"_rf\",x.\"bb\",x.\"_rc\",x.\"_ds\" from \"crmmobiledesa_1_0_clientedetallepedido\" x where"
                                 + " x.\"_pc\" = ?";
         _selectSQL = "select top " + take + " start at " + skip + " " + _selectSQL;
         System.Data.IDbCommand ps_3 = com.sybase.afx.db.CommandUtil.CreateCommand(_conn, _selectSQL);
         com.sybase.afx.db.CommandUtil.SetChar(_conn.GetConnectionProfile(), ps_3, "pendingChange", pendingChange);
         rs_4 = ps_3.ExecuteReader();
         Sybase.Persistence.ConnectionProfile profile = _conn.GetConnectionProfile();
         while (com.sybase.afx.db.ReaderUtil.Read(profile, rs_4))
         {       
             YPF.Comercial.RRCC.SUP.ClienteDetallePedido entity_6 = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
             entity_6.Bind(profile, rs_4);
             count_5++;
             result_2.Add(entity_6);
         }
         if (rs_4 != null) com.sybase.afx.db.ReaderUtil.Close(profile, rs_4, count_5);
         if (ps_3 != null) ps_3.Dispose();
         _selectSQL = null;
     }
     catch (System.Data.DataException ex)
     {
         throw new Sybase.Persistence.PersistenceException(ex.ToString(), ex);
     }
     finally
     {
         YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.ReleaseDBConnection();
     } 
     return result_2; 
   
 }
예제 #7
0
 /// <summary>
 /// Find a mobile business object YPF.Comercial.RRCC.SUP.ClienteDetallePedido
 /// </summary>
 /// <exception cref="PersistentException">Thrown if unable to retrieve mobile business object.</exception>
 /// <remarks> </remarks>
 public static YPF.Comercial.RRCC.SUP.ClienteDetallePedido FindByPrimaryKey(string pedido_CodigoSAP
                                                                            ,string producto_CodigoSAP
                                                                            ,string entrega_CodigoSAP)
 {
     YPF.Comercial.RRCC.SUP.ClienteDetallePedido result_2 = null;
     System.Data.IDataReader rs_4 = null;
     int count_5 = 0;
     Sybase.Persistence.ConnectionWrapper _conn = null;
     try
     {
         _conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBReadConnection();
         string _selectSQL = "SELECT x.\"a\",x.\"b\",x.\"c\",x.\"d\",x.\"e\",x.\"f\",x.\"g\",x.\"h\",x.\"i\",x.\"j\",x.\"l\",x.\"m\",x.\"n\",x.\"o\",x.\"p\",x.\"q\",x.\"r\",x.\"s\",x.\"t\",x.\"u\",x.\"v\",x.\"w\",x.\"x\",x.\"y\",x.\"z\",x.\"ba\",x.\"pending\",x.\"_pc\",x.\"_rp\",x.\"_rf\",x.\"bb\",x.\"_rc\",x.\"_ds\" FROM \"crmmobiledesa_1_0_clientedetallepedido\" x"
                                 + " WHERE (((x.\"pending\" = 1 or not exists (select x_os.\"bb\" from \"crmmobiledesa_1_0_clientedetallepedido_os\" x_os where x_os.\"bb\" = x.\"bb\")))) and ( x.\"a\" = ? AND x.\"l\" = ? AND x.\"t\" = ?)";
         System.Data.IDbCommand ps_3 = com.sybase.afx.db.CommandUtil.CreateCommand(_conn, _selectSQL);
         com.sybase.afx.db.CommandUtil.SetString(_conn.GetConnectionProfile(), ps_3, "pedido_CodigoSAP", pedido_CodigoSAP);
         com.sybase.afx.db.CommandUtil.SetString(_conn.GetConnectionProfile(), ps_3, "producto_CodigoSAP", producto_CodigoSAP);
         com.sybase.afx.db.CommandUtil.SetString(_conn.GetConnectionProfile(), ps_3, "entrega_CodigoSAP", entrega_CodigoSAP);
         rs_4 = ps_3.ExecuteReader();
         Sybase.Persistence.ConnectionProfile profile = _conn.GetConnectionProfile();
         while (com.sybase.afx.db.ReaderUtil.Read(profile, rs_4))
         {       
             YPF.Comercial.RRCC.SUP.ClienteDetallePedido entity_6 = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
             entity_6.Bind(profile, rs_4);
             count_5++;
             result_2 = entity_6;
         }
         if (rs_4 != null) com.sybase.afx.db.ReaderUtil.Close(profile, rs_4, count_5);
         if (ps_3 != null) ps_3.Dispose();
         _selectSQL = null;
     }
     catch (System.Data.DataException ex)
     {
         throw new Sybase.Persistence.PersistenceException(ex.ToString(), ex);
     }
     finally
     {
         YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.ReleaseDBConnection();
     } 
     return result_2; 
   
 }
예제 #8
0
 /// <summary>
 /// Sybase internal use only.
 /// <summary>
 public void SetOriginalState(YPF.Comercial.RRCC.SUP.ClienteDetallePedido orig)
 {
     __originalStateValid = true;
     __originalState = orig;
 }
예제 #9
0
 /// <summary>
 /// Set current MBO attributes by specified MBO.
 /// </summary>
 public static YPF.Comercial.RRCC.SUP.ClienteDetallePedido Merge(YPF.Comercial.RRCC.SUP.ClienteDetallePedido entity)
 {
     YPF.Comercial.RRCC.SUP.ClienteDetallePedido ent = Find(entity._pk());
     if (ent == null)
     {
         ent = new YPF.Comercial.RRCC.SUP.ClienteDetallePedido();
     }
     ent.CopyAll(entity);
     ent.Save();
     return ent;
 }
예제 #10
0
        public void Finish_rbsReplayInternal(Sybase.Persistence.IOperationReplay _call_tmp)
        {
            YPF.Comercial.RRCC.SUP.intrnl.OperationReplay _call = (YPF.Comercial.RRCC.SUP.intrnl.OperationReplay)_call_tmp;
            com.sybase.afx.json.JsonObject parameters           = (com.sybase.afx.json.JsonObject)(com.sybase.afx.json.JsonReader
                                                                                                   .Parse(_call.Parameters));
            string exception = _call.Exception;

            YPF.Comercial.RRCC.SUP.ClienteDetallePedido entity = (YPF.Comercial.RRCC.SUP.ClienteDetallePedido)(YPF.Comercial.RRCC.SUP.ClienteDetallePedido.__fromJSON(parameters.Get("entity")));

            //lock(typeof(YPF.Comercial.RRCC.SUP.CRMMobileDesaDB))
            //{
            Sybase.Persistence.ConnectionWrapper conn = YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.AcquireDBWriteConnection();
            Sybase.Persistence.LocalTransaction  tran = null;
            try
            {
                tran = conn.BeginTransaction();

                long ____id = entity.ReplayCounter;
                YPF.Comercial.RRCC.SUP.ClienteDetallePedido _client        = YPF.Comercial.RRCC.SUP.ClienteDetallePedido.Find(entity._pk());
                YPF.Comercial.RRCC.SUP.ClienteDetallePedido _downloadState = null;
                if (_client != null)
                {
                    _downloadState = _client.DownloadState;
                }
                if (exception == null)
                {
                    YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.GetCallbackHandler().OnReplaySuccess(_client == null ? entity : _client);
                    YPF.Comercial.RRCC.SUP.ClienteDetallePedido.GetCallbackHandler().OnReplaySuccess(_client == null ? entity : _client);
                    if ((_client != null) && _client.IsPending)
                    {
                        long _rc = _client.ReplayPending;
                        if (_rc == ____id)
                        {
                            if (_rc == _client.ReplayCounter)
                            {
                                _client._cancelPending2(false);
                            }
                            else
                            {
                                _client.ReplayPending = 0;
                                _client.ReplayFailure = 0;
                                _client.__update(true);
                            }
                        }
                    }
                }
                else
                {
                    _client.ReplayFailure = (_client.ReplayPending);
                    _client._cascadeUpdateReplayCounterPending(false);
                    if (_client != null && _client.ReplayPending == ____id)
                    {
                        _client.ReplayPending = (0);
                        _client.ReplayCounter = (YPF.Comercial.RRCC.SUP.KeyGenerator.GenerateId());
                        _client.ReplayFailure = (____id);
                        _client.__update(true);
                        if (_downloadState != null)
                        {
                            _downloadState._update_os();
                        }
                    }
                    YPF.Comercial.RRCC.SUP.CRMMobileDesaDB.GetCallbackHandler().OnReplayFailure(_client);
                    YPF.Comercial.RRCC.SUP.ClienteDetallePedido.GetCallbackHandler().OnReplayFailure(_client);
                }
                _call.Delete();
                tran.Commit();
            }
            catch (Sybase.Persistence.PersistenceException pe)
            {
                tran.Rollback();
                throw pe;
            }
            catch (System.ApplicationException e)
            {
                tran.Rollback();
                throw e;
            }
            //}
        }