miércoles, 5 de marzo de 2014

RegisterForEventValidation can only be called during Render();


Buenas ,


cuando tengan este error que tipicamente se da cuando queremos exportar un archivo nos suele mostrar este mensaje de error 

RegisterForEventValidation can only be called during Render();

Para ello  en el lado aspx de nuestra pagina debe de estar asi 

<%@ Page Language="C#" AutoEventWireup="true"  EnableEventValidation ="false"  CodeFile="Con_ComprobanteVenta_Listar.aspx.cs" Inherits="App_Ventas_Consultas_Con_ComprobanteVenta_Listar" %>
 

 de esta manera no tendriamos problema alguno 

 Asi mismo en el lado .cs debe de estar asi

public override void VerifyRenderingInServerForm(Control control)
    {

    }

 protected void btnExportarExcel_Click(object sender, EventArgs e)
    {
        Funciones.fn_ExportarExcel(this, GridFamiliaProductos, "Comprobantes " );
    }

Saludos , 


lunes, 27 de enero de 2014

request for the permission of type 'system.data.sqlclient.sqlclientpermission

Hoy estuve implementando en una sucursal de una de las empresas que realizo consultoria,  por algun motivo cuando modifique el directorio virtual me mostró este mensaje "request for the permission of type 'system.data.sqlclient.sqlclientpermission" , este error al parecer sale porque en el IIS no encuentra los permisos suficientes cuando el Application Pool Identity se encuentra en el modo  ApplicationPoolIdentity, qie al parecer no tiene los permisos suficientes para ser modificados en red el cual lo cambie a NetWorkService , con esto di solución a mi problema , espero les ayude a ustedes también  ,


Saludos


lunes, 6 de enero de 2014

error durante la serialización o deserialización mediante javascriptserializer de json

Buenas ,

Despues de un tiempo estoy de regreso, esta vez veremos un error clasico cuando trabajamos con la serializacion json , o mejor dicho cuando intentamos obtener un volumen mayor al que por defecto trabaja json , en estos casos nos muestra un error asi

error durante la serialización o deserialización mediante javascriptserializer de json..............

como ya sabemos es porque sobrepasamos la longitud permitida por defecto

Modificamos en nuestro web config lo siguiente


<scripting>
            <webServices>
                <jsonSerialization maxJsonLength="500000000">
                </jsonSerialization>
            </webServices>
        </scripting>



Y listo arreglado el asunto.




domingo, 17 de noviembre de 2013

OBTENER TODOS LOS STORE PROCEDURE DE UNA BASE DE DATOS

Buenas en esta ocasion veremos como obtener todos los sp de una bd, para esto genero un store procedure.


CREATE PROC MAESTROS.PA_OBTENER_STOREPROCEDURE 'Relacionado'
@NameSp VARCHAR(50)
AS
select name  from sysobjects where type='P' and  name  like '%' + @NameSp  +'%'
Order By Name

y de esta manera podemos obteneros de una manera sencilla.



sábado, 9 de noviembre de 2013

VARIABLE TABLE SQL SERVER 2008

 Buenas en esta ocasion veremos el uso de la variable tipo TABLE , conbinandose con otras sentencias dentro del Transact SQL.


/*

Autor                 :     Martin Cox R.
  */
CREATE PROC [FINANZAS].[PA_ESTADOCUENTA_CLIENTES] --1, 24,1 , '21/01/2013','21/08/2013'     
@IDCompania numeric ,      
@IDCliente numeric  ,      
@IDMoneda numeric  ,     
@FechaInicio datetime ,     
 @FechaFinal datetime      
AS     
declare @FechaRegistro DateTime        
declare @NumeroComprobante varchar(100)       
declare @TipoDocumento varchar(100)       
declare @Total decimal(18,4)       
declare @Flag  char(1)       
declare @Contador numeric = 1       
 declare @Saldo decimal(18,4)= 0       
declare @RazonSocial varchar(200)=''     
declare @Ruc varchar(15)=''     
     
      
       
DECLARE @tempEstadoCuentaFinal table(       
FechaRegistro DateTime ,       
NumeroComprobante varchar(100),       
 TipoDocumento varchar(100),       
Debito decimal(18,4),        
Credito decimal(18,4),        
Saldo decimal(18,4)  ,      
RazonSocial varchar(200) ,      
Ruc varchar(15)        
)     
     
select        
 FechaEmision as FechaRegistro ,NumeroDocumento as NumeroComprobante ,        
 tipDoc_cNombreTipoDocumento as TipoDocumento ,       
Total  , 'H' AS Flag ,  RazonSocial , Ruc     
     
into #tempDoc from MAESTROS.VIEW_DOCUMENTOSCOBRAR_LISTAR     
    where MAESTROS.VIEW_DOCUMENTOSCOBRAR_LISTAR.FormaPago = 2     
      and IDPersona =@IDCliente and IDMonedaDocumento = @IDMoneda     
Union All     
SELECT     FINANZAS.COMPROBANTECAJA.FechaRegistro, FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.NumeroComprobante,      
                      FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.TipoDocumento, FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.ImportePagar AS Total,      
                       'D' AS Flag , MAESTROS.MAE_CLIENTES.cli_cNombreCompletoCliente as RazonSocial ,MAESTROS.MAE_CLIENTES.cli_cRucCliente as Ruc     
FROM FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR      
INNER JOIN FINANZAS.COMPROBANTEENTRADACAJA ON FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.IDCompania = FINANZAS.COMPROBANTEENTRADACAJA.IDCompania AND  FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.IDTipoDocumento = FINANZAS.COMPROBANTEENTRADACAJA.IDTipoDocumento AND      
                       FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.IDSede = FINANZAS.COMPROBANTEENTRADACAJA.IDSede AND      
                      FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.IDCentroFinanciero = FINANZAS.COMPROBANTEENTRADACAJA.IDCentroFinanciero AND      
                       FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.NumeroComprobanteCaja = FINANZAS.COMPROBANTEENTRADACAJA.NumeroComprobante AND      
                      FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.NumeroSerieCaja = FINANZAS.COMPROBANTEENTRADACAJA.NumeroSerie      
 INNER JOIN              FINANZAS.COMPROBANTECAJA ON FINANZAS.COMPROBANTEENTRADACAJA.IDCompania = FINANZAS.COMPROBANTECAJA.IDCompania AND      
                      FINANZAS.COMPROBANTEENTRADACAJA.IDTipoDocumento = FINANZAS.COMPROBANTECAJA.IDTipoDocumento AND      
                       FINANZAS.COMPROBANTEENTRADACAJA.IDSede = FINANZAS.COMPROBANTECAJA.IDSede AND      
                      FINANZAS.COMPROBANTEENTRADACAJA.IDCentroFinanciero = FINANZAS.COMPROBANTECAJA.IDCentroFinanciero AND      
                       FINANZAS.COMPROBANTEENTRADACAJA.NumeroComprobante = FINANZAS.COMPROBANTECAJA.NumeroComprobante AND      
                      FINANZAS.COMPROBANTEENTRADACAJA.NumeroSerie = FINANZAS.COMPROBANTECAJA.NumeroSerie     
 inner join MAESTROS.MAE_CLIENTES on FINANZAS.COMPROBANTEENTRADACAJA.IDCliente =MAESTROS.MAE_CLIENTES.cli_nCodigoCliente     
                           
                           
WHERE  (FINANZAS.COMPROBANTECAJADOCUMENTOCOBRARPAGAR.FormaPago = 'CREDITO') and (FINANZAS.COMPROBANTEENTRADACAJA.IDCliente = @IDCliente)     
 and FINANZAS.COMPROBANTECAJA.IDMoneda = @IDMoneda    and RTRIM( FINANZAS.COMPROBANTECAJA.EstadoEntrega) != 'ANULADO' 
        
DECLARE CursorEstadoCuenta CURSOR     
FOR       
select *  from  #tempDoc     
--where FechaRegistro between  CONVERT(CHAR(10),@FechaInicio,103) and CONVERT(CHAR(10),@FechaFinal  ,103)     
  where CONVERT(CHAR(10),FechaRegistro,103) between  CONVERT(CHAR(10),@FechaInicio,103) and CONVERT(CHAR(10),@FechaFinal  ,103)     
     
       
OPEN CursorEstadoCuenta       
FETCH CursorEstadoCuenta        
        
INTO  @FechaRegistro ,@NumeroComprobante ,@TipoDocumento ,@Total ,@Flag ,@RazonSocial ,@Ruc     
       
WHILE (@@FETCH_STATUS = 0)       
       
 begin       
   if(@Flag = 'D')       
     begin       
      set @Saldo  =  @Saldo  -  @Total - 0 ;         
       insert into @tempEstadoCuentaFinal values (@FechaRegistro ,@NumeroComprobante ,       
      @TipoDocumento ,@Total ,0,@Saldo,rtrim(@RazonSocial) ,@Ruc )       
             
     end       
          
  else if(@Flag = 'H')       
       begin       
      set @Saldo  =  @Saldo  +  @Total - 0 ;        
       insert into @tempEstadoCuentaFinal values (@FechaRegistro ,@NumeroComprobante ,       
       @TipoDocumento ,0 ,@Total,@Saldo ,RTRIM( @RazonSocial),@Ruc)       
               
      end         
   FETCH CursorEstadoCuenta INTO  @FechaRegistro ,@NumeroComprobante ,@TipoDocumento ,@Total ,@Flag    ,@RazonSocial     
                                ,@Ruc     
   set  @Contador =@Contador +1;       
           
 END -- end loop while       
       
CLOSE CursorEstadoCuenta       
DEALLOCATE CursorEstadoCuenta       
       
select * from  @tempEstadoCuentaFinal       
drop table #tempDoc   
   

jueves, 7 de noviembre de 2013

Acceder a los DataKeys de un GridView desde el evento RowDeleting

Buenas mis estimados ,
Despues de algun tiempo que deje de publicar ya que por motivos de tiempo se me hace muy dificil , pero bueno aqui estamos , en esta ocasion veremos obtener los valores de un DataKey desde el evento RowDeleting de nuestro GridView

Aqui el ejemplo:

protected void GridFamiliaProductos_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        int rowIndex = e.RowIndex;

        DataKeyArray ArrayKeys = GridFamiliaProductos.DataKeys;

        string IDCompania = Convert.ToString(ArrayKeys[rowIndex].Values[0]);
        string IDTipodocumento = Convert.ToString(ArrayKeys[rowIndex].Values[1]);
        string IDSede = Convert.ToString(ArrayKeys[rowIndex].Values[2]);
        string IDCentroFinanciero = Convert.ToString(ArrayKeys[rowIndex].Values[3]);
        string NumeroSerie = Convert.ToString(ArrayKeys[rowIndex].Values[4]);
        string NumeroComprobante = Convert.ToString(ArrayKeys[rowIndex].Values[5]);        

    }


Nos vemos

lunes, 19 de agosto de 2013

Obtener Hora del Sistema en MS SQL SERVER 2008

Buenas , en esta ocasion veremos algo bastante sencillo, pero que hay veces nos hace perder un poco de tiempo o mas bien dicho invertir un poco de tiempo en googlear , es recuperar la Hora actual en SQL server



declare @HORREG char(8)
set @HORREG = CONVERT (time, SYSDATETIME())
select @HORREG as Hora


Saludos