예제 #1
0
        public static st_OrdenReparacionDataset.st_OrdenReparacionRow GetByPk(string IdOrdenReparacion)
        {
            st_OrdenReparacionDataset data = new st_OrdenReparacionDataset();

            SqlCommand cmd = new SqlCommand("sp_st_OrdenReparacion_Get", dbhelper.Connection.GetConnection());

            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Parameters.Add(new SqlParameter("@IdOrdenReparacion", SqlDbType.BigInt));
            cmd.Parameters["@IdOrdenReparacion"].Value = Convert.ToInt32(IdOrdenReparacion);

            SqlDataAdapter adapter = new SqlDataAdapter(cmd);

            adapter.TableMappings.Add("Table", "st_OrdenReparacion");

            adapter.Fill(data);

            if (data.Tables[0].Rows.Count == 1)
            {
                return((st_OrdenReparacionDataset.st_OrdenReparacionRow)data.Tables[0].Rows[0]);
            }

            return(null);
        }
예제 #2
0
        public void ListenerAfterExecuteDependentTask(object sender)
        {
            if (sender.GetType() == typeof(mz.erp.businessrules.comprobantes.ComprobanteDeVenta))
            {
                _compVenta = (ComprobanteDeVenta)sender;
                ArrayList aux = new ArrayList();
                aux = mz.erp.systemframework.Util.Parse(_tiposDeComprobantes, ",");
                bool ok = false;
                _MovimientosPorOR.Clear();
                _DataTableMovimientosPorOR.Clear();
                _ordenReparacionInstancias.Clear();
                _comprobantesOR.Clear();
                _comprobanteDetalleOR.Clear();
                //_idComprobanteORList.Clear();
                _dataOR = new st_OrdenReparacionDataset();
                ok      = aux.Contains(_compVenta.TipoComprobanteDestino);
                if (ok)
                {
                    /*Cambiar esta linea por una q acceda a la por tsa_comprobantesdetauxiliares*/
                    /*Version Anterior - German*/

                    /*
                     * System.Data.DataSet data = Workflow.GetCaminoComprobantesBottonUp(_compVenta.IdComprobanteOrigen,string.Empty);
                     * if(data.Tables[0].Rows.Count > 0)
                     * {
                     *
                     *      foreach(System.Data.DataRow row in data.Tables[0].Rows)
                     *      {
                     *              if(Convert.ToString(row["IdTipoDeComprobante"]).Equals("OR"))
                     *              {
                     *                      long IdComprobanteOR = Convert.ToInt64(row["IdComprobante"]);
                     *                      long IdInstanciaOrdenReparacion = 0;
                     *                      DataRow rowOR = mz.erp.businessrules.st_OrdenReparacion.GetByPk(Convert.ToString(IdComprobanteOR));
                     *                      if(rowOR == null)
                     *                              this._execute = false;
                     *                      else
                     *                      {
                     *                              if(_soloEquiposNuevos)
                     *                                      this._execute = Convert.ToBoolean(rowOR["EsEquipoNuevo"]);
                     *                              else this._execute = true;
                     *                      }
                     *                      if(this._execute)
                     *                      {
                     *
                     *                              if(_actualizaOR)
                     *                              {
                     *                                      string EstadoOREN = Variables.GetValueString(this._processParent.Process.ProcessName, this._taskName ,"EstadoOrdenDeReparacion.EquipoNuevo");
                     *                                      string EstadoOR = Variables.GetValueString(this._processParent.Process.ProcessName, this._taskName ,"EstadoOrdenDeReparacion.Default");
                     *
                     *                                      if(Convert.ToBoolean(rowOR["EsEquipoNuevo"]))
                     *                                      {
                     *                                              if(EstadoOREN != null && EstadoOREN != string.Empty)
                     *                                                      rowOR["IdEstadoOrdenReparacion"] = EstadoOREN;
                     *                                      }
                     *                                      else
                     *                                              if(EstadoOR != null && EstadoOR != string.Empty)
                     *                                                      rowOR["IdEstadoOrdenReparacion"] = EstadoOR;
                     *                                      rowOR["NumeroFactura"] = System.DBNull.Value;
                     *                                      rowOR["FechaFactura"]= System.DBNull.Value;
                     *                                      rowOR["FechaPrefactura"]= System.DBNull.Value;
                     *                                      _dataOR.st_OrdenReparacion.ImportRow(rowOR);
                     *                              }
                     *                              DataSet dataAux = mz.erp.businessrules.st_InstanciaOrdenReparacion.GetList(Convert.ToInt64(IdComprobanteOR));
                     *                              foreach(DataRow rowAux in dataAux.Tables[0].Rows)
                     *                              {
                     *                                      IdInstanciaOrdenReparacion = Convert.ToInt64(rowAux["IdInstanciaOrdenReparacion"]);
                     *                                      if(!_ordenReparacionInstancias.ContainsKey(IdComprobanteOR))
                     *                                              _ordenReparacionInstancias.Add(IdComprobanteOR, new ArrayList());
                     *                                      ArrayList instancias = (ArrayList)_ordenReparacionInstancias[IdComprobanteOR];
                     *                                      instancias.Add(IdInstanciaOrdenReparacion);
                     *                              }
                     *                              if(this._execute)
                     *                              {
                     *                                      tsa_ComprobantesOrdenReparacionDataset dataComprobanteOR = mz.erp.businessrules.tsa_ComprobantesOrdenReparacion.GetList(string.Empty, Convert.ToInt64(IdComprobanteOR));
                     *                                      if(dataComprobanteOR.Tables[0].Rows.Count != 1)
                     *                                              this._execute = false;
                     *                                      if(this._execute)
                     *                                      {
                     *                                              tsa_ComprobanteDetalleOrdenReparacionDataset dataComprobanteDetalleOR = mz.erp.businessrules.tsa_ComprobanteDetalleOrdenReparacion.GetList(string.Empty,Convert.ToInt64( IdComprobanteOR), long.MinValue);
                     *                                              _comprobantesOR.Add(Convert.ToInt64(IdComprobanteOR), dataComprobanteOR);
                     *                                              _comprobanteDetalleOR.Add(Convert.ToInt64(IdComprobanteOR), dataComprobanteDetalleOR);
                     *                                      }
                     *
                     *
                     *                              }
                     *
                     *                      }
                     *
                     *              }
                     *
                     *      }
                     * }
                     */

                    _ordenReparacionInstancias = _compVenta.GetORAsociadas();
                    if (_ordenReparacionInstancias.Count > 0)
                    {
                        foreach (long IdComprobanteOR in _ordenReparacionInstancias.Keys)
                        {
                            DataRow rowOR = mz.erp.businessrules.st_OrdenReparacion.GetByPk(Convert.ToString(IdComprobanteOR));
                            if (rowOR == null)
                            {
                                this._execute = false;
                            }
                            else
                            {
                                if (_soloEquiposNuevos)
                                {
                                    this._execute = Convert.ToBoolean(rowOR["EsEquipoNuevo"]);
                                }
                                else
                                {
                                    this._execute = true;
                                }
                            }
                            if (this._execute)
                            {
                                if (_actualizaOR)
                                {
                                    string EstadoOREN = Variables.GetValueString(this._processParent.Process.ProcessName, this._taskName, "EstadoOrdenDeReparacion.EquipoNuevo");
                                    string EstadoOR   = Variables.GetValueString(this._processParent.Process.ProcessName, this._taskName, "EstadoOrdenDeReparacion.Default");

                                    if (Convert.ToBoolean(rowOR["EsEquipoNuevo"]))
                                    {
                                        if (EstadoOREN != null && EstadoOREN != string.Empty)
                                        {
                                            rowOR["IdEstadoOrdenReparacion"] = EstadoOREN;
                                        }
                                    }
                                    else
                                    if (EstadoOR != null && EstadoOR != string.Empty)
                                    {
                                        rowOR["IdEstadoOrdenReparacion"] = EstadoOR;
                                    }
                                    rowOR["NumeroFactura"]           = System.DBNull.Value;
                                    rowOR["FechaFactura"]            = System.DBNull.Value;
                                    rowOR["FechaPrefactura"]         = System.DBNull.Value;
                                    rowOR["IdComprobantePrefactura"] = System.DBNull.Value;
                                    rowOR["IdComprobanteFactura"]    = System.DBNull.Value;
                                    _dataOR.st_OrdenReparacion.ImportRow(rowOR);
                                }
                                if (this._execute)
                                {
                                    //tsa_ComprobantesOrdenReparacionDataset dataComprobanteOR = mz.erp.businessrules.tsa_ComprobantesOrdenReparacion.GetList(string.Empty, Convert.ToInt64(IdComprobanteOR));
                                    tsa_ComprobantesOrdenReparacionDataset dataComprobanteOR = mz.erp.businessrules.tsa_ComprobantesOrdenReparacion.GetListByIdOrdenReparacion(Convert.ToInt64(IdComprobanteOR));
                                    if (dataComprobanteOR.Tables[0].Rows.Count != 1)
                                    {
                                        this._execute = false;
                                    }
                                    if (this._execute)
                                    {
                                        //tsa_ComprobanteDetalleOrdenReparacionDataset dataComprobanteDetalleOR = mz.erp.businessrules.tsa_ComprobanteDetalleOrdenReparacion.GetList(null, Convert.ToInt64( IdComprobanteOR), long.MinValue);
                                        tsa_ComprobanteDetalleOrdenReparacionDataset dataComprobanteDetalleOR = mz.erp.businessrules.tsa_ComprobanteDetalleOrdenReparacion.GetListByIdOrdenReparacion(Convert.ToInt64(IdComprobanteOR));
                                        _comprobantesOR.Add(Convert.ToInt64(IdComprobanteOR), dataComprobanteOR);
                                        _comprobanteDetalleOR.Add(Convert.ToInt64(IdComprobanteOR), dataComprobanteDetalleOR);
                                    }
                                }
                            }
                        }
                    }
                }

                if (_transicionesPorComprobante.Contains(_compVenta.TipoComprobanteDestino))
                {
                    this._transicionActual = Convert.ToInt64(_transicionesPorComprobante[_compVenta.TipoComprobanteDestino]);
                }
                else
                {
                    this._execute = false;
                }
                if (this._execute)
                {
                    GetRepuestos();
                }
            }
        }