Ir para conteúdo

Ranking

Conteúdo Popular

Mostrando conteúdos com maior reputação desde 15-01-2011 em todas as áreas

  1. Curso de TOTVS RM Reports: Acelere seu Crescimento Profissional. Deseja impulsionar sua carreira e conquistar novas oportunidades no mercado de trabalho? O curso de TOTVS RM Reports é a chave para alcançar o sucesso profissional que você tanto almeja. Descubra como extrair o máximo potencial do sistema RM Reports da TOTVS e destaque-se como um especialista na geração de relatórios eficientes e estratégicos. Por que escolher nosso curso de TOTVS RM Reports? Crescimento Profissional: Nossa formação é cuidadosamente elaborada para impulsionar seu crescimento profissional. Ao dominar o RM Reports, você estará preparado para assumir projetos desafiadores, agregar valor às empresas e destacar-se em sua área de atuação. Conhecimento Abrangente: Através de conteúdo teórico e prático, você aprenderá desde conceitos básicos até técnicas avançadas de criação e personalização de relatórios no RM Reports. Amplie suas habilidades e se torne um profissional completo, apto a atender às demandas do mercado. Aplicabilidade no Mercado: O sistema TOTVS RM Reports é amplamente utilizado por empresas de diversos setores. Ao se tornar um especialista nessa ferramenta, suas chances de inserção e ascensão no mercado de trabalho aumentam consideravelmente. Destaque-se perante os empregadores e esteja à frente da concorrência. Facilidade de Aprendizado: Nossa metodologia de ensino é dinâmica e voltada para a prática. Com instrutores experientes e didática eficiente, garantimos um aprendizado fluido e acessível para todos os alunos, independentemente do nível de conhecimento prévio. As aulas serão todas ao vivo, e serão gravadas para você poder assistir depois com tranquilidade e no tempo que desejar. 40 horas de treinamento | Tire dúvidas ao vivo | Bônus especial no final do curso! Não perca tempo, invista em você! Inscreva-se Mais informações nos links abaixo: Página de Inscrição: https://aldemir-fernandes.herospark.co/curso-totvs-rm-reports Grupo Whatsapp: https://chat.whatsapp.com/GZnjJuF0G0iDmbRBjzZDl2 Mais sobre o Autor: https://www.instagram.com/aldemirsf/ https://www.youtube.com/@Aldemirsf972
    5 pontos
  2. Letícia! Entra na pasta do aplicativo,por exemplo RM Fluxus e procura o arquivo RMFluxus.exe,ele é do tipo CONFIG dentro dele procura essa linha <add key="EnableCompression" value="false" />, caso esteja true,coloca false. Faça isso em todos que você abrir e tiver esse problema!
    5 pontos
  3. Boa tarde @Lucas Schulze, alguns meses atrás eu tinha feito uma query parecida para usar em um relatório, adicionei as colunas que tinha dito. Assim como o @Jair - Fórmula falou, tem que ficar de olho na clausula Where, porque é preciso indicar o mês, o ano e o período para que a query possa trazer os dados. Neste exemplo eu já deixei preenchido. SELECT CHAPA, NOME,DATAADMISSAO,CODTIPO,FUNCAO,[SALARIO BRUTO], PROVENTOS,DESCONTOS = DESCONTOS * -1, DESCRICAO FROM (SELECT PFUNC.CHAPA, PFUNC.NOME, PFUNC.DATAADMISSAO, PFUNC.CODTIPO, PFUNCAO.NOME AS FUNCAO, PFUNC.SALARIO AS [SALARIO BRUTO], PEVENTO.DESCRICAO, CASE WHEN PEVENTO.PROVDESCBASE ='P' THEN PFFINANC.VALOR ELSE 0 END PROVENTOS, CASE WHEN PEVENTO.PROVDESCBASE ='D' THEN PFFINANC.VALOR ELSE 0 END DESCONTOS FROM PFUNC LEFT OUTER JOIN PFUNCAO ON PFUNC.CODCOLIGADA = PFUNCAO.CODCOLIGADA AND PFUNC.CODFUNCAO = PFUNCAO.CODIGO LEFT OUTER JOIN PFFINANC ON PFUNC.CODCOLIGADA = PFFINANC.CODCOLIGADA AND PFUNC.CHAPA = PFFINANC.CHAPA LEFT OUTER JOIN PEVENTO ON PFFINANC.CODCOLIGADA = PEVENTO.CODCOLIGADA AND PFFINANC.CODEVENTO = PEVENTO.CODIGO WHERE PFUNC.CODCOLIGADA ='1' AND PFUNC.CODSITUACAO= 'A' AND PFFINANC.MESCOMP ='12' AND PFFINANC.ANOCOMP ='2023' AND PFFINANC.NROPERIODO IN ('02') GROUP BY PFUNC.CHAPA, PFUNC.NOME, PFUNC.DATAADMISSAO, PFUNC.CODTIPO, PFUNCAO.NOME, PFUNC.SALARIO, PEVENTO.PROVDESCBASE, PFFINANC.VALOR, PEVENTO.DESCRICAO )AAA GROUP BY CHAPA, NOME,DATAADMISSAO,CODTIPO,FUNCAO,[SALARIO BRUTO],PROVENTOS,DESCONTOS, DESCRICAO ORDER BY NOME Espero ter ajudado, qualquer coisa estou a disposição.
    4 pontos
  4. Que tal uma campanha aqui no fórum, para usuários que mais postarem, para ganhar acesso VIP ? A partir de hoje, até o final deste mês, todos os usuários que postarem por aqui no fórum, colaborarem com os amigos ajudando, apoiando, etc., e enviarem arquivos para downloads, etc. irão pontuar para participar. Os 8 primeiros membros que mais pontuarem ganharão um cupom de acesso VIP, que poderá ser usado pelo próprio membro ou doado para outro membro, a seu critério. Premiação: 5 Cupons no valor de R$ 35,00 - Equivalente ao VIP Mensal 2 Cupons no valor de R$ 70,00 - Equivalente ao VIP Semestral 1 Cupom no valor de R$ 100,00 - Equivalente ao VIP Anual Observações Gerais / Regras: Período de validade da promoção: 24/06/2023 as 00:01 até o dia 30/06/2023 as 23:59; Cada post valerá 1 (um) ponto na contagem geral; Postagem de arquivos de relatórios, scripts, manuais, e outros que sejam úteis aos membros, seja como anexos ou na área de arquivos/downloads valerão 2 (dois) pontos; Os cupons são válidos para adquirir um acesso VIP, para renovação, em caso de membros que já possuam, ou para doação para terceiros. Não serão pagos em dinheiro em hipótese alguma. 5 cupons serão doados como prêmios da promoção aos membros da 4a. a 8a. colocações na contagem geral de posts/pontos deste período; 2 cupons serão doados aos membros da 2a. e 3a. colocação na contagem geral de posts/pontos do período; 1 cupom será doado como premiação ao membro com mais pontuação na contagem de posts/posts; Como critério de desempate, se necessário, serão considerados os posts com mais agradecimentos/reações (qualquer tipo de agradecimento, com exceção de avaliação negativa); A divulgação dos ganhadores será feita no dia 03/07/2023; Posts em quaisquer áreas podem ser considerados; Não façam posts apenas por postar, para contar e participar. Posts simples demais, com por exemplo apenas um agradecimento, pode não valer... Faça posts que sejam construtivos, com pedidos, ajuda, e colaborações em geral, senão, podemos não considerar como válido algum post na sua contagem, então o mesmo pode ser deletado e não contará para o resultado geral; Até o final da promoção, novas regras poderão ser adicionadas ou alteradas se julgarmos necessários; Vamos lá... boa sorte, e bons posts!!
    4 pontos
  5. Esse manual irá te ajudar a identificar: - uma tabela a partir de uma tela de cadastro. - entender como foi criada a tabela GLINKSREL - a executar comandos em SQL e outros. treinamentodesql.pptx
    4 pontos
  6. Se você nunca fez uma fórmula visual (FV) mas tem vontade de aprender, não perde esse video por nada. #totvsrm #formulavisual #chamaosbruxo
    4 pontos
  7. Versão 1.0.0

    38 downloads

    Boa tarde pessoal. Estou compartilhando um material dos geradores de RM Reports/Cubos.Net/Planilhas.Net Espero que seja útil a vocês!
    Gratuito
    4 pontos
  8. Pessoal, boa tarde!! Fiz um script para consultar esses dados via banco, acho que fica mais fácil e da até para montar alguns joins !! Tabela: ZTABELASTAF ZTABELASTAF.rar
    4 pontos
  9. @Carlos Rogerio Das Dores, boa tarde! Para fazer isso, você utilizara o conceito de PIVOT na estrutura da query para montá-la... No SQLServer existe duas formas, fixa, ou seja, você saber quantas colunas irá criar e/ou dinâmica que precisa executar de instruções de procedures, logo para utilizar dentro na aplicação, tens que tratar com uma criação de tabela, utilizando uma PROC anexo a consulta SQL. Deixo meus exemplos T-SQL/QUERIES/PIVOT.sql at master · luisgustavogomes/T-SQL · GitHub T-SQL/QUERIES/PIVOT DINAMICO.sql at master · luisgustavogomes/T-SQL · GitHub Caso não consigas, pode nos informar que lhe ajudamos. Abraços.
    3 pontos
  10. Bom dia pessoal, tudo bem? Depois de tanto apanhar consegui! Vou compartilhar aqui como eu consegui: https://centraldeatendimento.totvs.com/hc/pt-br/articles/360007049912-Cross-Segmentos-Backoffice-RM-BI-Não-imprimir-se-SubDetalhes-forem-vazios-RMREPORTS isso me ajudou bastante!
    3 pontos
  11. Bom dia @samuel.jnascimento É possível via fórmula visual, e para ter um melhor desempenho sugiro utilizar a atividade código fonte Segue em anexo um exemplo da FV, o gatilho será "Após a Leitura da Visão" da FopFuncData Coluna Grau de Instrução.TotvsWF
    3 pontos
  12. Em alguns processos, o sistema mantem a tela bloqueada não permitindo ao usuário fazer nada, até que seja finalizado o processo solicitado. É em possível em alguns casos, colocar o processo para rodar em seguindo plano liberando assim a tela para continuar efetuando outros trabalhos. Se você precisa usar essa dica, veja nessa parte abaixo, na primeira tela do processo que vai executar, se tem essa opção habilitada. Caso tenha, marque e siga normalmente, que não ficará bloqueado ai pra você. Veja que, por padrão, não vem com esse TICK indicando para "Aguardar Execução do Processo". Marque, e siga normalmente clicando no botão AVANÇAR...
    3 pontos
  13. Boa tarde, o conversor de Gerador Delphi para RM Reports foi retirado há algumas versões o que complicou para muitos, já que agilizava a tarefa e não convertia tudo de forma 100%. A TOTVS acabou retirando pois tinha um retorno de que não funcionava, e que não adiantava ter, etc., e após uma conversa com o pessoal do desenvolvimento do produto, conseguimos que o mesmo fosse reinserido no sistema, mas agora, passa a se chamar Acelerador (pois não converte tudo) e está novamente disponível à partir dos patches abaixo: 12.1.2306.104 12.1.2302.160 12.1.2209.237 Mais informações, acesse: https://centraldeatendimento.totvs.com/hc/pt-br/articles/360008951631-Cross-Segmentos-Backoffice-RM-BI-Conversão-de-relatórios-Delphi-para-NET-Reports- Fonte: TOTVS.com.br
    3 pontos
  14. @Yalison, bom dia Seu problema está no rmsSendEmailActivity ?, se sim, vou deixar uma sequencia de prints para lhe explicar. Vou começar pelo final o objeto rmsSendEmailActivity precisa passar uma sequencia de bytes para conseguir acessar o arquivo gerado. Para obter o relatório você previamente já gerou o process do relatório e o mesmo está armazenado na tabela GRELBATCH, portanto, deves retornar essa informação, no meu exemplo, utilizei o objeto rmsConsSQLActivity, vide exemplo: A consulta "query" que utilizo no SQLSERVER para capturar o dado na tabela é a seguinte: Desta forma, conseguimos enviar somente um anexo via e-mail, existem diversas formas de chegar ao mesmo resultado, sendo assim, segue o exemplo e espero que lhe ajude! Ficamos no seu aguardo. Abraços.
    3 pontos
  15. Olha esse campo que está como leitura ,pode ser perfil. Você já tentou realizar o processo com um usuário com perfil DBA nos dois módulos? Tive um problema parecido num cliente e o perfil do Liber tinha alguns acessos sem permissão na parte Delphi. Tenta postar sua FV que fica mais fácil para alguém avaliar o erro e te ajudar pois só o print sem estar no ambiente do cliente fica complicado ajudar... Abraços!
    3 pontos
  16. Bom dia. Eu crio views no banco de dados e puxo destas views para o Power BI. Alguns abaixo: 1. Absenteismo: SELECT DISTINCT dbo.PFUNC.CODCOLIGADA, dbo.GCOLIGADA.NOME AS COLIGADA, dbo.PFUNC.NOME AS FUNCIONARIO, RIGHT(LEFT(dbo.PFUNC.CODSECAO, 6), 3) AS CODSECAO, dbo.PSECAO.DESCRICAO AS SECAO, dbo.PFFINANC.REF AS FALTAS, dbo.PFFINANC.MESCOMP AS MES, dbo.PFFINANC.ANOCOMP AS ANO, dbo.PFFINANC.DTPAGTO, UPPER(dbo.PSECAO.CIDADE) AS FILIAL, dbo.PFUNCAO.NOME AS FUNCAO FROM dbo.PFUNC WITH (NOLOCK) INNER JOIN dbo.GCOLIGADA WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA INNER JOIN dbo.GFILIAL WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GFILIAL.CODCOLIGADA INNER JOIN dbo.PSECAO WITH (NOLOCK) ON dbo.GFILIAL.CODCOLIGADA = dbo.PSECAO.CODCOLIGADA AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO AND dbo.GFILIAL.CODFILIAL = dbo.PSECAO.CODFILIAL INNER JOIN dbo.PFFINANC WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.PFFINANC.CODCOLIGADA AND dbo.PFUNC.CHAPA = dbo.PFFINANC.CHAPA INNER JOIN dbo.PEVENTO WITH (NOLOCK) ON dbo.PFFINANC.CODEVENTO = dbo.PEVENTO.CODIGO INNER JOIN dbo.PFUNCAO WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA AND dbo.PFUNC.CODFUNCAO = dbo.PFUNCAO.CODIGO AND dbo.GCOLIGADA.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA WHERE ( dbo.PEVENTO.CODIGOCALCULO = 8 ) 2. Saida Funcionários: SELECT TOP (100) PERCENT dbo.GCOLIGADA.NOME AS COLIGADA, dbo.PSECAO.DESCRICAO AS SECAO, dbo.PFUNCAO.NOME AS FUNCAO, COUNT(dbo.PFUNC.CHAPA) AS QUANTIDADE_DEMISSOES, DATEPART(MM, dbo.PFUNC.DATADEMISSAO) AS MES, DATEPART(YEAR, dbo.PFUNC.DATADEMISSAO) AS ANO, dbo.PSECAO.CIDADE AS FILIAL, dbo.PFUNC.DATADEMISSAO, dbo.PFUNC.CODSECAO FROM dbo.PFUNC WITH (NOLOCK) INNER JOIN dbo.GCOLIGADA WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA INNER JOIN dbo.PSECAO WITH (NOLOCK) ON dbo.GCOLIGADA.CODCOLIGADA = dbo.PSECAO.CODCOLIGADA AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO INNER JOIN dbo.PFUNCAO WITH (NOLOCK) ON dbo.GCOLIGADA.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA AND dbo.PFUNC.CODFUNCAO = dbo.PFUNCAO.CODIGO WHERE (dbo.PFUNC.DATADEMISSAO IS NOT NULL) GROUP BY dbo.GCOLIGADA.NOME, dbo.PSECAO.DESCRICAO, dbo.PFUNCAO.NOME, DATEPART(MM, dbo.PFUNC.DATADEMISSAO), DATEPART(YEAR, dbo.PFUNC.DATADEMISSAO), dbo.PSECAO.CIDADE, dbo.PFUNC.DATADEMISSAO, dbo.PFUNC.CODSECAO ORDER BY DATEPART(MONTH, dbo.PFUNC.DATADEMISSAO) 3. Entrada Funcionário: SELECT dbo.FN_FORMATAR_TEXTO(REPLACE(dbo.GCOLIGADA.NOME, '/', '')) AS COLIGADA, dbo.PFUNC.CODSECAO, dbo.PSECAO.DESCRICAO AS SECAO, dbo.PFUNCAO.NOME AS FUNCAO, COUNT(DISTINCT dbo.PFUNC.CHAPA) AS QUANTIDADE_ADMISSOES, DATEPART(MM, dbo.PFUNC.DATAADMISSAO) AS MES, DATEPART(YEAR, dbo.PFUNC.DATAADMISSAO) AS ANO, dbo.PSECAO.CIDADE AS FILIAL, dbo.PFUNC.DATAADMISSAO, dbo.GCOLIGADA.CODCOLIGADA FROM dbo.PFUNC WITH (NOLOCK) INNER JOIN dbo.GCOLIGADA WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA INNER JOIN dbo.PSECAO WITH (NOLOCK) ON dbo.GCOLIGADA.CODCOLIGADA = dbo.PSECAO.CODCOLIGADA AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO INNER JOIN dbo.PFUNCAO WITH (NOLOCK) ON dbo.PSECAO.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA AND dbo.PFUNC.CODFUNCAO = dbo.PFUNCAO.CODIGO GROUP BY dbo.GCOLIGADA.NOME, dbo.PFUNC.CODSECAO, dbo.PSECAO.DESCRICAO, dbo.PFUNCAO.NOME, DATEPART(MM, dbo.PFUNC.DATAADMISSAO), DATEPART(YEAR, dbo.PFUNC.DATAADMISSAO), dbo.PSECAO.CIDADE, dbo.PFUNC.DATAADMISSAO, dbo.GCOLIGADA.CODCOLIGADA 4. Folha Completa: SELECT dbo.GCOLIGADA.NOME AS COLIGADA, dbo.PFUNC.CODCOLIGADA, dbo.PFUNC.CHAPA, dbo.PFUNC.CODFILIAL, dbo.PFUNC.NOME AS NOMEFUNCIONARIO, dbo.PFUNC.SALARIO, RIGHT(LEFT(dbo.PFUNC.CODSECAO, 6), 3) AS CODSECAO, dbo.PFUNC.CODHORARIO, dbo.AHORARIO.DESCRICAO, dbo.PSECAO.DESCRICAO AS SECAO, dbo.PFUNC.CODSITUACAO, dbo.PFUNCAO.NOME AS FUNCAO, dbo.PEVENTO.PROVDESCBASE AS PDB, dbo.PEVENTO.DESCRICAO AS EVENTO, dbo.PFFINANC.ANOCOMP AS ANO, dbo.PFFINANC.MESCOMP AS MES, dbo.PFFINANC.HORA, dbo.PFFINANC.NROPERIODO, CASE WHEN PEVENTO.PROVDESCBASE = 'B' THEN PFFINANC.VALOR * 0 WHEN PEVENTO.PROVDESCBASE = 'D' THEN PFFINANC.VALOR * - 1 WHEN PEVENTO.PROVDESCBASE = 'P' THEN PFFINANC.VALOR END AS VALOR, dbo.PFCOMPL.ADM, dbo.PFCOMPL.ADOB, dbo.PFFINANC.DTPAGTO, dbo.PSECAO.CIDADE AS FILIAL, dbo.PFFINANC.CODEVENTO FROM dbo.PEVENTO WITH (NOLOCK) INNER JOIN dbo.PFFINANC WITH (NOLOCK) ON dbo.PEVENTO.CODCOLIGADA = dbo.PFFINANC.CODCOLIGADA AND dbo.PEVENTO.CODIGO = dbo.PFFINANC.CODEVENTO INNER JOIN dbo.PFUNC WITH (NOLOCK) INNER JOIN dbo.PSECAO WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.PSECAO.CODCOLIGADA AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO INNER JOIN dbo.PFUNCAO WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA AND dbo.PFUNC.CODFUNCAO = dbo.PFUNCAO.CODIGO INNER JOIN dbo.GCOLIGADA WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA AND dbo.PFUNCAO.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA AND dbo.PSECAO.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA ON dbo.PFFINANC.CODCOLIGADA = dbo.PFUNC.CODCOLIGADA AND dbo.PFFINANC.CHAPA = dbo.PFUNC.CHAPA AND dbo.PFFINANC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA AND dbo.PEVENTO.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA INNER JOIN dbo.AHORARIO WITH (NOLOCK) ON dbo.PFUNC.CODHORARIO = dbo.AHORARIO.CODIGO AND dbo.GCOLIGADA.CODCOLIGADA = dbo.AHORARIO.CODCOLIGADA INNER JOIN dbo.PFCOMPL WITH (NOLOCK) ON dbo.PFUNC.CHAPA = dbo.PFCOMPL.CHAPA AND dbo.PFUNC.CODCOLIGADA = dbo.PFCOMPL.CODCOLIGADA WHERE (dbo.AHORARIO.CODCOLIGADA = dbo.AHORARIO.CODCOLIGADA) AND (dbo.PFFINANC.ANOCOMP >= 2015) AND (dbo.PEVENTO.PROVDESCBASE <> 'B') 5. Hora Extra: SELECT DISTINCT dbo.GCOLIGADA.NOME AS COLIGADA, dbo.PFUNC.NOME AS FUNCIONARIO, RIGHT(LEFT(dbo.PFUNC.CODSECAO, 6), 3) AS CODSECAO, dbo.PSECAO.DESCRICAO AS SECAO, dbo.PFFINANC.REF AS EXTRA, dbo.PFFINANC.MESCOMP AS MES, dbo.PFFINANC.ANOCOMP AS ANO, dbo.PFFINANC.DTPAGTO, dbo.PSECAO.CIDADE AS FILIAL, dbo.PFUNCAO.NOME AS FUNCAO FROM dbo.PFUNC WITH (NOLOCK) INNER JOIN dbo.GCOLIGADA WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GCOLIGADA.CODCOLIGADA INNER JOIN dbo.GFILIAL WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.GFILIAL.CODCOLIGADA INNER JOIN dbo.PSECAO WITH (NOLOCK) ON dbo.GFILIAL.CODCOLIGADA = dbo.PSECAO.CODCOLIGADA AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO AND dbo.PFUNC.CODSECAO = dbo.PSECAO.CODIGO AND dbo.GFILIAL.CODFILIAL = dbo.PSECAO.CODFILIAL INNER JOIN dbo.PFFINANC WITH (NOLOCK) ON dbo.PFUNC.CODCOLIGADA = dbo.PFFINANC.CODCOLIGADA AND dbo.PFUNC.CHAPA = dbo.PFFINANC.CHAPA INNER JOIN dbo.PEVENTO WITH (NOLOCK) ON dbo.PFFINANC.CODEVENTO = dbo.PEVENTO.CODIGO INNER JOIN dbo.PFUNCAO ON dbo.PFUNC.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA AND dbo.PFUNC.CODFUNCAO = dbo.PFUNCAO.CODIGO AND dbo.GCOLIGADA.CODCOLIGADA = dbo.PFUNCAO.CODCOLIGADA WHERE (dbo.PEVENTO.CODIGO = '0054') OR (dbo.PEVENTO.CODIGO = '0055') OR (dbo.PEVENTO.CODIGO = '0191') OR (dbo.PEVENTO.CODIGO = '0372') 6. Faixas Salariais: SELECT TOP (100) PERCENT A.CHAPA, A.NOME, B.NOME AS funcao, A.SALARIO, CASE WHEN SALARIO < 1000 THEN '< 1000' WHEN SALARIO >= 1000 AND salario < 2000 THEN 'De 1000 a 2000' WHEN SALARIO >= 2000 AND salario < 3000 THEN 'De 2000 a 3000' WHEN SALARIO >= 3000 AND salario < 5000 THEN 'De 3000 a 5000' WHEN SALARIO >= 5000 AND salario < 10000 THEN 'De 5000 a 10000' ELSE '> 10000' END AS [Faixa Salarial] FROM dbo.PFUNC AS A INNER JOIN dbo.PFUNCAO AS B ON A.CODCOLIGADA = B.CODCOLIGADA AND A.CODFUNCAO = B.CODIGO WHERE (A.CODSITUACAO <> 'D') AND (A.CODSITUACAO <> 'I') ORDER BY A.SALARIO
    3 pontos
  17. Foram postados inúmeros materiais relacionados ao Reports.net no Youtube da TOTVS... Segue um deles: Demais vídeos do canal: https://www.youtube.com/channel/UCgrXtEKzKstEuO5QugrZeGg
    3 pontos
  18. Boa tarde pessoal, estamos utilizando a versão 11.50 e aproveitando a estabilidade do RM Reports (.net) dessa versão (das versões anteriores o rm reports tinha muitos bugs que dificultava demais o desenvolvimento do relatório) resolvi cair de cabeça nessa nova ferramenta (ainda estou fazendo isso, rsrs). A Totvs IP criou um treinamento e lá estava eu, na primeira turma (começo de julho/2012) e isso foi bom para conhecer os novos recursos, as diferenças entre o gerador de relatórios antigo, os benefícios e também conhecer algumas das dificuldades que teremos. Percebi durante esse treinamento que mesmo nessa versão (11.50), o novo gerador não está redondo, mas de maneira geral está muito satisfatório. Para você que está acostumadíssimo (a) com o Gerador de Relatórios, com os espelhos, com balizadores, com a sobreposição do grupo anterior e outros "gambiarras" que utilizamos para deixar nossos relatórios mais apresentáveis, talvez seu primeiro contato com o RM Reports seja desagradável, mas isso, com certeza, será por questão de costume e hábito, porque desde já, posso dizer que em muitos aspectos o RM Reports ficou muito melhor, com diversas ferramentas úteis de verdade, muito mais fácil de trabalhar, com recursos magníficos de formatação, um gerador de gráficos extraordinário, possibilidade de gerar PDF, XLS, DOC, etc., com tanta coisa boa, depois de algum tempo você irá gostar. Vou começar com a falar de uma característica que para mim é a mais desagradável, ela já existia no gerador antigo e permanece no RM Reports. No Gerador, se você criar uma estrutura de grupos utilizando Linha Detalhe “Pai” e criar diversas Linha Sub-detalhes “Filhas” e em algum momento ter que incluir um novo Detalhe acima do Detalhe Pai que já existia, provavelmente você terá um trabalhão para fazer essa tarefa e em muitos casos nem conseguirá fazer o relatório rodar, ficando mais fácil iniciar um novo relatório. No RM Reports, eu diria que é um pouquinho mais fácil fazer isso, mas uma tarefa árdua e também chatíssima, aliás, agora não se chama mais Grupos, você terá que modificar as BANDAS DETALHES. Com isso, tenha sempre em mente que antes de iniciar o desenvolvimento de um relatório você deve criar um esboço para incluir suas necessidades, como deverão ser apresentadas e elaborar a estrutura pensando em “Tabelas” do sistema para que isso seja possível. Dessa forma você evitará retrabalhos e pense sempre no futuro, crie estruturas que atendam as mudanças das organizações, como por exemplo, se sua empresa adquirir uma nova empresa e formar um grupo organizacional, seu relatório permite totalização por empresa (coligada)? Senão, precisará modificá-lo por causa dessa nova situação, provocando retrabalhos, digo isso porque já tive essa situação, muito relatório e planilhas para alterar por causa de detalhes não necessários anteriormente e que não parecia que iria acontecer, mas ocorreram. Agora vou falar do que não tem, do que não é possível fazer e como foi substituído. Para começar, você se lembra de o que era necessário fazer no gerador para gerar arquivos textos que serviam para como LAYOUT’S de EXPORTAÇÃO E IMPORTAÇÃO de dados e também arquivos bancários (CNAB)? Pois é, no RM Reports você não vai conseguir isso! Esse “recurso” foi substituído pelo novo módulo do FRAMEWORK o “Integração” (veja na MDI RM) que pelo que me parece vai ser uma “puta” mão-na-roda para essas tarefas depois que ele estiver totalmente rodando e com documentação de orientação. Outra coisa que você não encontrará RM Reports são os velhos ESPELHOS, na verdade você não precisará mais deles, pois, tudo que você inclui no relatório terá um nome denominado nas propriedades como DESENHO que você poderá utilizar nas EXPRESSÕES, TOTALIZADORES e alguns casos até mesmo dentro das SQL’s, também não tem sobreposição de grupo anterior, nem balizadores e por enquanto não senti falta deles, pois, não tive a necessidade, vamos ver no decorrer do desenvolvimento. Falando em SQL’s, talvez seja o maior atrativo do RM Reports, isso porque ele trata uma Query como sendo uma tabela, isso mesmo! A sua SQL’s vai ser a mandatória da BANDA DETALHE, imagina as possibilidades, você cria sua query com diversas tabelas e ela vai ser seu detalhe! Isso é ótimo não é? Pois é sim e se você criar outras query’s SQL para ser detalhe filho (SUB RELATÓRIO) da banda detalhe superior basta você amarra-la, como por exemplo: where gfilial.codcoligada=:P_codcoligada,no qual o P_ representa a BANDA ACIMA. E se estiver na mesma banda é só não colocar o P_, , como por exemplo: where gfilial.codcoligada=:codcoligada. Outro recurso que foi mantido é os PARAMETROS e eles podem ser utilizados nas SQL’s, quando você incluir um PARAMETRO, poderá alterar seu nome DESENHO e sua descrição... quando o usuário for gerar o relatório o parâmetro automaticamente solicitará dados ao usuário e se você amarrar esse parâmetro a SQL’s ela retornará o que o usuário escolher, como por exemplo: where TMOV.NUMEROMOV>=:Do_NumeroMov AND TMOV.NUMEROMOV<=:Ao_NumeroMov AND TMOV.CODTMV=:Cod_TMV , nos quais os nomes depois do : é o nome de DESENHO do PARAMENTRO e é só isso que precisa fazer, não precisa mais configurar o filtro com os :Rel_ ... Aliás, os filtros não são mais integráveis as SQL’s, me parece que podemos conseguir isso somente com os parâmetros mesmo. Como já mencionei anteriormente, o RM Reports vem com várias ferramentas muito bacanas que facilitam bastante o trabalho, vou explicar abaixo cada uma delas e seus atrativos: - Ferramenta TABELA ==> Facilita a organização de diversos campos em diversas colunas, formando um objeto único que pode ser arrastado como um todo e seu principal atrativo é que podemos formata-la como uma tabela e se tiver um campo de descrição longa por exemplo, a informação desse campo é quebrada em várias linhas, daí a boda de todos os campos dessa linha vai ter a mesma largura, formando uma linha heterogenia. Pena que formulas e expressões não podem ser utilizadas como célula da tabela, elas ficam como objeto dentro da célula e dificulta a formatação. - Ferramenta EXPRESSÃO ==> As expressões evoluíram! Tem muita coisa nova ai, e vocês vão gostar. Mas já vou logo avisando que ainda tem bug no seu uso. Até a versão 11.50.25 não é possível formatar fonte e tamanho de uma expressão e se você quiser somar uma fórmula com outra fórmula, não basta fazer como antigamente FORMULA1 + FORMULA2, pois, os campos fórmula são tratados como strings e se fizer dessa forma o sistema concatena os dados, colocando um seguido do outro ao invés de somar, daí você tem que converter as formulas em decimal dentro da expressão, assim: Decimal(Relatório.Fórmula1)) + (Decimal((Relatório.Fórmula2))).. Aqui comigo, a primeira linha do detalhe dessa expressão ai nunca imprime corretamente, as demais sim, portanto, ainda tem problema para ser resolvido. Mas a EXPRESSAO evoluiu! - Ferramenta CHECK BOX ==> Faz uma caixa marcada ou desmarcada, pois, se relaciona com campos tipo boolean da base de dados, como por exemplo, ativo 1 e inativo 0; - Ferramenta TEXTO RICO è Essa é muito bacana, pois, vai facilitar a construção de relatórios do tipo CONTRATOS, CARTAS que alinham muito texto com campos da base de dados, ou seja, supondo que está redigido o contrato de trabalho e logo precisa do nome do funcionário, basta colocar [PFUNC.NOME] que o sistema se encarrega de transformar o que esta entre [] com a informação da base de dados. Se você quiser formatar um texto dentro do texto rico, precisará fazer isso antes, no Word por exemplo e depois colar dentro do Texto Rico, assim ele assume a formatação de cor, tamanho e fonte; - Ferramenta MATRIZ ==> Essa também é 10. É o resultado do RM BIS dentro do seu relatório! Faça o teste e vai ver como é bacana. - Ferramenta GRÁFICO ==> Essa ficou bem feita! Tem recursos de baciada e vai te oferecer diversas possibilidades. - Ferramenta Stored Procedure è Para quem precisar fazer alterações no banco de dados (um update por exemplo) toda vez que o relatório for gerado. Algo do tipo. Além das Ferramentas, dispomos de diversos recursos para formatação, alinhamento, disposição e tantas outras configurações, uma bastante interessante é a Formatação Condicional ou as Regras de Formatação, podemos por exemplo, fazer com que o gerador coloque cor de fundo nas linhas IMPARES e nas PARES não, formando aquela marcam igual do Excel que facilita a leitura e tantas outras possibilidades. Para terminar, você não conseguirá inserir Campos da Base, Campos de SQL’s ou qualquer outra coisa que não seja TEXTO nos CABEÇALHO E RODAPÉ DE PAGINA e dificilmente você precisará desses espaços, a não ser para colocar numeração de página... para mim, são quase inúteis. Deverá utilizar CABEÇALHO E RODAPÉ DO DETALHE, nesses vc pode colocar informação, porém, até a versão 11.50.25 não é possível tornar os cabeçalhos e radapés INVISIVEIS, já solicitei melhoria em relação a isso, vamos aguardar. Lembrando que para imprimir logotipos da Coligada e Filial presentes na GIMAGEM, você precisará que sua BANDA DETALHE seja GCOLIGADA OU GFILIAL, senão, a imagem não é impressa! Está ai mais um motivo para estudar bem a estrutura do relatório antes de iniciá-lo. Por enquanto é isso! Espero ter contribuído com algo e bons trabalhos por ai!
    3 pontos
  19. Gustavo, Mesmo alterando o Collation do banco, as informações já gravadas não serão alteradas, mas segue o passo a passo para a troca do Collation da Instância do banco. 1) Pare o serviço MSSQLServer da Instancia do SQL Server que você quer trocar o Collation. 2.) Abra um prompt de comando e navegue até o diretório de instalação do SQL Server. Ex. (exemplo: C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn), depois digite o comando: 2.1 sqlservr -m -s NomedaInstancia_SQLSERVER -T4022 -T3659 -q "COLLATE_ESCOLHIDO" Ex.: sqlservr -m -s ERP -T4022 -T3659 -q Latin1_General_CI_AI, no exemplo o nome da instancia do SQL é ERP. 3) Após o termino Pressione Ctrl+C para parar o serviço atual 4) Inicie novamente o MSSQLServer da Instancia do SQLServer []'s
    3 pontos
  20. [RESOLVIDO] Consegui encontrar a solução: Acessar "Opções - Parâmetros - RM Nucleus - Gestão de compras - Cotação - Definição de Escopo Filial" selecione a filial em que a cotação esta sendo inserida e de um duplo clique na mesma. Acesse a etapa Fornecedores e informe um numeral para o numero máximo e número mínimo de fornecedores para a cotação.
    3 pontos
  21. Weverton, Veja se ajuda a sentença abaixo: SELECT PFUNC.CODCOLIGADA, PFUNC.CHAPA, PPESSOA.NOME, PPESSOA.DTNASCIMENTO, PFUNCAO.NOME AS FUNCAO, PPESSOA.CPF, PPESSOA. CARTIDENTIDADE, (SELECT PFDEPEND.NOME FROM PFDEPEND WHERE CODCOLIGADA = PFDEPEND.CODCOLIGADA AND CHAPA = PFUNC.CHAPA AND GRAUPARENTESCO=7) AS [NOME DA MAE], (SELECT PFDEPEND.NOME FROM PFDEPEND WHERE CODCOLIGADA = PFDEPEND.CODCOLIGADA AND CHAPA = PFUNC.CHAPA AND GRAUPARENTESCO=6) AS [NOME DA PAI] FROM PPESSOA INNER JOIN PFUNC ON PPESSOA.CODIGO = PFUNC.CODPESSOA INNER JOIN PFUNCAO ON PFUNC.CODCOLIGADA = PFUNCAO.CODCOLIGADA AND PFUNC.CODFUNCAO = PFUNCAO.CODIGO WHERE PFUNC.CODCOLIGADA=8 AND PFUNC.CODSITUACAO<>'D' ORDER BY PFUNC.NOME []'s
    3 pontos
  22. 1.968 downloads

    Apostila bem completa sobre SQL Server. Ensina tanto a parte gráfica, para administrar o banco de dados, como selects, updates, inserts, procedures, trigers, e mais um monte de coisas. Está baseada no SQL Server 7, mas quem quer aprender, é simplesmente ótima. * Material em Portugues Tópico Original: http://www.forumrm.com.br/index.php?showtopic=1324 Membro que postou Originalmente o Arquivo: Jair Downloads já feitos antes de ser movida aqui para o Ger. de Downloads: 1038
    Gratuito
    3 pontos
  23. Foi verificado que não havia ainda uma menção á Area Restrita RM aqui nas regras gerais, embora já tenhamos um texto falando do acesso a ela. Por este motivo foi acrescentado mais este novo ítem às regras gerais: 7.8. Existe também aqui no Fórum RM uma área restrita, chamada de "RESTRITA RM". Somente membros que sejam funcionários da RM, de representantes e de parceiros podem acessá-la, além dos demais membros que sejam da administração e moderação. Existem algumas regras específicas para o acesso a esta área. Leia as regras clicando neste link. Pergunta: Não sei se estou no grupo que permite acesso. Como saber em qual grupo estou ? Resposta: Clique aqui neste link, e saiba como. Administração Fórum RM
    3 pontos
  24. Bom dia @Johel Santos Dentro do Totalizador, a opção valor inicial está marcado o campo das horas extras, por isso ele está somando o valor. Mude essa opção para personalizado e coloque o valor zero, acredito que com essa mudança o totalizador vai funcionar corretamente.
    2 pontos
  25. Show, agradeço o apoio aí pessoal! Fiz e ja deu certo o CUBO! Quanto as instruções do SQL, vou testar ainda, mas acredito que vai dar certo também! Valeu pessoal!
    2 pontos
  26. Os sistemas TOTVS RM tem um recurso de Fórmulas muito importante, o qual utiliza funções para buscar dados no próprio sistema, em tabelas, relacionadas a cálculos, e diversas formas de tratar as informações para relatórios, para calcular eventos, impostos, etc. Segue neste tópico todas as funções apresentadas nos sistemas, com exemplos, e juntando todas as diversas páginas em uma única. Cadastro de Fórmulas O Cadastro de Fórmulas nos aplicativos RM terá, basicamente, três principais objetivos, dentre eles: Seleção (restrição da aplicabilidade de alguma operação). Definição da forma de cálculo de eventos específicos, inclusive do tipo "base de cálculo", que servem de referência para outros cálculos. Relacionamento de valores entre os eventos. O editor de fórmulas possui um campo de texto para que você monte as estruturas das fórmulas. Usando o editor de fórmulas, as funções e comandos desejados para a criação da fórmula serão movidos para o campo de texto, bastando clicar duas vezes sobre as opções função, comando ou parâmetro. Observação Funções podem ser escritas com letras maiúsculas e/ou minúsculas. Na fórmula só poderão ser incluídas até 50 constantes. O parâmetro crítica global permite que uma fórmula possa ser usada em uma crítica global dos sistemas, a fim de fazer a validação ou cálculo necessário para o processo que a usar. Exemplo No sistema de Folha de Pagamento esta opção é marcada para indicar que a fórmula deverá ser processada para todos os funcionários selecionados durante o processo de Crítica da Folha (Rotinas | Crítica da Folha). Fórmulas de crítica servem para verificar se determinado evento foi ou não calculado para um funcionário ou grupo de funcionários. O parâmetro Fórmula de Seleção deverá ser marcada para distinguir todas as fórmulas que são usadas como seleção. Exemplo Nos módulos dos relatórios internos do módulo Automação de Ponto, como relatório do Espelho de Cartão de Ponto, pode-se utilizar uma fórmula para selecionar alguns funcionários. No campo de Fórmula de seleção só serão listadas as fórmulas que estiverem com o parâmetro "Fórmula de seleção" marcado. Para testar as fórmulas, é preciso definir um “Contexto”, ou seja, Clique no ícone para selecionar o contexto da execução da fórmula, isto é, para qual ou quem a fórmula será executada. Exemplo: Para qual produto (Gestão de Estoque) ou para que funcionário (Folha de Pagamento) a fórmula será executada. A caixa de diálogo Seleção de Contexto será apresentada. Clique no ícone para testar a fórmula. Caso o contexto ainda não tenha sido selecionado, a caixa de diálogo Seleção de Contexto será apresentada automaticamente. Gerar LOG para fórmulas No módulo Serviços Globais é possível gerar arquivos de LOG de fórmulas, que tem como finalidade registrar em um arquivo informações sobre a execução da fórmula. Para gerar um arquivo de LOG de fórmula é necessário clicar duas vezes sobre um registro de fórmula na tela de visão das fórmulas. O parâmetro ‘Acompanhar execução e salvar no arquivo:’ permite exibir o arquivo com os dados da LOG após o término do Resultado da fórmula. Abaixo deste campo o sistema apresenta o campo de texto onde é apresentado o nome e extensão do arquivo onde os dados do LOG serão gravados. Ao acionar o botão Resultado, o sistema executa o cálculo da fórmula e apresenta seu valor. Para testar Fórmula Automaticamente ao Salvar, Marque esta opção para que o sistema automaticamente teste a fórmula quando esta for salva. O resultado da fórmula será apresentado no campo resultado. No cadastro de fórmulas também são exibidas a data e hora da última alteração realizada na fórmula, bem como o Usuário responsável, que exibe o usuário que realizou a última alteração na fórmula. Observação A fórmula não precisa ser gravada para que o teste seja executado. O resultado de uma fórmula será apresentado com N casas decimais, conforme o produto que o usuário estiver utilizando. Exemplo Caso o usuário esteja utilizando o módulo Folha de Pagamento, o resultado será exibido com 4 (quatro) casas decimais. Aplicação das fórmulas Uma aplicação para as fórmulas são os campos complementares, onde têm a função de validar um determinado valor, como por exemplo, a utilização de fórmula para validação de pré-requisito de disciplinas, cálculo de insumos. Para validar o campo complementar basta associar a fórmula desejada ao campo complementar, para que esta valide o conteúdo do campo complementar quando você incluir um valor para ele. Outra finalidade é o seu uso em consultas SQL e relatórios do sistema. Pelos relatórios você inclui as fórmulas deslocando o componente de fórmulas e associando-o a uma fórmula cadastrada no sistema. Já nas Consultas SQL as fórmulas devem ser incluídas passando um comando específico para informar que você está utilizando uma fórmula do sistema. Exemplo SELECT CHAPA, SALARIO FROM PFUNC WHERE CHAPA = :FRM_CHAPA; Fórmulas em VB.NET No módulo Globais é possível criar e executar fórmulas em VB.Net. Esta funcionalidade tem como objetivo permitir que usuários também utilizem da linguagem VB.net para elaborar e executar fórmulas no RM.exe, além das Fórmulas RM. Na aba administração, selecione a action Fórmulas. Após definir e executar um filtro, selecione agora um Sistema e logo após a opção Novo, para que o a janela para inserção de uma nova Fórmula seja exibida. Preencha os campos Código e Título. No campo Linguagem, selecione a opção VB. NET. Insira no campo destinado a elaboração das fórmulas, uma fórmula válida elaborada na linguagem VB.NET . Acione o botão Contexto, informe um contexto para execução e execute-o. Ao acionar o botão Resultado, o sistema irá exibir o resultado da fórmula inserida na linguagem VB.NET. Selecione a opção Salvar e o sistema registrará a fórmula em VB.NET, exibindo a mesma na listagem de fórmulas do sistema. Fórmulas Globais As fórmulas globais são aquelas apresentadas para todos os módulos do sistema, e são passíveis de uso em qualquer um deles. Conheça as fórmulas globais: EXECSQL Executa uma consulta SQL. Caso a execução tenha pelo menos uma linha de resultado, está variável retorna VERDADE. Sua sintaxe é: EXECSQL(‘código da consulta SQL’). Exemplo: EXECSQL('Codigo_Consulta_SQL') PROXREGSQL Avança um registro na Consulta SQL executada. Sua sintaxe é: PROXREGSQL('código da consulta sql') Exemplo: PROXREGSQL('Codigo_Consulta_SQL') RESULTSQL Esta função lê uma linha do resultado da execução da SQL. Sua sintaxe é: RESULTSQL('código da consulta sql', 'nome do campo') Exemplo: RESULTSQL('Codigo_Consulta_SQL', 'SALARIO') Fórmulas específicas para o RM Labore - Gestão de Folha de Pagamento A utilização de fórmulas no RMLabore se faz necessário, por exemplo, em situações em que o código de cálculo nos eventos do Labore, em sua forma nativa, não possuem o comportamento desejado perante as regras de negocio da empresa. Fórmulas / Funções - A Função A = Retorna valor de um acumulador Sintaxe = A (‘CÓD. DO ACUMULADOR) Tipo de Retorno = Valor Exemplo: Código da fórmula: AC01 = Retorna valor do acumulador de código 01 (Comissão). Texto da fórmula: A(‘01’) Observação: O código do acumulador deve ser informado entre aspas. Os acumuladores são incluídos ou editados no cadastro de tabelas dinâmicas. No cadastro de eventos, você define se valores deste serão guardados em determinado acumulador. Atenção: As variáveis de fórmula que são relativas à movimentação do funcionário, como a A, não devem ser utilizados para fórmula de seleção. Porque no momento da seleção, o sistema ainda não executou a movimentação do funcionário. Desta forma, estas funções/variáveis irão retornar sempre "zero". Função ABS = Valor Absoluto Sintaxe = ABS (VALOR) Tipo de Retorno = Valor Função ACUMFF = Acumulador de ficha financeira Sintaxe = ACUMFF(MÊS, ANO, 'CÓD. DO ACUMULADOR') Tipo de Retorno = Valor Observação: Este acumulador deverá ser criado em TABELAS DINÂMICAS - INT34 Função ADIANT = Retorna percentual de adiantamento Sintaxe = ADIANT Tipo de Retorno = Valor Exemplo: ADIANT Supondo que o funcionário Antônio tem um percentual de adiantamento de 40%, o retorno da fórmula, para esse funcionário, seria 40. Função ADMDEM = Retorna admitido ou demitido no mês Sintaxe = ADMDEM Tipo de Retorno = Valor Exemplo: ADMDEM Supondo que o funcionário Itamar foi admitido ou demitido no mês de competência, o retorno será 1. Se houvesse sido admitido ou demitido em outros meses, retornará 0. Função ALTEROUCADASTRO = Retorna 1 se houver alteração no cadastro do funcionário e 0 se não houver alteração. Sintaxe = ALTEROUCADASTRO(‘string’) Tipo de Retorno = Valor Observação: Na sintaxe, o campo string deverá ser informado com qual campo do cadastro será validado. Exemplo: ALTEROUCADASTRO ('FUNCAO') ALTEROUCADASTRO ('SECAO') Esta função está contemplando se houve alteração no cadastro dos campos: FUNCAO e SECAO. Dica: Esta função poderá ser utilizada no campo Fórmula para Criticar o Cadastro de Funcionários no parametrizador em Folha de Pagamento | Funcionário | Restrições Cadastrais. Função ANO = Retorna ano de competência. Sintaxe = ANO Tipo de Retorno = Valor Função ANOCX = Retorna ano-caixa. Sintaxe = ANOCX Tipo de Retorno = Valor Função ANODT = Retorna ano de uma data. Sintaxe = ANODT (‘DATA’) Tipo de Retorno = Valor Exemplo: ANODT(‘23/01/1997’) Retorna: 1997 ANODT (DNASCIM) Supondo que a data de nascimento de um funcionário seja 10/09/1961, retorna 1961. Dica: No parâmetro DATA da sintaxe pode ser uma função que retorna data no lugar da data específica. Função ARRED = Arredonda um valor sem casas decimais. Sintaxe = ARRED (VALOR) Tipo de Retorno = Valor Função ARREDONDA = Arredonda um valor com casas decimais. Sintaxe = ARREDONDA (VALOR, VALOR) Tipo de Retorno = Valor Exemplo: Quando há várias casas decimais e o arredondamento será apenas para duas casas decimais: ARREDONDA(777.7784,2) = 777,78 Função ARREDVALOR = Arredonda um valor com casas decimais. Sintaxe = ARRED (VALOR, VALOR) Tipo de Retorno = Valor Função ASCII = Retorna o código ASCII de um caractere. Sintaxe = ASCII (‘STRING’) Tipo de Retorno = Valor Função ATRIBUI = Atribui valor a uma memória. Sintaxe = ATRIBUI(NÚMERO DA MEMÓRIA, INDEFINIDO) Tipo de Retorno = De acordo com o que for atribuído à memória Exemplo: ATRIBUI (1, RC) Memória de nº 1 guardará valor do salário nominal.
    2 pontos
  27. Com um pouco de imaginação e contorno técnico consegui um resultado satisfatório. O que eu fiz: 1. Criei uma Consulta SQL que recebe um parâmetro do tipo String e simplesmente retorna esse parâmetro 2. Adicionei essa consulta no tratamento de falha e fiz o link do parâmetro 3. No gravarLog puxei o resultado da Consulta SQL. Mas ainda espero que exista um jeito mais simples de puxar essa informação para o Editor de Expressões. Pois nem no gravar log nem no Expressão é possível acessar a mensagem de erro.
    2 pontos
  28. É... o conceito das FVs é esse mesmo. Não usar para dar alertas (POP UP) ao usuário. O que poderia ser feito, é abrir um chamado na TOTVS pedindo isso. Reforçando, pois, com certeza muita gente já pediu isso.
    2 pontos
  29. Pessoal... bom dia Ótimo assunto... Testa essa query que irá demostrar o conteúdo interno. (result set em TXT) SELECT TOP 1 CONVERT(VARCHAR(MAX), CONVERT(VARBINARY(MAX), VALORPARAMETROS)) FROM DBO.GJOBX WHERE IDJOB = 5742477 Mas não consegui localizar o IdWokFlow... porém, acredito que possamos dentro incluir essa informação dentro da GJOBXLOG, já fiz isso para informar na FV o log de processo de usuário sendo que criei um PROC que inclui essa informação, sendo assim, se criar uma conversão, podes utilizar esse recurso para resolver esse seu problema. Fico no aguardo. Abraços.
    2 pontos
  30. Fórmula Visual - Linha RM A Fórmula Visual da linha RM é um recurso de funcionamento extenso e que busca o desenvolvimento visual de lógicas de negócio com o objetivo de estender as soluções TOTVS RM. Como finalidade inicial, possibilita pequenas customizações nos produtos, permitindo criar regras específicas em determinados cadastros/processos dentro da empresa, automatizando e/ou validando dados, permitindo assim a entrada de informações/resultados mais consistentes. Usa como base o Microsoft Framework .NET - Windows Workflow Foundation, um produto muito robusto e poderoso desde seu entendimento, onde é aplicado nos principais softwares da própria Microsoft. Este é o funcionamento normal RM: Este é o funcionamento RM com customização através de Fórmula Visual: Segue abaixo um compilado de LINKs da TOTVS sobre atividades de Fórmulas Visuais, com exemplos de como utilizar: Criando uma nova atividade de Fórmula visual Designer da Fórmula Visual Enviar relatório no corpo do e-mail Execução de Sequência de Fórmulas Visuais em um Gatilho Exportação e Importação de Códigos Fontes Fórmula Visual em API Utilizando a atividade "Gravar Log" em API Fórmula Visual - Habilitar Log Fórmula Visual - RM Gatilho de Fórmula Visual - Após a leitura dos valores de lookup Importação\Exportação de fórmula visual Importacao de Formula Visual com Consulta SQL Limitando o Tamanho de Imagens no Cadastro de Produtos com Fórmula Visual Obter ID da Fórmula Visual e Código da Coligada Parâmetros de execução de Fórmula Visual via processo Tabela Dinâmica na Fórmula Visual Atualizar registros de uma tabela dinâmica usando fórmula visual Criar Item em uma Tabela Dinâmica usando fórmula visual. Ler registros de uma tabela dinâmica usando fórmula visual Transformar Campo Complementar em Lookup Utilizando Atividades Fluig Fluxo de Aprovação Utilizando a Atividade "Assumir Tarefa" Utilizando a Atividade "Recuperar Campos do Formulário do Processo" Utilizando Atividade "Iniciar Processo Clássico" Utilizando Atividade "Iniciar Solicitação Simples" Utilizando Atividade "Movimentar Tarefa" Utilizando Atividade "Recuperar Campos do Formulário da Solicitação" FÓRMULA VISUAL - Atividade Deleção de Registros FÓRMULA VISUAL - Atividade Expressão Utilizando a atividade "Expressão" TOTVS API Services - TAS Utilizando a atividade "Consulta CNPJ na Receita Federal" Utilizando a atividade "Consulta CPF na Receita Federal" Utilizando a atividade "Consulta Nota Fiscal Eletrônica" Utilizando a atividade "Consulta Simples Nacional" Utilizando a atividade "Consulta Sintegra Nacional" Utilizando a atividade "eSocial - Consulta Qualificação Cadastral" Utilizando a atividade "Adicionar Registro na Tabela" Utilizando a atividade "Aplicar Alterações na Tabela" Utilizando a atividade "Alterar propriedade da coluna" Utilizando a atividade "Aplicar Expressão Regular" Utilizando a atividade "Aplicar transformação XML utilizando XLS" Utilizando a atividade "Atualizar Registros Localizando na Tabela" Utilizando a atividade "Checar Status de Serviços do Windows" Utilizando a atividade "Consultar Parâmetros do Processo" Utilizando a atividade "Consulta SQL" Utilizando a Atividade "Copia de Filtros" Utilizando a Atividade "Criar Coluna" Utilizando a Atividade "Criar Coluna" com loop em fonte de dados da atividade. Utilizando a atividade "Criar Conjuntos de Dados" Utilizando a atividade "Disparar campanha de comunicação" Utilizando a atividade "Enquanto" Utilizando a atividade "Enviar E-mail" Envio de imagem por e-mail Envio de relatório por e-mail Utilizando a Atividade "Excluir Registro da Tabela" Utilizando a atividade "Executar Código" Utilizando a atividade "Executar Código Fonte" Utilizando a atividade "Executar Código Fonte" (conSourceCodeActivity) "Executar Código Fonte" em ambientes SmartClient / 3 Camadas Utilizando a atividade "Executar Fórmula" Utilizando a atividade "Executar Fórmula Visual" Utilizando a atividade "Executar Processo" Utilizando a atividade "Executar Relatório" Utilizando a atividade "Executar Requisição HTTP" Utilizando a atividade "Executar Requisição REST" Utilizando a atividade "Executar Requisição SOAP" Utilizando a atividade "Executar sequência conforme o estado de registro" Utilizando a atividade "Executar serviço do TOTVS API Service" Utilizando a atividade "Executar Transformação XSLT" Utilizando a atividade "Executar Web Service" Utilizando a atividade "Filtrar Dados" Utilizando a atividade "Gerar Auto-Incremento" Utilizando a atividade "Gerar Exceção" Utilizando a atividade "Gravar Log" Utilizando a Atividade "Grupo de Condições" Utilizando a atividade "Importar registros na tabela" Utilizando a atividade "Iniciar Transação" Utilizando a Atividade "Integração" Utilizando a atividade "Ler Registro" Utilizando a atividade "Ler Visão" Utilizando a atividade "Localizar Registro na Tabela" Exemplo da atividade "Localizar Registro na Tabela" Utilizando a atividade "Para cada Iteração" e "Para cada Iteração API" Utilizando a atividade "Preparar Execução do Processo" Utilizando a atividade "Salvar Registro" Utilizando a atividade "Se/Senão" Utilizando a atividade "Sequência" Utilizando a Atividade "Transformar Arquivo em Cadeia de Bytes" Utilizando a atividade "Transformar registro em XML" Utilizando a atividade "Tratar Exceção" Utilizando atividade de Conceito Utilizando os Manipuladores do Fluxo de Trabalho Sequencial Utilizando Gatilhos de Cadastros Utilizando Gatilhos de Processos Utilizando gatilhos em fórmulas visuais Utilizando o Parâmetro "Assistente de Processos" https://tdn.totvs.com/pages/releaseview.action?pageId=237383316
    2 pontos
  31. oi Pablo, bom dia. Você não citou como que está querendo usar essa validação, mas se for via expressão, você pode fazer por exemplo desta forma abaixo. Caso não seja isso, explica melhor e manda exemplos do que quer fazer para facilitar o entendimento e a ajuda por aqui.
    2 pontos
  32. Versão 1.0.0

    22 downloads

    Ponto por referência! Essa query resulta a espelho ponto na disposição colunar, limitado a 8 batidas! Vide exemplo! Abraços.
    Gratuito
    2 pontos
  33. Pessoal, boa tarde! Outra dica relacionado a esse assunto é que em muitas actions essas informações estão disponíveis, vide exemplo: Abraços.
    2 pontos
  34. Olá @luisgustavogomes, Muitíssimo obrigada pelo retorno detalhado! Ajudou bastante, utilizei a solução listada como 2.2. Vou testar as próximas soluções em trabalhos futuros. Agradeço novamente a paciência e descrição detalhada, virá a me ajudar muito. Atenciosamente, Juliana
    2 pontos
  35. Resolvido com essa consulta "FC.NOMEFANTASIA AS CLIFORN, TD.DESCRICAO AS DOCUMENTO, FC.CGCCFO AS 'CNPJ' "
    2 pontos
  36. @luisgustavogomes Obrigado pela dica, funcionou perfeitamente.
    2 pontos
  37. Alguns Apps da TOTVS disponíveis atualmente para interações com os aplicativos TOTVS RM. Veja abaixo informações e Webinars com detalhes da utilização. App Meu Patrimônio (Controle do Ativo Imobilizado) Webinar com informações sobre o Meu Patrimônio App Minhas Aprovações (Aprovações em Vários Módulos TOTVS) Setores atendidos: Construção Educação Saúde RH Agronegócio Financeiro Serviços Manufatura Distribuição Varejo Principais benefícios O app Minhas Aprovações é um aplicativo desenvolvido para simplificar e dar mais agilidade à rotina de aprovação de tarefas na sua empresa. Com ele, você ganha mobilidade para realizar aprovações a qualquer hora, onde você estiver, sem precisar ficar preso ao computador ou ao escritório. O app proporciona todas as informações necessárias para os gestores executarem a rotina de forma simples e rápida. Para isso, o Minhas Aprovações conta com uma interface intuitiva e amigável, facilitando a utilização sem necessidade de treinamento dos usuários. O aplicativo Minhas Aprovações permite consultar os relatórios anexados nas tarefas da solução TOTVS Aprovações e Atendimento. No app é possível aprovar, reprovar e inserir discussões. O app também permite aprovar ou reprovar tarefas em lote, para agilizar ainda mais a rotina, e conta com filtros de pesquisa personalizáveis, para facilitar a busca pelas tarefas. O app Minhas Aprovações oferece uma visão centralizada das aprovações realizadas, independentemente do número de coligadas na sua empresa. Todo o processo fica mais dinâmico e uniformizado. Além disso, o aplicativo permite uma rotina mais colaborativa, com possibilidade de inserir comentários, abrir discussões e anexar arquivos aos processos de aprovação. App Minha Contagem de Estoque ... App Meu RH ...
    2 pontos
  38. Ok, mas quando der um tempo, testa via FV pois é uma solução poderosa para questões da aplicação. Abraços
    2 pontos
  39. Olá pessoal, O Backup Virada Mês é um dos backups mais importantes, principalmente para o RH pois é onde se faz a virada de um mês para outro. É claro que existem formas diferentes de se fazer este procedimento mas, na empresa em que trabalho, mesmo com todas as políticas de backup, guardamos backups específicos para o RH sempre o setor nos pede. Volto a dizer que essas práticas dependem muito de cada empresa, sendo assim, talvez este post não atenda a todos mas achei interessante publicá-lo pois possui funções que talvez ajude alguém no fórum. Bom, vamos ao que interessa. O que este script faz? 1. Verifica se a base definida pelo usuário na variável existe. Se não existir informa que o nome da base pode ter sido digitada errada (embora você possa mudar o script para deixar o nome da base fixo); 2. Encontrando a base, ele verifica nos históricos de backup se o backup da base definido na variável foi feito naquele mês e ano. Caso já tenha sido feito, é enviado uma mensagem dizendo que o backup do mês e ano definido pelo usuário já foi realizado. 3. Em caso de erro no backup, é retornado um select mostrando o(s) possível(is) erro(s) com uma coluna chamada CONSIDERAÇÕES que orienta como fazer o script CHECKDB para aqueles que não têm experiência com banco de dados. MODO DE USO: USE master GO EXEC BACKUP_VIRADA_MES 'NOME_DA_BASE', 4, 2020 Espero que este script seja útil e que impulsione a outros para melhoria desta rotina e outras rotinas de backup que estarei disponibilizando aqui. Ilano caldas BACKUP_VIRADA_MES.sql
    2 pontos
  40. Olá pessoal, Aqui na empresa, sempre trabalhamos com bases de testes pois alguns setores se utilizam delas para realizar testes de processos, resgatar informações antigas, enfim. Sendo que estas bases de teste geralmente ficam disponíveis apenas para alguns poucos usuários do sistema TOTVS RM, principalmente quando se tem portal, muito embora isso possa ser resolvido dentro ou dos arquivos do portal ou em suas configurações. Bom, mas o fato é que não queremos perder tempo em fazer estas tarefas. Baseado nisso estou postando mais uma procedure que ajuda em muito a executar estes processos sempre buscando agilizar nosso trabalho. O que o script faz? Identifica em variável o nome lógico do arquivo de dados: sua_base_Data Identifica em variável o nome lógico do arquivo de log: sua_base_Log Identifica em variável o caminho do arquivo MDF: E:\DATA\sua_base.mdf Identifica em variável o caminho do arquivo LDF: E:\LOG\sua_base.mdf Testa quais bases podem ser restauradas, pois sabemos que existem casos em que determinadas bases não podem ser restauradas como uma base de teste. Assegura que o nome do arquivo definido em variável pelo usuário possui a extensão .bak Assegura que o comando não será executado caso os parâmetros forem vazios Coloca a base em modo Offline antes de iniciar o restore Realiza o restore Retorna a base para Online Desabilita todos os usuário da tabela GUSUARIO, exceto aqueles que estão especificados na lista Altera o RECOVERY da base para SIMPLE Realiza a redução dos arquivos de log - SHRINKFILE Retorna o RECOVERY da base para FULL Retorna um select com os possíveis erros que tenha ocorrido durante o processo acima. MODO DE USO: USE master GO EXEC RESTAURA_BASE 'corpore_teste', 'SEU_ARQUIVO_DE_BACKUP.bak' Espero que este script seja útil e que impulsione a outros para melhoria desta e outras rotinas de banco de dados. Ilano Caldas RESTAURA_BASE.sql
    2 pontos
  41. Boa tarde Emanuel, Para a marcação de ponto via Meu RH é necessário Autorização via Convenção ou Acordo Coletivo de Trabalho. O link abaixo tem o passo a passo de como liberar o acesso. Para restringir basta desfazer esses passos. https://centraldeatendimento.totvs.com/hc/pt-br/articles/360020815391-RM-PTO-Meu-RH-Como-realizar-a-inserção-de-batidas-por-geolocalização
    2 pontos
  42. Nome do Arquivo: Fórmula Visual Enviado Por: Tiagokael Arquivo Enviado: 13 Jul 2014 Categoria de Arquivo: Apostilas Gerais e Roteiros Fórmula Visual - RM TOTVS - 11.82 - Segue Material de ensino para as pessoas que ainda tem dúvidas. Clique Aqui para Baixar este Arquivo
    2 pontos
  43. Versão 11.82

    545 downloads

    Fórmula Visual - RM TOTVS - 11.82 - Segue Material de ensino para as pessoas que ainda tem dúvidas.
    Gratuito
    2 pontos
  44. Yuri, veja se te ajuda. Você acrescenta outros campos caso necessite. Tabela PFFINANC - Ficha financeira. PEVENTO - Tabela de evento, PFUNC- Tabela de funcionários. select PFFINANC.CODCOLIGADA, PFFINANC.CHAPA, pfunc.NOME, PFFINANC.ANOCOMP, PFFINANC.MESCOMP, PFFINANC.NROPERIODO, PFFINANC.CODEVENTO, PEVENTO.DESCRICAO, PEVENTO.PROVDESCBASE, PFFINANC.HORA, PFFINANC.REF, PFFINANC.VALOR from PFFINANC (nolock) inner join PEVENTO (nolock) on PEVENTO.CODCOLIGADA = PFFINANC.CODCOLIGADA and PEVENTO.CODIGO = PFFINANC.CODEVENTO inner join PFUNC on pfunc.CODCOLIGADA = PFFINANC.CODCOLIGADA and PFUNC.CHAPA = PFFINANC.CHAPA order by ANOCOMP, MESCOMP, NROPERIODO, PFFINANC.CHAPA, PFFINANC.CODEVENTO
    2 pontos
  45. Bom dia, Para aqueles que precisam de um help sobre fórmulas visuais a Totvs já tem 18 fórmulas prontas, basta seguir os passos da documentação. http://tdn.totvs.com/pages/viewpage.action?pageId=42043556 []'s
    2 pontos
  46. Elza, bom dia! Existe custo para manter o forum no ar, e não é justo que os administradores e moderadores além de contribuir com a seu conteúdo intelectual venha ter que arcar com estes custos de manutenção sozinhos. Se você for verificar o valor que se paga para ser VIP e resolver diversos problemas do seu dia a dia e comprara com o que se paga a consultoria da TOTVS para o atendimento de apenas uma demanda sua. Verás que vale muito a pena! Abraço e seja bem vinda!
    2 pontos
  47. Pessoal, Vejam se podem me auxiliar.. Entrei na empresa a uma semana, e estamos com este problema: No RM Chronus, precisamos mas não estamos conseguir utilizar a função de trabalhar no período futuro, pq não sei quando, nem pq, e muito menos quem, criou um período para o mês 9 já, e mesmo estando com o período ativo o do mês 7, este período 9 tbm aparece como ativo, e quando tento definir o do mês 8 como futuro não me permite por causa deste período 9, como posso excluí-lo? o que faço? Att, Fábio Alves
    2 pontos
  48. Araujo, Completando a colocação do Nego Del, além de determinar a quantidade de memória você pode criar boas práticas para evitar o esforço de Processador e da memória do banco, separar os arquivos de .LDF e MDF em discos separados, atualização das estáticas, manutenção do índices já que com o tempo eles vão se fragmentando. As estáticas desatualizadas fazem com o que SQL acabem fazendo um table Scan (lendo todos os registros da tabela) mesmo que tenham índices criados. Fazendo essas manutenções preventivas dificilmente seu banco irá ficar no gargalo. []'s
    2 pontos
  49. 1 Estamos usando a nova MDI para o Educacional, na versão 11.50 em alguns módulos como Fluxus, Nucleos a tela de lançamento e movimento já estão no formato da Nova MDI já que na 11.80 será obrigatório a mudança para nova MDI 2 Aqui não utilizamos o conversor foi feito o desenvolvimento novamente, a ferramente tem recursos novos algumas funcionalidades da versão anterior não existe mais como balizador. Para criação de arquivos posicionais como layout de banco na versão 11.50 tem uma ferramenta chamada de gerador de saídas, mas ainda não utilizamos. 3 Como citado acima as informações que temos da Totvs é 11.80 é obrigado a utilização da nova MDI 4 A interface é muito grande sim, pois é outro visual. 5 A ferramente de cubo teve uma boa mudança e a de relatório está estável. []'s
    2 pontos
  50. Seu campo codigo do produto está com mascara e o parâmetro de controlar nivel está habilitado. Para cadastrar você deve fazer o seguinte: primeiro 00 produto A segundo 00.01 produto AA terceiro 00.01.XXXX produto AAA Acho que consegui explicar.
    2 pontos
Este Ranking está setada para São Paulo/GMT-03:00
×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.