public override bool execute( )
        {
            if (base.execute() == false)
            {
                return(false);
            }

            Registry("execute exec_pf_consultaAutorizacao ");

            /// USER [ execute ]

            // ## Busca telefone de lojista

            pf_lojista = new T_PayFone(this);

            if (!pf_lojista.select_rows_telefone(input_st_tel_lojista))
            {
                output_st_codResp = "98";
                output_st_msg     = "Telefone invalido";
                return(false);
            }

            if (!pf_lojista.fetch())
            {
                output_st_codResp = "80";
                output_st_msg     = "Erro de aplicativo";
                return(false);
            }

            // ## busca pendência pelo cartão e terminal

            T_PendPayFone pendPayFone = new T_PendPayFone(this);

            if (pendPayFone.select_rows_cart_term(cart.get_identity(),
                                                  pf_lojista.get_fk_terminal()))
            {
                // ## Pega do mais novo ao mais antigo

                pendPayFone.SetReversedFetch();

                // ## Somente primeiros três registros

                while (pendPayFone.fetch() && output_array_generic_lst.Count < 3)
                {
                    PF_DadosConsultaAutorizacao tmp = new PF_DadosConsultaAutorizacao();

                    tmp.set_vr_valor(pendPayFone.get_vr_valor());
                    tmp.set_st_nsu(pendPayFone.get_nu_nsu());
                    tmp.set_tg_sit(pendPayFone.get_en_situacao());

                    DateTime dt_data = Convert.ToDateTime(pendPayFone.get_dt_inclusao());

                    tmp.set_dt_ocorr(new StringBuilder().Append(dt_data.Day.ToString().PadLeft(2, '0'))
                                     .Append(@"/")
                                     .Append(dt_data.Month.ToString().PadLeft(2, '0'))
                                     .Append(@"/")
                                     .Append(dt_data.Year.ToString()).ToString());

                    output_array_generic_lst.Add(tmp);
                }
            }

            while (output_array_generic_lst.Count < 3)
            {
                output_array_generic_lst.Add(new PF_DadosConsultaAutorizacao());
            }

            /// USER [ execute ] END

            Registry("execute done exec_pf_consultaAutorizacao ");

            return(true);
        }