- Este tópico contém 0 resposta, 1 voz e foi atualizado pela última vez 13 anos, 3 meses atrás por consult40.
-
AutorPosts
-
13 de outubro de 2011 às 6:19 pm #101258consult40Participante
Prezados preciso transformar essa sentenca em oracle,alguem pode me ajudar?
DECLARE @PLN_$B$2_S VARCHAR(6), @PLN_$B$4_S VARCHAR(4), @PLN_$B$5_S VARCHAR(10),
@COLIGADA INT, @ANO VARCHAR(4)SET @COLIGADA = 2
SET @ANO = ‘2011’SET @PLN_$B$2_S = ‘9’
–SET @PLN_$B$4_S =
–SET @PLN_$B$5_S =–SELECT * FROM GCAMPOS WHERE TABELA = ‘PFHSTPROV’
–SELECT * FROM GCAMPOS WHERE TABELA = ‘PFCODFIX’— Sentença para trazer provisão de férias */
SELECT
–MUDANCA.ANO,MUDANCA.MES,
–PFH2.ANO,PFH2.MES,
PFUNC.CHAPA, PFUNC.NOME, PFUNC.CODSECAO, PSECAO.DESCRICAO,
PFUNC.SALARIO,
/* Provisão de férias atual */
((PFUNC.SALARIO/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))*1.3333333 AS ‘PROVISAO ATUAL’, /* FAZER 1 + 1 TERÇO CORRETAMENTE */
/* Soma todos os eventos de código fixo que podem ser considerados adicionais */
CASE WHEN ( ( SELECT 1 FROM PFCODFIX A WHERE CODEVENTO = ‘0450’ AND A.CHAPA = PFUNC.CHAPA AND A.CODCOLIGADA = PFUNC.CODCOLIGADA ) )=1
THEN (PFUNC.SALARIO*32.5)/100 ELSE 0 END+CASE WHEN ((SELECT 1 FROM PFCODFIX A WHERE CODEVENTO = ‘0450’ AND A.CHAPA = PFUNC.CHAPA AND A.CODCOLIGADA = PFUNC.CODCOLIGADA))=1
THEN (PFUNC.SALARIO*26)/100 ELSE 0 END+CASE WHEN ((SELECT 1 FROM PFCODFIX A WHERE CODEVENTO = ‘0273’ AND A.CHAPA = PFUNC.CHAPA AND A.CODCOLIGADA = PFUNC.CODCOLIGADA))=1
THEN (PFUNC.SALARIO*32.5)/100 ELSE 0 END+CASE WHEN ((SELECT 1 FROM PFCODFIX A WHERE CODEVENTO = ‘0022’ AND A.CHAPA = PFUNC.CHAPA AND A.CODCOLIGADA = PFUNC.CODCOLIGADA))=1
THEN (((PFUNC.SALARIO*40)/100)/30)*30 ELSE 0 END+CASE WHEN ((SELECT 1 FROM PFCODFIX A WHERE CODEVENTO = ‘0252’ AND A.CHAPA = PFUNC.CHAPA AND A.CODCOLIGADA = PFUNC.CODCOLIGADA))=1
THEN (PFUNC.SALARIO*30)/100 ELSE 0 END AS ‘ADICIONAIS’,PFH1.MEDIASFERVENC+pfh1.mediasferprop AS ‘PROVISAO MÉDIAS’,
((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))+(PFH1.MEDIASFERVENC+pfh1.mediasferprop))*1.3333333)*0.2861 AS ‘INSS ATUAL’,
((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))+(PFH1.MEDIASFERVENC+pfh1.mediasferprop))*1.3333333)*0.08 AS ‘FGTS ATUAL’,
(((pfunc.salario/12)*(PFH2.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC))+(PFH1.MEDIASFERVENC+pfh1.mediasferprop))*1.3333333 AS ‘PROVISÃO ANTERIOR’,
PFH2.MEDIASFERVENC+pfh2.mediasferprop AS ‘PROVISÃO MÉDIAS’,
((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC))+(PFH2.MEDIASFERVENC+pfh2.mediasferprop))*1.3333333)*0.2861 AS ‘INSS ANTERIOR’,
((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC)))*1.3333333)*0.08 AS ‘FGTS ANTERIOR’,
(((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))-((pfunc.salario/12)*(PFH2.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC))+(PFH2.MEDIASFERVENC+pfh2.mediasferprop))*1.3333333 AS ‘PROVISÃO MENSAL’,
(((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))-((pfunc.salario/12)*(PFH2.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC)))+(PFH2.MEDIASFERVENC+pfh2.mediasferprop))*1.3333333)*0.2861 AS ‘INSS MENSAL’,
(((((pfunc.salario/12)*(PFH1.NROAVOSVENCFERDEC+PFH1.NROAVOSPROPORCDEC))-((pfunc.salario/12)*(PFH2.NROAVOSVENCFERDEC+PFH2.NROAVOSPROPORCDEC)))+(PFH2.MEDIASFERVENC+pfh2.mediasferprop))*1.3333333)*0.08 AS ‘FGTS MENSAL’
FROM
PFUNC
INNER JOIN PSECAO ON
PFUNC.CODCOLIGADA=PSECAO.CODCOLIGADA
AND PFUNC.CODSECAO=PSECAO.CODIGOINNER JOIN PFHSTPROV PFH1 ON
PFUNC.CODCOLIGADA=PFH1.CODCOLIGADA
AND PFUNC.CHAPA=PFH1.CHAPAINNER JOIN
PFHSTPROV PFH2 /* Seção anterior */
INNER JOIN
(
SELECTCASE
WHEN DATEPART(MONTH,DTMUDANCA) = 1
THEN 12 ELSE DATEPART(MONTH,DTMUDANCA) – 1
END AS MES,CASE
WHEN DATEPART(MONTH,DTMUDANCA) = 1
THEN DATEPART(YEAR,DTMUDANCA) – 1 ELSE DATEPART(YEAR,DTMUDANCA)
END AS ANO,
CODCOLIGADA, CHAPA
FROM
PFHSTSEC
WHERE
DTMUDANCA = (SELECT TOP 1 DTMUDANCA FROM PFHSTSEC MAIOR WHERE MAIOR.CHAPA = PFHSTSEC.CHAPA AND MAIOR.CODCOLIGADA = PFHSTSEC.CODCOLIGADA ORDER BY DTMUDANCA DESC)
–AND CHAPA = ‘200903’
) AS MUDANCA ON
PFH2.MES = MUDANCA.MES
AND PFH2.ANO = MUDANCA.ANO
AND PFH2.CODCOLIGADA = MUDANCA.CODCOLIGADA
AND PFH2.CHAPA = MUDANCA.CHAPA
ON
PFUNC.CODCOLIGADA=PFH2.CODCOLIGADA
AND PFUNC.CHAPA=PFH2.CHAPAWHERE
PFH1.MES= @PLN_$B$2_S — 😛 LN_$B$2_S
AND PFH1.ANO=@ANO
AND PFH1.CODCOLIGADA=@COLIGADAORDER BY
PFUNC.CODSECAO -
AutorPosts
- Você deve fazer login para responder a este tópico.