0

Excel retorna valores como NULL Usando OpenRecordset DAO

Posted by Fabio's Blog on 16:55
Ao se conectar a uma planilha do Excel usando o método DAO OpenRecordset, alguns valores em uma coluna do Excel podem ser retornados como nulo quando o valor subjacente não é um nulo. Isso normalmente ocorre quando tipos de dados numéricos e de texto são misturados dentro da mesma coluna do Excel.

Esse problema é causado por uma limitação do driver ISAM do Excel que, uma vez que determina o tipo de dados de uma coluna do Excel, ele irá retornar um valor nulo para qualquer valor que não é do tipo de dados do driver ISAM. O driver do Excel ISAM determina o tipo de dados de uma coluna do Excel, examinando os valores reais nos primeiros registros e, em seguida, escolhe um tipo de dados que representa a maioria dos valores em sua amostragem.

Você pode adicionar a opção IMEX = 1; Por exemplo:

    Set db = OpenDatabase ("C: \ Temp \ Book1.xls", _ False, True, "Excel 8.0; HDR = NO; IMEX = 1;")


Ambiente IMEX = 1 indica o driver para usar o modo de importação. Neste estado, a configuração do Registro ImportMixedTypes = texto vai ser notado. Este dado força a conversão dos dados em texto. Para que isso funcione de forma confiável, você também pode ter de alterar a configuração do registro, TypeGuessRows = 8. O driver ISAM por padrão olha para as primeiras oito linhas e de que a amostragem determina o tipo de dados. Se esta linha de amostragem é tudo numérico, em seguida, definindo IMEX = 1 não irá converter o tipo de dados padrão para texto, ele permanecerá numérico.

Você deve ter cuidado para que IMEX = 1 não ser usado indiscriminadamente. Este é o modo de importação, portanto, os resultados podem ser imprevisíveis se você tentar inserir ou atualizar de dados nesse modo.

Espero que tenha sido útil.

0

Session State timeout C#

Posted by Fabio's Blog on 13:28
Existem alguns sistemas que precisam de um timeout maior do estado da sessão, por exemplo alguns sistemas que os usuário deixam a janela aberta para efetuar outras rotinas e somente depois terminarem a tarefa no sistema, algumas vezes precisamos modificar o timeout de sessão dos nossos sistemas, o timeout padrão é de 20 minutos. Para configurarmos o timeout de sessão é só inserir a linha abaixo no web.config do nosso sistema dentro da tag <system.web>.

    
...
< system.web >
< sessionState timeout="60" >
...


No exemplo acima configurei minha aplicação com um timeout de sessão de 60 minutos.

Espero que tenha sido útil.

Copyright © 2009 Fabio's Blog All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive. Distribuído por Templates