Pular para o conteúdo principal

CD_CENTROCUSTO — Centro de Custo Padrão do Usuário

Tela de configuração: ADM012 — Parâmetros do Usuário Tabela: PARMUSUARIO.CD_CENTROCUSTO Tipo: INTEGER (DOM_INTEGER) Valor padrão: vazio (campo não preenchido) Lookup: <F9> abre consulta de Centros de Custo (tabela CENTROCUSTO)

Resumo​

O que fazDetalhe
Define o centro de custo padrão do usuárioValor é gravado no campo CD_CENTROCUSTO da tabela PARMUSUARIO
Busca por <F9>Abre a tabela CENTROCUSTO filtrando por empresa da sessão
Validação no ValidateConfere existência na tabela CENTROCUSTO com TP_CENTROCUSTO = 'A' (tipo Analítico) e ST_ATIVO = 'S'
Campo editávelO usuário pode digitar o código manualmente ou usar <F9> para pesquisar
Descrição exibidaApós validar, preenche o campo descritivo DS_CENTROCUSTO

Telas impactadas​

  • ADM012 — Parâmetros do Usuário (tela de configuração do próprio campo)
  • ADM013 — Cadastro de Usuários (duplicação de usuário copia este campo)
  • CCB005 — Centro de Custo (plano anual, filtros)
  • CFC001 — Fluxo de Caixa (consulta centros de resultado/custo)
  • CNF001 — Notas Fiscais (utiliza centro de custo do cadastro da empresa/usuário)

Campos envolvidos​

CampoTabelaTipoObrigatório
CD_CENTROCUSTOPARMUSUARIOINTEGERNão
DS_CENTROCUSTOPARMUSUARIO(descriptor)Não — preenchido automaticamente após validação

Opções disponíveis​

Este campo é um edit numérico livre — não possui opções discretas (S/N/T/etc.). O comportamento é único e descrito abaixo.

Preenchimento padrão (valor definido pelo usuário)​

O que fazDetalhe
EditávelSim — o usuário pode digitar o código diretamente
BloqueadoNão
ExigeExistência valida em CENTROCUSTO com TP_CENTROCUSTO = 'A' e ST_ATIVO = 'S'
RestriçãoSomente centros de custo da empresa ativa do usuário

Simulação passo a passo​

  1. Acesse a tela ADM012 — Parâmetros do Usuário.
  2. Localize o campo CD_CENTROCUSTO no formulário.
  3. Digite diretamente o código do centro de custo (ex: 1050) ou pressione <F9> para abrir a consulta.
  4. Na consulta de Centros de Custo, selecione o centro desejado (ex: 1050 — Departamento Financeiro).
  5. Salve o registro (<Ctrl+S> ou botão Salvar).

Resultado esperado: O código CD_CENTROCUSTO é gravado no perfil do usuário e a descrição DS_CENTROCUSTO é exibida ao lado. Em operações subsequentes (orçamentos, notas fiscais, contas a pagar/receber), esse centro de custo será utilizado como padrão do usuário.

Exceção / Importante:

  • O centro de custo informado deve existir na tabela CENTROCUSTO para a empresa do usuário, com TP_CENTROCUSTO = 'A' (Analítico) e ST_ATIVO = 'S'. Caso contrário, a validação dispara um erro: "O Centro de Custo não está cadastrado! Verifique [TCB004]".
  • TCB004 é a tela de cadastro de Centros de Custo — é onde se cria/manutenção os registros válidos.
  • A duplicação de usuário (tela ADM013) copia este campo para o novo registro (PM.CD_CENTROCUSTO).
  • O campo é opcional na tabela — se não preenchido, não há centro de custo padrão para o usuário.

Procedures impactadas​

Rotinas Delphi com referência direta ao parâmetro​

RotinaArquivoEvidência
TfrmADM012.edtCD_CENTROCUSTOKeyDownsource/ADM012/UADM012.pas:848Lookup <F9> na tabela CENTROCUSTO
TdmADM012.tabPARMUSUARIOCD_CENTROCUSTOValidatesource/ADM012/UdmADM012.pas:539Validação existência + tipo A + ativo
TfrmADM013.btnDuplicaUsuarioClicksource/ADM013/UADM013.pas:474Copia PM.CD_CENTROCUSTO na duplicação
TfrmPlanoContas.* (múltiplas)source/ADM010/UfrmPlanoContas.pasUsa CD_CENTROCUSTO em SQLs do plano de contas
TfrmCCB005.* (múltiplas)source/CCB005/UCCB005.pasFiltros e validações de centro de custo
TfrmCFC001.* (múltiplas)source/CFC001/UCFC001.pasConsulta CENTROCUSTO em fluxo de caixa
TfrmCNF001.* (múltiplas)source/CNF001/UCNF001.pasUtiliza centro de custo em notas fiscais

Referências SQL diretas ao campo CD_CENTROCUSTO​

Procedure/ViewArquivoContexto
AJUSTA_SALDOCC_ZERAMENTOScripts/AJUSTA_SALDOCC_ZERAMENTO.sql:17Variável local
CONTABILIZA_ESTOQUEScripts/CONTABILIZA_ESTOQUE.sql:17Variável local
EXECUTA_ZERAMENTOCCScripts/EXECUTA_ZERAMENTOCC.sql:11Variável local
GERA_DRECCScripts/GERA_DRECC.sql:5Parâmetro de entrada
GERA_MOVTOCONTABILScripts/GERA_MOVTOCONTABIL.sql:21Variável local
RETORNA_CENTROCUSTOCFC001Scripts/RETORNA_CENTROCUSTOCFC001.sql:10Parâmetro de saída
RETORNA_CENTROCUSTOCONTASScripts/RETORNA_CENTROCUSTOCONTAS.sql:15Parâmetro de saída
INSERE_ITEMNOTACCScripts/INSERE_ITEMNOTACC.sql:12Variável local
LANCAMENTO_COMPOSTOScripts/LANCAMENTO_COMPOSTO.sql:28Variável local
GRAVA_MOVTOCONTABILCCNOTAScripts/GRAVA_MOVTOCONTABILCCNOTA.sql:11Variável local

Nota: As procedures CANCELA_NOTAFISCAL, CONTROLE_CAIXA, PERMISSAO_CAIXA, GERA_ETIQUETABALANCA, VERIFICA_BLOQUEIO e outras consultam a tabela PARMUSUARIO, mas não referenciam o campo CD_CENTROCUSTO literalmente. Validar antes de afirmar impacto funcional direto.

Tabela comparativa resumida​

AspectoValor
CampoCD_CENTROCUSTO
TabelaPARMUSUARIO
TipoINTEGER
ObrigatórioNão
PadrãoVazio
EditávelSim
Lookup<F9> → tabela CENTROCUSTO
ValidaçãoTP_CENTROCUSTO = 'A' e ST_ATIVO = 'S'
Error"O Centro de Custo não está cadastrado! Verifique [TCB004]"
Copiado na duplicaçãoSim (ADM013)