lunes, 22 de julio de 2013

Crecer y disminuir DIV con javascript


function AumnetarTamanio(pAumentar){

var tabla = document.getElementById("divDinamic");
var anchoTabla = tabla.offsetWidth;
var altoTabla = tabla.offsetHeight;

 altoTabla = altoTabla + pAumentar + "px"  
 document.getElementById("divDinamic")
 .style.height =  altoTabla ;

// .style.height="400px";
//alert("NewHeigth " + altoTabla) ;

 }


 function DisminuirTamanio(pDisminuir){

 var tabla = document.getElementById("divDinamic");
var anchoTabla = tabla.offsetWidth;
var altoTabla = tabla.offsetHeight;

 altoTabla = altoTabla - pDisminuir; //+ "px" ;
 altoTabla =  altoTabla + "px"; 

 document.getElementById("divDinamic")
 .style.height =  altoTabla ;

 }

Valor no repetido en JavaScript

        /*    Validacion si se repiden codigos Servicios */
       
     for (var i = 0; i < parseInt(rowCount) ; i++){   

        if ($("#TXTCodigo" + (i+1)).val() != undefined && $("#TXTCodigo" + (i+1)).val() != 'undefined' && $("#TXTCodigo" + (i+1)).val() != '' ){
               
                 var count= 0 ;
                 if(Salir =="S") break;
               
                 CodigoServi1 =  $("#TXTCodigo" + (i+1)).val() ;
                 for (var j = 0; j < parseInt(rowCount) ; j++){   
               
                 if ($("#TXTCodigo" + (j+1)).val() != undefined && $("#TXTCodigo" + (j+1)).val() != 'undefined' && $("#TXTCodigo" + (j+1)).val() != '' ){
                        CodigoServi2 = $("#TXTCodigo" + (j+1)).val();
                                               
                        if(CodigoServi1 == CodigoServi2   ){
                                if(count>0){
                                cadenaValores += CodigoServi1 ;
                                //cadenaValores += CodigoServi1 + ",";
                                 cadenaIDRepetidos +=     "TXTCodigo" + (j+1);       
                                Salir ="S";
                                break ;
                                }
                                count ++; 
                        }
                    }
                 }               
            }
        }
   

 if(cadenaValores != "")
 {
    r_PopupAlert('El codigo de servicio ' +  cadenaValores + ' se esta repitiendo',0,cadenaIDRepetidos ,"");
    return false;
   
 }

jueves, 11 de julio de 2013

CURSOR Y SQL DINAMICO

Un ejemplo de un cursor con SQL Dinamico que muchas veces es nuestra ultima alternativa a una solucion , pero nos ayuda a resolver problemas a nivel de base de datos
CREATE PROCEDURE CURSORDINAMICO -- 1,'001,003,004,006,005,002,007,007'
@FirstParamters NUMERIC(2),
@StringValues VARCHAR(MAX)
as 
 -- Declaración del cursor
declare @Valor1 VARCHAR(MAX) = ''
declare @Valor2 VARCHAR(MAX) = ''
declare @Resultado VARCHAR(MAX)= ''
declare @Contador numeric = 0

DECLARE CursorSplit CURSOR
FOR
    select * from dbo.split(@StringValues,',')
-- Open Cursor
OPEN CursorSplit
--Reading First row
FETCH CursorSplit INTO  @Valor1  , @Valor2
WHILE (@@FETCH_STATUS = 0)
BEGIN
--Reading Second row
     if(@Valor2 != '')
    begin
        if(@Contador = 0)
                    begin 
                        set  @Resultado =  CHAR(39) + ' and XXX LIKE ' + CHAR(39)  + '%' + @Valor2  + '%' + CHAR(39) 
                    end
        else
                    begin
                            set  @Resultado =@Resultado  + ' or XXX LIKE ' + CHAR(39)  + '%' + @Valor2  + '%' + CHAR(39)
                    end
                set     @Contador = @Contador+1
        end    
    FETCH CursorSplit INTO  @Valor1  , @Valor2
END -- end loop while
CLOSE CursorSplit
DEALLOCATE CursorSplit

DECLARE @TSQL  VARCHAR(MAX)
SET @TSQL  = ' SELECT XXX,XXX,XXX
                            FROM XXX 
                            where XXX LIKE ''%' +RTRIM(CONVERT(CHAR(2),@FirstParameter)) + '%'  + @Resultado 
--SELECT @TSQL   AS TSQL
EXEC (@TSQL )

go


SPLIT EN MS SQL SERVER 2008

Ya hace mucho tiempo que no publicaba nada, las disculpas a mis seguidores , ya que por motivos de trabajo no pude publicar pero regresamos con fuerza y a eguir colaborando con este blog con mas de 3 años de antiguedad, esta vez veremos como realizar un split en MS SQL Server.

CREATE FUNCTION [dbo].[split](
@delimited NVARCHAR(MAX),
@delimiter NVARCHAR(100)
) RETURNS @t TABLE (id INT IDENTITY(1,1), val NVARCHAR(MAX))
AS
BEGIN
DECLARE @xml XML
SET @xml = N'<t>' + REPLACE(@delimited,@delimiter,'</t><t>') + '</t>'

INSERT INTO @t(val)
SELECT r.value('.','varchar(MAX)') as item
FROM @xml.nodes('/t') as records(r)
RETURN
END