PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WEBDEV 2024 → Exemple de procédure Webservice
Exemple de procédure Webservice
Débuté par adrianoboller, 22 déc. 2014 14:56 - Aucune réponse
Membre enregistré
3 651 messages
Popularité : +175 (223 votes)
Posté le 22 décembre 2014 - 14:56
Procedure ws_convenio_corridaautorizafatura(Token, Telefone_Imei, Acao, cod_client_conven, cod_centro_custo, Ano)

//Token = Codigo unico de acesso com o parceiro ou dispositivo mobile
//Telefone = Numero do Telefone ou Celular
//ACAO = Ler, Incluir, Alterar, Excluir


//Variaveis
ok is boolean
X is int = 0
Resultado is string = ""
TokenOk is boolean = False
Metodo is string = "ws_convenio_corridaautorizafatura"
Tabela is string = "ACT263_CORRIDA_AUTORIZA_FATURA"

IF Token <> "" THEN

OkConn is boolean = False

OkConn = HConnectionOpen(ConnNativa)

IF OkConn = False THEN

Resultado += "<Xml><Retorno>"
Resultado = ws_conexao_falha(Tabela)
Resultado += "</Retorno></Xml>"

ELSE

TokenOk = ws_token(Token,Telefone_Imei,Acao,Metodo)

IF TokenOk = False THEN

Resultado = ws_erro_token(Tabela)

END

//Filtro de leitura
IF TokenOk = True AND Upper(Acao) = "SELECT" AND cod_client_conven <> "" AND cod_centro_custo <> "" THEN

Resultado += "<Xml><Retorno>"

ok = HExecuteQuery(QRY_ACT263_CORRIDA_AUTORIZA_FATURA,hQueryDefault+hWithFilter,Ano,cod_client_conven,cod_centro_custo)

FOR EACH QRY_ACT263_CORRIDA_AUTORIZA_FATURA

//Sem filtro
IF NoSpace(QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_client_conven) = NoSpace(cod_client_conven) AND...
NoSpace(QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_centro_custo) = NoSpace(cod_centro_custo)

X += 1

Resultado += ws_xml_registro_comeco(Tabela, X)

Resultado += ws_xml_registro_corpo("cod_client_conven", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_client_conven)
Resultado += ws_xml_registro_corpo("cod_centro_custo", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_centro_custo)
Resultado += ws_xml_registro_corpo("cod_embarq", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_embarq)
Resultado += ws_xml_registro_corpo("cod_libera_pagame_eletro", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_libera_pagame_eletro)
Resultado += ws_xml_registro_corpo("cod_lograd_pesqui_desemb", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_lograd_pesqui_desemb)
Resultado += ws_xml_registro_corpo("cod_pagame_eletro_autori", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.cod_pagame_eletro_autori)
Resultado += ws_xml_registro_corpo("des_observ_local_refere_desemb", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.des_observ_local_refere_desemb)
Resultado += ws_xml_registro_corpo("ide_corrid_tercei", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.ide_corrid_tercei)
Resultado += ws_xml_registro_corpo("nom_lograd_local_desemb", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.nom_lograd_local_desemb)
Resultado += ws_xml_registro_corpo("num_ano_corrid", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.num_ano_corrid)
Resultado += ws_xml_registro_corpo("num_corrid", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.num_corrid)
Resultado += ws_xml_registro_corpo("num_local_desemb", QRY_ACT263_CORRIDA_AUTORIZA_FATURA.num_local_desemb)

Resultado += ws_xml_registro_final(Tabela)

END
END

IF X = 0 THEN
Resultado = ws_zero_registros(Tabela)
END

Resultado += "<TOTAL>"+X+"</TOTAL>" //Total de Registros para usar em barras de progresso
Resultado += "</Retorno></Xml>"

ELSE

Resultado = ws_parametros_invalidos(Tabela)

END

END


HConnectionClose(ConnNativa)

ELSE

Resultado = ws_token_invalido(Tabela)

END

RESULT (Resultado)