Urgente, formularios com defeitos **[RESOLVIDO]**

Favor verificar… vários formularios estão acusando erro de “Registro Inexistente” ao mandar atualizar os dados.

A versão é a do update de hoje, 6.00.0018.

Favor aguardo respostas e possiveis procedimentos!!!

Carlos,

Qual o DB? Estou utilizando o Mysql e não estou vendo problemas…

Justamente o mysql Jovito e o problema está ocorrendo justamente em um dos processos cruciais do sistema. lançamento de nf de entrada.

Ja fiz de tudo, limpei os registros, gerei novamente o form, verifiquei se a pk da tabela correspondente está batendo com as configurações do campo mas infelizmente nada que trouxesse uma solução

Tenta realizar o procedimento padrão abaixo, acredito que resolva:

Faça uma atualização manual, a fim de corrigir quaisquer arquivos corrompidos que estejam causando este problema.
Limpe a pasta app e tmp que estão dentro da pasta do Scriptcase

http://www.netmake.com.br/knowledge/article-296.html

Se o erro persistir, crie uma pasta paralelamente no mesmo diretório onde a pasta scriptcase está localizada.

  • Pedimos que você faça uma nova pasta em paralelo onde está a pasta “scriptcase”, por exemplo “scriptcase2”;
  • Instale o Scriptcase na nova pasta (scriptcase2); (Por favor, faça uma nova instalação, não use ctrl + c e ctrl + v)
  • Faça um backup do Scriptcase antigo e restaure os projetos no Scriptcase novo;

Para fazer um backup:

Opções -> Configurações … -> Serviços -> Backup (Faça um backup Geral)

Para fazer uma restauração:

Opções -> Configurações … -> Serviços -> Restore

Estou seguindo seus passos aqui. Logo trarei uma resposta

Prezados.

Ligue o modo debug (Aplicação -> Configuração -> “Configuração do Erro”) e verifique o comando SQL informado e verifique em sua base de dados.

Att,
Yuri Esteves

Yuri, fiz o que voce disse e em meio a outros sqls, apareceu um erro de “Transactions not supported in ‘mysql’ driver. Use ‘mysqlt’ or ‘mysqli’ driver” (acredito ser o update) logo após uma inserção.

Seguem os resultados:

(mysql): SELECT 1 FROM nf_entrada_itens WHERE nf_entrada_id=‘1’ AND status=‘1’ AND acao=‘0’


(mysql): SELECT *, nef.id AS N_E_F, nei.id AS N_E_I FROM nf_entrada_itens nei INNER JOIN nf_entrada_fila nef ON nef.id=nei.nf_entrada_fila_id WHERE nei.nf_entrada_id=‘1’ AND nef.quantidade_restante<0 AND nei.acao=‘1’ AND nei.status=‘1’


(mysql): SELECT nef.id, nei.valor, nei.quantidade FROM nf_entrada_itens nei INNER JOIN nf_entrada_fila nef ON nef.id=nei.nf_entrada_fila_id WHERE nei.nf_entrada_id=‘1’ AND nei.acao=‘2’ AND nei.status=‘1’


(mysql): SELECT nei.* FROM nf_entrada_itens nei WHERE nf_entrada_id=‘1’


(mysql): UPDATE nf_entrada_itens SET status = ‘2’ WHERE id = ‘1’


(mysql): UPDATE produtos_servicos_detalhes SET quantidade_estoque = quantidade_estoque+‘1.0000’, ultima_compra = NOW(), valor_custo = ‘20.0000’ WHERE id = ‘1’


(mysql): SELECT parcelas, juros FROM formas_pagamento WHERE id = ‘1’


(mysql): INSERT INTO contas_pagar (descricao, fornecedor_id, dt_geracao, dt_vencimento, valor, status, plano_contas_id, centro_custo_id, forma_pagamento_id, num_parcela, empresa_id) VALUES (‘Entrada NF12132123’, ‘1’, NOW(), ‘2012-05-16’, ‘35’, ‘0’, ‘60’, ‘1’, ‘1’, ‘1’, 1)


Transactions not supported in ‘mysql’ driver. Use ‘mysqlt’ or ‘mysqli’ driver


(mysql): select count(*) from nf_entrada where id = 1 and status = 2


(mysql): SELECT total FROM total_nf_entrada WHERE id=‘1’

Não foi citado anteriormente, mas quando o formulário foi gerado inigialmente, o campo status estava marcado por algum motivo como parte da pk, além da id.

Isso ja foi desfeito, o codigo fonte ja foi gerado novamente.

Notei que na maioria dos fomulários com essa estrutura (com um status de pendente/aprovado/recusado) e que possuem ações ao aprovar, o status é perdido e aí então o erro de “Registro inexistente” ocorre.

EDIT: ~

Outros campos podem ser alterados e o erro não ocorre desde que o campo status não seja alterado de “pendente”.

Pessoal, consegui resolver o problema recriando o formulário e copiando os métodos do antigo no novo.

Irei marcar o tópico como resolvido porem espero que futuramente e principalmente em formularios maiores esse problema não volte acontecer.

Att.