Suporte não-oficial ao OcoMon
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Suporte não-oficial ao OcoMon

Criado e mantido por usuários para usuários
 
InícioInício  PortalPortal  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  
Últimos assuntos
» Nova versão OcoMon
[RESOLVIDO] Campo customizado - Abertura de chamados EmptyTer Ago 11, 2020 12:35 am por FabioRK

» Encerrar chamado em nome de Operador
[RESOLVIDO] Campo customizado - Abertura de chamados EmptyTer Jan 08, 2019 11:49 am por vafonseca

» Usuário Cancelar Chamado
[RESOLVIDO] Campo customizado - Abertura de chamados EmptySeg Nov 19, 2018 11:34 am por vafonseca

» [Resolvido]Qualificação Chamados
[RESOLVIDO] Campo customizado - Abertura de chamados EmptyQua Out 24, 2018 12:37 pm por vafonseca

» [Resolvido] Bloquear Campo Descrição para Operador e Todos Usuarios
[RESOLVIDO] Campo customizado - Abertura de chamados EmptySeg Set 24, 2018 9:58 am por vafonseca

» Solicitar inserção de email de destino no encerramento
[RESOLVIDO] Campo customizado - Abertura de chamados EmptyQua Jan 31, 2018 11:55 am por alex.xavier

» Área e Problemas do Consultar igual ao de Abrir chamado
[RESOLVIDO] Campo customizado - Abertura de chamados EmptyTer Set 12, 2017 8:53 am por renatomdm

» FeedBack do usuario
[RESOLVIDO] Campo customizado - Abertura de chamados EmptySex Jul 07, 2017 8:25 am por vafonseca

» Paramentrização Ocomon
[RESOLVIDO] Campo customizado - Abertura de chamados EmptySex maio 05, 2017 12:51 pm por cristiano.barbosa


 

 [RESOLVIDO] Campo customizado - Abertura de chamados

Ir para baixo 
2 participantes
AutorMensagem
orbfx




Mensagens : 8
Data de inscrição : 16/04/2014

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyQua Abr 16, 2014 7:00 pm

Boa noite,

Fiz uma função básica em PHP pra obter o endereço do usuário na rede e mesmo com proxy habilitado na rede pra exibir o IP correto do usuário na intranet (ex: 10.0.10.125).

Consegui adicionar o campo na tela de cadastro de ocorrências e está pegando o IP corretamente do usuário e jogando em uma input. Porém ainda estou meio perdido nos arquivos de banco.

Criei o campo oco_ip_usuario na tabela ocorrencias e alterei os INSERTS (incluir.php e incluir_2.php), adicionando o novo campo. Porém na hora de registrar a ocorrência da um erro (Não foi possível recuperar as informações de registro!!).

Não cheguei a adicionar a função pra ser habilitada na tela de Perfis, na verdade eu joguei dentro da condição do campo "usuario", então se o campo usuário estiver habilitado na tela de Perfis o campo de IP também aparecerá na hora de criar o chamado. Por enquanto ainda é uma gambiarra mas depois pretendo adicionar na tela de perfis e transformar em uma variavel de ambiente pra enviar o IP do usuário diretamente via e-mail pro helpdesk assim que abrir o chamado.. Na verdade acho que essa parte é mais fácil, por enquanto ainda estou preso no banco de dados...

Minha função ficou assim no arquivo incluir.php e como mencionei ela aparecerá juntamente com o campo usuario (operador). Pretendo dividir posteriormente e colocar pra ativar isso através dos perfis de usuário, mas antes disso tenho que conseguir registrar no banco...

Código:
function retornaIpReal(){  
 if (!empty($_SERVER['HTTP_CLIENT_IP'])){  
 $ip=$_SERVER['HTTP_CLIENT_IP'];  
 }  
 elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){  
 $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];  
 }  
 else{  
 $ip=$_SERVER['REMOTE_ADDR'];  
 }  
 return $ip;  
 }  
 $ipReal = retornaIpReal();

 if ((!empty($rowconf) && $rowconf['conf_scr_operator']) || empty($rowconf)) {
 print "<TD width='20%' align='left' bgcolor=".TD_COLOR.">".TRANS('OCO_FIELD_OPERATOR','Operador').":</TD>";
 print "<TD width='30%' align='left' bgcolor=".BODY_COLOR."><input class='disable' value='".$_SESSION['s_usuario']."' readonly></TD>";
 print "</TR>";
 print "<TR>";
 print "<TD width='30%' align='left' bgcolor=".TD_COLOR.">IP na Rede: </TD>";
 print "<TD width='30%' align='left' bgcolor=".BODY_COLOR."><input type='text' class='disable' name='ipusuario' value=".$ipReal." readonly=''></TD></TD>";


Última edição por orbfx em Ter Abr 22, 2014 2:45 pm, editado 6 vez(es)
Ir para o topo Ir para baixo
orbfx




Mensagens : 8
Data de inscrição : 16/04/2014

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyQua Abr 16, 2014 7:17 pm

No mesmo arquivo incluir.php alterei os INSERTS. Porém ao tentar cadastrar aparece a mensagem que não foi possível realizar a consulta. O campo criado na tabela ocorrencias foi "oco_ip_usuario" e o nome da input como consta acima é "ipusuario", daí na hora de inserir chamo a variável POST e o nome do input '".$_POST['ipusuario']."'

Código:
$query = "INSERT INTO ocorrencias (problema, descricao, instituicao, equipamento, sistema, contato, telefone, local, operador, ".
 "data_abertura, data_fechamento, status, data_atendimento, aberto_por, oco_scheduled, oco_real_open_date, date_first_queued, oco_prior, oco_ip_usuario)".
 " values ".
 //"(".$problema.",  ";
 "(".$catProb.",  ";

 if ($_SESSION['s_formatBarOco']) {
 $query.= " '".$descricao."',";
 } else {
 $query.= " '".noHtml($descricao)."',";
 }

 if (!$schedule){
 $query.="".$_POST['instituicao'].",'".$_POST['equipamento']."','".$sistema."',".
 "'".noHtml($_POST['contato'])."','".$_POST['telefone']."',".$_POST['local'].",".$operator.",".
 " '".$date_schedule."',NULL,".$oStatus.",NULL,".$_SESSION['s_uid'].",".$schedule.", '".date("Y-m-d H:i:s")."', '".date("Y-m-d H:i:s")."', '".$_POST['prioridade']."', '".$_POST['ipusuario']."')";
 } else {
 $query.="".$_POST['instituicao'].",'".$_POST['equipamento']."','".$sistema."',".
 "'".noHtml($_POST['contato'])."','".$_POST['telefone']."',".$_POST['local'].",".$operator.",".
 " '".$date_schedule."',NULL,".$oStatus.",NULL,".$_SESSION['s_uid'].",".$schedule.", '".date("Y-m-d H:i:s")."', NULL, '".$_POST['prioridade']."', '".$_POST['ipusuario']."')";
}

 $resultado = mysql_query($query) or die (TRANS('ERR_QUERY'));

E no arquivo incluir_2.php ficou assim:

Código:
$query = "INSERT INTO ocorrencias (problema, descricao, instituicao, equipamento, sistema, contato, telefone, local, operador, ".
 "data_abertura, data_fechamento, status, data_atendimento, aberto_por, oco_scheduled, oco_real_open_date, oco_ip_usuario) values ".
 //"(".$problema.",  ";
 "(".$catProb.",  ";

 if ($_SESSION['s_formatBarOco']) {
 $query.= " '".$descricao."',";
 } else {
 $query.= " '".noHtml($descricao)."',";
 }

 $query.="".$_POST['instituicao'].",'".$_POST['equipamento']."','".$sistema."',".
 "'".noHtml($_POST['contato'])."','".$_POST['telefone']."',".$_POST['local'].",".$operator.",".
 " '".$date_schedule."',NULL,".$oStatus.",NULL,".$_SESSION['s_uid'].",".$schedule.", '".date("Y-m-d H:i:s")."')";

 $resultado = mysql_query($query) or die (TRANS('ERR_QUERY'));

Ao tentar cadastrar a ocorrência vem a seguinte tela (e a mensagem que não foi possível recuperar as informações de registro):

Segue o llink do printscreen da tela:
[RESOLVIDO] Campo customizado - Abertura de chamados 2624k74
Ir para o topo Ir para baixo
FabioRK

FabioRK


Mensagens : 378
Data de inscrição : 14/09/2009
Idade : 44
Localização : Carazinho - RS

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyQui Abr 17, 2014 10:32 am

Edita o arquivo e coloca a query para mostrar junto com o erro:
Código:
$resultado = mysql_query($query) or die (TRANS('ERR_QUERY')."</br>".$query);

Depois acessa o banco e tenta executar a query direto no banco, verifica se vai dar erro também.
Ir para o topo Ir para baixo
orbfx




Mensagens : 8
Data de inscrição : 16/04/2014

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyQui Abr 17, 2014 2:21 pm

Valeu Fabio!

Só que eu fiz o teste e funcionou.. Inserindo a query diretamente no phpmyadmin e cadastrou sem nenhum erro...

Será que não é algum outro arquivo? Vi que tem uma bagunça no includes/queries/queries.php mas ainda não arrisquei..

Código:
Não foi recuperar as informações de registro!!
INSERT INTO ocorrencias (problema, descricao, instituicao, equipamento, sistema, contato, telefone, local, operador, data_abertura, data_fechamento, status, data_atendimento, aberto_por, oco_scheduled, oco_real_open_date, date_first_queued, oco_prior, oco_ip_usuario) values (72, ' testando 124567890-',1,'444','26','Felipe Santiago','444',11,255, '2014-04-17 14:02:23',NULL,1,NULL,255,0, '2014-04-17 14:02:23', '2014-04-17 14:02:23', '1', '10.0.11.120')


Última edição por orbfx em Qui Abr 17, 2014 4:12 pm, editado 1 vez(es)
Ir para o topo Ir para baixo
orbfx




Mensagens : 8
Data de inscrição : 16/04/2014

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyQui Abr 17, 2014 4:09 pm

Tentei inserir também no select, no arquivo queries.php e executei a consulta...

A consulta consigo realizar normalmente jogando o SELECT direto no banco, retorna o IP e tudo mais na consulta (dos que cadastrei no dedo)... sem erros...

Porém o Ocomon já me retorna uma bomba logo depois de realizar login:

Código:
Não foi recuperar as informações de registro!!SELECT o.numero as numero, o.problema as prob_cod, o.descricao as descricao, o.equipamento as etiqueta, o.sistema as area_cod, o.contato as contato, o.telefone as telefone, o.local as setor_cod, o.operador as operador_cod, o.data_abertura as data_abertura, o.data_fechamento as data_fechamento, o.status as status_cod, o.data_atendimento as data_atendimento, o.instituicao as unidade_cod, o.aberto_por as aberto_por_cod, o.oco_scheduled, o.oco_real_open_date, o.date_first_queued, o.oco_script_sol, o.oco_prior, o.oco_ip_usuario as ip, i.inst_nome as unidade, p.problema as problema, p.prob_area as prob_area_cod, p.prob_sla as sla_solucao_cod, a.sistema as area, a.sis_email as area_email, a.sis_atende as sis_atende, l.local as setor, l.loc_reitoria as reitoria_cod, l.loc_prior as loc_prior_cod, l.loc_dominio as dominio_cod, l.loc_predio as predio_cod, pr.prior_nivel as prioridade_nivel, pr.prior_sla as sla_resposta_cod, u.login as login, u.nome as nome, u.email as user_email, u.AREA as user_area, u.user_admin as user_admin, ua.nome as aberto_por, s.status as chamado_status, s.stat_cat as stat_cat_cod, s.stat_painel as stat_painel_cod, stc.stc_desc as status_cat, sls.slas_desc as sla_solucao, sls.slas_tempo as sla_solucao_tempo, slr.slas_desc as sla_resposta, slr.slas_tempo as sla_resposta_tempo, sol.script_desc, prioridade_atendimento.pr_nivel as pr_atendimento, prioridade_atendimento.pr_color as cor FROM ocorrencias as o left join sistemas as a on a.sis_id = o.sistema left join localizacao as l on l.loc_id = o.local left join instituicao as i on i.inst_cod = o.instituicao left join usuarios as u on u.user_id = o.operador left join usuarios as ua on ua.user_id = o.aberto_por left join `status` as s on s.stat_id = o.status left join status_categ as stc on stc.stc_cod = s.stat_cat left join problemas as p on p.prob_id = o.problema left join sla_solucao as sls on sls.slas_cod = p.prob_sla left join prioridades as pr on pr.prior_cod = l.loc_prior left join sla_solucao as slr on slr.slas_cod = pr.prior_sla left join script_solution as sol on sol.script_cod = o.oco_script_sol left join prior_atend as prioridade_atendimento on prioridade_atendimento.pr_cod = o.oco_prior WHERE o.oco_scheduled and o.sistema in (26,26,1,10,11,12,14,15,16,17,19,2,20,21,22,23,24,25,26,27,3,4,5,6,7,8,9) ORDER BY numero

Isso já ta me deixando doido já... Será que tem algum código de proteção pra ninguém ficar inserindo campos? rs confused
Ir para o topo Ir para baixo
orbfx




Mensagens : 8
Data de inscrição : 16/04/2014

[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados EmptyTer Abr 22, 2014 1:14 pm

Consegui, fazendo do jeito certo (habilitando/desabilitando via configuração de perfil de usuario) com uma condição própria no incluir.php

Está cadastrando no banco, aparece na tela de consulta, tela de impressão e o operador também recebe o IP do usuário via e-mail.

Pra quem quiser adicionar novos campos na abertura de chamados, seguem os arquivos e as tabelas do banco que precisam ser alterados.

Arquivos:

ocomon/geral/incluir.php
ocomon/geral/incluir_2.php
ocomon/geral/mostra_consulta.php
ocomon/geral/mostra_relatorio_individual.php

admin/geral/screenprofiles.php
admin/geral/screen_profile_details.php

includes/language/pt_BR.php
includes/queries/queries.php

Banco de dados:

Tabela: ocorrencias
Tabela: configusercall

Se alguém tiver alguma dúvida posso ajudar.
Ir para o topo Ir para baixo
Conteúdo patrocinado





[RESOLVIDO] Campo customizado - Abertura de chamados Empty
MensagemAssunto: Re: [RESOLVIDO] Campo customizado - Abertura de chamados   [RESOLVIDO] Campo customizado - Abertura de chamados Empty

Ir para o topo Ir para baixo
 
[RESOLVIDO] Campo customizado - Abertura de chamados
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» [Resolvido]Adição de um novo campo para abertura de chamados
» Inserir novo campo - Abertura de Chamados
» Criação de novo campo na tela de abertura de chamados
» Campo Prioridade na abertura de chamado.(RESOLVIDO)
» Erro perfil de tela de abertura de chamados[RESOLVIDO]

Permissões neste sub-fórumNão podes responder a tópicos
Suporte não-oficial ao OcoMon :: Sua primeira categoria :: GERAL-
Ir para: