public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_edu_extrato "); /// USER [ execute ] T_Terminal term = new T_Terminal(this); T_Loja loj = new T_Loja(this); StringBuilder sb = new StringBuilder(); long vr_tot = 0; // ## Busca registros while (l_tr.fetch()) { loj.set_st_nome(""); if (l_tr.get_tg_contabil() == Context.TRUE) { if (l_tr.get_en_operacao() == OperacaoCartao.VENDA_EMPRESARIAL || l_tr.get_en_operacao() == OperacaoCartao.PAY_FONE_GRAVA_PEND) { if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { // ## Contabilizar em total vr_tot += l_tr.get_int_vr_total(); } } else if (l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_DIARIO && l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_FUNDO && l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_IMEDIATO) { // ## desprezar continue; } } else { if (l_tr.get_en_operacao() != OperacaoCartao.PAY_FONE_CANCELA_VENDA && l_tr.get_en_operacao() != OperacaoCartao.VENDA_EMPRESARIAL_CANCELA) { // ## desprezar continue; } } // ## Guardar este registro em memória EduExtrato etc = new EduExtrato(); etc.set_st_nsu(l_tr.get_nu_nsu()); etc.set_dt_trans(l_tr.get_dt_transacao()); if (l_tr.get_en_operacao() == OperacaoCartao.VENDA_EMPRESARIAL || l_tr.get_en_operacao() == OperacaoCartao.PAY_FONE_GRAVA_PEND) { // ## débito etc.set_vr_valor("-" + l_tr.get_vr_total()); } else { // ## depósito etc.set_vr_valor(l_tr.get_vr_total()); } // ## Busca loja if (!loj.selectIdentity(l_tr.get_fk_loja())) { // ## depósito automático de conversão de fundo ao disponivel etc.set_st_loja("ConveyNET"); } else { etc.set_st_loja(loj.get_st_nome()); } etc.set_vr_disp(l_tr.get_vr_saldo_disp()); etc.set_vr_fundo(l_tr.get_vr_saldo_disp_tot()); etc.set_en_oper(l_tr.get_en_operacao()); DataPortable mem_rtc = etc as DataPortable; // ## Gera identificador sb.Append(MemorySave(ref mem_rtc)); sb.Append(","); } string list_ids = sb.ToString().TrimEnd(','); DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // # Guarda todos os registros output_st_csv = MemorySave(ref dp); T_Empresa emp = new T_Empresa(this); // ## Busca empresa if (emp.select_rows_empresa(input_st_emp)) { if (!emp.fetch()) { return(false); } } output_st_empresa = emp.get_st_fantasia(); output_st_total_periodo = vr_tot.ToString(); if (output_st_csv == "") { PublishNote("Nenhum resultado foi encontrado"); } /// USER [ execute ] END Registry("execute done fetch_rel_edu_extrato "); return(true); }
public override bool execute( ) { Registry("execute web_fetch_rel_edu_extrato "); /// USER [ execute ] StringBuilder sb = new StringBuilder(); long vr_tot = 0; T_Terminal term = new T_Terminal(this); T_Loja loj = new T_Loja(this); while (l_tr.fetch()) { loj.set_st_nome(""); if (l_tr.get_tg_contabil() == Context.TRUE) { if (l_tr.get_en_operacao() == OperacaoCartao.VENDA_EMPRESARIAL || l_tr.get_en_operacao() == OperacaoCartao.PAY_FONE_GRAVA_PEND) { if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { vr_tot += l_tr.get_int_vr_total(); } } else if (l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_DIARIO && l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_FUNDO && l_tr.get_en_operacao() != OperacaoCartao.EDU_DEP_IMEDIATO) { continue; } } else { if (l_tr.get_en_operacao() != OperacaoCartao.PAY_FONE_CANCELA_VENDA && l_tr.get_en_operacao() != OperacaoCartao.VENDA_EMPRESARIAL_CANCELA) { continue; } } EduExtrato etc = new EduExtrato(); etc.set_st_nsu(l_tr.get_nu_nsu()); etc.set_dt_trans(l_tr.get_dt_transacao()); if (l_tr.get_en_operacao() == OperacaoCartao.VENDA_EMPRESARIAL || l_tr.get_en_operacao() == OperacaoCartao.PAY_FONE_GRAVA_PEND) { etc.set_vr_valor("-" + l_tr.get_vr_total()); } else { etc.set_vr_valor(l_tr.get_vr_total()); } if (!loj.selectIdentity(l_tr.get_fk_loja())) { etc.set_st_loja("ConveyNET"); } else { etc.set_st_loja(loj.get_st_nome()); } etc.set_vr_disp(l_tr.get_vr_saldo_disp()); etc.set_vr_fundo(l_tr.get_vr_saldo_disp_tot()); etc.set_en_oper(l_tr.get_en_operacao()); DataPortable mem_rtc = etc as DataPortable; string index = MemorySave(ref mem_rtc); sb.Append(index); sb.Append(","); } // indexa todos os pagamentos { string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum registro encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // ## Guarda indexador de grupo output_st_csv = MemorySave(ref dp); } output_st_total_periodo = vr_tot.ToString(); if (output_st_csv == "") { PublishNote("Nenhum resultado foi encontrado"); } /// USER [ execute ] END Registry("execute done web_fetch_rel_edu_extrato "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_1_rtc "); /// USER [ execute ] // ## // ## O seguinte trecho indexa as lojas possíveis // ## de retorno para uma determinada empresa. // ## // ## E, no caso de a empresa original ser administradora // ## de empresas, indexar todas as lojas de todas empresas // ## desta rede. // ## Hashtable hshLojas = new Hashtable(); #region - filtro de lojas da empresa - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_orig = new T_Empresa(this); // ## Busca empresa original if (!emp_orig.select_rows_empresa(user.get_st_empresa())) { return(false); } if (!emp_orig.fetch()) { return(false); } LINK_LojaEmpresa lnk = new LINK_LojaEmpresa(this); // ## busca relacionamento das empresas com lojas if (lnk.select_fk_empresa_geral(emp_orig.get_identity())) { while (lnk.fetch()) { // ## indexa lojas hshLojas [lnk.get_fk_loja()] = "*"; } } // ## busca empresas administradas T_Empresa emp_lnk_admin = new T_Empresa(this); if (emp_lnk_admin.select_fk_admin(emp_orig.get_identity())) { while (emp_lnk_admin.fetch()) { // ## busca lojas de cada empresa administrada LINK_LojaEmpresa lnk_admin = new LINK_LojaEmpresa(this); if (lnk_admin.select_fk_empresa_geral(emp_lnk_admin.get_identity())) { while (lnk_admin.fetch()) { // ## indexa loja hshLojas [lnk_admin.get_fk_loja()] = "*"; } } } } } #endregion StringBuilder sb = new StringBuilder(); long vr_tot = 0; long vr_tot_cancelado = 0; T_Terminal term = new T_Terminal(this); while (l_tr.fetch()) { // ## Filtra lojas não vinculadas à empresa if (hshLojas.Count > 0) { if (hshLojas [l_tr.get_fk_loja()] == null) { continue; } } // ## Busca terminal if (term.selectIdentity(l_tr.get_fk_terminal())) { if (fk_loja.Length > 0) { if (term.get_fk_loja() != fk_loja) { continue; } } if (!loj.selectIdentity(term.get_fk_loja())) { continue; } if (input_st_cidade.Length > 0) { if (!loj.get_st_cidade().Contains(input_st_cidade)) { continue; } } if (input_st_estado.Length > 0) { if (!loj.get_st_estado().Contains(input_st_estado)) { continue; } } if (l_tr.get_tg_contabil() == Context.TRUE) { if (l_tr.get_tg_confirmada() == TipoConfirmacao.Cancelada) { vr_tot_cancelado += l_tr.get_int_vr_total(); } else if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { vr_tot += l_tr.get_int_vr_total(); } } } // ## Copia dados para memória Rel_RTC rtc = new Rel_RTC(); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_term(term.get_nu_terminal()); rtc.set_st_nsu(l_tr.get_nu_nsu()); rtc.set_vr_total(l_tr.get_vr_total()); rtc.set_nu_parc(l_tr.get_nu_parcelas()); rtc.set_dt_trans(l_tr.get_dt_transacao()); rtc.set_tg_status(l_tr.get_tg_confirmada()); rtc.set_st_motivo(l_tr.get_st_msg_transacao()); rtc.set_en_op_cartao(l_tr.get_en_operacao()); DataPortable mem_rtc = rtc as DataPortable; // ## obtem indice sb.Append(MemorySave(ref mem_rtc)); sb.Append(","); if (l_tr.get_int_nu_parcelas() > 1) { T_Parcelas parc = new T_Parcelas(this); if (parc.select_fk_log_trans(l_tr.get_identity())) { while (parc.fetch()) { Rel_RTC rtc2 = new Rel_RTC(); rtc2.set_vr_total(parc.get_vr_valor()); rtc2.set_nu_parc(parc.get_nu_indice()); rtc2.set_dt_trans(l_tr.get_dt_transacao()); rtc2.set_tg_status(l_tr.get_tg_confirmada()); rtc2.set_st_motivo(l_tr.get_st_msg_transacao()); rtc2.set_en_op_cartao(l_tr.get_en_operacao()); DataPortable mem_rtc_parc = rtc2 as DataPortable; // ## obtem indice sb.Append(MemorySave(ref mem_rtc_parc)); sb.Append(","); } } } } string list_ids = sb.ToString().TrimEnd(','); DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // ## obtem indice geral output_st_csv = MemorySave(ref dp); // ## obtem dados adicionais T_Cartao cart = new T_Cartao(this); if (!cart.selectIdentity(st_cart_id)) { return(false); } T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(cart.get_st_empresa())) { return(false); } if (!emp.fetch()) { return(false); } string nome = ""; if (cart.get_st_titularidade() != "01") { T_Dependente dep = new T_Dependente(this); dep.select_rows_prop_tit(cart.get_fk_dadosProprietario(), cart.get_st_titularidade()); dep.fetch(); nome = dep.get_st_nome() + " (Dependente)"; } else { T_Proprietario prot = new T_Proprietario(this); prot.selectIdentity(cart.get_fk_dadosProprietario()); nome = prot.get_st_nome() + " - CPF " + prot.get_st_cpf(); } output_st_empresa = emp.get_st_fantasia(); output_st_cartao = cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade() + ":" + cart.get_nu_viaCartao() + " - " + nome; output_st_total_periodo = vr_tot.ToString(); output_st_total_cancelado = vr_tot_cancelado.ToString(); // ##### ------------------------------------------------------ // ##### Relatório extra sobre todas as parcelas do cartão // ##### ------------------------------------------------------ { T_Cartao cart_parc = new T_Cartao(this); T_Cartao cart_parc_dep = new T_Cartao(this); ArrayList lstDeps = new ArrayList(); if (cart_parc.selectIdentity(st_cart_id)) { if (cart_parc.get_tg_tipoCartao() == TipoCartao.presente) { return(true); } if (cart_parc_dep.select_rows_empresa_matricula(cart_parc.get_st_empresa(), cart_parc.get_st_matricula())) { while (cart_parc_dep.fetch()) { lstDeps.Add(cart_parc_dep.get_identity()); } } } StringBuilder sb_parcs = new StringBuilder(); T_Parcelas parc = new T_Parcelas(this); for (int u = 1; u <= 12; ++u) { string cur_pac = "Comprometimento mensal (" + u.ToString() + ")"; if (u == 1) { cur_pac += " - vigente"; } bool HasContent = false; long tot_parc_ind = 0; if (parc.select_rows_relat_parc(u.ToString(), ref lstDeps)) { while (parc.fetch()) { if (!term.selectIdentity(parc.get_fk_terminal())) { continue; } if (!loj.selectIdentity(term.get_fk_loja())) { continue; } if (l_tr.selectIdentity(parc.get_fk_log_transacoes())) { if (l_tr.get_tg_confirmada() != TipoConfirmacao.Confirmada) { continue; } } tot_parc_ind += parc.get_int_vr_valor(); HasContent = true; Rel_RTC rtc = new Rel_RTC(); rtc.set_st_loja(loj.get_st_nome()); rtc.set_st_term(term.get_nu_terminal()); rtc.set_st_nsu(l_tr.get_nu_nsu()); rtc.set_vr_total(parc.get_vr_valor()); rtc.set_nu_parc(u.ToString()); rtc.set_dt_trans(l_tr.get_dt_transacao()); rtc.set_tg_status(l_tr.get_tg_confirmada()); rtc.set_st_motivo(l_tr.get_st_msg_transacao()); rtc.set_en_op_cartao(l_tr.get_en_operacao()); rtc.set_st_indice_parcela(parc.get_nu_indice()); DataPortable mem_rtc = rtc as DataPortable; // ## obtem indice sb_parcs.Append(MemorySave(ref mem_rtc)); sb_parcs.Append(","); } } if (!HasContent) { break; } output_st_parcs += cur_pac + ","; output_st_parcs_total += tot_parc_ind.ToString() + "," + (cart_parc.get_int_vr_limiteMensal() - tot_parc_ind).ToString() + ","; } string list_ids_parc = sb_parcs.ToString().TrimEnd(','); DataPortable dp_parcs = new DataPortable(); dp_parcs.setValue("ids", list_ids_parc); output_st_parcs_content = MemorySave(ref dp_parcs); output_st_parcs = output_st_parcs.TrimEnd(','); output_st_parcs_total = output_st_parcs_total.TrimEnd(','); } /// USER [ execute ] END Registry("execute done fetch_rel_1_rtc "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_5_rle "); /// USER [ execute ] // # Disabilita escrita em disco // # AVISO: somente por motivos de performance // # Somente recomendado para relatórios em produção SQL_LOGGING_ENABLE = false; StringBuilder sb = new StringBuilder(); Hashtable hsh_loja_confirmada = new Hashtable(); Hashtable hsh_loja_cancelada = new Hashtable(); Hashtable hsh_loja = new Hashtable(); // guarda se container foi gerado ArrayList tmp_loja = new ArrayList(); // lista de lojas long vr_sub_confirmada = 0, vr_sub_cancelada = 0, vr_tot_confirmada = 0, vr_tot_cancelada = 0; LINK_LojaEmpresa link = new LINK_LojaEmpresa(this); T_Cartao cart = new T_Cartao(this); string id = ""; // # Busca todos os convênios de uma empresa if (link.select_fk_empresa_geral(emp.get_identity())) { while (link.fetch()) { loj.Reset(); if (!loj.selectIdentity(link.get_fk_loja())) { continue; } id = loj.get_identity(); #region - identifico a loja - if (hsh_loja [id] == null) { DadosLoja dl = new DadosLoja(); dl.set_st_loja(id); dl.set_st_nome("(" + loj.get_st_loja() + ") " + loj.get_st_nome()); output_array_generic_lstLojas.Add(dl); tmp_loja.Add(id); hsh_loja [id] = 1; } #endregion if (!l_tr.select_rows_dt_loj(input_st_dt_ini, input_st_dt_fim, id)) { continue; } T_Parcelas parc = new T_Parcelas(this); while (l_tr.fetch()) { if (!cart.selectIdentity(l_tr.get_fk_cartao())) { continue; } if (cart.get_st_empresa() != input_st_empresa) { continue; } #region - contabiliza - if (l_tr.get_tg_contabil() == Context.TRUE) { long cur_val = l_tr.get_int_vr_total(); if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { if (hsh_loja_confirmada [id] == null) { vr_sub_confirmada = (long)0; } else { vr_sub_confirmada = (long)hsh_loja_confirmada [id]; } vr_tot_confirmada += cur_val; hsh_loja_confirmada [id] = vr_sub_confirmada + cur_val; } else if (l_tr.get_tg_confirmada() == TipoConfirmacao.Cancelada) { if (hsh_loja_cancelada [id] == null) { vr_sub_cancelada = (long)0; } else { vr_sub_cancelada = (long)hsh_loja_cancelada [id]; } vr_tot_cancelada += cur_val; hsh_loja_cancelada [id] = vr_sub_cancelada + cur_val; } } #endregion Rel_RLE rle = new Rel_RLE(); #region - atribui ao container - rle.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); rle.set_st_nsu(l_tr.get_nu_nsu()); rle.set_vr_total(l_tr.get_vr_total()); rle.set_nu_parc(l_tr.get_nu_parcelas()); if (parc.select_fk_log_trans(l_tr.get_identity())) { if (parc.fetch()) { rle.set_st_nsu(l_tr.get_nu_nsu()); } } rle.set_dt_trans(l_tr.get_dt_transacao()); rle.set_tg_status(l_tr.get_tg_confirmada()); rle.set_st_motivo(l_tr.get_st_msg_transacao()); rle.set_en_op_cartao(l_tr.get_en_operacao()); rle.set_st_loja(id); #endregion DataPortable mem_rle = rle as DataPortable; // # Guarda registro sb.Append(MemorySave(ref mem_rle)); sb.Append(","); } } string list_ids = sb.ToString().TrimEnd(','); DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // # Guarda todos os registros output_st_csv = MemorySave(ref dp); #region - calcula totais - long value_sub = 0; for (int t = 0; t < tmp_loja.Count; ++t) { id = tmp_loja[t] as string; if (hsh_loja_confirmada [id] == null) { hsh_loja_confirmada [id] = (long)0; } if (hsh_loja_cancelada [id] == null) { hsh_loja_cancelada [id] = (long)0; } value_sub = (long)hsh_loja_confirmada [id]; output_st_csv_subtotal += value_sub.ToString() + ","; value_sub = (long)hsh_loja_cancelada [id]; output_st_csv_subtotal_cancelado += value_sub.ToString() + ","; } #endregion output_st_csv_subtotal = output_st_csv_subtotal.TrimEnd(','); output_st_csv_subtotal_cancelado = output_st_csv_subtotal_cancelado.TrimEnd(','); output_st_total = vr_tot_confirmada.ToString(); output_st_total_cancelado = vr_tot_cancelada.ToString(); } /// USER [ execute ] END Registry("execute done fetch_rel_5_rle "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_consultaTransacao "); /// USER [ execute ] T_Terminal term = new T_Terminal(this); T_Cartao cart = new T_Cartao(this); T_Loja loj = new T_Loja(this); StringBuilder sb = new StringBuilder(); int i_nu_parc = 0; long i_vr_valor = 0; if (nu_parc.Length > 0) { i_nu_parc = Convert.ToInt32(nu_parc); } if (vr_valor.Length > 0) { i_vr_valor = Convert.ToInt64(vr_valor); } string nsu = input_cont_dct.get_st_nsu(); Hashtable hshEmpresas = new Hashtable(); #region - para o caso de administrador - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_admin = new T_Empresa(this); if (emp_admin.select_rows_empresa(user.get_st_empresa())) { if (!emp_admin.fetch()) { return(false); } T_Empresa emp_tb = new T_Empresa(this); // ## Para o caso de empresa administradora de empresas if (emp_tb.select_fk_admin(emp_admin.get_identity())) { while (emp_tb.fetch()) { hshEmpresas [emp_tb.get_identity()] = "*"; } } } } #endregion // ## Busca as transações SQL_LOGGING_ENABLE = false; int max_trans = 200; if (input_cont_header.get_tg_user_type() == TipoUsuario.SuperUser) { max_trans = 1000; } while (l_tr.fetch()) { // ## Filtro de empresas // ## somente de administradora ou de vinculadas if (hshEmpresas.Count > 0) { if (hshEmpresas [l_tr.get_fk_empresa()] == null) { continue; } } if (nsu.Length > 0) { if (l_tr.get_nu_nsu() != nsu) { continue; } } if (st_cart_id.Length > 0) { if (l_tr.get_fk_cartao() != st_cart_id) { continue; } } if (nu_parc.Length > 0) { if (l_tr.get_int_nu_parcelas() < i_nu_parc) { continue; } } if (vr_valor.Length > 0) { if (l_tr.get_int_vr_total() < i_vr_valor) { continue; } } if (en_oper.Length > 0) { if (l_tr.get_en_operacao() != en_oper) { continue; } } if (en_conf.Length > 0) { if (l_tr.get_tg_confirmada() != en_conf) { continue; } } if (fk_empresa.Length > 0) { if (l_tr.get_fk_empresa() != fk_empresa) { continue; } } if (fk_terminal.Length > 0) { if (l_tr.get_fk_terminal() != fk_terminal) { continue; } } term.Reset(); loj.Reset(); cart.Reset(); // ## Busca terminal term.selectIdentity(l_tr.get_fk_terminal()); if (fk_loja.Length > 0) { if (term.get_fk_loja() != fk_loja) { continue; } } loj.selectIdentity(l_tr.get_fk_loja()); cart.selectIdentity(l_tr.get_fk_cartao()); // ## Cria registro em memória if (--max_trans == 0) { PublishNote("Limite máximo de registros excedido"); break; } DadosConsultaTransacao dt = new DadosConsultaTransacao(); dt.set_en_oper(l_tr.get_en_operacao()); dt.set_st_nsu(l_tr.get_nu_nsu()); dt.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); dt.set_st_cnpj_loja(loj.get_st_nome()); dt.set_st_terminal(term.get_nu_terminal()); dt.set_vr_valor(l_tr.get_vr_total()); dt.set_nu_parcelas(l_tr.get_nu_parcelas()); dt.set_dt_transacao(l_tr.get_dt_transacao()); dt.set_tg_status(l_tr.get_tg_confirmada()); dt.set_st_msg_erro(l_tr.get_st_msg_transacao() + l_tr.get_st_doc()); DataPortable tmp = dt as DataPortable; // ## indexa em memória sb.Append(MemorySave(ref tmp)); sb.Append(","); } SQL_LOGGING_ENABLE = true; string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum resultado foi encontrado"); return(true); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // ## cria indexador de bloco output_st_csv_id = MemorySave(ref dp); /// USER [ execute ] END Registry("execute done fetch_consultaTransacao "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute fetch_rel_2_rlt "); /// USER [ execute ] if (input_cont_header.get_tg_user_type() != TipoUsuario.Lojista) { input_st_empresa = input_st_empresa.PadLeft(6, '0'); T_Empresa emp = new T_Empresa(this); if (!emp.select_rows_empresa(input_st_empresa)) { PublishError("Empresa não disponível"); return(false); } } else { input_st_empresa = ""; } // ## // ## O seguinte trecho indexa as lojas possíveis // ## de retorno para uma determinada empresa. // ## // ## E, no caso de a empresa original ser administradora // ## de empresas, indexar todas as lojas de todas empresas // ## desta rede. // ## Hashtable hshLojas = new Hashtable(); #region - filtro de lojas da empresa - if (user.get_tg_nivel() == TipoUsuario.Administrador) { T_Empresa emp_orig = new T_Empresa(this); // ## Busca empresa original if (!emp_orig.select_rows_empresa(user.get_st_empresa())) { return(false); } if (!emp_orig.fetch()) { return(false); } LINK_LojaEmpresa lnk = new LINK_LojaEmpresa(this); // ## busca relacionamento das empresas com lojas if (lnk.select_fk_empresa_geral(emp_orig.get_identity())) { while (lnk.fetch()) { // ## indexa lojas hshLojas [lnk.get_fk_loja()] = "*"; } } // ## busca empresas administradas T_Empresa emp_lnk_admin = new T_Empresa(this); if (emp_lnk_admin.select_fk_admin(emp_orig.get_identity())) { while (emp_lnk_admin.fetch()) { // ## busca lojas de cada empresa administrada LINK_LojaEmpresa lnk_admin = new LINK_LojaEmpresa(this); if (lnk_admin.select_fk_empresa_geral(emp_lnk_admin.get_identity())) { while (lnk_admin.fetch()) { // ## indexa loja hshLojas [lnk_admin.get_fk_loja()] = "*"; } } } } } #endregion StringBuilder sb = new StringBuilder(); Hashtable hsh_term_confirmada = new Hashtable(); Hashtable hsh_term_cancelada = new Hashtable(); Hashtable hsh_term = new Hashtable(); T_Terminal term = new T_Terminal(this); T_Cartao cart = new T_Cartao(this); string term_ident = ""; long vr_sub_confirmada = 0, vr_sub_cancelada = 0, vr_tot_confirmada = 0, vr_tot_cancelada = 0; ArrayList tmp_Terms = new ArrayList(); // ## Busca registros de transações while (l_tr.fetch()) { if (hshLojas.Count > 0) { if (hshLojas [l_tr.get_fk_loja()] == null) { continue; } } // ## Busca terminal referente if (!term.selectIdentity(l_tr.get_fk_terminal())) { continue; } term_ident = term.get_nu_terminal(); // ## Captura terminais if (hsh_term [term_ident] == null) { DadosTerminal dt = new DadosTerminal(); dt.set_st_terminal(term.get_nu_terminal()); dt.set_st_localizacao(term.get_st_localizacao()); output_array_generic_lstTerminais.Add(dt); tmp_Terms.Add(term_ident); hsh_term [term_ident] = 1; } // ## Busca cartão relacionado if (!cart.selectIdentity(l_tr.get_fk_cartao())) { continue; } if (input_st_empresa.Length > 0) { if (cart.get_st_empresa() != input_st_empresa) { continue; } } // ## Se transação deve ser contabilizada if (l_tr.get_tg_contabil() == Context.TRUE) { long cur_val = l_tr.get_int_vr_total(); if (l_tr.get_tg_confirmada() == TipoConfirmacao.Confirmada) { if (hsh_term_confirmada [term_ident] == null) { vr_sub_confirmada = (long)0; } else { vr_sub_confirmada = (long)hsh_term_confirmada [term_ident]; } vr_tot_confirmada += cur_val; hsh_term_confirmada [term_ident] = vr_sub_confirmada + cur_val; } else if (l_tr.get_tg_confirmada() == TipoConfirmacao.Cancelada) { if (hsh_term_cancelada [term_ident] == null) { vr_sub_cancelada = (long)0; } else { vr_sub_cancelada = (long)hsh_term_cancelada [term_ident]; } vr_tot_cancelada += cur_val; hsh_term_cancelada [term_ident] = vr_sub_cancelada + cur_val; } } Rel_RLT rlt = new Rel_RLT(); rlt.set_st_cartao(cart.get_st_empresa() + "." + cart.get_st_matricula() + "." + cart.get_st_titularidade()); rlt.set_st_nsu(l_tr.get_nu_nsu()); rlt.set_vr_total(l_tr.get_vr_total()); rlt.set_nu_parc(l_tr.get_nu_parcelas()); rlt.set_dt_trans(l_tr.get_dt_transacao()); rlt.set_tg_status(l_tr.get_tg_confirmada()); rlt.set_st_motivo(l_tr.get_st_msg_transacao()); rlt.set_en_op_cartao(l_tr.get_en_operacao()); rlt.set_st_terminal(term_ident); DataPortable mem_rlt = rlt as DataPortable; // ## Grava em memória sb.Append(MemorySave(ref mem_rlt)); sb.Append(","); } string list_ids = sb.ToString().TrimEnd(','); if (list_ids == "") { PublishNote("Nenhum resultado foi encontrado"); return(false); } DataPortable dp = new DataPortable(); dp.setValue("ids", list_ids); // ## Gera identificador geral output_st_csv = MemorySave(ref dp); long value_sub = 0; // ## Percorre terminais for (int t = 0; t < tmp_Terms.Count; ++t) { term_ident = tmp_Terms[t].ToString(); if (hsh_term_confirmada [term_ident] == null) { hsh_term_confirmada [term_ident] = (long)0; } if (hsh_term_cancelada [term_ident] == null) { hsh_term_cancelada [term_ident] = (long)0; } // ## Contabiiza value_sub = (long)hsh_term_confirmada [term_ident]; output_st_csv_subtotal += value_sub.ToString() + ","; value_sub = (long)hsh_term_cancelada [term_ident]; output_st_csv_subtotal_cancelado += value_sub.ToString() + ","; } output_st_csv_subtotal = output_st_csv_subtotal.TrimEnd(','); output_st_csv_subtotal_cancelado = output_st_csv_subtotal_cancelado.TrimEnd(','); output_st_total = vr_tot_confirmada.ToString(); output_st_total_cancelado = vr_tot_cancelada.ToString(); /// USER [ execute ] END Registry("execute done fetch_rel_2_rlt "); return(true); }