Versões: | Microsiga Protheus 8.11 , Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todas TotvsDbAccess |
Nível de Acesso: | Nível 1 (Acesso Clientes) |
Idiomas: | Espanhol , Inglês |
A função PCOA050 apresenta os lançamentos efetuados no Sistema, sejam eles incluídos manualmente ou gerados automaticamente, originados pelos processos de contabilização orçamentária. Esta documentação detalha a forma automatica de manutenção do lançamento assim como os parâmetros envolvidos nesta operação.
PCOA050.PRW
PCOA050 - Processos de Contabilização Orçamentária ( [ nCallOpcx ] [ lAuto ] [ aRecnos ] [ lProc ] [ lLockBlq ] ) --> lRet
-
lRet(logico)
- Retorna .T. em caso Sucesso na Manutenção do Lançamento
Rotina de manutenção dos lançamentos que pode ser utilizada de forma manual ou chamada por rotinas de contabilização orçamentária.
No caso de rotinas de contabilização orçamentária a chamada desta rotina ocorre na funcão PcoFinLan(...) na finalização da transação orçamentária ou pela chamada da rotina PcoVldLan(...) que se refere a bloqueios, sendo responsável pela validação dos lançamentos gerados pela função PcoDetLan(....) ou pela função PcoVldLan(...) e atualização dos saldos de cubos. Os parâmetros recebidos por esta função quando chamada pela PcoFinLan(...) são os seguintes:
nCallOpcx - 4 (quatro) por se tratar de uma alteração no movimento orçamentário
lAuto - .T. quando de forma automática, limitado à operação de alteração (4) ou estorno (6)
Neste caso não será exibida a tela de dialogo para manutenção dos lançamentos, sendo apenas carregados o conteúdo do conjunto de registros ou todos do lote posicionado na enchoice e nas linhas do acols, e entra diretamente na rotina de gravação.
aRecnos - Array contendo conjunto de registros em alteração (os envolvidos na transação), se não fornecido este conjunto, a rotina carrega todos os do lote posicionado no momento da chamada da rotina.
lProc - .T. para exibir barra de progresso do processamento na carga dos itens
lLockBlq - .T. somente quando é chamado pela rotina PcoVldLan(...)
A rotina de gravação dos lançamentos atualiza o estado do lançamento para "Aprovado" (anteriormente o estado foi colocado como "Invalido" pela rotina PcoDetLan) e atualiza os saldos dos cubos.
Para inclusão de lançamentos em processos definidos por usuarios deve ser utilizado preferencialmente as funções PcoIniLan(...), PcoDetLan(...) e PcoFinLan(...) que já chama de forma automática a função PcoA050(...).
O estorno de lançamento é similar à alteração somente mudando o parâmetro nCallOpcx para 6 (seis) e o resultado final da operação se resume em mudar o estado para "Estornado" e os saldos do cubo são decrementados dos valores do lançamento.
Exemplo 1) Para chamar a rotina PCOA050 em modo de alteraçaodbSelectArea("AKD")dbSetOrder(1)// No.Lote ItemdbSeek(xFilial()+"0000000079"+"0001"//supondo que neste lote exista somente este item com status "Invalido"aRecno := { AKD->(Recno()) }PCOA050( 4, .T., aRecno)//neste caso chamara a rotina de alteracao do lancamento //mudara o status para "Aprovado" e atualizara os saldos de cubos//-----------------------------------------------------------------------------------------------//Exemplo 2) Chamada da rotina PcoA050 pela rotina PcoFinLan() em um processo definido por usuario// em um processo definido por usuario// Processo 900001 - Verbas Orçamentarias Suplementares (tabela SZV - Verbas Suplementares)// este processo foi incluido no cadastro de Lancamentos / Por Processo// com a tabela SZV populada dbSelectArea("SZV"dbSeek(xFilial())PcoIniLan("900001")While SZV->(! Eof()) PcoDetLan("900001", "01" "U_VERSUP") SZV->(dbSkip())EndDoPcoFinLan("900001") //aqui sera chamada a rotina PCOA050
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
nCallOpcx | Numérico | Opcão de Manutencão | |||||||||||||||
lAuto | Lógico | Indica Manutenção de Forma Automática | .F. | ||||||||||||||
aRecnos | Array of Record | Conjunto de Registros em Manutenção | |||||||||||||||
lProc | Lógico | Indica Exibição Barra de Progresso do Processamento | .F. | ||||||||||||||
lLockBlq | Lógico | Indica Lançamento Originario de Bloqueio | .F. |