Árvore de páginas

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