Árvore de páginas

TSLFR1_DT_AF380VLIN_Valida_linha_acerto_VLR_RECUPERAVEL

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Servicos

Módulo:

Ativo Fixo

Rotina:

Rotina

Nome Técnico

ATFA380.PRW

Acerto Valor Recuperável

Ponto de Entrada:

AF380VLIN

Chamados Relacionados

TSLFR1

País(es):

Todos

Banco(s) de Dados:

Todos

Tabelas Utilizadas:

SNI/SNJ

Sistema(s) Operacional(is):

Todos

Versões/Release:

11.80

Descrição

O ponto de entrada AF380VLIN valida a linha da grade na rotina de acerto do valor recuperável. Se o ponto de entrada retornar .F. não exibir a mensagem padrão do sistema e não continuar a execução do processo.

Ponto de Entrada

Descrição:

O ponto de entrada AF380VLIN valida a linha da grade na rotina de acerto do valor recuperável.

Eventos:

AF380VLIN

Programa Fonte:

ATFA380.PRW

Função:

Af380GrvWz()

Retorno:

Nome

Tipo

Descrição

lRet

 L

 Retorna .T. / .F.

Parametro:

Nome

Tipo

Descrição

Obrigatório

 aHeader

 A

 Cabeçalho da Grade

 

 aCols

 A

 Linhas da Grade

 

 nLin

 N

 Posição da Linha

 
nOpcAuxN

3-Incluir

4-Alterar

5-Excluir

6-Exportar

7-Importar

 
lEfetivaL

.T. - Efetivar

.F.- Simular

 

Exemplo:

#Include 'Protheus.ch'

//Exemplo de ponto de entrada para validar linha na exportacao ou importacao

User Function AF380VLIN()
Local aHeader__ := ParamIXB[1]
Local aCols__ := ParamIXB[2]
Local nLinAt__ := ParamIXB[3]
Local nOpcAux__ := ParamIXB[4]
Local lEfetiva_ := ParamIXB[5]
Local lRet := .T.
Local cQuery := ""
Local aArea := GetArea()
Local cAliasQry := CriaTrab(,.F.)
Local nPosBem := aScan( aHeader__, {|x| Upper( AllTrim( x[2] ) ) == "NJ_BEM" } )
Local nPosItBem := aScan( aHeader__, {|x| Upper( AllTrim( x[2] ) ) == "NJ_ITBEM" } )

If nOpcAux__ == 7 .And. lEfetiva_ .And. nPosBem > 0 .And. nPosItBem > 0

//importacao com efetivacao tem que validar se bem ja nao esta em outra simulacao
cQuery := " SELECT NI_STATUS FROM "
cQuery += RetSqlName("SNI")+" SNI, "+RetSqlName("SNJ")+" SNJ "
cQuery += " WHERE "
cQuery += " NI_FILIAL = '"+xFilial("SNI")+"' "
cQuery += " AND NI_STATUS = '1' "
cQuery += " AND SNI.D_E_L_E_T_ = ' ' "
cQuery += " AND NI_FILIAL = NJ_FILIAL "
cQuery += " AND NI_PROC = NJ_PROC "
cQuery += " AND NJ_BEM = '"+aCols__[nLinAt__, nPosBem]+"'"
cQuery += " AND NJ_ITBEM = '"+aCols__[nLinAt__, nPosItBem]+"'"
cQuery += " AND SNJ.D_E_L_E_T_ = ' ' "

dbUseArea(.T., "TOPCONN", TcGenQry(,, cQuery ), cAliasQry, .T.,.F. )

If (cAliasQry)->( !Eof() ) //se encontrado retorna .F. para chamador
(cAliasQry)->( DbCloseArea() )
MsgInfo("Bem : "+aCols__[nLinAt__, nPosBem]+"/"+aCols__[nLinAt__, nPosItBem]+" - encontrado em outra simulacao, Arquivo nao pode ser importado.")
lRet := .F.
EndIf

EndIf

RestArea(aArea)
Return(lRet)