Histórico da Página
Função: Rotina Automática ATFA036 - Baixa de Ativos Imobilizados
Características do Requisito
Linha de Produto: | Microsiga Protheus. | ||||
Segmento: | Serviços e Jurídico. | ||||
Módulo: | Ativo Fixo (SIGAATF) | ||||
Rotina: |
| ||||
Cadastros Iniciais: | SN1 e SN3. | ||||
Chamado | TUFUWY | ||||
País(es): | Todos. | ||||
Banco(s) de Dados: | Todos. | ||||
Tabelas utilizadas: | FN6, FN7. | ||||
Sistema(s) operacional(is): | Todos. | ||||
Versões/Release: | 12.1.7 |
Aviso | ||
---|---|---|
| ||
Acesse a nova versão da documentação clicando aqui. |
Descrição
Exemplo de rotina automática baixa de Ativos (ATFA036).
Rotina Automática
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
#INCLUDE "Protheus.ch" User Function MyATF036() Local aArea := GetArea() Local cBase := "0000000005" Local cItem := "0001" Local cTipo := "01" Local cTpSaldo := "1" Local cBaixa := "0" Local nQtdAtu := 1 Local nQtdBaixa := 1 Local cMotivo := "08" Local cMetDepr := GetMV('MV_ATFDPBX') Local cNumNF := "" Local cSerieNF := "" Local nValNF := 0 Local aCab := {} Local aAtivo := {} Local aParam := {} Private lMsErroAuto := .F. Private lMsHelpAuto := .T. aCab := { {"FN6_FILIAL" ,XFilial("FN6") ,NIL},; {"FN6_CBASE" ,cBase ,NIL},; {"FN6_CITEM" ,cItem ,NIL},; {"FN6_MOTIVO" ,cMotivo ,NIL},; {"FN6_BAIXA" ,100 ,NIL},; {"FN6_QTDBX" ,nQtdBaixa ,NIL},; {"FN6_DTBAIX" ,dDatabase ,NIL},; {"FN6_DEPREC" ,cMetDepr ,NIL}} aAtivo := {{"N3_FILIAL" ,XFilial("SN3") ,NIL},; {"N3_CBASE" ,cBase ,NIL},; {"N3_ITEM" ,cItem ,NIL},; {"N3_TIPO" ,cTipo ,NIL},; {"N3_BAIXA" ,cBaixa ,NIL},; {"N3_TPSALDO" ,cTpSaldo ,NIL}} //Array contendo os parametros do F12 aAdd( aParam, {"MV_PAR01", 1} ) //Pergunta 01 - Mostra Lanc. Contab? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR02", 2} ) //Pergunta 02 - Aglutina Lancamento Contabil ? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR03", 1} ) //Pergunta 03 - Contabaliza On-Line? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR04", 2} ) //Pergunta 04 - Visualização ? 2 = Tipos de Ativos // deve se usar obrigatoriamente o número 2 Begin Transaction MsExecAuto({|a,b,c,d,e,f|ATFA036(a,b,c,d,e,f)},aCab,aAtivo,3,,.T./*lBaixaTodos*/,aParam) If lMsErroAuto MostraErro() DisarmTransaction() EndIf End Transaction RestArea(aArea) Return |
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
#INCLUDE "Protheus.ch" User Function MyATF036() Local aArea := GetArea() Local cBase := "0000000005" Local cItem := "0001" Local cTipo := "01" Local cTpSaldo := "1" Local cBaixa := "1" Local cSeq := "001" Local cSeqReav := "" Local cFilOri := "D MG 01" Local cMotivo := "08" Local cMetDepr := GetMV('MV_ATFDPBX') Local aCab := {} Local aAtivo := {} Local aParam := {} Private lMsErroAuto := .F. Private lMsHelpAuto := .T. aCab := { {"FN6_FILIAL" ,XFilial("FN6") ,NIL},; {"FN6_CBASE" ,cBase ,NIL},; {"FN6_CITEM" ,cItem ,NIL},; {"FN6_MOTIVO" ,cMotivo ,NIL},; {"FN6_DEPREC" ,cMetDepr ,NIL}} aAtivo := {{"N3_FILIAL" ,XFilial("SN3") ,NIL},; {"N3_CBASE" ,cBase ,NIL},; {"N3_ITEM" ,cItem ,NIL},; {"N3_TIPO" ,cTipo ,NIL},; {"N3_BAIXA" ,cBaixa ,NIL},; {"N3_TPSALDO" ,cTpSaldo ,NIL},; {"N3_SEQ" ,cSeq ,NIL},; {"N3_SEQREAV" ,cSeqReav ,NIL},; {"N3_FILORIG" ,cFilOri ,NIL}} //Array contendo os parametros do F12 aAdd( aParam, {"MV_PAR01", 1} ) //Pergunta 01 - Mostra Lanc. Contab? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR02", 2} ) //Pergunta 02 - Aglutina Lancamento Contabil ? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR03", 1} ) //Pergunta 03 - Contabaliza On-Line? 1 = Sim ; 2 = Não aAdd( aParam, {"MV_PAR04", 1} ) //Pergunta 04 - Visualização ? 1 = Baixas de Ativo // deve se usar obrigatoriamente o número 1 Begin Transaction MsExecAuto({|a,b,c,d,e,f|ATFA036(a,b,c,d,e,f)},aCab,aAtivo,5,,.T./*lBaixaTodos*/,aParam) If lMsErroAuto MostraErro() DisarmTransaction() EndIf End Transaction RestArea(aArea) Return |
Importante
Para utilização do 5º parâmetro lBaixaTodos como .F. é necessário informar no cabeçalho (aCab) o campo FN6_PERCBX (% baixado) devido validações.
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas