Árvore de páginas


CONTEÚDO


01. VISÃO GERAL

Esta rotina permite o cadastro de centro de custo de forma automática.

02. EXEMPLO DE UTILIZAÇÃO

Abaixo mostraremos exemplos de utilização.

Inclusão:

Inclusão
user function myCtb030()

	Local aDadosAuto := {} // Array com os dados a serem enviados pela MsExecAuto() para gravacao automatica
	Private lMsHelpAuto := .f. // Determina se as mensagens de help devem ser direcionadas para o arq. de log
	Private lMsErroAuto := .f. // Determina se houve alguma inconsistencia na execucao da rotina em relacao aos

	aDadosAuto:= { {'CTT_CUSTO' , "05700002 " , Nil},; // Especifica qual o Código do Centro de Custo.
	{'CTT_CLASSE' , "2" , Nil},; // Especifica a classe do Centro de Custo, que poderá ser: - Sintética: Centros de Custo totalizadores dos Centros de Custo Analíticos - Analítica: Centros de Custo que recebem os valores dos lançamentos contábeis
	{'CTT_NORMAL' , " " , Nil},; // Indica a classificação do centro de custo. 1-Receita ; 2-Despesa
	{'CTT_DESC01' , "CENTRO CUSTO SQA TESTE MAPA METAL " , Nil},; // Indica a Nomenclatura do Centro de Custo na Moeda 1
	{'CTT_BLOQ' , "2" , Nil},; // Indica se o Centro de Custo está ou não bloqueado para os lançamentos contábeis.
	{'CTT_DTEXIS' , CTOD("01/01/80") , Nil},; // Especifica qual a Data de Início de Existência para este Centro de Custo
	{'CTT_DTEXSF' , CTOD("31/12/29") , Nil},; // Especifica qual a Data final de Existência para este Centro de Custo.
	{'CTT_CCLP' , "05700002 " , Nil},; // Indica o Centro de Custo de Apuração de Resultado.
	{'CTT_CCPON' , " " , Nil},; // Indica o Centro de Custo Ponte de Apuração de Resultado.
	{'CTT_BOOK' , " " , Nil},; // Este é o elo de ligação entre o Cadastro Configuração de Livros e a Centro de Custo
	{'CTT_CCSUP' , "057 " , Nil},; // Indica qual é o Centro de Custo superior ao que está sendo cadastrado (dentro da hierarquia dos Centros de Custo).
	{'CTT_RES' , " " , Nil}} // Indica um “apelido” para o Centro de Custo (que poderá conter letras ou números) e que poderá ser utilizado na digitação dos lançamentos contábeis, facilitando essa digitação.

	MSExecAuto({|x, y| CTBA030(x, y)},aDadosAuto, 3)

	If lMsErroAuto
		MostraErro()
	EndIf

return

Alteração:

Alteração
#INCLUDE 'Protheus.ch'

user function mCtb030Alt()

	Local aDadosAuto := {}
    Local cCusto     := "000001"

	Private lMsHelpAuto := .F.
	Private lMsErroAuto := .F.

    DBSelectArea("CTT")
    CTT->(DBSetOrder(1)) //CTT_FILIAL+CTT_CUSTO
    If CTT->(DbSeek(xFilial("CTT")+cCusto))

        aDadosAuto:= {{'CTT_CUSTO' , cCusto, Nil},; //Necessário passar o centro de custo para posicionamento do execauto
                      {'CTT_DESC01' , "DESCRICAO ALTERADA" , Nil}} //Descrição na moeda 01 -- Campo que será alterado
        MSExecAuto({|x, y| CTBA030(x, y)},aDadosAuto, 4)

        If lMsErroAuto
            MostraErro()
        EndIf
    EndIf    
return

Exclusão:

Exclusão
#INCLUDE 'Protheus.ch'

user function mCtb030Exc()

	Local aDadosAuto := {}
    Local cCusto     := "1234"

	Private lMsHelpAuto := .F.
	Private lMsErroAuto := .F.

    DBSelectArea("CTT")
    CTT->(DBSetOrder(1)) //CTT_FILIAL+CTT_CUSTO
    If CTT->(DbSeek(xFilial("CTT")+cCusto))

        aDadosAuto:= {{'CTT_CUSTO' , cCusto, Nil}}//Necessário passar o centro de custo para posicionamento do execauto
        MSExecAuto({|x, y| CTBA030(x, y)},aDadosAuto, 5)

        If lMsErroAuto
            MostraErro()
        EndIf
    EndIf    
return


03. TABELAS UTILIZADAS

  • CTT - Centro de Custo