Muchos de los que desarrollamos aplicaciones web con asp.net , nos hemos visto en el problema con impresiones matriciales ya que no respeta el tamaña que le indicamos , algo bastante grave ,ya que no podriamos imprimir nuestras facturas, boletas, N.C,N.D etc, una solucion a este problema fue construir un reporteador para este problema ,
Les mando el link donde podemos visualizar mejor este pequeño ejemplo
http://www.youtube.com/watch?v=Q7-k8yQCK7U&feature=youtu.be
Saludos
miércoles, 9 de enero de 2013
domingo, 23 de diciembre de 2012
Obtener fecha de inicio y fecha de termino SQL SERVER
Hay algunos casos en la que nuestra necesidad es obtener la primera fecha del mes y la fecha final, una manera sencilla de hacer esto es de la siguiente manera
Declare @Fecha datetime = GETDATE() - 1
SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(@Fecha)-1),@Fecha),105) As PrimerDiaMes
SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(DATEADD(mm,1,@Fecha))),DATEADD(mm,1,@Fecha)),105) As UltimoDiaMes
Saludos
miércoles, 19 de diciembre de 2012
"BBDN is undefined" BusyBox
Cuando usamos el control BusyBox de manera local nos funciona perfectamente, pero cuando lo publicamos en IIS, nos suele salir este error en script "BBDN is undefined", la solucion es configurar nuestro control de la siguiente manera:
<busyboxdotnet:BusyBox ID="BusyBox1" runat="server" CompressScripts="False"
GZipCompression="False" Image="GreenBar"
Text="Proceso ejecutandose, espere un momento" Title="Espere por favor"
ShowBusyBox="Custom" IncludeScriptsInPage="True" />
De esta manera no tendriamos problemas....
Saludos
<busyboxdotnet:BusyBox ID="BusyBox1" runat="server" CompressScripts="False"
GZipCompression="False" Image="GreenBar"
Text="Proceso ejecutandose, espere un momento" Title="Espere por favor"
ShowBusyBox="Custom" IncludeScriptsInPage="True" />
De esta manera no tendriamos problemas....
Saludos
viernes, 7 de diciembre de 2012
GROUP BY LINQ TO OBJECT II
Buenas , en esta ocasion veremos otro ejemplo como realizar un group by con linq , lo realize por un requerimiento personalizado, espero les ayude,
//Pre Linq
for (int i = 1; i < _xCadenaValoresListaPrecios.Length - 1; i++)
{
_xArrayProductoUnidad = _xCadenaValoresListaPrecios[i].Split(_xCaracter[1]);
_xFiltroValorProductoUnidad = _xArrayProductoUnidad[0].Split(_xCaracter[0]);
if (filtroEscala == _xFiltroValorProductoUnidad[0])
{
oListaString.Add(_xFiltroValorProductoUnidad[1].ToString() + "|" + _xFiltroValorProductoUnidad[2].ToString());
}
}
//Realizamos un Group By con Linq
var oLinqGroupBy = oListaString.GroupBy(item => item)
.Select(group => new
{
group.Key,
Count = group.Count()
});
#region Escala
foreach (var oString in oLinqGroupBy)
{
CatalogoProductoUnidad oCatalogoProductoUnidad = (CatalogoProductoUnidad)itemCatalogoProducto.CrearObjeto("CatalogoProductoUnidad");
oCatalogoProductoUnidad.PrecioPorActualizar = true;
string[] _xArrayValoresUnidad;
_xArrayValoresUnidad = oString.Key.Split('|');
if (_xArrayValoresUnidad[1].Equals("1")) _xArrayValoresUnidad[1] = "true";
if (_xArrayValoresUnidad[1].Equals("0")) _xArrayValoresUnidad[1] = "false";
oCatalogoProductoUnidad.ProductoUnidad = (ProductoUnidad)XMLHelper.CargarxCampoUnico("ProductoUnidad", "Abreviacion", _xArrayValoresUnidad[0].ToString());
oCatalogoProductoUnidad.UnidadPorDefectoEnVenta = Convert.ToBoolean(_xArrayValoresUnidad[1]);
string[] _xArrayListaPrecios;
string[] _xFiltroValor;
for (int j = 1; j < _xCadenaValoresListaPrecios.Length - 1; j++)
{
CatalogoProductoEscala oCatalogoProductoEscala = (CatalogoProductoEscala)oCatalogoProductoUnidad.CrearObjeto("CatalogoProductoEscala");
_xArrayListaPrecios = _xCadenaValoresListaPrecios[j].Split(_xCaracter[1]);
_xFiltroValor = _xArrayListaPrecios[0].Split(_xCaracter[0]);
//Si encuentra productos iguales obtiene sus escalas
if (filtroEscala == _xFiltroValor[0] && _xFiltroValor[1] == _xArrayValoresUnidad[0].ToString())
{
oCatalogoProductoEscala.Desde = Convert.ToInt32(_xFiltroValor[3]); //Desde
oCatalogoProductoEscala.Hasta = Convert.ToInt32(_xFiltroValor[4]); //Hasta
oCatalogoProductoEscala.PrecioConImpuesto = Convert.ToDecimal(_xFiltroValor[5]); //PrecioConImpuesto
oCatalogoProductoEscala.PrecioSinImpuesto = Convert.ToDecimal(_xFiltroValor[6]); //PrecioSinImpuesto
oCatalogoProductoEscala.MargenGanancia = Convert.ToDecimal(_xFiltroValor[7]); //MargenGanancia
oCatalogoProductoEscala.PorcentajeMargenGanancia = Convert.ToDecimal(_xFiltroValor[8]); //PorcentajeMargenGanancia
oCatalogoProductoEscala.PorcentajeDescuentoA = Convert.ToDecimal(_xFiltroValor[9]); //PorcentajeDescuentoA
oCatalogoProductoEscala.PorcentajeDescuentoB = Convert.ToDecimal(_xFiltroValor[10]); //PorcentajeDescuentoB
oCatalogoProductoEscala.MontoDescuentoA = Convert.ToDecimal(_xFiltroValor[11]); //MontoDescuentoA
oCatalogoProductoEscala.MontoDescuentoB = Convert.ToDecimal(_xFiltroValor[12]); //MontoDescuentoB
oCatalogoProductoEscala.PrecioEspecialConImpuesto = Convert.ToDecimal(_xFiltroValor[13]); //PrecioEspecialConImpuesto
oCatalogoProductoEscala.CostoProducto = oCatalogoProductoEscala.CatalogoProductoUnidad.CatalogoProducto.ProductoServicio.CostoPromedio;
oCatalogoProductoUnidad.CatalogoProductoEscala.Agregar(oCatalogoProductoEscala);
}
}
//itemCatalogoProducto.CatalogoProductoUnidad.Agregar(oCatalogoProductoUnidad, oCatalogoProductoUnidad.ProductoUnidad.ID);
itemCatalogoProducto.CatalogoProductoUnidad.Agregar(oCatalogoProductoUnidad);
//}
Saludos
//Pre Linq
for (int i = 1; i < _xCadenaValoresListaPrecios.Length - 1; i++)
{
_xArrayProductoUnidad = _xCadenaValoresListaPrecios[i].Split(_xCaracter[1]);
_xFiltroValorProductoUnidad = _xArrayProductoUnidad[0].Split(_xCaracter[0]);
if (filtroEscala == _xFiltroValorProductoUnidad[0])
{
oListaString.Add(_xFiltroValorProductoUnidad[1].ToString() + "|" + _xFiltroValorProductoUnidad[2].ToString());
}
}
//Realizamos un Group By con Linq
var oLinqGroupBy = oListaString.GroupBy(item => item)
.Select(group => new
{
group.Key,
Count = group.Count()
});
#region Escala
foreach (var oString in oLinqGroupBy)
{
CatalogoProductoUnidad oCatalogoProductoUnidad = (CatalogoProductoUnidad)itemCatalogoProducto.CrearObjeto("CatalogoProductoUnidad");
oCatalogoProductoUnidad.PrecioPorActualizar = true;
string[] _xArrayValoresUnidad;
_xArrayValoresUnidad = oString.Key.Split('|');
if (_xArrayValoresUnidad[1].Equals("1")) _xArrayValoresUnidad[1] = "true";
if (_xArrayValoresUnidad[1].Equals("0")) _xArrayValoresUnidad[1] = "false";
oCatalogoProductoUnidad.ProductoUnidad = (ProductoUnidad)XMLHelper.CargarxCampoUnico("ProductoUnidad", "Abreviacion", _xArrayValoresUnidad[0].ToString());
oCatalogoProductoUnidad.UnidadPorDefectoEnVenta = Convert.ToBoolean(_xArrayValoresUnidad[1]);
string[] _xArrayListaPrecios;
string[] _xFiltroValor;
for (int j = 1; j < _xCadenaValoresListaPrecios.Length - 1; j++)
{
CatalogoProductoEscala oCatalogoProductoEscala = (CatalogoProductoEscala)oCatalogoProductoUnidad.CrearObjeto("CatalogoProductoEscala");
_xArrayListaPrecios = _xCadenaValoresListaPrecios[j].Split(_xCaracter[1]);
_xFiltroValor = _xArrayListaPrecios[0].Split(_xCaracter[0]);
//Si encuentra productos iguales obtiene sus escalas
if (filtroEscala == _xFiltroValor[0] && _xFiltroValor[1] == _xArrayValoresUnidad[0].ToString())
{
oCatalogoProductoEscala.Desde = Convert.ToInt32(_xFiltroValor[3]); //Desde
oCatalogoProductoEscala.Hasta = Convert.ToInt32(_xFiltroValor[4]); //Hasta
oCatalogoProductoEscala.PrecioConImpuesto = Convert.ToDecimal(_xFiltroValor[5]); //PrecioConImpuesto
oCatalogoProductoEscala.PrecioSinImpuesto = Convert.ToDecimal(_xFiltroValor[6]); //PrecioSinImpuesto
oCatalogoProductoEscala.MargenGanancia = Convert.ToDecimal(_xFiltroValor[7]); //MargenGanancia
oCatalogoProductoEscala.PorcentajeMargenGanancia = Convert.ToDecimal(_xFiltroValor[8]); //PorcentajeMargenGanancia
oCatalogoProductoEscala.PorcentajeDescuentoA = Convert.ToDecimal(_xFiltroValor[9]); //PorcentajeDescuentoA
oCatalogoProductoEscala.PorcentajeDescuentoB = Convert.ToDecimal(_xFiltroValor[10]); //PorcentajeDescuentoB
oCatalogoProductoEscala.MontoDescuentoA = Convert.ToDecimal(_xFiltroValor[11]); //MontoDescuentoA
oCatalogoProductoEscala.MontoDescuentoB = Convert.ToDecimal(_xFiltroValor[12]); //MontoDescuentoB
oCatalogoProductoEscala.PrecioEspecialConImpuesto = Convert.ToDecimal(_xFiltroValor[13]); //PrecioEspecialConImpuesto
oCatalogoProductoEscala.CostoProducto = oCatalogoProductoEscala.CatalogoProductoUnidad.CatalogoProducto.ProductoServicio.CostoPromedio;
oCatalogoProductoUnidad.CatalogoProductoEscala.Agregar(oCatalogoProductoEscala);
}
}
//itemCatalogoProducto.CatalogoProductoUnidad.Agregar(oCatalogoProductoUnidad, oCatalogoProductoUnidad.ProductoUnidad.ID);
itemCatalogoProducto.CatalogoProductoUnidad.Agregar(oCatalogoProductoUnidad);
//}
Saludos
martes, 4 de diciembre de 2012
DOS UNIQUE EN UNA SOLA TABLE
EN ESTA OCASION VAMOS A CREAR DOS UNIQUE PARA UNA TABLA,
ALTER TABLE Ventas.CatalogoProducto
ADD CONSTRAINT UQ_CatalogoProducto_Double UNIQUE( IDListaCatalogoProductos, IDProductoServicio)
Saludos
jueves, 29 de noviembre de 2012
"Error en tiempo de ejecución de Microsoft JScript: 'BBDN' no está definido" busyboxdotnet
Cuando trabajamos con el control busyboxdotnet, se nos puede presentar el diguiente error :
"Error en tiempo de ejecución de Microsoft JScript: 'BBDN' no está definido" , este error se puede solucionar configurando el control de la siguiente manera:
<busyboxdotnet:BusyBox ID="BusyBox1" runat="server" CompressScripts="False"
GZipCompression="False" Image="GreenBar"
Text="Proceso ejecutandose, espere un momento" Title="Espere por favor" />
Saludos
"Error en tiempo de ejecución de Microsoft JScript: 'BBDN' no está definido" , este error se puede solucionar configurando el control de la siguiente manera:
<busyboxdotnet:BusyBox ID="BusyBox1" runat="server" CompressScripts="False"
GZipCompression="False" Image="GreenBar"
Text="Proceso ejecutandose, espere un momento" Title="Espere por favor" />
Saludos
lunes, 26 de noviembre de 2012
OBTENER LOS ESQUEMAS DE UNA BASE DE DATOS MS SQL SERVER
HAY OCASIONES EN LA QUE DESEAMOS OBTENER LOS ESQUEMAS DE NUESTRA BASE DE DATOS, CON ESTA SIMPLE CONSULTA OBTENEMOS LOS ESQUEMAS DE NUESTRA BASE DE DATOS:
SELECT DISTINCT TABLE_SCHEMA FROM Information_Schema.COLUMNS
NOS VEMOS
SELECT DISTINCT TABLE_SCHEMA FROM Information_Schema.COLUMNS
NOS VEMOS
Suscribirse a:
Entradas (Atom)