Genexus

Jul 18, 2014 at 8:27 PM
Boa tarde, estou tendo algumas dificuldades com a implantação do boletonet com Genexus, vem apresentando alguns erros, será que alguém teria exemplos de boletos e arquivos cnabs para me ajudar, segue programa em genexus e erro. Muito obrigado.

Programa em Genexus:

Event Enter
// using BoletoNet; //referência ao componente Boleto.Net protected void Button1_Click(object sender, EventArgs e)
// {

// string vencimento = txtVencimento.Text;
&BOLETO.DataVencimento = &Today
// String valorBoleto = txtValor.Text;
&BOLETO.ValorBoleto = 123.45
// String numeroDocumento = "B20005446";

// cedente
&BOLETO.NumeroDocumento = 'B20005446'
// String cedente_codigo = "1111111";
&CEDENTE.Codigo = '1111111'
// String cedente_nossoNumeroBoleto = "22222222";
&BOLETO.NossoNumero = '22222222'
// String cedente_cpfCnpj = "123.456.789-01";
&CEDENTE.CPFCNPJ = '03.506.471/0001-64'
// String cedente_nome = "PAULO FREIRE - FOUR FREIRES INF.";
&CEDENTE.Nome = 'OLIMTEC INFORMATICA LTDA-ME'
// String cedente_agencia = "1000";
&CEDENTE.ContaBancaria.Agencia = '0507'
// String cedente_conta = "22507";
&CEDENTE.ContaBancaria.Conta = '00226'
// String cedente_digitoConta = "6";
&CEDENTE.ContaBancaria.DigitoConta = '9'
// Cedente cedente = new Cedente(cedente_cpfCnpj, cedente_nome, cedente_agencia, cedente_conta, cedente_digitoConta);
// cedente.Codigo = Convert.ToInt32(cedente_codigo);
&BOLETO.Cedente = &CEDENTE
// sacado

// String sacado_cpfCnpj = "000.000.000-00";
&SACADO.CPFCNPJ = '118.254.498-30'
// String sacado_nome = txtSacado.Text;
&SACADO.Nome = 'Fabiano Garcia Trinca'
// Sacado sacado = new Sacado(sacado_cpfCnpj, sacado_nome);
// String sacado_endereco = txtEndereco.Text;
&SACADO.Endereco.Logradouro = 'Rua Sao Joao'
&SACADO.Endereco.Numero = '657'
&SACADO.Endereco.Complemento = 'SL 311'
// String sacado_bairro = txtBairro.Text;
&SACADO.Endereco.Bairro = 'Centro'
// String sacado_cidade = txtCidade.Text;
&SACADO.Endereco.Cidade = 'Olimpia'
// String sacado_uf = txtUF.Text;
&SACADO.Endereco.UF = 'SP'
// String sacado_cep = txtCEP.Text;
&SACADO.Endereco.CEP = '15400000'

&BOLETO.Sacado = &SACADO

&BOLETO.Carteira = '109'
// Boleto boleto = new Boleto(Convert.ToDateTime(vencimento), Convert.ToDouble(valorBoleto), "109", cedente_nossoNumeroBoleto, cedente);
// Instrucao_Itau instrucao = new Instrucao_Itau();
// instrucao.Descricao = "Não Receber após o vencimento";

// &INSTRUCAO.Descricao = 'Nao Receber apos o vencimento'

// boleto.Instrucoes.Add(instrucao);

// &BOLETO.Instrucoes.Add(&INSTRUCAO)

// EspecieDocumento_Itau especie = new EspecieDocumento_Itau(99);
// boleto.EspecieDocumento = especie;

/// &BOLETO.Especie = 'DM'

// BoletoBancario boleto_bancario = new BoletoBancario();
// boleto_bancario.CodigoBanco = 341;
&BOLETOBANCARIO.CodigoBanco = 341
// boleto_bancario.Boleto = boleto;
&BOLETOBANCARIO.Boleto = &BOLETO
// boleto_bancario.MostrarCodigoCarteira = true;
&BOLETOBANCARIO.MostrarCodigoCarteira = true
// boleto_bancario.Boleto.Valida();
&BOLETOBANCARIO.Boleto.Valida()
// boleto_bancario.MostrarComprovanteEntrega = true;
&BOLETOBANCARIO.MostrarComprovanteEntrega = true

&BOLETOBANCARIO.MontaHtml()
// pnl_dados.Visible = false;
// pnl_boleto.Controls.Add(boleto_bancario);
// }
Endevent

Segue erro na execução:

Referência de objeto não definida para uma instância de um objeto.

Descrição: Ocorreu uma exceção não tratada durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código.

Detalhes da Exceção: System.NullReferenceException: Referência de objeto não definida para uma instância de um objeto.

Erro de Origem:

Exceção não tratada foi gerada durante a execução da atual solicitação da Web. As informações relacionadas à origem e ao local da exceção podem ser identificadas usando-se o rastreamento de pilha de exceção abaixo.

Rastreamento de Pilha:


[NullReferenceException: Referência de objeto não definida para uma instância de um objeto.]
BoletoNet.Banco_Itau.ValidaBoleto(Boleto boleto) +972

[Exception: Erro ao validar boletos.]
BoletoNet.Banco_Itau.ValidaBoleto(Boleto boleto) +2028
BoletoNet.Banco.ValidaBoleto(Boleto boleto) +13
BoletoNet.Boleto.Valida() +355
GeneXus.Programs.SdtBoleto.valida() +58
GeneXus.Programs.wpboletos.E112G2() +1243
GeneXus.Programs.wpboletos.EVT2G2() +548
GeneXus.Programs.wpboletos.DispatchEvents() +5
GeneXus.Programs.appmasterpage.EVT012() +1162
GeneXus.Programs.appmasterpage.webExecute() +131
GeneXus.Programs.wpboletos.webExecute() +254
GeneXus.Http.GXHttpHandler.ProcessRequest(HttpContext httpContext) +283

[Exception: GXApplication exception]
GeneXus.Http.GXHttpHandler.ProcessRequest(HttpContext httpContext) +424
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

Informações sobre a Versão: Microsoft .NET Framework Versão:2.0.50727.5477; Versão do ASP.NET:2.0.50727.5483

Fonte gerado por Genexus:

/*
           File: WPBOLETOS
    Description: WPBOLETOS
         Author: GeneXus C# Generator version 10_2_5-80183
   Generated on: 7/18/2014 9:47:1.23
   Program type: Callable routine
      Main DBMS: sqlserver
*/
using System;
using System.Collections;
using GeneXus.Utils;
using GeneXus.Resources;
using GeneXus.Application;
using GeneXus.Metadata;
using System.Data;
using System.Data.SqlClient;
using GeneXus.Data;
using com.genexus;
using GeneXus.Data.ADO;
using GeneXus.Data.NTier;
using GeneXus.Data.NTier.ADO;
using System.Runtime.Remoting;
using GeneXus.WebControls;
using GeneXus.Http;
using GeneXus.XML;
using GeneXus.Search;
using GeneXus.Encryption;
using GeneXus.Http.Client;
using System.Xml.Serialization;
using System.Data.SqlTypes;
using System.ServiceModel;
using System.Runtime.Serialization;
namespace GeneXus.Programs {
public class wpboletos : GXDataArea, System.Web.SessionState.IRequiresSessionState
{
  public wpboletos( )
  {
     context = new GxContext(  );
     DataStoreUtil.LoadDataStores( context);
     dsDefault = context.GetDataStore("Default");
     IsMain = true;
     context.SetDefaultTheme("GeneXusXEv2");
  }

  public wpboletos( IGxContext context )
  {
     this.context = context;
     IsMain = false;
     dsDefault = context.GetDataStore("Default");
  }

  public void release( )
  {
  }

  public void execute( )
  {
     executePrivate();
  }

  void executePrivate( )
  {
     isStatic = false;
     webExecute();
  }

  protected override void createObjects( )
  {
     cmbavBancoscodigo = new GXCombobox();
  }

  protected void INITWEB( )
  {
     context.SetDefaultTheme("GeneXusXEv2");
     initialize_properties( ) ;
     if ( nGotPars == 0 )
     {
        entryPointCalled = false;
        gxfirstwebparm = GetNextPar( );
        gxfirstwebparm_bkp = gxfirstwebparm;
        gxfirstwebparm = DecryptAjaxCall( gxfirstwebparm);
        if ( StringUtil.StrCmp(gxfirstwebparm, "dyncall") == 0 )
        {
           setAjaxCallMode();
           if ( ! IsValidAjaxCall( true) )
           {
              GxWebError = 1;
              return  ;
           }
           dyncall( GetNextPar( )) ;
           return  ;
        }
        else if ( StringUtil.StrCmp(gxfirstwebparm, "gxajaxEvt") == 0 )
        {
           setAjaxEventMode();
           if ( ! IsValidAjaxCall( true) )
           {
              GxWebError = 1;
              return  ;
           }
           gxfirstwebparm = GetNextPar( );
        }
        else
        {
           if ( ! IsValidAjaxCall( false) )
           {
              GxWebError = 1;
              return  ;
           }
           gxfirstwebparm = gxfirstwebparm_bkp;
        }
     }
  }

  public override void webExecute( )
  {
     if ( initialized == 0 )
     {
        createObjects();
        initialize();
     }
     INITWEB( ) ;
     if ( ! isAjaxCallMode( ) )
     {
        MasterPageObj = (GXMasterPage) ClassLoader.GetInstance("appmasterpage", "GeneXus.Programs.appmasterpage", new Object[] {new GxContext( context.handle, context.DataStores, context.HttpContext)});
        MasterPageObj.setDataArea(this,false);
        MasterPageObj.webExecute();
        if ( ( GxWebError == 0 ) && context.isAjaxRequest( ) )
        {
           enableOutput();
           if ( ! context.isAjaxRequest( ) )
           {
              context.GX_webresponse.AppendHeader("Cache-Control", "max-age=0");
           }
           if ( String.IsNullOrEmpty(StringUtil.RTrim( context.wjLoc)) )
           {
              context.GX_webresponse.AddString((String)(context.getJSONResponse( )));
           }
           else
           {
              if ( context.isAjaxRequest( ) )
              {
                 disableOutput();
              }
              RenderHtmlHeaders( ) ;
              context.Redirect( context.wjLoc );
              context.DispatchAjaxCommands();
           }
        }
     }
     this.cleanup();
  }

  public override short ExecuteStartEvent( )
  {
     PA2G2( ) ;
     gxajaxcallmode = (short)((isAjaxCallMode( ) ? 1 : 0));
     if ( ( gxajaxcallmode == 0 ) && ( GxWebError == 0 ) )
     {
        START2G2( ) ;
     }
     return gxajaxcallmode ;
  }

  public override vo
Jul 18, 2014 at 8:36 PM
public override short ExecuteStartEvent( )
  {
     PA2G2( ) ;
     gxajaxcallmode = (short)((isAjaxCallMode( ) ? 1 : 0));
     if ( ( gxajaxcallmode == 0 ) && ( GxWebError == 0 ) )
     {
        START2G2( ) ;
     }
     return gxajaxcallmode ;
  }

  public override void RenderHtmlHeaders( )
  {
     GxWebStd.gx_html_headers( context, 0, "", "", Form.Meta, Form.Metaequiv);
  }

  public override void RenderHtmlOpenForm( )
  {
     context.WriteHtmlText( "<title>") ;
     context.SendWebValue( Form.Caption) ;
     context.WriteHtmlTextNl( "</title>") ;
     if ( StringUtil.Len( sDynURL) > 0 )
     {
        context.WriteHtmlText( "<BASE href=\""+sDynURL+"\" />") ;
     }
     define_styles( ) ;
     if ( nGXWrapped != 1 )
     {
        MasterPageObj.master_styles();
     }
     if ( ! context.isSmartDevice( ) )
     {
        context.AddJavascriptSource("gxtimezone.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxgral.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxcfg.js", "?2014718947173");
     }
     else
     {
        context.AddJavascriptSource("gxtimezone.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxapiSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxfxSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxhtmlSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxtypesSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxpopupSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxfrmutlSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxgridSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("JavaScripTableSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("rijndaelSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxgralSD.js", "?"+context.GetBuildNumber( 80183));
        context.AddJavascriptSource("gxcfg.js", "?"+context.GetBuildNumber( 80183));
     }
     context.WriteHtmlText( Form.Headerrawhtml) ;
     context.CloseHtmlHeader();
     FormProcess = " onkeyup=\"gx.evt.onkeyup(event)\" onkeypress=\"gx.evt.onkeypress(event,true,true)\" onkeydown=\"gx.evt.onkeypress(null,true,true)\"";
     context.WriteHtmlText( "<body") ;
     context.WriteHtmlText( " "+"class=\"Form\""+" "+" style=\"-moz-opacity:0;opacity:0;"+"background-color:"+context.BuildHTMLColor( Form.Backcolor)+";") ;
     if ( ! ( String.IsNullOrEmpty(StringUtil.RTrim( Form.Background)) ) )
     {
        context.WriteHtmlText( " background-image:url("+context.convertURL( Form.Background)+")") ;
     }
     context.WriteHtmlText( "\""+FormProcess+">") ;
     context.skipLines(1);
     context.WriteHtmlTextNl( "<form id=\"MAINFORM\" onsubmit=\"try{return gx.csv.validForm()}catch(e){return true;}\" name=\"MAINFORM\" method=\"post\" class=\"Form\" novalidate action=\""+formatLink("wpboletos.aspx") +"\">") ;
     GxWebStd.gx_hidden_field( context, "_EventName", "");
     GxWebStd.gx_hidden_field( context, "_EventGridId", "");
     GxWebStd.gx_hidden_field( context, "_EventRowId", "");
  }

  public override void RenderHtmlCloseForm( )
  {
     /* Send hidden variables. */
     /* Send saved values. */
     GxWebStd.gx_hidden_field( context, "GX_FocusControl", GX_FocusControl);
     SendAjaxEncryptionKey();
     SendComponentObjects();
     SendServerCommands();
     SendState();
     context.WriteHtmlTextNl( "</form>") ;
     include_jscripts( ) ;
  }

  public override void RenderHtmlContent( )
  {
     gxajaxcallmode = (short)((isAjaxCallMode( ) ? 1 : 0));
     if ( ( gxajaxcallmode == 0 ) && ( GxWebError == 0 ) )
     {
        WE2G2( ) ;
     }
  }

  public override void DispatchEvents( )
  {
     EVT2G2( ) ;
  }

  public override bool HasEnterEvent( )
  {
     return true ;
  }

  public override String GetPgmname( )
  {
     return "WPBOLETOS" ;
  }

  public override String GetPgmdesc( )
  {
     return "WPBOLETOS" ;
  }

  public override GXWebForm GetForm( )
  {
     return Form ;
  }

  public override String GetSelfLink( )
  {
     return formatLink("wpboletos.aspx")  ;
  }

  protected void WB2G0( )
  {
     if ( context.isAjaxRequest( ) )
     {
        disableOutput();
     }
     if ( ! wbLoad )
     {
        if ( nGXWrapped == 1 )
        {
           RenderHtmlHeaders( ) ;
           RenderHtmlOpenForm( ) ;
        }
        GxWebStd.gx_msg_list( context, "", context.GX_msglist.DisplayMode, "", "", "", "false");
        wb_table1_2_2G2( true) ;
     }
     else
     {
        wb_table1_2_2G2( false) ;
     }
     return  ;
  }

  protected void wb_table1_2_2G2e( bool wbgen )
  {
     if ( wbgen )
     {
     }
     wbLoad = true;
  }

  protected void START2G2( )
  {
     wbLoad = false;
     wbEnd = 0;
     wbStart = 0;
     Form.Meta.addItem("generator", "GeneXus C# 10_2_5-80183", 0) ;
     Form.Meta.addItem("description", "WPBOLETOS", 0) ;
     context.wjLoc = "";
     context.nUserReturn = 0;
     context.wbHandled = 0;
     if ( StringUtil.StrCmp(context.GetRequestMethod( ), "POST") == 0 )
     {
     }
     wbErr = false;
     STRUP2G0( ) ;
  }

  protected void WS2G2( )
  {
     START2G2( ) ;
     EVT2G2( ) ;
  }

  protected void EVT2G2( )
  {
     if ( StringUtil.StrCmp(context.GetRequestMethod( ), "POST") == 0 )
     {
        if ( String.IsNullOrEmpty(StringUtil.RTrim( context.wjLoc)) && ( context.nUserReturn != 1 ) && ! wbErr )
        {
           /* Read Web Panel buttons. */
           sEvt = cgiGet( "_EventName");
           EvtGridId = cgiGet( "_EventGridId");
           EvtRowId = cgiGet( "_EventRowId");
           if ( StringUtil.Len( sEvt) > 0 )
           {
              sEvtType = StringUtil.Left( sEvt, 1);
              sEvt = StringUtil.Right( sEvt, (short)(StringUtil.Len( sEvt)-1));
              if ( StringUtil.StrCmp(sEvtType, "M") != 0 )
              {
                 if ( StringUtil.StrCmp(sEvtType, "E") == 0 )
                 {
                    sEvtType = StringUtil.Right( sEvt, 1);
                    if ( StringUtil.StrCmp(sEvtType, ".") == 0 )
                    {
                       sEvt = StringUtil.Left( sEvt, (short)(StringUtil.Len( sEvt)-1));
                       if ( StringUtil.StrCmp(sEvt, "RFR") == 0 )
                       {
                          context.wbHandled = 1;
                          dynload_actions( ) ;
                       }
                       else if ( StringUtil.StrCmp(sEvt, "ENTER") == 0 )
                       {
                          context.wbHandled = 1;
                          if ( ! wbErr )
                          {
                             Rfr0gs = false;
                             if ( ! Rfr0gs )
                             {
                                /* Execute user event: E112G2 */
                                E112G2 ();
                             }
                             dynload_actions( ) ;
                          }
                       }
                       else if ( StringUtil.StrCmp(sEvt, "LOAD") == 0 )
                       {
                          context.wbHandled = 1;
                          dynload_actions( ) ;
                          /* Execute user event: E122G2 */
                          E122G2 ();
                          /* No code required for Cancel button. It is implemented as the Reset button. */
                       }
                       else if ( StringUtil.StrCmp(sEvt, "LSCR") == 0 )
                       {
                          context.wbHandled = 1;
                          dynload_actions( ) ;
                          dynload_actions( ) ;
                       }
                    }
                    else
                    {
                    }
                 }
                 context.wbHandled = 1;
              }
           }
        }
     }
  }

  protected void WE2G2( )
  {
     if ( ! GxWebStd.gx_redirect( context) )
     {
        Rfr0gs = true;
        Refresh( ) ;
        if ( ! GxWebStd.gx_redirect( context) )
        {
           if ( nGXWrapped == 1 )
           {
              RenderHtmlCloseForm( ) ;
           }
        }
     }
  }

  protected void PA2G2( )
  {
     if ( nDonePA == 0 )
     {
        if ( String.IsNullOrEmpty(StringUtil.RTrim( context.GetCookie( "GX_SESSION_ID"))) )
        {
           gxcookieaux = context.SetCookie( "GX_SESSION_ID", Crypto.Encrypt64( Crypto.GetEncryptionKey( ), Crypto.GetServerKey( )), "", (DateTime)(DateTime.MinValue), "", 0);
        }
        GXKey = Crypto.Decrypt64( context.GetCookie( "GX_SESSION_ID"), Crypto.GetServerKey( ));
        cmbavBancoscodigo.Name = "vBANCOSCODIGO";
        cmbavBancoscodigo.WebTags = "";
        cmbavBancoscodigo.addItem("237", "Bradesco", 0);
        cmbavBancoscodigo.addItem("001", "Brasil"