Jair - Fórmula Posted May 12, 2020 Topic Count: 937 Topics Per Day: 0.13 Content Count: 9,137 Content Per Day: 1.30 Reputation: 413 Achievement Points: 109,418 Solved Content: 0 Days Won: 245 Status: Offline Age: 53 Device: Windows Report Posted May 12, 2020 Vejo muito perguntas das pessoas querendo saber qual tabela que armazena determinada informação, ou mais detalhadamente, qual campo. Você já precisou saber alguma coisa assim? Primeiramente é importante falar que existe uma tabela que é o dicionário de dados do sistema, que é a GDIC, antiga GCAMPOS (agora é uma view). Nela você pode consultar todas (quase todas na verdade, hehehehe) do sistema, com as informações em geral necessárias para montagens de SQLs, ou mesmo para manutenções diretamente no banco de dados. Para uma pesquisa nesta tabela acima, de forma geral, basta passar no Where pelo campo DESCRICAO o que precisa, ou se souber a tabela e quiser saber qual o conteúdo que tem nela, filtrar TABELA = 'GCCUSTO', por exemplo. Exemplo 2: SELECT * FROM GDIC WHERE DESCRICAO LIKE '%Nome do Centro%' Exemplo 3: SELECT * FROM GDIC WHERE COLUNA = '#' Neste caso do exemplo 3 acima, são retornados apenas os nomes das tabelas e sua descrição. Agora, algumas coisas, são perguntadas e de repente não se sabe como pesquisar, ou pesquisou e não achou, então, seguem alguns exemplos específicos que se quer saber. Vamos lá, vamos abrir com algumas dúvidas que são freqüentes: P) Qual tabela armazena o Log dos Valores Alterados no envelope do funcionário? R) Tabela PFVALORFORCADO P) Se eu precisar alterar via banco de dados a máscara de C.Custos, qual a tabela que posso efetuar o update? R) Tabela GCCUPAR, campo MASCARACC P) Qual tabela ficam armazenadas as consultas SQL das planilhas do TOTVS? R) Tabela GPLAN, campo PLANNETDATA. Aqui, uma dica do amigo @Benito.BH de como conseguir consultar melhor os dados no campo, pois, o formato não é simples de ser lido diretamente por estar em XML. Deve passar, se desejar, os parâmetros para CODCOLIGADA e IDPLAN. Verifica SQL em Planilhas.sql E ai, quais curiosidades ou dicas podem ser adicionadas neste tópico 2 Quote
Jair - Fórmula Posted May 12, 2020 Topic Count: 937 Topics Per Day: 0.13 Content Count: 9,137 Content Per Day: 1.30 Reputation: 413 Achievement Points: 109,418 Solved Content: 0 Days Won: 245 Status: Offline Age: 53 Device: Windows Author Report Posted May 12, 2020 @Eustacio Alves Criei esse tópico em sua homenagem!! hehehehehehe 1 Quote
Fábio Maia Posted May 13, 2020 Topic Count: 32 Topics Per Day: 0.00 Content Count: 581 Content Per Day: 0.08 Reputation: 15 Achievement Points: 3,172 Solved Content: 0 Days Won: 6 Status: Offline Age: 45 Device: Windows Report Posted May 13, 2020 (edited) Eu tenho uma dica para ajudar nesta busca de encontrar a tabela e o campo que você precisa. É manjada mais alguém pode precisar: Edita o cadastro que você quiser, clica com o botão direito em qualquer lugar da tela (desde de que não seja um campo) e ai habilita a opção Visualizar nome do campo: Depois disso é so ir com o cursor do mouse em cima do campo e você verá a TABELA.NOMEDOCAMPO. Exemplo abaixo: Edited May 13, 2020 by Fábio Maia 2 Quote
Fábio Maia Posted May 13, 2020 Topic Count: 32 Topics Per Day: 0.00 Content Count: 581 Content Per Day: 0.08 Reputation: 15 Achievement Points: 3,172 Solved Content: 0 Days Won: 6 Status: Offline Age: 45 Device: Windows Report Posted May 13, 2020 Uma outra dica é encontrar o nome da tabela e o campo, usando a montagem do filtro. Exemplo: Quero saber o nome da tabela que armazena o cadastro de funções. Ao abrir o cadastro, o sistema pede para que eu informe um filtro. Ao montar o filtro, basta posicionar o mouse em cima do campo e aguardar para que você visualize a TABELA.NOMEDOCAMPO: 1 1 Quote
pvitorribeiro Posted May 13, 2020 Topic Count: 0 Topics Per Day: 0 Content Count: 4 Content Per Day: 0.00 Reputation: 6 Achievement Points: 31 Solved Content: 0 Days Won: 2 Status: Offline Age: 35 Device: Windows Report Posted May 13, 2020 (edited) Boa Noite Pessoal ! Uma outra dica é verificar as informações técnicas da action. Basta abrir uma visão do sistema e pressionar as teclas Ctrl + Alt + F9, nessa tela contém o nome da Action e o DataServer. Você também pode medir a performance e verificar quais tabelas estão envolvidas nessa visão. Ex. Cadastro de Cliente/Fornecedor Abraços !! Edited May 13, 2020 by pvitorribeiro 1 Quote
Gpinheiro Posted May 13, 2020 Topic Count: 0 Topics Per Day: 0 Content Count: 2 Content Per Day: 0.00 Reputation: 0 Achievement Points: 10 Solved Content: 0 Days Won: 0 Status: Offline Age: 39 Report Posted May 13, 2020 Excelentes dicas! E se nenhuma delas funcionar, só rodando trace no BD. Hehehe Quote
Jair - Fórmula Posted May 14, 2020 Topic Count: 937 Topics Per Day: 0.13 Content Count: 9,137 Content Per Day: 1.30 Reputation: 413 Achievement Points: 109,418 Solved Content: 0 Days Won: 245 Status: Offline Age: 53 Device: Windows Author Report Posted May 14, 2020 Outro campo interessante, que é legal deixar registrado aqui, são as Incidências Definíveis no Cadastro de Dependentes que funciona igual aos acumuladores também usado nos eventos. Veja que este campo mostra em tela com dados detalhados de Código e Nome, mas na tabela não fica assim. Nela ficam guardados os dados sequencialmente com a marcação "Ativa" ou "Nâo" (com asteriscos). Veja um exemplo do conteúdo do campo referente a tela abaixo: Neste caso, o sistema registra na tabela PFDEPEND.INCDEFINIVEIS da seguinte forma (sem as aspas): " * ". Perceba que apenas o segundo asterisco está preenchido. Imagine que destes 5 campos, fossem marcados os itens 3 e 5. Neste caso o campo ficaria " * * " (dois espaços, um asterisco, um espaço, um asterisco). Acho que ficou claro, não? E como posso saber os nomes, da mesma forma que são mostrado em tela? São Cadastro de Tabelas Dinâmicas que são inseridos e atualizadas para serem usadas nestes e em outros campos do sistema. Acima, na tabela dinâmica INT37 temos as incidências dos dependentes). Já na tabela abaixo temos os Nomes dos acumuladores, como citei que funciona exatamente igual aos controles das inc. definíveis. Tá, e seu quiser analisar pelo banco de dados ? OK, esses registros ficam nas tabelas PCODINCDEP (inc. dependentes) e PCODACUM (acumuladores dos eventos). Segue um exemplo com um select no no banco de dados. Acima, exemplo de uma tabela PCODACUM (acumuladores dos eventos). Bom, acredito que já dá pra pesquisar e montar alguma coisa nas suas consultas SQL, não?? Quer mais dicas? Pede aqui no post. Compartilha com os amigos, para eles aprenderem e de repente eles podem também ajudar com alguma coisa, postando também, dando suas dicas, etc., como os amigos já postaram nos posts anteriores acima !! 1 Quote
Desenvolvedor Posted June 4 Topic Count: 0 Topics Per Day: 0 Content Count: 1 Content Per Day: 0.02 Reputation: 0 Achievement Points: 5 Solved Content: 0 Days Won: 0 Status: Offline Device: Windows Report Posted June 4 Alguém saberia informar como é feito o relacionamento da Ficha financeira e os períodos de folha? No banco de dados tem a tabela PDESCPERIODO, porém, não é confiável, porque o usuário pode informar qualquer coisa lá. Queria saber quais campos se relacionam para identificar o período de folha (Se é mensal, adiantamento etc). Quote
Jair - Fórmula Posted July 3 Topic Count: 937 Topics Per Day: 0.13 Content Count: 9,137 Content Per Day: 1.30 Reputation: 413 Achievement Points: 109,418 Solved Content: 0 Days Won: 245 Status: Offline Age: 53 Device: Windows Author Report Posted July 3 Em 04/06/2025 at 16:44, Desenvolvedor disse: Alguém saberia informar como é feito o relacionamento da Ficha financeira e os períodos de folha? No banco de dados tem a tabela PDESCPERIODO, porém, não é confiável, porque o usuário pode informar qualquer coisa lá. Queria saber quais campos se relacionam para identificar o período de folha (Se é mensal, adiantamento etc). Não há uma regra fixa para definir os períodos no sistema RM. Desta forma, não tem como AFIRMAR quais períodos são de adiantamento, folha, ferias, 13o., etc. O que ocorre é que, as empresas usam suas regras para "ditar" quais são os períodos a usar. Tem gente que assume: 1 - Adto 2 - Folha 3 - Folha Complem 5 - Rescisões 6 - 13o. Salário 8 - PLR 10 - Outros Períodos ou mesmo algo assim: 1 - Adto 2 - Folha/Rescisões 3 - Dif. Folha 10 - 13o. Salário 20 - PLR Realmente, não tem regra... o mais importante, é que, não exista sequencia de pagamentos que ocorram (e possam gerar DEVES - arredondamento) onde uma folha seja calculada, e o DEVE dela você queria tratar num período anterior, por exemplo, se você pagar algo no período 10 em 10/07/2025 e depois tenha a Folha sendo paga em 30/07 no período 2. E se o usuário está criando os períodos de forma "correta" sempre, pode ler essa tabela que citou, e usar ela nas suas sentenças SQL. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.