|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
Retorno de URl |
|
Versão: |
12.1.25 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
WANDERSONW
em 17/11/2020, 15:00 h
Local: SP Registro: 01/07/2015 Postagens: 166 |
Boa Tarde Pessoal,
Estou tentando fazer uma api para trazer o saldo em estoque, quando ingesso o codigo do produto na query vem o resultado correto porem preciso criar uma maneira de que, quando o usuario informar o codigo na url, a rotina deve ler este codigo e verificar se existe informaçoes para ela.
Alguem já passou por isso, segue abaixo o codigo que começei a fazer e se alguem puder me ajudar agradesço.
#Include ‘Protheus.ch‘
#Include ‘FWMVCDEF.ch‘
#Include ‘RestFul.CH‘
WSRESTFUL VSPAPI03 DESCRIPTION "Saldo Disponivel por Filial API" FORMAT APPLICATION_JSON
WSDATA VSPFILPROD AS STRING
WSMETHOD GET customers DESCRIPTION ‘SP Lista de Clientes‘;
WSSYNTAX ‘/api/v1/VSPAPI03?VSPFILPROD‘;
PATH ‘/api/v1/VSPAPI03?VSPFILPROD‘ ;
PRODUCES APPLICATION_JSON
conout(‘vspfilprod‘)
END WSRESTFUL
conout(‘VSPFILPROD‘)
WSMETHOD GET customers WSRECEIVE VSPFILPROD WSREST VSPAPI03
Local lRet:= .T.
lRet := Customers( self )
conout(‘VSPFILPROD‘)
Return( lRet )
Static Function Customers( oSelf )
Local aListCli := {}
Local cJsonCli := ‘‘
Local oJsonCli := JsonObject():New()
Local nCount := 0
Local nStart := 1
Local nAux := 0
Local cAliasSB2 := GetNextAlias()
ALERT(‘VSPFILPROD‘)
dbSelectArea(‘SB1‘)
DbSetOrder(1)
BEGINSQL Alias cAliasSB2
SELECT B2_QATU-B2_RESERVA-B2_QACLASS AS SALDO
FROM
%table:SB2% SB2
WHERE
1=1
AND SB2.%NotDel%
AND SB2.B2_FILIAL =‘40‘
AND SB2.B2_COD =‘00310B‘
ENDSQL
If ( cAliasSB2 )->( ! Eof() )
( cAliasSB2 )->( DBGoTop() )
EndIf
While ( cAliasSB2 )->( ! Eof() )
nCount++
If nCount >= nStart
nAux++
aAdd( aListCli , JsonObject():New() )
aListCli[nAux][ ‘SaldoDisponivel‘ ] := ( cAliasSB2 )->SALDO
If Len(aListCli) >1
Exit
EndIf
EndIf
( cAliasSB2 )->( DBSkip() )
End
( cAliasSB2 )->( DBCloseArea() )
oJsonCli[‘Produto‘] := aListCli
cJsonCli:= FwJsonSerialize( oJsonCli )
FreeObj(oJsonCli)
oself:SetResponse( cJsonCli )
Return .T.
|
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|