Clipper On Line • Ver Tópico - Baixa arquivo webservice

Baixa arquivo webservice

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Baixa arquivo webservice

Mensagempor jfaguiar » 06 Ago 2018 16:16

Bom dia amigos.
Estou estou desenvolvendo uma aplicação que precisa baixar uma arquivo diariamente do web service da semasa. Eles me passaram uma base de teste de onde tentei baixar, mas sem sucesso. Eles até me mandaram um exemplo mas está em c#. Alguém poderia dar um luz?
Verifiquei alguns post sobre post e get, onde o sr. José Quintas fez alguns comentários, mas sou totalmente leigo nessa área. Eu só preciso dos comandinhos que baixa o xml.
Desde já agradeço as colaborações.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TesteDRS
{
class Program
{

static void testaasmx()
{
string msg = "";
string token = "BOAHORA@2018XYKC10";

br.gov.sp.semasa.servicos.ServicosDRS client = new br.gov.sp.semasa.servicos.ServicosDRS();

br.gov.sp.semasa.servicos.Servico[] servicos = client.ReceberServicos(token);

#region campos retornados no array servicos
/*
//Dados da Ordem de Serviço
servicos[0].servicostatus_id; // double
servicos[0].osid; // double
servicos[0].idservico; // double
servicos[0].codservicoid; // string
servicos[0].descricaoservico; // string
servicos[0].idgerador; // string
servicos[0].nome; // string
servicos[0].endereco; // string
servicos[0].bairro; // string
servicos[0].cep; // string
servicos[0].setor_coleta; // string
servicos[0].obs; // string

//Dias de Coleta
servicos[0].segunda; // string
servicos[0].segunda_old; // string
servicos[0].terca; // string
servicos[0].terca_old; // string
servicos[0].quarta; // string
servicos[0].quarta_old; // string
servicos[0].quinta; // string
servicos[0].quinta_old; // string
servicos[0].sexta; // string
servicos[0].sexta_old; // string
servicos[0].sabado; // string
servicos[0].sabado_old; // string

//Frequencia de Coleta
servicos[0].diaria; // string
servicos[0].diaria_old; // string
servicos[0].semanal; // string
servicos[0].semanal_old; // string
servicos[0].programada; // string
servicos[0].programada_old; // string

//Abrigo de Residuos
servicos[0].abrigo; // string
servicos[0].abrigo_old; // string
servicos[0].abrigooutro; // string
servicos[0].abrigooutro_old; // string
servicos[0].abrigodescricao; // string
servicos[0].abrigodescricao_old; // string

//Tipos de Estabelecimento
servicos[0].clinicaestetica; // string
servicos[0].clinicaestetica_old; // string
servicos[0].clinicamedica; // string
servicos[0].clinicamedica_old; // string
servicos[0].clinicaodontologica; // string
servicos[0].clinicaodontologica_old; // string
servicos[0].clinicaveterinaria; // string
servicos[0].clinicaveterinaria_old; // string
servicos[0].drogaria; // string
servicos[0].drogaria_old; // string
servicos[0].hospital; // string
servicos[0].hospital_old; // string
servicos[0].laboratorio; // string
servicos[0].laboratorio_old; // string
servicos[0].outros; // string
servicos[0].outros_old; // string
servicos[0].outroestabelecimento; // string
servicos[0].outroestabelecimento_old; // string

//Tipo da OS

servicos[0].status: // int
2 Execução de Implantação
4 Suspensão
5 Cancelamento

*/
#endregion campos

// Sinaliza ao sistema que o(s) serviço(s) foi(ram) baixado(s) com sucesso pela contratada
if (!client.ConfirmaRecebimento(token, servicos, ref msg))
{
//alert ERROR msg
}

// Confirmação que o serviço foi executado, deve ser executado apos a implantação, suspenção ou cancelamento
// de um serviço: o parametro servicostatus_id é obrigatório.
// if (!client.ConfirmaExecucao(servicostatus_id, "Teste de Implantação", ref msg))
if (!client.ConfirmaExecucao(token, 214, "Teste de Implantação", ref msg))
{
//alert ERROR msg
}

// Abaixo um exemplo de como enviar um lançamento de coleta efetuada.
br.gov.sp.semasa.servicos.Lancamentos lancamento = new br.gov.sp.semasa.servicos.Lancamentos
{
osid = 50,
idgerador = 4,
idservico = 45,
data_servico = "20/11/2017 12:36:00",
qtde_lixo = Convert.ToDecimal(180.50),
unidade = "LT",
embalagem_tipo = "SACO", // SACO ou CAIXA
embalagem_cap = 100, // Capacidade de acordo com a unidade ex: 100 Litros
embalagem_qtd = 2, // No exemplo, 2 sacos de 100 Litros
valor = 0
};

if (!client.LancamentoServico(token, lancamento, ref msg))
{
//alert ERROR msg
}

client.Dispose();
}

static void Main(string[] args)
{
testaasmx();
}
}
}
jfaguiar
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 8
Data de registro: 13 Nov 2012 12:36
Cidade/Estado: Mauá - SP
Curtiu: 0 vez
Mens.Curtidas: 0 vez



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro