Ponto-de-Entrada: OXA012LP - Calculo da margem do lucro de peças
Abrangências: | Microsiga Protheus 10 , Microsiga Protheus 11 |
Versões: | Microsiga Protheus 10 , Microsiga Protheus 11 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Português (Brasil) |
Descrição:
Ponto de Entrada localizado na rotina Orçamento de Peças e Serviços (OFIXX001), executado na montagem do vetor com valores e descontos para cacular a margem do lucro de peças.
Eventos
User Function OXA012LP()
cNumOrc := ParamIXB[1]
MsgInfo(“Ponto de Entrada OXA012LP”,”Atencao”)
aRet := {}
return aRet
Programa Fonte
OFIXX001.PRW
Sintaxe
OXA012LP - Calculo da margem do lucro de peças ( [ cNumOrc ] ) --> aRet
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
cNumOrc | Caracter | Numero da Ordem de Serviço |
Retorno
-
aRet(vetor)
- Vetor com os valores e descontos
Observações
// ##############################################################
// # PONTO DE ENTRADA PARA CUSTOMIZACAO DA MARGEM DE LUCRO PECAS#
// ##############################################################
if ExistBlock("OXA012LP")
aIDescont := ExecBlock("OXA012LP",.f.,.f.,{cNumOrc})
for nCntFor2 := 1 to Len(aIDescont)
if !aIDescont[nCntFor2]
lProbDesPec := .t.
endif
next
Else
// Le Pecas
while !eof() .and. xFilial("VS3")+VS1->VS1_NUMORC == VS3->VS3_FILIAL+ VS3->VS3_NUMORC
DBSelectArea("SB1")
DBSetOrder(7)
DBSeek(xFilial("SB1")+VS3->VS3_GRUITE+VS3->VS3_CODITE)
lRetDes := OX005PERDES(VS1->VS1_CODMAR,VS1->VS1_CENCUS,VS3->VS3_GRUITE,VS3->VS3_CODITE,VS3->VS3_QTDITE,VS3->VS3_PERDES,.t.,VS1->VS1_CLIFAT,VS1->VS1_LOJA,VS1->VS1_TIPVEN,VS3->VS3_VALTOT/VS3->VS3_QTDITE,,VS1->VS1_FORPAG)
aAdd(aIDescont,lRetDes)
if !lRetDes .and. VS3->VS3_VALDES != 0
lProbDesPec := .t.
endif
DBSelectArea("VS3")
DBSkip()
enddo
EndIf
Variáveis
Nome | Tipo | Escopo | Pode Alterar | descrição | ||||||||||
Array of Record | Global | Não |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas