Exemplos | User Function OM430LIN() Local i := 0 Local nValorDesejado := 0 nValorDesejado := M->VS3_VALPEC * 1.15 If ReadVar() = "M->VS3_ARMORI" .or. (. ReadVar() = "M->VS3_CODITE") .and. !Empty(M->VS3_ARMORI) ) aCols[n,FG_POSVAR("VS3_VALPEC")] := nValorDesejado M->VS3_VALPEC:= nValorDesejado nQtdPec := 0 nTotPec := 0 nTotGer := 0 For i := 1 to Len(aCols) if aCols[i,Len(aCols[i])] Loop Endif if i == n if M->VS3_QTDINI == 0 Loop Endif nQtdPec += M->VS3_QTDINI nTotPec += M->VS3_VALPEC nTotGer += M->VS3_VALPEC*M->VS3_QTDINI Else if aCols[i,FG_POSVAR("VS3_QTDINI")] == 0 Loop Endif nQtdPec += aCols[i,FG_POSVAR("VS3_QTDINI")] nTotPec += aCols[i,FG_POSVAR("VS3_VALPEC")] nTotGer += aCols[i,FG_POSVAR("VS3_VALPEC")]*aCols[i,FG_POSVAR("VS3_QTDINI")] Endif Next Endif return |
---|
Eventos de chamada do Ponto de Entrada | if ReadVar() == "M->VS3_QTDINI" if M->VS3_QTDINI > M->VS3_QTDEST MsgStop(STR0085) return .f. endif nQtdPec := 0 nTotPec := 0 nTotGer := 0 For i := 1 to Len(aCols) if aCols[i,Len(aCols[i])] Loop Endif if i == n if M->VS3_QTDINI == 0 Loop Endif nQtdPec += M->VS3_QTDINI nTotPec += M->VS3_VALPEC nTotGer += M->VS3_VALPEC*M->VS3_QTDINI Else if aCols[i,FG_POSVAR("VS3_QTDINI")] == 0 Loop Endif nQtdPec += aCols[i,FG_POSVAR("VS3_QTDINI")] nTotPec += aCols[i,FG_POSVAR("VS3_VALPEC")] nTotGer += aCols[i,FG_POSVAR("VS3_VALPEC")]*aCols[i,FG_POSVAR("VS3_QTDINI")] Endif Next Endif // If ExistBlock("OM430LIN") // Ponto de Entrada no final do FieldOK ExecBlock("OM430LIN",.f.,.f.) EndIf // oQtdPec:Refresh() oTotPec:Refresh() oTotGer:Refresh() oGetPecas:oBrowse:Refresh() return(.t.) |
---|