Sérgio_BR 0 Denunciar post Postado Janeiro 1, 2007 Olá, meus amigos,Problema anterior, dificuldade com valor financeiro, parcialmente resolvido..depois informo como.No momemto, em um form de cadastro, depois de digitar os dados, ao clicar no botão (que contém o código abaixo), recebo a mensagem: Tabela não está em modo de edição..etc...ai está o código:procedure TfrmCadastro.btnInserirFotoClick(Sender: TObject); begintbMembros.Edit; If OpenPictureDialog1.Execute then tbMembros.Edit; Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); tbMembros.FieldByName('Foto').AsString:= OpenPictureDialog1.FileName; tbMembros.Post; end;O que posso fazer para evitar isso?Feliz Ano Novo para toda a equipe!!! Compartilhar este post Link para o post Compartilhar em outros sites
Hugo Slepicka 0 Denunciar post Postado Janeiro 2, 2007 procedure TfrmCadastro.btnInserirFotoClick(Sender: TObject);begintbMembros.Edit;If OpenPictureDialog1.Execute thentbMembros.Edit;Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);tbMembros.FieldByName('Foto').AsString:= OpenPictureDialog1.FileName;if tblmembro.state in [dsedit,dsinsert] then tbMembros.Post;end; é só verificar o state como foi incluido no exemplo acima... flw aew!!! http://forum.imasters.com.br/public/style_emoticons/default/natal_noel.gif Compartilhar este post Link para o post Compartilhar em outros sites
Sérgio_BR 0 Denunciar post Postado Janeiro 2, 2007 Desculpe, Hugo, mas não entendi sua dica..como verificar o state? o código do botão é exatamente aquele que postei...Copiei a correção que você fez e colei, no lugar do outro...mas continua aparecenda mensagem:tbMembros: tabela não está em modo de edição ou inserção... onde errei, cara?Desculpa minha falta de conhecimento...beleza? Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 2, 2007 Tente fazer da seguinte forma: procedure TfrmCadastro.btnInserirFotoClick(Sender: TObject);beginIf OpenPictureDialog1.Execute then begin tbMembros.Edit; Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); tbMembros.FieldByName('Foto').AsString:= OpenPictureDialog1.FileName; tbMembros.Post; end;end; No caso colocando todo o procedimento dentro de um bloco de edição, sendo que somente vai dar um Edit e Post se o kara selecionar e confirmar a figura. Compartilhar este post Link para o post Compartilhar em outros sites
Sérgio_BR 0 Denunciar post Postado Janeiro 2, 2007 Olá, Kmarada....tudo certo?Olha, testei esse último código que você sugeriu e ao clicar no botão gravar me veio essa mensagem:Project Controle.exe raised exception class EDatabaseErrorwith message 'tbMembros': Arquivo não está em modo de edição ou inserção'. Process stopped.Use Step or Run to continue.Ao clicar ok, o delphi exibe a unit do fom principal e há uma seta verdeapontanto para esse comando:FrmCadastro.Free;O Código a que se refere esse trecho é esse:Application.CreateForm(TfrmCadastro,FrmCadastro);TfrmCadastro.Create(Self);FrmCadastro.ShowModal;FrmCadastro.Free;No form principal estou chamando o for Cadastro....está correta essa forma dechamar um form???A referida tabela está no modo Active.Troquei a tabela do form, testei e nada....Porque é que o sistema acha que ela não está em modo de edição ou inserção?Falai mestre....Um abraço!Sérgio. Compartilhar este post Link para o post Compartilhar em outros sites
bdexterholland 0 Denunciar post Postado Janeiro 2, 2007 Rode o programa usando a tecla F7 (o delphi executa linha por linha, você terá de ficar apertando F7 várias vezes). Com Isso, você verá se o seu programa não está pulando alguma linha de edit... Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Janeiro 3, 2007 Realmente iria precisar dar uma revisada nos fontes, pois o comando de edição e de post esta certo, deve de ser em um outro momento que ele esta tentando mexer na tabela. Compartilhar este post Link para o post Compartilhar em outros sites
Sérgio_BR 0 Denunciar post Postado Janeiro 3, 2007 Hey, meus amigos, hoje resolvi abrir o Delphi e encarar aqueles probleminhas que relatei a vocês..depois de tantos testes, resolvi novamente dar uma olha nos códigos,principalmentedo formulário cadastro..vejam abaixo: procedure TfrmCadastro.btnGravarClick(Sender: TObject);begin tbMembros.Open; tbMembros.Edit; tbMembros.Post; TabelaNaoLocada;end;Originalmente, as duas primeiras linhas não existiam, então acrescentei-as e fiz o teste...e deu certo... O código sugerido por vocês no botão inserir foto está funcionando.Uma pergunta: qdo se cria algo com BD, é normal inserir dados para testes...Naturalmente o campo código, que é autoincremental, cria os códigos, que não são excluidos qdo se exclui os registros inseridos..o que fazer para zerá-lo antes de criar o instalador??Outra pergunta: Quero criar opções de pesquisa para o usuário..Nesse fom cadastro existem dois DBRadioGroup's.. Ex: DBRadioGroup escolha uma cor: Azul /Amarela ou DBRadioGroup Estado Civil: Casado /Solteiro..Prá efeito de pesquisa, o usuário quer saber qtos são casados ou qtas cores azuis foram escolhidas Como posso fazer isso e exibir em um DBGrid? E para imprimir esse resultado do DBGrid?Um abraço!!! Obrigado pela força!!!PS!! Ao abrir(F9) o form cadastro, observei que as fotos não aparecem instantaneamente e issosó acontece se eu clico no dbnavigator...aqui estou usando um Image...pensei em trocar por umDBImage, mas ai o form nem abre e surge uma mensagem dizendo que Bitmap não é válido..?!?O que fazer? Qual componente cai melhor visualmente para o usuário?? Compartilhar este post Link para o post Compartilhar em outros sites