Histórico da Página
...
Disponibilizar um serviço de WebService que seja possível consultar o estoque de um determinado produto em uma determinada filial.
03. SOLUÇÃO
Foi desenvolvida uma rotina dentro da Venda Assistida para consulta de estoque em outra filial (Via WebService SOAP), essa rotina será habilitada somente quando se utiliza da configuração de o ambiente for uma Central de PDV.
Para acessar essa rotina abra 1 - Acesse a Venda Assistida e clique em: Atendimento > Estoque > Cons. Estoque na Retaguarda;
2 - Informe os campos de Filial (onde será feita a consulta), produto, armazém e clique em OK;
3 - Será apresentada uma próxima tela onde mostrara o resultado da consulta.
4 - Clique em OK e para fechar a tela.
Disponibilizamos também um exemplo de como pode ser feito a chamada do WebService caso o cliente deseja customizar uma tela nova para consulta de estoque em outra filial.
Na chamada do serviço devera ser enviado o parâmetros Desenvolvemos um serviço que passando a filial, produto e o local de estoque , a rotina devolvera a quantidade em estoque daquele determinado produtoconforme o exemplo abaixo da chamada do serviço.
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
#INCLUDE "PROTHEUS.CH" User Function ConsEst() Local oSvc := Nil //Objeto para WebService Local lRet := .F. //Retorno do WS Local cFilCons := "D SP 01" //Filial que sera efetuada a consulta Local cPrdCons := "1" //Produto que sera consultado Local cLocCons := "01" //Local de estoque que sera consultado Local aProdEst := {} //Retorno do WS após a consulta cPrdCons := PadR(cPrdCons,TamSx3("B1_COD")[1]) cFilCons := PadR(cFilCons,TamSx3("B1_FILIAL")[1]) cLocCons := PadR(cLocCons,TamSx3("B1_LOCPAD")[1]) //Inicia conexao com o WebService para consulta de estoque oSvc := WSLOJESTOQUE():New() oSvc:_URL := "http://127.0.0.1:81/LOJESTOQUE.apw" lRet := oSvc:ConEstoque(cEmpAnt,cFilAnt , cFilCons, cPrdCons, cLocCons) If lRet //Retorna array com o estoque do produto If Len(oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ) > 0 aAdd( aProdEst, { oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCFIL ,; //01 - Filial oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCPRODUTO ,; //02 - Codigo do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCLOCALPROD ,; //03 - Local do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCUNIDADE ,; //04 - Unidade de medida do Produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCGRUPO ,; //05 - Grupo do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:cCDESCRI ,; //06 - Descricao do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNINICIAL ,; //07 - Quantidade inicial do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNATUAL ,; //08 - Saldo atual do produto oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO1 ,; //09 - Preco 1 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO2 ,; //10 - Preco 2 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO3 ,; //11 - Preco 3 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO4 ,; //12 - Preco 4 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO5 ,; //13 - Preco 5 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO6 ,; //14 - Preco 6 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO7 ,; //15 - Preco 7 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO8 ,; //16 - Preco 8 oSvc:oWSCONESTOQUERESULT:oWSWSRETETQ[1]:nNPRECO9 }) //17 - Preco 9 EndIf EndIf Return aProdEst |
...