- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- função FOR nos itens do pedido
×
Linguagem de Programação ADVPL
Perguntas função FOR nos itens do pedido
- fejuchem
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 14
- Obrigados Recebidos: 0
11 anos 16 minutos atrás #18831
por fejuchem
função FOR nos itens do pedido foi criado por fejuchem
Boa Tarde
Estou criando uma função no ponto de entrada MTA410() (Ao concluir o pedido de venda)
Como ficaria a função FOR nos itens do pedido de venda (SC6)
Quero verificar em cada item, por exemplo, se o campo C6_VALOR é o mesmo do B1_PRCVEN
Desde já, obrigado,
Felipe
Estou criando uma função no ponto de entrada MTA410() (Ao concluir o pedido de venda)
Como ficaria a função FOR nos itens do pedido de venda (SC6)
Quero verificar em cada item, por exemplo, se o campo C6_VALOR é o mesmo do B1_PRCVEN
Desde já, obrigado,
Felipe
Por favor Acessar ou Registrar para participar da conversa.
- THALESCOTR
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 124
- Obrigados Recebidos: 0
10 anos 11 meses atrás #18832
por THALESCOTR
Respondido por THALESCOTR no tópico função FOR nos itens do pedido
Boa tarde Felipe
tente assim:
User Function MTA410
Local _nPosCod := aScan(aHeader,{|_cCpo| AllTrim(_cCpo[2])=="C6_PRCVEN"})
Local _nPosPreco := aScan(aHeader,{|_cCpo| AllTrim(_cCpo[2])=="C6_PRCVEN"})
Local _nPrecoSb1 := 0
Local lRet := .T.
For Nx:=1 To Len(Acols)
_nPrecoSb1 := Posicione("SB1",1,xFilial("SB1")+Acols[Nx][_nPosCod],"B1_PRCVEN")
If _nPrecoSb1 <> Acols[Nx][_nPosPreco] //se forem diferentes da a mensagem e não deixa prosseguir
msgAlert("Preço da SB1 diferente da SC6 no produto: "+Acols[Nx][_nPosCod])
lRet := .F.
EndIf
Next Nx
Return lRet
Att
Thales
tente assim:
User Function MTA410
Local _nPosCod := aScan(aHeader,{|_cCpo| AllTrim(_cCpo[2])=="C6_PRCVEN"})
Local _nPosPreco := aScan(aHeader,{|_cCpo| AllTrim(_cCpo[2])=="C6_PRCVEN"})
Local _nPrecoSb1 := 0
Local lRet := .T.
For Nx:=1 To Len(Acols)
_nPrecoSb1 := Posicione("SB1",1,xFilial("SB1")+Acols[Nx][_nPosCod],"B1_PRCVEN")
If _nPrecoSb1 <> Acols[Nx][_nPosPreco] //se forem diferentes da a mensagem e não deixa prosseguir
msgAlert("Preço da SB1 diferente da SC6 no produto: "+Acols[Nx][_nPosCod])
lRet := .F.
EndIf
Next Nx
Return lRet
Att
Thales
Por favor Acessar ou Registrar para participar da conversa.
- henry.charriere
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 492
- Obrigados Recebidos: 0
10 anos 11 meses atrás #18833
por henry.charriere
Respondido por henry.charriere no tópico função FOR nos itens do pedido
For nXi := 1 To Len(Acols)
nValor := POSICIONE("SB1", 1, xFilial(“SB1”) + C6_PRODUTO, "B1_PRCVEN")
If !Empty(GdFieldGet("C6_VALOR",nXi)) = nValor)
sua validacao
EndIf
Next nXi
nValor := POSICIONE("SB1", 1, xFilial(“SB1”) + C6_PRODUTO, "B1_PRCVEN")
If !Empty(GdFieldGet("C6_VALOR",nXi)) = nValor)
sua validacao
EndIf
Next nXi
Por favor Acessar ou Registrar para participar da conversa.
- fejuchem
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 14
- Obrigados Recebidos: 0
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- função FOR nos itens do pedido
Tempo para a criação da página:0.100 segundos