Árvore de páginas

Descrição:

O ponto de entrada AF060CAC é executado após a execução do cancelamento da transferência de ativos - logo após o bloco de Transaction.

O PE recebe como parâmetro o número o Id. de movimento do cancelamento da transferência e retorna uma string com o log de erro, caso acontece, na execução do ponto de entrada.

O ponto de entrada está dentro da iteração que varre o arquivo temporário do SN3 que fora utilizado para a marcação dos itens que serão cancelado (no objeto de interface, MarkBrowse). Isto é, para cada item que fora marcado para cancelar, o PE será chamado para executar.

Localização:

SigaAtf>Atualizações>Movimentos>Transferências

Eventos:

Transferência de Bens (ATFA060)

Programa Fonte:

ATFA060

Função:

AF060ExeCa

Exemplo:

#INCLUDE "Protheus.ch"

/*/{Protheus.doc} AF060CAC
(long_description)
@type Function
@author user
@since date
@version version
@param param, param_type, param_descr
@return return, return_type, return_description
@example
(examples)
@see (links_or_references)
/*/
User Function AF060CAC()

Local cLogErro := ""
Local cQuery := ""

Local oTable

cQuery := "SELECT " + CHR(13)
cQuery += " N1_CBASE, N1_ITEM, N1_QUANTD " + CHR(13)
cQuery += "FROM " + CHR(13)
cQuery += " " + RetSQLName("FNR") + " FNR " + CHR(13)
cQuery += "INNER JOIN " + CHR(13)
cQuery += " " + RetSQLName("SN1") + " SN1 " + CHR(13)
cQuery += "ON " + CHR(13)
cQuery += "    FNR_CBAORI = N1_CBASE " + CHR(13)
cQuery += "    AND FNR_ITEORI = N1_ITEM " + CHR(13)
cQuery += "    AND SN1.D_E_L_E_T_ = '' " + CHR(13)
cQuery += "WHERE " + CHR(13)
cQuery += "    FNR.D_E_L_E_T_ = '' " + CHR(13)
cQuery += "    AND FNR_IDMOV = '12S" + ParamIxb[1] + "' "

oTable := ATFTempTable(cQuery,"TMP")

If ( (oTable:GetAlias())->(!Eof()) )

    Begin Transaction

        RecLock(oTable:GetAlias(),.F.)

            (oTable:GetAlias())->N1_CBASE := "01TESTE"

        (oTable:GetAlias())->(MsUnlock())

    End Transaction

Else
    cLogErro := "Neste Ponto de Entrada - AF060CAC - não foi localizado o bem. Reveja a codificação do PE."
EndIf

oTable:Delete()

Return (cLogErro)

Idioma:Português
Versões:12.1.17

Eventos de chamada do Ponto de Entrada:

cLogErroPE := Execblock("AF060CAC",.F.,.F.,{cIdMovFNR})