Pular para o conteúdo
Visualizando 1 post (de 1 do total)
  • Autor
    Posts
  • #101258
    Avatar de consult40consult40
    Participante

      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.CODIGO

      INNER JOIN PFHSTPROV PFH1 ON
      PFUNC.CODCOLIGADA=PFH1.CODCOLIGADA
      AND PFUNC.CHAPA=PFH1.CHAPA

      INNER JOIN
      PFHSTPROV PFH2 /* Seção anterior */
      INNER JOIN
      (
      SELECT

      CASE
      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.CHAPA

      WHERE
      PFH1.MES= @PLN_$B$2_S — 😛 LN_$B$2_S
      AND PFH1.ANO=@ANO
      AND PFH1.CODCOLIGADA=@COLIGADA

      ORDER BY
      PFUNC.CODSECAO

    Visualizando 1 post (de 1 do total)
    • Você deve fazer login para responder a este tópico.
    plugins premium WordPress