Notifications
Clear all

inserir controle em tempo de execução

47 Posts
1 Usuários
0 Reactions
10.7 K Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá a todos !!!
seguinte galera tentei buscar outros recursos mas assim meu sistema fica mais profissa...
Preciso de um codigo que conte os equipamentos dentro da frota selecionada no combo box e insira um label com o caption com o nome do equipamento e um textbox para receber as informações para cada equipamento...
Isso sera mais um salto no meu aprendizado...
Conto com vcs...

Anexo Atualizado em 06/09/2014

 
Postado : 23/11/2011 1:05 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro é quase isso mesmo, estamos no caminho..rs
Acho que teria que ter algumas premissas.
Seria um questionário de avaliação então partimos do principio que todos já começariam com 100%.

# Todos os checkbox começam como TRUE, ou seja, o valor do txtTotal = 100%. Tentei fazer o metodo abaixo e depois chama-lo dentro do initialize, porém sem sucesso. ( A chamada no caso de classe ou invés de modulo é feita de forma diferente?

Sub trueQuestion()
CheckBoxGroup.Value = True
UserForm1.txtTotal.Value = 100
End Su

b

# Caso algum checkbox seja FALSO ele subtrai do txtTotal o peso dessa questão.( Nesses seu ultimo post, se algum check for falso ele zera o txtTotal ).

#Teria que inserir o resultado dessa pesquisa em um banco, Mas isso é de boa.

Valeuu..

 
Postado : 25/01/2012 5:21 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, eu fiz somente uma suposição de como poderia ser feito, uma vez que não tenho todos os dados de como está montado este seu novo modelo, necessitaria de mais dados, detalhes, o ideal seria anexar um exemplo reduzido (compactado,zipado) para uma melhor analise e montar as rotinas de acordo com o que precisa.

Mas de uma olhada neste novo modelo se seria isto, se ainda estivermos no caminho certo, aos poucos acertaremos os outros detalhes.

Anexo Atualizado em 06/09/2014

[]s

 
Postado : 25/01/2012 7:36 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro é bem isso mesmo.
Fiz uma alteração, quando o checkbox for TRUE ele soma o peso, quando for FALSE ele subtrai o peso da questão.

Adicionei também um Textbox que é onde vou utilizar os dados para a inserção desses banco no banco, só que preciso de uma ajuda.

Como adicionar o conteudo do checkbox ( caption + o texto "Conforme" no caso que o checkbox for True, e "Não conforme" se o checkbox for false.

Seria algo do tipo:
Conteudo dentro da textbox:

Abaixo os itens que foram pontuados:

3 - Cortesia/ Gentileza = Não conforme
4 - Entusiasmo / Dinamismo = Conforme
8 - Conduziu a ligação transmitindo segurança? = conforme

Total = 80%

Isso porque a intenção é que essa informação fique salva em um banco para futuras consultas.

Da uma olhada no anexo.

 
Postado : 25/01/2012 2:14 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, para : "caption + o texto "Conforme" no caso que o checkbox for True, e "Não conforme" se o checkbox for false"

Podemos concatenar o resultado assim :
MsgBox CheckBoxGroup.Caption & " - Conforme"
MsgBox CheckBoxGroup.Caption & " - Não Conforme"

Quanto adicionar o conteudo do checkbox : É para adicionar aonde, no TextBox ?
Se Sim, seria o resultado de todos os checkboxs, tanto Falsos como True ?

[]s

 
Postado : 25/01/2012 6:45 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Isso mesmo Mauro,
A idéia seria listar dentro da Textbox todos os itens, tanto false como true.

 
Postado : 26/01/2012 10:46 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, desculpe a demora, mas veja se é isto :

Dei uma limpada nas rotinas para um entendimento melhor, e em vez de jogar os resultados em um TextBox, alterei para o ListBox, este tambem é criado em tempo de execução, a diferença é que como só vamos ter um, não precisamos lista-lo no modulo de classe.
Deixei as rotinas separadas, assim fica mais fácil entender se resolver realizar outras adaptações.

Resumindo :
Após criado os CheckBox e selecionar os que pretende, clique no Botão "Resumo ListBox", será criado o Listbox com a Relação dos CheckBox da forma :
3 - Cortesia/ Gentileza = Não conforme
4 - Entusiasmo / Dinamismo = Conforme

Se apos criar o resumo alterar algum CheckBox, é só clicar no Botão novamente e a lista será atualizada.

Nos Botões "Modifica Todos para False e Altera o Total" e "Repor 100 % e Modifica chkb para True", adicionei a chamada para eliminar o ListBox, assim poderá recria-lo novamente.

Anexo Atualizado em 06/09/2014

Não cheguei a efetuar vários testes, mas acredito que não teremos erros, mas qualquer coisa, retorne.

[]s

 
Postado : 26/01/2012 9:27 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Mauro dessa forma realmente é mais interessante.

Tive que pensar como inserir essas informações em um banco de dados em access, ai tive algumas idéias que acho que vai funcionar. ( me de sua opinião)

#Criei 2 tabelas ItensAvaliados e TblMonitoria.
# Criei um relacionamento entre essas tabelas, ou seja, a ItensAvaliados são todos os itens contidos na listbox, porém só podera ser inserido os itens nessa tabela, se tiver uma Monitoria já cadastrada.
#Criei a Conexão com o banco, fiz o metodo de inserção da primeira parte, que é a monitoria. ( Usuário,Operador,Título,Tipo , Data)

Com esse feedback cadastrado vai gerar um código (auto incremento), que será usando como referência na tabela ItensAvaliados.
Ai que vem...
Fiz um metodo para retornar o ultimo código cadastrado, porém agora preciso percorrer a listbox pegando os valores e inserindo da tabela ItensAvaliados .
Acredito que será usando um For porém não consegui montar essa lógica ainda.

Posso estar errado, mas dessa forma fica mas estruturado e para consultar dessas informações depois ficaria mais fácil correto?

Segue o arquivo com as alterações + o banco em access. TOTAL = 38,8 KB

Anexo Atualizado em 06/09/2014

 
Postado : 27/01/2012 7:06 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, assim que possivel dou uma olhada, até la vamos aguardar se mais alguem da uma ajuda, 6ª f é complicado no serviço.

O importante é que estamos no caminho certo e pelo que entendi só falta alguns detalhes, e parabens está ficando show de bola.

[]s

 
Postado : 27/01/2012 8:58 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, meu forte não é conexão com BD, ainda estou engatinhando nesta questão, até estou gostando do que venho tendo contato, acredito que assim que dominar um pouco mais esta implementação, passarei a utilizar mais, pelo menos pelo que já li, é até melhor trabalhar com BD associado ao Access do que no excel, dizem que é mais seguro e podemos ter muito mais dados lançados.

Mas voltando a sua questão, arrisquei a mexer um pouco e consegui que todos os itens do Listbox sejam lançados no BD associados ao Código da Monitoria, desabilitei a linha de lançar o Código da Monitoria e aproveitei a rotina, então o que faltaria fazer :

Definir como serão Cadastrados as Monitorias;
Implementar a verificação se a monitoria Existe e armazena-la na Variável - "sMonitoria" que criei para os testes.

Resolvi não mexer nesta parte para não fugir do seu raciocinio, então me atentei mais a parte de implementação dos lançamentos dos itens do listbox.

Veja como ficou, faça os testes e diga se seria isto, e depois continuamos.
Anexei somente o arq Excel, é só usar o mesmo BD access que anexou acima.
A rotina alterada está comentada:
Anexo Atualizado em 06/09/2014

[]s

 
Postado : 28/01/2012 7:47 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

È isso ae mesmo Mauro ficou muito bom!!!

Acredito que a lógica seria 1° adicionar a monitoria, recuperar o ID e depois registar os itens.

Porém estava lendo alguns artigos de como fazer a recuperação do id de uma forma segura, li algo sobre o SELECT @@IDENTITY que acho que daria certo.
Só que pode haver o problema da inserção de 2 monitorias ao mesmo tempo, ai já daria um rolo do caramba.( não seria uma coisa comum, mas é bom prevenir)

vou pensar mais um pouco de como amarrar esse id afim de vitar esse tipo de problema....

se tu pensar em algo da um toque..

Obrigado pela dedicação.! :D

 
Postado : 30/01/2012 6:50 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caio, só agora consegui responder, eita 2ªf e ainda por cima final de mes, devia começar a trabalhar só na 3ª.

Como eu disse ainda estou engatinhando, mas um bom material sobre o assunto foi disponibilizado pelo Jose no link abaixo, e tem ajudado muita gente, sei que já tem material sobre o assunto, mas sempre é bom termos outras referencias.

Se interessar, é só baixar:

Um Norte
http://www.tomasvasquez.com.br/forum/vi ... =22&t=1408

[]s

 
Postado : 30/01/2012 7:15 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Caraca artigo show de bolaa!!
Acho que o mais completo que já vi por ai em relação ao CRUD ( create, read, update and delete ) com banco de dados em access.

 
Postado : 30/01/2012 7:28 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Cara consegui dar uma evoluída no projeto, pelo menos para ficar bem dinâmico e utilizar o excel apenas como interface mesmo, os dados todos vindo do access.
#Alterações
>-Ao carregar o formulário ele traz a informações nas combobox com dados direto da base em access,
>-Ocultei a listbox para ficar mais visual,porém la continua lá fazendo a mesma função de compilar as informações para o insert.
>-Adicionei um campo Comentário, pois sempre há alguns comentários em relação a monitoria.
>-Criei uma nova tabela OpcaoItens, onde consta os tipos possíveis de itens para ser listados e com o peso de cada um, com isso, já no evento click do check, fiz o método de calcula a soma e a subtração dos pesos de acordo com o peso de cada item no banco.

#pendente
Ao alterar o tipo de questionário não consegui colocar uma variável global no sql.

' deveria utilizar essa variável no WHERE porém ocorre um erro quanto  tento utiliza-la
          sql = "SELECT * FROM OpcaoItens where tipo = '" & vlrOpcao & " ''<aqui'

"
e criar a formulário de visualização com opção de pesquisar monitoria por operador.

Zipei tbm o base em access pois houve alguns alterações nas tabelas.

 
Postado : 30/01/2012 1:18 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Experimente utlizar a sintaxe para variavel assim

sql = "SELECT item, Peso FROM OpcaoItens where tipo =" & vlrOpcao

 
Postado : 30/01/2012 1:42 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Experimente utlizar a sintaxe para variavel assim

sql = "SELECT item, Peso FROM OpcaoItens where tipo =" & vlrOpcao

Boa Reinaldo, nunca tinha utilizado dessa maneira.

tks!

 
Postado : 30/01/2012 2:08 pm
Página 2 / 4