Important:

Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.

Views

VBA Error 3275 - Unexpected error from external database driver

Pois é, erros e mais erros...

Conforme já tive chance de escrever aqui antes, invariavelmente somos expostos a erros quando estamos desenvolvendo soluções através das nossas aplicações, não raramente acompanhadas de uma demanda alta e com pouco tempo.

Especialmente quando envolve o inter-relacionamento entre aplicações distintas, neste caso utilizo o
MS Office 2007.

As interações podem ocorrer entre o MS Access e o MS Excel, numa constante troca de dados, com a criação de diversas planilhas repletas de fórmulas, ou mesmo a exportação de diversos painéis de dados (como um Dashboard) para apresentações MS PowerPoint dentro de um ciclo contínuo.

No cenário descrito acima é muito provável que nos deparemos com o famoso, pouco conhecido, mas muiiitooo chato: Erro 3275.

Este erro, quando pesquisado na literatura Microsoftniana, está acompanhado da seguinte definição:
Unexpected error from external database driver <error number>, ou,
Erro inexperado causado pelo driver de banco de dados externo <número do erro>

Este erro torna-se ainda mais comum durante a execução repetitiva da seguinte linha de comando:
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, nquery, PlanTarget

Pode percebê-lo melhor dentro da funcionalidade abaixo, a qual é evocada dentro de um ciclo constante.
Function Qualquer
    ' 1ª FASE - Copia a planilha enviada como referência.
    ' ----------------------------------------------------------------------------------------
    Set objExcel = CreateObject("Excel.Application")
    Set objWorkBook = objExcel.Workbooks.Open(PlanBase)

    ' Salva planilha com o nome temporário.
    objExcel.Workbooks(1).SaveAs (PlanTarget)
    objExcel.Quit
   
    ' Cria Query tmp, base da planilha.
    Set Cria_Query = CurrentDb.CreateQueryDef(nquery, strSQL)

    Call Sleep(2000)  ' Pausa para o sistema operacional não fundir...
    Debug.Print Right(Now(), 8), nquery, strSQL, PlanTarget

    ' Insere planilha com dados.
    DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, nquery, PlanTarget

    ' Delete a query temp
    DoCmd.DeleteObject acQuery, nquery

    ' Final - Limpa as variáveis.
    ' ----------------------------------------------------------------------------------------
    Set Cria_Query_PXBR = Nothing
    Set objWorkBook = Nothing
    Set objExcel = Nothing
End Function

Certamente percebeu a ocorrência da função Sleep() no trecho de código colado aí acima. Este foi
implementado com o único propósito de 'atrasar' a funcionalidade para que esta possa ter tempo de
exportar os dados para a planilha e em seguida dar continuidade ao processo.

Percebi, pelo menos neste meu problema, que a interação entre as aplicações necessita de um tempo para o processamento completo, o qual envolve:

- Busca dos dados dentro da base;
- Exportação destes dados para uma planilha, que tem como base um modelo;
- Adequação dos dados nesta planilha modelo.

Ao passo que o MS Access executava suas funcionalidade de uma forma rápida, o mesmo não ocorria com MS Excel que ficava 'agarrado' no seu processamento de forma mais lenta (letárgica diria). Para tanto, precisei dar um sossega leão no MS Access, utilizando a função Sleep().

Call Sleep(4000)  ' Pausa para o sistema operacional não fundir...
Pode ser que necessite dessa funcionalidade em outros aspectos, por isso te passo o modo como
resolvi aqui nesta Sleep(), mas poderá fazer de outro modo:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Seria muito legal, caso já tenha se deparado com este problema, que o comentasse, e como fez
para resolvê-lo. Desse modo criaremos um repositório para elucidar aqueles que forem atacados
pelo mesmo inconveniente Erro 3275.
 
Twitter: @officespecialis
             @brzexceldevelop
             @brzaccessdevel


Tome posse das INFORMAÇÕES da sua empresa!

Empresas em todo o mundo estão permeadas de dados oriundos de diversas origens distintas e apesar do acesso a este, têm dificuldades em obter as necessárias informações para tomar as suas mais relevantes decisões.
 
Não é menos verdade que em muitas reuniões todos estejam munidos de INFORMAÇÕES totalmente irrelevantes. Têm acesso a dados de A a Z, completamente desprovidos de conteúdo, pois estes não contém a abrangência e nem a diversificação, que lhes propiciem dinamicidade na análise.
 
Em alguns casos as corporações têm acesso a um grande amontoado de dados distribuidos nos seus servidores como BIs, Datawarehouse e cubos OLAP.
 
Informação é algo muito precioso e deve ser obtida de forma rápida e exata.

Reunir informações de diferentes países, traduzindo-os nas estratégias e targets pré-estabelecidos tem sido um desafio para a maioria dos executivos em todo o mundo.
Não raro seus KPIs (Indicadores de Performance) não estão alinhados com as estratégias da empresa.

A diversidade de bases de dados nas quais as informações podem estar são muito variáveis, quando necessita consolidar tais informações em
Dashboards e Scorecards, estes precisam estar reundos de modo coerente e sucinto.

Os
Balanced Scorecards oferecem aos executivos as ferramentas que necessitam para alcançar o sucesso na obtenção de suas informações. Esta importante ferramenta traduz a missão e a estratégia da sua empresa num conjunto abrangente de medidas de desempenho que serve como base para o sistema de medição e gestão estratégica. Perseguindo os objetivos financeiros, incluindo os vetores de desempenho desses objetivos.

O grande dilema é: Mesmo estando cercado por dados de todas as origens, como posso  obter INFORMAÇÕES relevantes para tomar minhas decisões?

?ui=2&view=att&th=1254a1f913f53170&attid=0.1&disp=attd&realattid=ii_1254a1f913f53170&zw
Os conceitos e as regras de negócio precisam ser aplicados aos dados de modo a atender a empresa como um TODO e não apenas a alguns departamentos e países.

Os resultados mais comuns são INFORMAÇÕES IMPRECISAS, números que não coicidem durante as reuniões, resultando no adiamento de decisões altamente relevantes, ou na tomada de decisões inseguras.

Para que a Direção da empresa possa tomar decisões abalizadas, torna-se imprescindível que o conteúdo seja coeso, sintético e direcionado para atender o foco das reuniões.

O
Management Information System é um Sistema de Informação Gerencial, que interliga todos os dados da organização. Consiste na rede de canais de comunicação da organização permeando todas as estruturas executivas. É composto por todos os componentes que recolhem, manipulam e disseminam as informações. Nele estão inclusos hardware, software, pessoas, sistemas de telecomunicação, e os dados propriamente ditos.
Essas soluções são facilmente implementadas sem que se necessite adquirir novos softwares ou sistemas. Permita-me norteá-lo.
 
Utilize o que há de melhor em técnicas de análise!

:: Consulte seus dados concentrados em Scorecards.
:: Utilize layouts funcionais que destaquem as informações mais relevantes.
:: Envie ou arraste tabelas e gráficos para suas apresentações eletrônicas.
:: Compartilhe as informações através de Dashboards funcionais.

Cause um impacto positivo em todos os níveis executivos da sua gestão.

Entre em contato, presto consultoria pontual.

:: Avalie diferentes cenários
:: Reúna as informações mais importante para sua análise.
:: Efetue simulações com os dados reais ou com estimativas.
:: Compare suas informações com dados do seu Marketshare.
:: Tenha relatórios atualizados com informações oriundas da Internet.


Não é necessário a aquisição de nenhum produto!

Implemente soluções com os produtos já disponíveis na sua Empresa ou Departamento.

Reunir informações de diferentes países, traduzindo-os nas estratégias e targets pré-estabelecidos tem sido um desafio para a maioria dos executivos em todo o mundo.

- Torne a informação clara e compreensível nos seus relatórios
- Complete suas planilhas com mais funcionalidades.
- Melhore a apresentação das suas informações.
- Aplique layouts modernos.
- Envie dados diretamente para as apresentações do Powerpoint.
- Envie análises consolidadas diretamente para os seus clientes.
- Capte informações do marketshare diretamente da Web
.

Implemento soluções com os produtos já instalados na sua Empresa e Departamento.

Organizo os dados disponíveis, deixando seus novos relatórios com layouts funcionais.

Amplie a visão:
       Demonstração 1
       Demonstração 2
 
 

LinkWithinBrazilVBAAccessSpecialist

Related Posts Plugin for WordPress, Blogger...

Vitrine