Erro ao emitir senhas Novo SGA v1.1.3

edited April 2014 in Suporte
Antes de mais nada agradeço a todos responsáveis pelo novo sga, é um ótimo upgrade ao sga.

Pessoal instalei novo sga seguindo o tutorial. Aparentemente estava funcionando tudo normalmente, mas quando eu fui utilizar o modo triagem para emitir umas senhas notei um erro.

1- Quando emito a senha a janela modal nao carrega .
2- Verifiquei o erro no chome (inspecionando o objeto):
POST http://192.168.0.165/novosga/public/modules/sga.triagem/distribui_senha 500 (Internal Server Error) jquery.js?v=1.1.3:2
send jquery.js?v=1.1.3:2
p.extend.ajax jquery.js?v=1.1.3:2
SGA.ajax script.js?v=1.1.3:170
SGA.Triagem.distribuiSenha script.js:110
SGA.Triagem.senhaNormal script.js:149
onclick
3- Fui no apache ver o erro que ocorre e capturei o seguinte erro:[Fri Apr 25 11:42:38 2014] [error] [client 192.168.0.4] PHP
Fatal error: Call to a member function toArray() on a non-object in /var/www/novosga/src/Novosga/Business/AtendimentoBusiness.php on line 299, referer: http://192.168.0.165/novosga/public/modules/sga.triagem
Tagged:

Comments

  • Opa pessoa verifiquei a linha de codigo que da o erro e é isso que tem la:
    return array(
    'id' => $id,
    'atendimento' => $this->em->find("Novosga\Model\Atendimento", $id)->toArray()
    );
    estou tentando debugar para entender o que ocorre, mas se sucesso =/.
  • Gente acabei de achar o erro. O erro na verdade estava acontecendo nessa parte do codigo :

    src/Novosga/Business/AtendimentoBusiness.php

    $id = $conn->lastInsertId();
    if (!$id) {
    $id = $conn->lastInsertId('atendimentos_id_seq');
    }
    o id retornado não era o id correto, trabalho em uma banco que existem varias bases, e sempre que rodava esse comando $id = $conn->lastInsertId() me retornava o id, porém um id de um tabela que n tem nada a ver com atendimentos (um tabela de outro sistema aqui, pois o valor era muito alto tipo: 500002). o que eu fiz para resolver o problema foi forcar ele apontar sempre para a sequencia da tabela atendimento como é feito na parte de baixo do codigo $id = $conn->lastInsertId('atendimentos_id_seq');. Fazendo isso eu forcei ele apontar para o local correto no caso a sequencia da tabelas atendimentos.

    E também queria relatar outro erro que tem nesse arquivo. na linha 295 :

    if (!$id) {
    throw new \Exception(_('Erro ao pegar o ID gerado pelo banco. Entre em contato com a equipe de desenvolvimento informando esse problema, e o banco de dados que está usando'));
    }
    Como pode-se ver existe uma barra desnecessária.

    Queria muito deixar minha contribuição no github como devo proceder?
  • Acho que a barra desnecessária que você diz é o gettext (função utilizada para internacionalização do código).

    Sobre o erro ao gerar id, antes de qualquer coisa é necessário testar em outro banco para ver se continuará funcionando. Qual banco e versão você está usando?
  • Creio eu que não tem a ver com banco, estou usando o postgre 9.2.
Sign In or Register to comment.