Exemplo do Ponto de Entrada A415LIOK.
Exemplo do Ponto de Entrada:
//Bibliotecas #Include "Protheus.ch" /*---------------------------------------------------------------------------------* | P.E.: A415LIOK | | Desc.: Ponto de entrada para validar o preço na linha de digitação do orçamento | | Link: http://tdn.totvs.com/pages/releaseview.action?pageId=6784038 | *---------------------------------------------------------------------------------*/ User Function A415LIOK() Local aArea := GetArea() Local aAreaCJ := SCJ->(GetArea()) Local aAreaCK := SCK->(GetArea()) Local cTabAtu := M->CJ_TABELA Local cCodProd := "" Local nPrcProd := 0 Local lRet := .T. //Se tiver tabela de preço preenchida If !Empty(cTabAtu) DbSelectArea('DA1') DA1->(DbSetOrder(1)) //DA1_FILIAL+DA1_CODTAB+DA1_CODPRO+DA1_INDLOT+DA1_ITEM DA1->(DbGoTop()) //Pega as informações do produto da grid e preço cCodProd := TMP1->CK_PRODUTO nPrcProd := TMP1->CK_PRCVEN //Se conseguir posicionar na tabela de preço + produto If DA1->(DbSeek(FWxFilial('DA1') + cTabAtu + cCodProd )) //Verifica se o preço do produto no orçamento é maior que o preço máximo da tabela If nPrcProd > DA1->DA1_PRCMAX lRet := .F. Alert("Preço inválido!", "Atenção") EndIf EndIf EndIf Restarea(aAreaCK) RestArea(aAreaCJ) RestArea(aArea) Return lRet
Observações:
– Caso tenha dúvidas ou problemas com os exemplos, entre em contato;
– Se tiver sugestões de rotinas, pode entrar em contato;