Versão atual:

"Local lRet := .T." - C2051 LOCAL declaration follows executable statement

Estou tentando subir uma API para o protheus, porem não sei como resolver o problema de "C2051 LOCAL declaration follows executable statement", na linha que contem "Local lRet := .T.".

trecho:

WSMETHOD GET ConsultarProduto QUERYPARAM numero WSREST Produtos Local lRet := .T. Local aData := {} Local oData := NIL Local oAlias := GetNextAlias() Local cProduto := Self:numero

FwLogMsg("INFO",, "ConsultarProduto", "WSCOM02", "", "01", "Iniciando...")

if Empty(cProduto) Self:SetResponse('{"codigoProduto":"' + cProduto + '", "infoMessage":"", "errorCode":"404", "errorMessage":"Codigo do Produto não informado"}') Return(.F.) EndIF

BeginSQL Alias oAlias SELECT * FROM %Table:SB1% SB1 WHERE SB1.B1_FILIAL = %xFilial:SB1% AND SB1.%NotDel% AND B1_COD = %exp:cProduto% ORDER BY B1_COD EndSQL

dbSelectArea(oAlias) (oAlias)->(dbGoTop())

IF (oAlias)->(!Eof()) oData := JsonObject():New()

oData[ 'codigoProduto' ] := Alltrim((oAlias)->B1_COD) oData[ 'descricao' ] := Alltrim((oAlias)->B1_DESC) oData[ 'tipo' ] := Alltrim((oAlias)->B1_TIPO) oData[ 'unidadeMedida' ] := Alltrim((oAlias)->B1_UM) oData[ 'armazemPadrao' ] := Alltrim((oAlias)->B1_LOCPAD ) oData[ 'codigoNCM' ] := Alltrim((oAlias)->B1_POSIPI )

aAdd(aData,oData)

//Define o retorno do método Self:SetResponse(FwJsonSerialize(aData))

ELSE Self:SetResponse('{"codigoProduto":"'+cProduto+'", "infoMessage":"", "errorMessage":"Codigo do Produto não encontrado"}') lRet := .F. EndIF

FreeObj(oData) (oAlias)->(dbCloseArea())

FwLogMsg("INFO",, "ConsultarProduto", "WSCOM02", "", "01", "FIM...")

Return(lRet)

Versão (1):

Ver a versão formatada

"Local lRet := .T." - C2051 LOCAL declaration follows executable statement

Comentário

new question