Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Exemplo de execauto da rotina "Indicadores de Produtos" (MATA018)

DescriçãoPasso a passo:































        
        If






















Return

Produto:

Microsiga Protheus

VersõesAmbiente:Todas

Estoque e Custos (SIGAEST)

Ocorrência:

Rotina Automática - MATA018 (EXECAUTO)

Ambiente:

SIGAEST - Estoque e Custos

Exemplo de execauto da rotina "Indicadores de Produtos" (MATA018)

Passo a passo

:

Rotina automática que permite a inclusão, alteração ou exclusão de produtos em grande quantidade na rotina de Indicadores de Produtos.

Parâmetros:

NomeTipoDescriçãoConteúdo Default
ExpA1ArrayArray contendo os dados do cabeçalho
ExpA2ArrayArray contendo os itens
ExpA3ArrayArray contendo as informações das empresas (SM0)
ExpN1NuméricoOpção desejada: 3-Inclusão; 4-Alteração ; 5-Exclusão3
Bloco de código
titleExemplo
User Function EXECSBZ()


Local aCab            := {}

Local aItens        := {}

Local aItem        := {}

Local aAreaSM0    := {}

Local nOpc            := 3


Private lMsErroAuto    := .F.


If !MyOpenSm0Ex()

    __Quit()

EndIf


DbSelectArea('SM0')

aAreaSM0 := SM0->(GetArea())

SM0->(dbSetOrder(1))

SM0->(dbGoTop())

If SM0->(!EOF())

    cEmpStart := AllTrim(SM0->M0_CODIGO)

    cFilStart := AllTrim(SM0->M0_CODFIL)

Endif


RestArea(aAreaSM0)


PREPARE ENVIRONMENT EMPRESA cEmpStart FILIAL cFilStart


If nOpc == 3 .Or. nOpc == 5

    DbSelectArea("SB1")

    SB1->(DbSetOrder(1))

    While SB1->(!EOF())

        aCab := {}

        lMsErroAuto := .F.

        

        aAdd(aCab,{'BZ_COD',SB1->B1_COD,Nil})

        aAdd(aCab,{'BZ_LOCPAD',SB1->B1_LOCPAD,Nil})

        aAdd(aCab,{'BZ_TE',"001",Nil})

        

        MSExecAuto({|v,x| MATA018(v,x)},aCab,nOpc)

If !lMsErroAuto

            Conout('Inserido/Alterado/Excluido com sucesso')

        Else

            Conout('Erro na Inclusão/Alteração/Exclusão')

            MostraErro()

        Endif

        

        SB1->(DbSkip())

    Enddo


Elseif nOpc == 4

    aAdd(aCab,{'BZ_COD',"001",Nil})

    aAdd(aCab,{'BZ_LOCPAD',"01",Nil})

    aAdd(aCab,{'BZ_TE',"001",Nil})

    

    MSExecAuto({|v,x| MATA018(v,x)},aCab,nOpc)

    

    If !lMsErroAuto

        Conout('Inserido/Alterado/Excluido com sucesso')

    Else

        Conout('Erro na Inclusão/Alteração/Exclusão')

        MostraErro()

    Endif

Endif


RESET ENVIRONMENT

Return
Aviso
titleObservações
:

Execauto para realizar a inclusão, alteração ou exclusão de produtos em grande quantidade na rotina de Indicadores de Produtos. No exemplo acima serão inclusos todos os produtos existentes no cadastro de produtos (SB1).

Pode lhe interessar: