Ir para conteúdo
Fórum Script Brasil

Paulo H Grando

Membros
  • Total de itens

    55
  • Registro em

  • Última visita

Tudo que Paulo H Grando postou

  1. Estou com uma aplicação rodando em uma rede wireless e tem acontecido problemas de gravação no banco devido a oscilação do sinal. Como tratar isso sem perder os dados e auxiliando o usuário?
  2. Como faço para gerar um relatório cross tab no Rave? Preciso que nas linhas sejam exibidos os produtos e nas colunas as cotações dos fornecedores. Parecido com uma tabela em Excel.
  3. Obrigado pela ajuda, mas o problema era no Delphi mesmo. O componente de acesso a dados tem uma limitação com o SQL Server. É necessário incluir uma instrução para lidar com isso. Segue abaixo o texto original: * When using dbExpress MSSQL and TClientDataSet.ApplyUpdates, you may encounter either of the following errors while applying updates, due to a SQLOLEDB.DLL limitation: "Cannot create new transaction because capacity was exceeded." "Cannot create new connection because in manual or distributed transaction mode." To resolve the errors, use one of the following workarounds: - On the DataSetProvider Options property, make sure poFetchBlobsOnDemand and poFetchDetailsOnDemand are False. - Use a BeforeApplyUpdates event to either call CloseDataSets or Close the connection: procedure TForm1.DataSetProvider1BeforeApplyUpdates(Sender: TObject; var OwnerData: OleVariant); begin SQLConnection1.CloseDataSets; // SQLConnection1.Close; end;
  4. Respondendo a mim mesmo: Encontrei um comentário no segundo update do Delphi 8, onde a Code Gear diz q esse problema é devido a uma limitação específica com SQL Server. Segue abaixo o texto original: * When using dbExpress MSSQL and TClientDataSet.ApplyUpdates, you may encounter either of the following errors while applying updates, due to a SQLOLEDB.DLL limitation: "Cannot create new transaction because capacity was exceeded." "Cannot create new connection because in manual or distributed transaction mode." To resolve the errors, use one of the following workarounds: - On the DataSetProvider Options property, make sure poFetchBlobsOnDemand and poFetchDetailsOnDemand are False. - Use a BeforeApplyUpdates event to either call CloseDataSets or Close the connection: procedure TForm1.DataSetProvider1BeforeApplyUpdates(Sender: TObject; var OwnerData: OleVariant); begin SQLConnection1.CloseDataSets; // SQLConnection1.Close; end;
  5. Tenho um sistema rodando com DBExpress (Delphi) + SQL Server 2005 Express e na tarde de ontem as estações começaram a retornar essa mensagem ao tentar salvar novas solicitações. Acredito ser alguma configuração do SQL Server, mas não consegui encontrar. O que pode ser?
  6. O problema descrito no link não parece o que estou enfrentando. No caso do arquivo de log estar cheio não poderia realizar nenhuma inserção até corrigí-lo. Mas o sistema voltou ao normal agora a tarde. Deve ser outra coisa.
  7. Tenho um sistema rodando com DBExpress + SQL Server 2005 Express e na tarde de ontem as estações começaram a retornar essa mensagem ao tentar salvar novas solicitações. O que pode ser?
  8. Veja se isso resolve: =SOMARPRODUTO(Produtos!$B$4:$B$8;Produtos!$D$4:$D$8)/SOMA(Produtos!$B$4:$B$8) Fiz a fórmula diretamente na célula S16 da planilha Controle. Mas você terá que alterar manualmente para os outros subprodutos a referência D, pois as duas planilhas (Controle e Produtos) possuem orientações diferentes.
  9. Jhonas, não é necessário separar as querys. Falei com um antigo instrutor e basta utilizar o procedimento abaixo: Para consultas que utilizem junção é necessário desabilitar as ProviderFlags Where e Updade para cada campo externo a tabela principal referenciada na cláusula FROM, tanto no SQLDataSet quanto no ClientDataSet. Todos os campos devem ser adicionados ao Fields Editor e a alteração feita.
  10. Tenho uma instrução em um SQLDataSet com LEFT JOIN. Ao utilizar o código para deletar um registro (ClientDataSet.Delete), o mesmo é removido do DBGrid e continua no banco. Fiz um teste removendo a instrução LEFT JOIN e a deleção ocorreu normalmente. Existe alguma restrição para uso do delete em tabelas com LEFT JOIN ou há alguma forma de contornar isso mantendo a instrução?
  11. Parece-me facilmente solucionável utilizando CONT.SE ou uma fórmula matricial. Mas está bastante confuso da forma como foi explicado. O ideal seria disponibilizar a planilha.
  12. Ficou pouco claro o que você pretende fazer. Em uma primeira olhada parece simples, mas é necessário que você disponibilize a planilha para podermos ajudar.
  13. Minha sugestão é montar uma tabela dinâmica e atualizá-la via código sempre que sua pasta for selecionada.
  14. Paulo H Grando

    VBA + Radiobutton

    Para manter selecionado, altere a propriedade Value para True na Janela Propriedades. Para fazer isso via código: OptionButton1.Value = True
  15. Provavelmente o arquivo está danificado. Não poderá ser utilizado.
  16. Crie um novo perfil em Painel de Controle / Email / Mostrar perfis / Adicionar. Indique na caixa de combinação a opção Escolher perfil a ser usado. Na inicialização do Outlook, escolha o perfil recém criado. Selecione então Arquivo / Importar e exportar / Importar de outro programa ou arquivo. Clique em Next e marque na próxima tela a opção Arquivo de Pasta Particular (.pst). Na tela seguinte direcione para o arquivo e escolha a opção Substituir duplicatas por itens importados. Por último escolha importar todas as pastas e subpastas.
  17. Não é uma solução muito elegante em termos de código, mas funciona: For I=2 to 65536 If Range("A" & I).Value = Range("B" & I).Value Then Range("A" & I).EntireRow.Delete I = I - 1 End If Next I
  18. Aparentemente o arquivo está danificado. Tente importá-lo em um novo perfil ao invés de utilizá-lo diretamente como arquivos de pastas particulares.
  19. Não entendi muito bem o seu problema, mas você pode inserir uma fórmula em cada linha nova, juntamente com a inserção de dados. Seria algo como: Range("G2").FormulaR1C1 = "=RC[-2] - TODAY"
  20. Paulo H Grando

    Macro com erros

    Todos os seus problemas se resumem ao mesmo ponto. Quando você inclui uma linha antes de uma linha de função ou referência, o Excel não ajusta as referências pois a inclusão foi feita após o intervalo utilizado. Se você puder disponibilizar a planilha acredito que possa consertar.
  21. Esse arquivo deve estar salvo com extensão pps. Basta você iniciar o PowerPoint e abrir o arquivo pelo Menu. Aí salve como Apresentação. A extensão vai mudar para ppt.
  22. Você está usando o objeto Worksheets sem passar nenhum parâmetro. Aconselho a utilizar Sheets(1).Copy, caso seja a primeira planilha em cada arquivo.
  23. Tony, Enviei uma mensagem com o meu e-mail.
  24. Você pode fazer via função: =2,34 - ARREDONDAR.PARA.BAIXO(2,34;0)
  25. Um dos grandes problemas de cadastros são as duplicações de dados, principalmente pela fragilidade do campo Descrição. Qualquer abreviatura pode gerar um segundo registro muito similar ao primeiro postado. Uma das formas de minimizar isso seria habilitar umr recurso de auto completar, como no Excel. Assim o usuário poderia observar quais registros similares existem na base. Só não tenho a mínima idéia de como implementar isso. Alguém já tentou uma solução como essa?
×
×
  • Criar Novo...