Ir para conteúdo
Fórum Script Brasil
  • 0

Enxugando O Código


Ulissesx

Pergunta

Pessoal, não vou postar o código aki pois seria um abuso, pois é grande pacas...

Vou explicar o q rola:

Esse é um sistema de controladoria, ele apura uma serie de ocorrencias dentro da empresa, como um scoreboard, devido a prazo curto e muito stress tive que parir esse codigo de bate e pronto, mas ficou gigante, funciona para aquilo q foi proposto, mas toda vez que uma nova ocorrencia foi incluisa terei q alterar essa montanha de codigo.

Deem uma olhada Codigo

Agradeço a qualquer sugestão e se possivel deem uma avaliação para ver se é funcional, perdi boa parte dos meus poucos cabelos nesse codigo!!! laugh.gif

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

Po!! Sobrou cabelo ainda?? smile.gif

Dei uma olhada no seu código, realmente ta complicado, pra poder dar alguma sugestão seria necessário conhecer a função do sistema além da estrutura e função das tabelas.

O que eu procuraria fazer é deixar o código mais dinamico, quem sabe criando tabelas auxiliares.

Link para o comentário
Compartilhar em outros sites

  • 0

Seguinte Cyber, toda essa informação esta em uma unica tabela!

A controladoria (usuarios do programa) cadastra a ocorrencia em uma tela de lançamentos. Ex: Vendedos - Loja 01 - ocorrencia 04

A cada lançamento é feito um registro no banco então mensalmente é feito o levantamento por setor do numero de ocorrencias recebidas. Como eu disse devido ao prazo muito curto não houve como fazer uma tabela mais bem trabalhada então tenho que fazer o codigo ler todos os registros para contar as ocorrencias do setor desejado...

enrolado pacas...

e como meu conhecimento é limitado, fica dificil... sad.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Brother !!

Cê num tá careca não? laugh.gif

Puts, e eu que achei que codigos enormes era só eu que fazia, hehehe

Uns anos atrás.. eu fazia cada gambiarra pra funcionar.. que davam milhares de linhas..

Olha só..

O que eu sugiro, é que você re-veja principalmente tudo que é gravado no banco.

Teria que achar um modo de dividir mais.. criar mais tabelas.. e tudo mais

Assim, ficaria mais facil manipular codigos e registros.

Outra idéia, é criar funções no codigo.

Achar trechos que se repitam varias vezes, e criar funções, que só chamando, e passando parametros, você consiga diminuir bastante o codigo, e fazer a mesma coisa!

Mas, eu ate tentei entender seu codigo..mas é complicado, hehehe

Link para o comentário
Compartilhar em outros sites

  • 0

Sobrou muito pouco cabelo p/contar!!!! laugh.gif

Pra fazer isso q você falou seria preciso refazer o banco certo?

Gostaria de mostrar o sistema completo p/vocês verem, pois sinceramente meus neuronios se recusam a trabalhar nesse codigo de novo...

Agradeço a força pessoal, se possivel vou colocar a estrutra da tabela aki!

valeu!!

Link para o comentário
Compartilhar em outros sites

  • 0

hehe

é complicado mecher em codigos enormes..

Eu mesmo já tive que melhorar codigos que eu tinha feito anos atras

Mas, com toda a experiencia que tenho hoje, sempre consegui diminuir bastante meus codigos.

Pois, quando você aprender a usar Procedures e Functions, vai ver que é extremamente facil diminuir codigos

Link para o comentário
Compartilhar em outros sites

  • 0

Olha, pelo o q eu entendi todas essas consultas são iguais, com a única diferença q é o codigo, porque você não faz um group by??Assim:

strSQL1 = "SELECT COUNT (contador) AS total1 FROM notificacao WHERE loja LIKE '%" & varNome & "%' AND data BETWEEN #"& varNome1 &"# and #"& varNome2 & "#  GROUP BY codigo ORDER BY codigo"

Ele vai fazer a contagem agrupando pelo código, ai você faz um loop e lê os registros em sequência e uso só 1 recordset.

Link para o comentário
Compartilhar em outros sites

  • 0
Olha, pelo o q eu entendi todas essas consultas são iguais, com a única diferença q é o codigo, porque você não faz um group by??Assim:

strSQL1 = "SELECT COUNT (contador) AS total1 FROM notificacao WHERE loja LIKE '%" & varNome & "%' AND data BETWEEN #"& varNome1 &"# and #"& varNome2 & "#  GROUP BY codigo ORDER BY codigo"

Ele vai fazer a contagem agrupando pelo código, ai você faz um loop e lê os registros em sequência e uso só 1 recordset.

Otima idéia!!

Simplificou mais ainda o q eu tinha falado acima (nem lembrei do group by)

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

Eae Galera, desculpem ficar tanto tempo sumido, estou quebrando a cabeça agora para parir um sistema de gestão de rh... ô trem custoso!!

Agora queria agradecer a dica do GROUP BY só que tem uma coisa ela ajudou de um lado mas me criou outro probleminha a exibição dos dados, no codigo original tinha montado uma tela em duas colunas para fazer com todos os dados aparecessem mais enxutos p/usuarios, usando GROUP By so consegui exibir os dados em uma coluna, o relatorio ficou enorme...

agradeço a todos que colaboram, muito obrigado pelas dicas...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...