sexta-feira, 2 de fevereiro de 2024

Script para alterar tamanho de campo

 Script para alterar tamanho de campo em todas as tabelas que ele exista.


 BEGIN  
   DECLARE P_SCRIPT VARCHAR2(400);  
       NOVO_TAMANHO NUMBER(10);  
     CURSOR CUR_CONTROLE IS   
      SELECT 'ALTER TABLE ' || TABLE_NAME || ' MODIFY ' || COLUMN_NAME || ' VARCHAR2('||TO_CHAR(NOVO_TAMANHO)||')'   
     FROM USER_TAB_COLUMNS C  
     WHERE COLUMN_NAME LIKE '%CONTROLE%'   --<<=== ALTERAR CAMPO
      AND TABLE_NAME LIKE 'T%'  
      AND EXISTS(SELECT 1 FROM USER_TABLES T WHERE T.TABLE_NAME = C.TABLE_NAME)  
      AND DATA_LENGTH < NOVO_TAMANHO  
      AND DATA_TYPE IN ('VARCHAR2', 'CHAR', 'VARCHAR')  
     ORDER BY TABLE_NAME;  
   BEGIN  
     NOVO_TAMANHO := 12;  --<<==== ALTERAR 
    OPEN CUR_CONTROLE;  
    LOOP  
      FETCH CUR_CONTROLE   
      INTO P_SCRIPT;  
      EXIT WHEN CUR_CONTROLE%NOTFOUND;  
     EXECUTE IMMEDIATE P_SCRIPT;      
    END LOOP;  
     CLOSE CUR_CONTROLE;  
   EXCEPTION WHEN OTHERS THEN  
     RAISE_APPLICATION_ERROR(-20101, P_SCRIPT ||' erro: '||SQLERRM);    
   END;   
 END;  
 /  

terça-feira, 30 de janeiro de 2024

Tela de Chamados

Tela para abertura e administração de chamados internos.

Procedures criadas em Banco de dados ORACLE


Abertura do chamado
 

Atendimento 1

Fechando o chamado

Após download, na tela Construtor de Telas > Outras opções (...) > Metadados > Importar Metadados.

Após isso, criar lançador em Outras opções (...) > Adicionar lançador.

Obs.: 
1 - Os botões de ação "Abrir chamado por outro usuário", "Reabrir chamado" e "Fechar chamado" controlam acesso. Será necessário dar acesso a eles.
2 - Se quiserem que cada usuário só veja seus próprios chamados e um usuário veja todos, criar o filtro padrão abaixo:

AD_TGFCHA.CODUSU = (SELECT CODUSU FROM TSIUSU WHERE CODUSU = STP_GET_CODUSULOGADO) 
OR STP_GET_CODUSULOGADO IN (0,XX)

Procedure STP_MENSAGEM clique aqui.




terça-feira, 12 de dezembro de 2023

SELECT considerando unidade alternativa (TGFVOA)

SELECT    
    CASE WHEN EXISTS(SELECT 1 FROM TGFVOA WHERE CODPROD = ITE.CODPROD AND VOA.CODVOL = ITE.CODVOL) THEN
        CASE WHEN VOA.DIVIDEMULTIPLICA = 'M' 
          THEN ITE.QTDNEG * VOA.QUANTIDADE 
          ELSE ITE.QTDNEG / VOA.QUANTIDADE
        END
    ELSE 
        ITE.QTDNEG
    END AS QTDNEG,
    CASE WHEN EXISTS(SELECT 1 FROM TGFVOA WHERE CODPROD = ITE.CODPROD AND VOA.CODVOL = ITE.CODVOL) THEN
        CASE WHEN VOA.DIVIDEMULTIPLICA = 'M' 
          THEN (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG)) * VOA.QUANTIDADE 
          ELSE (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG)) / VOA.QUANTIDADE
        END
    ELSE 
        (ITE.VLRUNIT - (ITE.VLRDESC / ITE.QTDNEG))
    END AS VLRUNITLIQ
FROM
    TGFITE ITE
    LEFT JOIN TGFVOA VOA ON ITE.CODPROD = VOA.CODPROD AND ITE.CODVOL = VOA.CODVOL

quinta-feira, 7 de dezembro de 2023

Relatório Inadimplência por Vendedor

Condições:

  • Receitas
  • Títulos em aberto
  • Provisão Não
  • Títulos vencidos a partir de 1 dia
  • Apenas boletos (Cód. Tipo Título = 4)
  • Valida central de certificação por empresa do usuário
Obs.: Sem campos ou tabelas adicionais adicionais.

Filtros

 



quarta-feira, 25 de outubro de 2023

Precificação Completa

Já pensou em ter uma única tela para precificar seu produto?


Ter margens predefinidas ou até mesmo lançar de forma manual seu valor?


Precificar suas unidades alternativas, descontos promocionais ou por quantidade tudo no mesmo lugar?


E tudo em questão de poucos cliques? 


Dá uma olhadinha nesse vídeo e surpreenda-se!