Problemas na Grid

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
jjr_rs
Usuário Nível 2
Usuário Nível 2
Mensagens: 72
Registrado em: 18 Mai 2009 18:56
Localização: Porto Alegre
Contato:

Problemas na Grid

Mensagem por jjr_rs »

Olá pessoal,

Estou com um problema ao utilizar uma grid em um form...
O que acontece: Nesta grid, ao selecionar uma linha e clicar sobre ela, eu chamo outro form.
Ao finalizar o uso deste form eu fecho ele com o "form_xxx.release", voltando assim para o form anterior onde está a grid, atualizando-a.
Neste momento, caso eu não feche esse form e o reabra, a grid perde a possibilidade de utilizar o mouse para selecionar qualquer outra linha que eu queira, ele simplesmente não funciona sobre ela, assim se eu quiser realizar qualquer operação nesta grid, apenas conseguirei utilizando os botões de navegação do teclado e o Enter.

Algum dos amigos já passou por isso ? O que posso estar fazendo de errado ?

Desde já agradeço qualquer ajuda!
Obrigado !
Bahsis Sistemas de Gestão
Bettu
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 14 Nov 2013 16:25
Localização: Curitiba

Problemas na Grid

Mensagem por Bettu »

Olá pessoal,

Primeiro gostaria de agradecer o tempo que vocês dedicam, é de grande ajuda para quem esta nos primeiros passos e lutando com o harbour, o fórum me ajudou bastante!
Agora estou com uma dúvida sob o grid, eu estou acessando diretamente no banco de dados, já estudei os exemplos do samples, e até baixei alguns programinhas que vocês colocaram, mas minha dúvida é: existe um número máximo de campos para o grid, já que quando coloco todos os campos (que são 20, um de 44 caracteres, e vários numéricos 13:2, quando vou gravar (wform.gridpp.save), se colocar todos os campos me da um error: Error DBFNTX-1020 Tipo incorreto de dado: VL_SERV (que é um campo numerico), agora se deixo em vez dos 20, só 5 campos e coloco o campo que dava o erro, grava o grid sem problema.
Pode ser que seja um problema de memória?

Muito obrigada, por todos os post que vocês fazem.
Aguardo ajuda!
Bettu
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 14 Nov 2013 16:25
Localização: Curitiba

Problemas na Grid

Mensagem por Bettu »

Olá pessoal, segui fazendo provas para descobrir o que é o erro:
Error DBFNTX/1020 Tipo incorreto de dado: VL_SER
Para isso, eu fui acrescentando de a 2 os campos para ver desde onde começava o erro, e o que percebi que o problema esta no formato, por exemplo: quando eu deixei só 12 campos, e como último campo numérico o de 6:2 (6 inteiros,2dec) no deu erro:

Código: Selecionar todos

Function grid_C500_colctrls()
Local aColumnControls

   aColumnControls := { {'TEXTBOX','CHARACTER'} ,;
                     {'TEXTBOX','CHARACTER'} ,;
                     {'TEXTBOX','CHARACTER'} ,; 
                     {'TEXTBOX','NUMERIC','999999999'} ,;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','999.99'} }

return aColumnControls
o usuário não podia acrescentar mais dígitos dos que correspondiam para cada campo, depois continuei acrescentando mais campos

Código: Selecionar todos

Function grid_C500_colctrls()
Local aColumnControls

   aColumnControls := { {'TEXTBOX','CHARACTER'} ,;
                     {'TEXTBOX','CHARACTER'} ,;
                     {'TEXTBOX','CHARACTER'} ,; 
                     {'TEXTBOX','NUMERIC','999999999'} ,;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','CHARACTER'},;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','999.99'},;
                     {'TEXTBOX','NUMERIC','9999999999.99'} ,;
                     {'TEXTBOX','NUMERIC','9999999999.99'} }

return aColumnControls
 
E aí o programa deixa que o usuário no campo 12, em vez de continuar como no primeiro exemplo deixando que complete só (6:2), agora deixa que complete como os outros campos numéricos (13:2), existe alguma propriedade ou comando para controlar isso? já que me tinha acontecido o mesmo com um campo caracter de 40 dig, que logo de acrescentar outros campos numéricos, em vez de pedir como se fosse carater, passou a pedir como se fosse numérico, tomando o formato do seguinte campo.

Desde já obrigada pela ajuda!
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Problemas na Grid

Mensagem por Toledo »

Olá Bettu, seria possível enviar um código mais completo e com o banco de dados para que possamos fazer um teste? De preferência um código que possa ser compilado.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Bettu
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 14 Nov 2013 16:25
Localização: Curitiba

Problemas na Grid

Mensagem por Bettu »

Olá Toledo, desde já muito obrigada pela sua colaboração. Eu estou reescrevendo em harbour, um programa que foi feito em clipper.
Para fazer o teste, tem que ir a: Analisar – Editar dados – F9 (você vai ver que não muda nenhum formato dos campos) e vai controlando a quantidade máxima de cada um, se você escolher F10 (você vai ver que o sistema deixa preencher o campo % ICMS com mais de 3 inteiros) e escolhendo do Menú - Esc – Gravar e Sair da o error.
Eu sei que ainda me falta bastante para saber programar bem, e tenho que melhorar o sistema, como por exemplo não pedir no grid o fornecedor, já que esta em outra dbf.
Por favor, além de ver o que me esta faltando que produz o erro, se puder me passar algumas sugestões para melhorar a programação, para mim seria muito importante.
Muito obrigada pela ajuda!
Bettu
Anexos
testedbf.rar
dbfs
(30.5 KiB) Baixado 108 vezes
test.rar
Exe e prgs
(802.74 KiB) Baixado 132 vezes
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Problemas na Grid

Mensagem por Toledo »

Ola Bettu, executei aqui o EXE que estava no arquivo que você anexou na mensagem anterior e segui as suas instruções. O preenchimento do campo "% ICMS" só aceitou o formato 999.99, não consegui digitar mais do que 3 inteiros... e ao escolher a opção "ESC - Gravar e Sair" no menu, não ocorreu qualquer erro, o registro foi gravado corretamente, veja imagem abaixo:
bettu.jpg
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Bettu
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 14 Nov 2013 16:25
Localização: Curitiba

Problemas na Grid

Mensagem por Bettu »

Ola, bom dia!
Como será que pode acontecer, eu posso ingressar mais dígitos e quando salvo desde Menú Serviços Públicos - ESC - Gravar e Sair, aparece a mensagem de erro.
Telas com o erro
Telas com o erro
Muito obrigada pelo interesse.
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Problemas na Grid

Mensagem por Toledo »

Amigo, muito estranho isto... voltei a fazer um novo teste com o mesmo EXE que você me enviou, e tudo normal, não consegui digitar mais de 3 inteiros no campo % ICMS e os registros são gravados corretamente, sem qualquer mensagem de erro.

Você também está executando o mesmo EXE e o mesmos arquivos DBF que você me enviou?

Qual é o seu ambiente de trabalho?

Aqui executei em um Windows XP Professional SP2 e também no Windows 8 Pro, todos 32Bits.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Bettu
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 14 Nov 2013 16:25
Localização: Curitiba

Problemas na Grid

Mensagem por Bettu »

Os dados são os mesmos, mas eu fiz os testes em dois computadores que tem windows 7 e SO de 32bits, e quando seleciono Serviço full me deixa preencher até 13digitos. Consegui fazer o teste em um computador com windows xp e acontece o mesmo.

Fazendo outros testes percebi que quando avanço com TAB me deixa sempre preencher os 13 digitos, mas quando dou enter, as vezes controla e as vezes não.
Mas quando vou editar o campo, por exemplo, continuo completando dados e volto para %ICMS, e dou enter aí sempre me controla que sejam só 3 inteiros.

De novo, obrigada pela sua atenção
Responder