Exemplo de customização para alteração de Estoque Minimo/Maximo no cadastro de Produtos (SB1->)


#include "rwmake.ch"
#include "protheus.ch"
#include "topconn.ch"

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³Chama função mBrowse para visualização ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
User function F_PROD02()

Local cAlias := "SB1"

Private cCadastro := "Estoque Minimo/Maximo do Produto"
Private cTexto := ""
Private aRotina :={}

AADD(aRotina,{"Pesquisar" ,"AxPesqui" ,0,1})
AADD(aRotina,{"Alterar Data" ,"U_AlteraEst" ,0,2})

dbSelectArea(cAlias)
dbSetOrder(1)
dbSetFilter({||SUBSTR((SB1->B1_GRUPO),1,1) <> '0' .AND. ;
SUBSTR((SB1->B1_GRUPO),1,1) <> '5' .AND. ;
SUBSTR((SB1->B1_GRUPO),1,1) <> '6' .AND. ;
SUBSTR((SB1->B1_GRUPO),1,1) <> '7' .AND. ;
SUBSTR((SB1->B1_GRUPO),1,1) <> '8'},;
"SUBSTR((SB1->B1_GRUPO),1,1) <> '0' .AND. " +;
"SUBSTR((SB1->B1_GRUPO),1,1) <> '5'.AND. " +;
"SUBSTR((SB1->B1_GRUPO),1,1) <> '6'.AND. " +;
"SUBSTR((SB1->B1_GRUPO),1,1) <> '7'.AND. " +;
"SUBSTR((SB1->B1_GRUPO),1,1) <> '8'")
dbGoBottom()
mBrowse(6,1,22,75,cAlias,,,,,2,aCores)

Return Nil

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³Altera Estoque Minimo/Maximo do produto ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
User Function AlteraEst()

Private nMinimo := SB1->B1_ESTSEG
Private nMaximo := SB1->B1_EMAX

@ 116,001 To 250,415 Dialog oDlgMinMax Title "Estoque Minimo/Maximo do Produto"
@ 05,10 say " Est.Minimo " of OdlgMinMax Pixel
@ 12,10 Get nMinimo PICTURE PESQPICT("SB1","B1_ESTSEG") of OdlgMinMax Pixel
@ 25,10 say " Est.Maximo " of OdlgMinMax Pixel
@ 32,10 Get nMaximo PICTURE PESQPICT("SB1","B1_EMAX") of OdlgMinMax Pixel

@ 050,125 Button "Salvar" Size 35,14 Action (Grava(),Close(oDlgMinMax)) of OdlgMinMax Pixel
@ 050,165 Button "Fechar" Size 35,14 Action Close(oDlgMinMax) of OdlgMinMax Pixel
Activate Dialog oDlgMinMax

Return()

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³Salva campo Estoque Minimo/Maximo do Produto ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
Static Function Grava()

RecLock("SB1",.F.)
SB1->B1_ESTSEG := nMinimo
SB1->B1_EMAX := nMaximo
MsUnlock()
Close(oDlgMinMax)

Return()