none
Webservice da F2B RRS feed

  • Pergunta

  •  

    Alguem tem experiencia com a utilização do webservice da F2B pra geracao de boleto que possa me explicar como funciona? Eles tem um tutorial para utilizacao com ASP, mas nao é muito parecido com ASP.Net. Mesmo o .net sendo uma evolucao so ASP...
    domingo, 28 de setembro de 2008 17:21

Todas as Respostas

  • Esse em específico eu não sei... mas pra consumir um web service é necessário:

    Adicionar a referência web: http://www.exforsys.com/tutorials/vb.net-2005/web-reference-asp.net-web-application-and-xml-web-service.html

    Instanciar o web service.

    Chamar os métodos como se fosse uma classe qualquer.


    Abraço,


    domingo, 28 de setembro de 2008 22:12
  •  Roberto O Santos wrote:
    Esse em específico eu não sei... mas pra consumir um web service é necessário:

    Adicionar a referência web: http://www.exforsys.com/tutorials/vb.net-2005/web-reference-asp.net-web-application-and-xml-web-service.html

    Instanciar o web service.

    Chamar os métodos como se fosse uma classe qualquer.


    Abraço,


     

    Opa Roberto obrigado pela explicação. Até onde eu sei eh assim mesmo. O problema eh que na F2B o esquema de webservices é diferente...

    domingo, 28 de setembro de 2008 22:26

  • Para fazer um proxy client nos WebServices da F2b. Exemplo de Registro de Cobrança)

    Projeto: F2bWSBilling

    Utilizando o Visual Studio 2008 faça o seguinte:

    Crie um projeto de Console: (C# por exemplo);

    Depois de criado, clique com o botão direito em seu projeto e vá em Add Service Reference;
    Abrirá uma janela onde deverá ser colocado um endereço;
    No campo endereço coloque http://www.f2b.com.br/soap/wsbilling.wsdl;
    Assim deverá ser encontrado o serviço WSBillingService.
    De um nome ao seu namespace, no último campo da janela aberta (WSBilling, por exemplo). Clique em OK
    Com isso será gerada a classe WSBilling que será responsável por montar e receber os dados (Request/Response), fazendo a serialização e deserealização dos dados. Também é gerado um arquivo app.config, que é um arquivo que contém dados relacionados ao envio, bem como onde é configurado o endpoint.

    Após isso já está praticamente pronto, apenas deve-se instanciar os objetos de acordo com a necessidade.

    Deixarei um exemplo aqui:

    Em sua aplicação criada, na classe Program que contém o método main copie o código:


    class Program
        {
            static void Main(string[] args)
            {

                /*
                * Criando o objeto para registro da cobrança
                */
                WSBilling.F2bCobranca ws_billing = new WSBilling.F2bCobranca();

                /*
                  * Criação do Objeto mensagem
                  */
                WSBilling.F2bCobrancaMensagem mensagem = new WSBilling.F2bCobrancaMensagem();

                mensagem.data = System.DateTime.Now;
                mensagem.numero = "010203";
                mensagem.tipo_ws = "WebService";

                /*
                 * Adicionando objeto mensagem
                 */
                ws_billing.mensagem = mensagem;


                /*
                 * Criação do Objeto sacador
                 */
                WSBilling.F2bCobrancaSacador sacador = new WSBilling.F2bCobrancaSacador();

                ssacador.conta = "9023010038769487";
                sacador.senha = "123456";
                sacador.Value = "TESTE";

                /*
                 * Adicionando objeto sacador
                 */
                ws_billing.sacador = sacador;


                /*
                 * Criação do Objeto cobranca
                 */
                WSBilling.F2bCobrancaCobranca cobranca = new WSBilling.F2bCobrancaCobranca();

                cobranca.valor = 34.99M;
                cobranca.tipo_cobranca = "";
                cobranca.num_document = "";
                cobranca.cod_banco = "";

                cobranca.demonstrativo = new string[10];
                cobranca.demonstrativo[0] = "Cobrança F2b";
                cobranca.demonstrativo[1] = "Pague em qualquer banco";
                /*
                cobranca.demonstrativo[2] = "teste";
                cobranca.demonstrativo[3] = "teste";
                cobranca.demonstrativo[4] = "teste";
                cobranca.demonstrativo[5] = "teste";
                cobranca.demonstrativo[6] = "teste";
                cobranca.demonstrativo[7] = "teste";
                cobranca.demonstrativo[8] = "teste";
                cobranca.demonstrativo[9] = "teste";
                */
                cobranca.sacador_avalista = "TESTE";

                /*
                 Configuração de desconto
                 */
                cobranca.desconto = new WSBilling.F2bCobrancaCobrancaDesconto();
                cobranca.desconto.tipo_desconto = "0";
                cobranca.desconto.valor = 2.00M;
                cobranca.desconto.antecedencia = "5";

                /*
                 Configuração de multa/mora
                 */
                cobranca.multa = new WSBilling.F2bCobrancaCobrancaMulta();
                cobranca.multa.atraso = "20";

                /*
                 Configuração de multa
                 */
                cobranca.multa.tipo_multa = "0";
                cobranca.multa.valor = 1.00M;
                cobranca.multa.valorSpecified = true;

                /*
                 Configuração de mora
                 */
                cobranca.multa.tipo_multa_dia = "0";
                cobranca.multa.valor_dia = 0.05M;
                cobranca.multa.valor_diaSpecified = true;

                /*
                 * Adicionando objeto cobranca
                 */
                ws_billing.cobranca = cobranca;


                /*
                 Criação do objeto agendamento para configuração de vencimentos e dados específicos de agendamento
                 */
                WSBilling.F2bCobrancaAgendamento agendamento = new WSBilling.F2bCobrancaAgendamento();

                /*
                 Define o número de dias para vencimento da cobrança, a partir de data de registro.
                 */
                double dias_vencimento = 10;

                /*
                 Configuração de vencimento
                 */
                agendamento.vencimento = System.DateTime.Today.AddDays(dias_vencimento);

                /*
                 * vencimento no último dia útil do mês 
                 */
                agendamento.ultimo_dia = WSBilling.F2bCobrancaAgendamentoUltimo_dia.n; //n = não; s= sim
                agendamento.ultimo_diaSpecified = true; //insere a opção no xml: true. Use false caso contrário. 

                /*
                 * Antecedência
                 */
                //agendamento.antecedencia = "10";

                /*
                 * Periodicidade e Período
                 */
               // agendamento.periodicidade = "1";
                //agendamento.periodos = "12";

                /*
                 * Contra-Apresentação (sem vencimento)
                 */
               // agendamento.sem_vencimento = WSBilling.F2bCobrancaAgendamentoSem_vencimento.n;
               // agendamento.sem_vencimentoSpecified = true; //true para inserir a opção no xml de envio e false caso contrário


                //agendamento.Value = "Agendamento TESTE.";

                /*
                 * Adicionando objeto agendamento
                 */
                ws_billing.agendamento = agendamento;

                /*
                 * Inicializando array para sacado(s)
                 */
                int num_sacados = 1;
                WSBilling.F2bCobrancaSacado[] sacados = new WSBilling.F2bCobrancaSacado[num_sacados];

                /*
                 * Configurando os dados do sacado
                 */
                WSBilling.F2bCobrancaSacado sacado = new WSBilling.F2bCobrancaSacado();

                sacado.codigo = "0000001";
                sacado.envio = WSBilling.F2bCobrancaSacadoEnvio.e;
                sacado.envioSpecified = true;//true para inserir este atributo no xml de envio. Use false, caso contrário
                sacado.nome = "José Oliveira";
                sacado.email = new string[2];//possível passar até dois emails para cada sacado
                sacado.email[0] = "joseoliveira@f2b.com.br";
                sacado.email[1] = "joseoliveira@f2b.locaweb.com.br";
                sacado.endereco = new WSBilling.F2bCobrancaSacadoEndereco();
                sacado.endereco.logradouro = "Rua das Pedras";
                sacado.endereco.numero = "455";
                sacado.endereco.complemento = "sala 23";
                sacado.endereco.bairro = "Itaim Bibi";
                sacado.endereco.cidade = "São Paulo";
                sacado.endereco.estado = "SP";
                sacado.endereco.cep = "04537000";
                sacado.telefone = new WSBilling.F2bCobrancaSacadoTelefone();
                sacado.telefone.ddd = "11";
                sacado.telefone.numero = "35551234";
                sacado.telefone_com = new WSBilling.F2bCobrancaSacadoTelefone_com();
                sacado.telefone_com.ddd_com = "33";
                sacado.telefone_com.numero_com = "22222222";
                sacado.telefone_cel = new WSBilling.F2bCobrancaSacadoTelefone_cel();
                sacado.telefone_cel.ddd_cel = "22";
                sacado.telefone_cel.numero_cel = "33333333";
                sacado.cpf = "12345678909";

                /*
                 * Atualiza os dados do sacado que registrar mais de uma cobrança, 
                 * não criando um novo registro do mesmo sacado.
                 */
                sacado.atualizar = WSBilling.F2bCobrancaSacadoAtualizar.s;
                sacado.atualizarSpecified = true;


                /*
                 * Adicionando primeiro sacado no array de sacados
                 */
                sacados.SetValue(sacado, 0);


                /*
                 * Em caso de mais sacados, redimensiona array.
                    int novo_num_sacados = 3;
                    Array.Resize(ref sacados, novo_num_sacados);
                */

                /*
                * Configurando os dados de outro sacado
                sacado = new F2bCobrancaSacado();
                sacado.nome = "Maria CS Oliveira";
                sacado.envio = F2bCobrancaSacadoEnvio.n;
                sacado.envioSpecified = true;//true para inserir este atributo no xml de envio. Use false, caso contrário
                sacado.email = new string[2];//possível passar até dois emails para cada sacado
                sacado.email[0] = "mariacs@f2b.com.br";
                */

                /*
                 * Adicionando segundo sacado no array de sacados
                 
                sacados.SetValue(sacado, 1);
                */


                /*
                * Configurando os dados de outro sacado
                */

                /*
                sacado = new F2bCobrancaSacado();
                sacado.nome = "Pedro Oliveira";
                sacado.email = new string[2];//possível passar até dois emails para cada sacado
                sacado.email[0] = "pedrooliveira@f2b.com.br";
                sacado.envio = F2bCobrancaSacadoEnvio.e;
                sacado.envioSpecified = true;//true para inserir este atributo no xml de envio. Use false, caso contrário
                */

                /*
                 * Adicionando segundo sacado no array de sacados
                 */
                //sacados.SetValue(sacado, 2);


                /*
                 * Encapsula o array de sacados no objeto que irá gerar a cobrança.
                 */
                ws_billing.sacado = sacados;


                /*
                 * Criação do Objeto wsbptc
                 */
                WSBilling.WSBillingPortTypeClient wsbptc = new WSBilling.WSBillingPortTypeClient();

                /*
                 * Efetua o envio e resgata o retorno
                 */
                WSBilling.F2bCobrancaRetorno ws_retorno = wsbptc.RegisterWSBilling(ws_billing);


                /*
                 * Tratamento do retorno
                 */

                Console.WriteLine("----::::Cobranças F2b::::----");
                Console.WriteLine("");

                if (ws_retorno != null)
                {
                    /*
                     * Retorno: log
                     */
                    if (ws_retorno.log != null && ws_retorno.log.IndexOf("OK") < 0)
                    {
                        Console.WriteLine(ws_retorno.log);
                    }
                    Console.WriteLine("");

                    /*
                     * Retorno: agendamento
                     */
                    if (ws_retorno.agendamento != null)
                    {
                        WSBilling.F2bCobrancaRetornoAgendamento retorno_agendamento = ws_retorno.agendamento;
                        if (retorno_agendamento != null)
                        {
                            Console.WriteLine("--------------------------------------------");
                            Console.WriteLine("Agendamento:" + retorno_agendamento.Value);
                            Console.WriteLine("numero:" + retorno_agendamento.numero);
                            Console.WriteLine("");

                        }
                    }

                    /*
                     * Retorno: sacado(s)
                     */
                    if (ws_retorno.sacado != null)
                    {
                        int total_retorno_sacado = ws_retorno.sacado.Length;

                        for (int i = 0; i < total_retorno_sacado; i++)
                        {
                            WSBilling.F2bCobrancaRetornoSacado retorno_sacado = ws_retorno.sacado.ElementAtOrDefault(i);
                            if (retorno_sacado != null)
                            {
                                Console.WriteLine("--------------------------------------------");
                                Console.WriteLine("----::::Sacado::::----");
                                Console.WriteLine("nome:" + retorno_sacado.nome);
                                /*
                                 * Listando os emails do sacado (em caso de dois emails cadastrados)
                                 */
                                for (int y = 0; y < retorno_sacado.email.Length; y++)
                                {
                                    Console.WriteLine("email:" + retorno_sacado.email.ElementAtOrDefault(y));
                                }
                                Console.WriteLine("numero:" + retorno_sacado.numero);

                            }

                        }
                        Console.WriteLine("");
                    }


                    /*
                     * Retorno: cobrança(s)
                     */
                    if (ws_retorno.cobranca != null)
                    {
                        int total_retorno_cobranca = ws_retorno.cobranca.Length;

                        for (int i = 0; i < total_retorno_cobranca; i++)
                        {
                            WSBilling.F2bCobrancaRetornoCobranca retorno_cobranca = ws_retorno.cobranca.ElementAtOrDefault(i);
                            if (retorno_cobranca != null)
                            {
                                Console.WriteLine("--------------------------------------------");
                                Console.WriteLine("----::::Cobrança::::----");
                                Console.WriteLine("nome:" + retorno_cobranca.nome);
                                for (int y = 0; y < retorno_cobranca.email.Length; y++)
                                {
                                    Console.WriteLine("email:" + retorno_cobranca.email.ElementAtOrDefault(y));
                                }
                                Console.WriteLine("URL:" + retorno_cobranca.url);

                            }

                        }
                        Console.WriteLine("--------------------------------------------");
                        Console.WriteLine("");

                    }
                }

            }
        }


    Para quem quiser um exemplo em VB.NET, faça os mesmos passos iniciais e na hora de construir o código acima, copie este abaixo na classe Module1.vb:

    (Projeto Console WSBillingVB com Serviço de Referência chamado WSBilling)
    Module Module1

        Sub Main()

            'Criação do Objeto mensagem
            Dim mensagem As New WSBillingVB.F2bCobrancaMensagem
            mensagem.data = System.DateTime.Now
            mensagem.numero = "010203"
            mensagem.tipo_ws = "WebService"

            'Criação do Objeto ws_billing
            Dim ws_billing As New WSBillingVB.F2bCobranca


            'Adicionando objeto mensagem ao objeto cobranca
            ws_billing.mensagem = mensagem

            'Criação do Objeto cliente
            Dim sacador As New WSBillingVB.F2bCobrancaSacador
            sacador.conta = "902301007484783948"
            sacador.senha = "123456"
            sacador.Value = "TESTE"

            'Adicionando objeto sacador ao objeto cobranca
            ws_billing.sacador = sacador

            'Criação do Objeto cobranca
            Dim cobranca As New WSBillingVB.F2bCobrancaCobranca
            cobranca.valor = 69.55
            cobranca.tipo_cobranca = ""
            cobranca.num_document = ""
            cobranca.cod_banco = ""

            Dim demonstrativos(10) As String
            demonstrativos(0) = "Cobranca F2b VB.NET"
            demonstrativos(1) = "Pague em qualquer banco"
            'demonstrativo(2) = "Demonstrativo"
            'demonstrativo(3) = "Demonstrativo"
            'demonstrativo(4) = "Demonstrativo"
            'demonstrativo(5) = "Demonstrativo"
            'demonstrativo(6) = "Demonstrativo"
            'demonstrativo(7) = "Demonstrativo"
            'demonstrativo(8) = "Demonstrativo"
            'demonstrativo(9) = "Demonstrativo"

            'Adicionando array de demonstrativos ao objeto cobrança
            cobranca.demonstrativo = demonstrativos

            cobranca.sacador_avalista = "TESTE"

            'Configuração de desconto
            Dim desconto As New WSBillingVB.F2bCobrancaCobrancaDesconto
            desconto.tipo_desconto = "0"
            desconto.valor = 2.0
            desconto.antecedencia = "5"

            'Adicionando objeto desconto
            cobranca.desconto = desconto

            'Configuração de multa/mora
            Dim multa As New WSBillingVB.F2bCobrancaCobrancaMulta
            multa.atraso = "20"

            'Configuração de multa
            multa.tipo_multa = "0"
            multa.valor = 1.0
            multa.valorSpecified = True

            'Configuração de mora
            multa.tipo_multa_dia = "0"
            multa.valor_dia = 0.05
            multa.valor_diaSpecified = True

            'Adicionando objeto multa
            cobranca.multa = multa

            'Adicionando objeto cobranca
            ws_billing.cobranca = cobranca

            ' Criação do objeto agendamento para configuração de vencimentos e dados específicos de agendamento
            Dim agendamento As New WSBillingVB.F2bCobrancaAgendamento

            'Define o número de dias para vencimento da cobrança, a partir de data de registro.
            Dim dias_vencimento As Double
            dias_vencimento = 5

            'Configuração de vencimento
            agendamento.vencimento = System.DateTime.Today.AddDays(dias_vencimento)

            'vencimento no último dia útil do mês 
            agendamento.ultimo_dia = WSBillingVB.F2bCobrancaAgendamentoUltimo_dia.n 'n = não; s= sim
            agendamento.ultimo_diaSpecified = True 'insere a opção no xml: true. Use false caso contrário. 

            'Antecedência
            'agendamento.antecedencia = "10"

            'Periodicidade e Período
            'agendamento.periodicidade = "1"
            'agendamento.periodos = "12"

            'Contra-Apresentação (sem vencimento)
            'agendamento.sem_vencimento = WSBilling.F2bCobrancaAgendamentoSem_vencimento.n
            'agendamento.sem_vencimentoSpecified = True 'true para inserir a opção no xml de envio e false caso contrário

            agendamento.Value = "Agendamento TESTE."

            'Adicionando objeto agendamento
            ws_billing.agendamento = agendamento

            'Inicializando objeto sacado
            Dim sacado As New WSBillingVB.F2bCobrancaSacado

            sacado.codigo = "0000001"
            sacado.envio = WSBillingVB.F2bCobrancaSacadoEnvio.e
            sacado.envioSpecified = True  'true para inserir este atributo no xml de envio. Use false, caso contrário
            sacado.nome = "José Oliveira"
            Dim emails(2) As String
            emails(0) = "joseoliveira@f2b.com.br"
            emails(1) = "joseoliveira@f2b.locaweb.com.br"
            sacado.email = emails

            Dim endereco As New WSBillingVB.F2bCobrancaSacadoEndereco
            endereco.logradouro = "Rua das Pedras"
            endereco.numero = "455"
            endereco.complemento = "sala 23"
            endereco.bairro = "Itaim Bibi"
            endereco.cidade = "São Paulo"
            endereco.estado = "SP"
            endereco.cep = "04537000"

            'Adicionando objeto endereco ao objeto sacado
            sacado.endereco = endereco

            Dim telefone As New WSBillingVB.F2bCobrancaSacadoTelefone
            telefone.ddd = "11"
            telefone.numero = "35551234"

            'Adicionando objeto telefone ao objeto sacado
            sacado.telefone = telefone

            Dim telefone_com As New WSBillingVB.F2bCobrancaSacadoTelefone_com
            telefone_com.ddd_com = "33"
            telefone_com.numero_com = "22222222"

            'Adicionando objeto telefone_com ao objeto sacado
            sacado.telefone_com = telefone_com

            Dim telefone_cel As New WSBillingVB.F2bCobrancaSacadoTelefone_cel
            telefone_cel.ddd_cel = "22"
            telefone_cel.numero_cel = "33333333"

            'Adicionando objeto telefone_cel ao objeto sacado
            sacado.telefone_cel = telefone_cel

            sacado.cpf = "12345678909"

            ' Atualiza os dados do sacado que registrar mais de uma cobrança,  não criando um novo registro do mesmo sacado.
            sacado.atualizar = WSBillingVB.F2bCobrancaSacadoAtualizar.s
            sacado.atualizarSpecified = True

            'Criando Array de sacados
            Dim sacados(1) As WSBillingVB.F2bCobrancaSacado

            'Adicionando Objeto sacado ao array
            sacados(0) = sacado


            'Em caso de mais sacados, redimensiona array.
            'Dim novo_num_sacados As Integer = 2 'em caso de um total de 2 sacados
            'Array.Resize(sacados, novo_num_sacados)

            'Inicializando objeto sacado
            'sacado = New WSBillingVB.F2bCobrancaSacado
            'sacado.nome = "Maria CS Oliveira"
            'sacado.envio = WSBillingVB.F2bCobrancaSacadoEnvio.n
            'sacado.envioSpecified = True '//true para inserir este atributo no xml de envio. Use false, caso contrário

            'Dim emails1(2) As String
            'emails1(0) = "mariacs@f2b.com.br"
            'emails(1) = ""
            'sacado.email = emails1

            'Adicionando segundo sacado no array de sacados
            'sacados(1) = sacado

            'Inicializando objeto sacado
            'sacado = New WSBilling.F2bCobrancaSacado
            'sacado.nome = "Maria CS Oliveira"
            'sacado.envio = WSBilling.F2bCobrancaSacadoEnvio.n
            'sacado.envioSpecified = True '//true para inserir este atributo no xml de envio. Use false, caso contrário
            'Dim emails2(2) As String
            'emails2(0) = "pedrooliveira@f2b.com.br"
            'sacado.email = emails2
            'sacado.envio = WSBilling.F2bCobrancaSacadoEnvio.e
            'sacado.envioSpecified = true;

            'Adicionando terceiro sacado no array de sacados
            'sacados(2) = sacado

            ' Adiciona o array de sacados no objeto que irá gerar a cobrança.
            ws_billing.sacado = sacados

            'Criação do Objeto wsbaptc
            Dim wsbptc As New WSBillingVB.WSBillingPortTypeClient

            'Efetua o envio e resgata o retorno
            Dim ws_retorno As WSBillingVB.F2bCobrancaRetorno
            ws_retorno = wsbptc.RegisterWSBilling(ws_billing)
            If IsNothing(ws_retorno) Then
                System.Console.Write("ws_retorno NULO")
            Else
                System.Console.Write("----::::Cobranças F2b::::----" & vbCrLf & vbCrLf)
                'Verificando se algum erro específico retornou
                If ws_retorno.log.IndexOf("OK") < 0 Then
                    System.Console.Write("LOG: " & ws_retorno.log)
                    System.Console.Write(vbCrLf)
                Else


                    'Tratamento do retorno - Agendamento
                    If Not IsNothing(ws_retorno.agendamento) Then
                        System.Console.Write("------------------------------------------------")
                        System.Console.Write(vbCrLf)
                        System.Console.Write("Agendamento:")
                        System.Console.Write(vbCrLf)
                        System.Console.Write("numero: " & ws_retorno.agendamento.numero)
                        System.Console.Write(vbCrLf)
                        System.Console.Write(vbCrLf)
                    End If

                    'Tratamento do retorno - Sacados
                    If Not IsNothing(ws_retorno.sacado) Then
                        Dim total_retorno_sacado As Integer = ws_retorno.sacado.Length
                        For i As Integer = 0 To (total_retorno_sacado - 1)
                            System.Console.Write("------------------------------------------------")
                            System.Console.Write(vbCrLf)
                            System.Console.Write("Sacado:")
                            System.Console.Write(vbCrLf)
                            System.Console.Write("nome:" & ws_retorno.sacado.ElementAtOrDefault(i).nome)
                            System.Console.Write(vbCrLf)
                            'Listando os emails do sacado (em caso de dois emails cadastrados)
                            For y As Integer = 0 To (ws_retorno.sacado.ElementAtOrDefault(i).email.Length - 1)
                                System.Console.Write("email:" & ws_retorno.sacado.ElementAtOrDefault(i).email.ElementAtOrDefault(y))
                                System.Console.Write(vbCrLf)
                            Next
                            System.Console.Write("numero:" & ws_retorno.sacado.ElementAtOrDefault(i).numero)
                            System.Console.Write(vbCrLf)
                        Next
                    End If


                    'Tratamento do retorno - Cobrança
                    If Not IsNothing(ws_retorno.cobranca) Then
                        Dim total_retorno_cobranca As Integer = ws_retorno.cobranca.Length
                        For i As Integer = 0 To (total_retorno_cobranca - 1)
                            System.Console.Write("------------------------------------------------")
                            System.Console.Write(vbCrLf)
                            System.Console.Write("Cobrança:")
                            System.Console.Write(vbCrLf)
                            System.Console.Write("nome:" & ws_retorno.cobranca.ElementAtOrDefault(i).nome)
                            System.Console.Write(vbCrLf)
                            'Listando os emails do sacado na cobranca (em caso de dois emails cadastrados)
                            For y As Integer = 0 To (ws_retorno.cobranca.ElementAtOrDefault(i).email.Length - 1)
                                System.Console.Write("email:" & ws_retorno.cobranca.ElementAtOrDefault(i).email.ElementAtOrDefault(y))
                                System.Console.Write(vbCrLf)
                            Next
                            System.Console.Write("URL:" & ws_retorno.cobranca.ElementAtOrDefault(i).url)
                            System.Console.Write(vbCrLf)
                        Next
                        System.Console.Write("------------------------------------------------")
                        System.Console.Write(vbCrLf)
                    End If

                End If
            End If
        End Sub

    End Module




    Ai é só colocar o número da sua conta e sua senha de acesso a F2b (ou sua senha de Webservices, caso tenha cadastrado)

    Para os outros Webservices é praticamente o mesmo procedimento, ai na classe principal, instanciar as variáveis de acordo com a necessidade.

    Ah, Estou usando .NET 3.5 . Ainda não testei com as versões anteriores.

    Até mais!



    • Sugerido como Resposta felipe_azv quinta-feira, 12 de novembro de 2009 15:10
    quinta-feira, 12 de novembro de 2009 15:09
  • Acusa falta do recurso: WSBillingPortTypeClient

    Alguém já conseguiu usar o serviço do F2B?

    Valeu!

    quinta-feira, 14 de junho de 2012 18:32