Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: Como Criar Relatórios de Cotações com Dados Agrupados Usando SQL

img: DALL·E 2024-08-09 07.00.00 - A high-quality image showcasing a detailed SQL query being written in a code editor, such as VS Code, on a dark theme background. ... ## Como Criar Relatórios de Cotações com Dados Agrupados Usando SQL Quando trabalhamos com sistemas ERP e precisamos gerar relatórios de cotações que apresentam dados de múltiplos fornecedores, é comum encontrarmos a necessidade de pivotar registros que, originalmente, são apresentados de forma vertical. Isso é especialmente útil quando o objetivo é comparar preços ou condições de diferentes fornecedores para um mesmo produto em uma única linha do relatório. Neste artigo, vamos explorar uma abordagem para transformar registros verticais em colunas, facilitando a impressão de relatórios que consolidam informações de vários fornecedores em uma única linha. Vamos utilizar SQL com técnicas de pivotagem, e ao final, mostraremos como estender essa técnica para um número variável de fornecedores. ### Estrutura do Relatór

BlackTDN :: Afastamentos Tabela SR8

--msginfo((tcsqlexec(memoread("c:\totvs\SR8eSocial.sql")),tcsqlerror()))
UPDATE SR8010 SET R8_TPEFD = (CASE R8_TIPOAFA
   WHEN '001' THEN '15' --//GOZO DE FERIAS/RECESSO
   WHEN '002' THEN '15' --//GOZO DE FERIAS/RECESSO
   WHEN '003' THEN '01' --//ACIDENTE DE TRABALHO
   WHEN '004' THEN '03' --//DOENCA
   WHEN '005' THEN '29' --//SERVICO MILITAR - AFASTAMENTO TEMPORARIO PARA PRESTAR SERVICO MILITAR OBRIGATORIO;
   WHEN '006' THEN '06' --//LICENCA MATERNIDADE (120 DIAS)
   WHEN '007' THEN '07' --//LICENCA MATERNIDADE (120 DIAS)
   WHEN '008' THEN '07' --//LICENCA MATERNIDADE (120 DIAS)
   WHEN '009' THEN '08' --//ABORTO NAO CRIMINOSO
   WHEN '010' THEN '20' --//LICENCA MATERNIDADE - AFASTAMENTO TEMPORARIO POR MOTIVO DE LICENCA-MATERNIDADE DECORRENTE DE ADOCAO OU GUARDA JUDICIAL DE CRIANCA
   WHEN '011' THEN '20' --//LICENCA MATERNIDADE - AFASTAMENTO TEMPORARIO POR MOTIVO DE LICENCA-MATERNIDADE DECORRENTE DE ADOCAO OU GUARDA JUDICIAL DE CRIANCA
   WHEN '012' THEN '20' --//LICENCA MATERNIDADE - AFASTAMENTO TEMPORARIO POR MOTIVO DE LICENCA-MATERNIDADE DECORRENTE DE ADOCAO OU GUARDA JUDICIAL DE CRIANCA
   WHEN '013' THEN '24' --//MANDATO SINDICAL - AFASTAMENTO TEMPORARIO PARA EXERCICIO DE MANDATO SINDICAL   WHEN '014' THEN '21' --//LICENCA MATERNIDADE (120 DIAS)
   WHEN '014' THEN '21' --//LICENCA NAO REMUNERADA OU SEM VENCIMENTO
   WHEN '015' THEN '99' --//LICENCA REMUNERADA --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
   WHEN '016' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
   WHEN '017' THEN '14' --//APOSENTADORIA POR INVALIDEZ
   WHEN '018' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
   ELSE (CASE R8_TIPO
WHEN '1' THEN '14' --//APOSENTADORIA POR INVALIDEZ
WHEN '2' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN '3' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN '4' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN '5' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN '6' THEN '20' --//LICENCA MATERNIDADE
WHEN '7' THEN '20' --//LICENCA MATERNIDADE
WHEN '8' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN '9' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'A' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'B' THEN '20' --//LICENCA MATERNIDADE - AFASTAMENTO TEMPORARIO POR MOTIVO DE LICENCA-MATERNIDADE DECORRENTE DE ADOCAO OU GUARDA JUDICIAL DE CRIANCA
WHEN 'D' THEN '15' --//GOZO DE FERIAS/RECESSO

WHEN 'F' THEN '15' --//GOZO DE FERIAS/RECESSO
WHEN 'H' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'I' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'J' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'K' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'L' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'M' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'N' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'O' THEN '01' --//ACIDENTE DE TRABALHO
WHEN 'P' THEN '03' --//DOENCA
WHEN 'Q' THEN '06' --//LICENCA MATERNIDADE
WHEN 'R' THEN '29' --//SERVICO MILITAR - AFASTAMENTO TEMPORARIO PARA PRESTAR SERVICO MILITAR OBRIGATORIO;
WHEN 'S' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'U' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'V' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'W' THEN '24' --//MANDATO SINDICAL - AFASTAMENTO TEMPORARIO PARA EXERCICIO DE MANDATO SINDICAL
WHEN 'X' THEN '21' --//LICENCA NAO REMUNERADA OU SEM VENCIMENTO
WHEN 'Y' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
WHEN 'Z' THEN '99' --//OUTROS MOTIVOS DE AFASTAMENTO TEMPORARIO
   ELSE ' '
   END )
END )

Obs.: Verificar compatibilidade da tabela S048 (Motivo do Afastamento) com a tabela 18 (Motivos de Afastamento) do e-Social

Comentários

Postagens mais visitadas