4Each • Exibir tópico - Excel e Progress

Excel e Progress

Forum para duvidas sobre a linguagem Progress

Excel e Progress

Mensagempor eder.ufscar em 27 Jul 2010, 10:11

Galera estou com o seguinte problema fiz um programa em progress onde o resultado de sua execução é jogado em uma planilha do excel, porém se no meio da execução o usuário der o comando ctrl + pause break o programa é interrompido porém o aplicativo do excel fica ativo na memória do computador existe uma forma de tratar esse comando para que junto o aplicativo do excel cai juntamente com a aplicação progress?
Avatar do usuário
eder.ufscar
Usuário Junior
Usuário Junior
 
Mensagens: 28
Registro: 03 Set 2009, 10:07

Re: Excel e Progress

Mensagempor jalegria em 27 Jul 2010, 13:36

Saudações

Vc pode tentar por "ON STOP" no bloco que gera o excel.

Código: Selecionar todos
DO ON STOP UNDO, RETRY:

  IF RETRY
  THEN DO:
    /*FINALIZA O EXCEL*/
    LEAVE.
  END.

  GERA EXCEL.

END.

Tem outros jeitos de fazer, mas foi só pra te dar uma idéia...
Não é possível convencer um crente de coisa alguma, pois as suas crenças não se baseiam em evidências, mas sim numa profunda necessidade de acreditar. Carl Sagan
Avatar do usuário
jalegria
Usuário Pleno
Usuário Pleno
 
Mensagens: 60
Registro: 30 Mar 2010, 11:27
Localização: São Paulo / SP

Re: Excel e Progress

Mensagempor eder.ufscar em 27 Jul 2010, 14:14

Cara fica assim o código? ou é de uma outra maneira?
Código: Selecionar todos
DO ON STOP UNDO, RETRY:

              IF RETRY THEN DO:
                /*FINALIZA O EXCEL*/
                LEAVE.
              END.

             excelappl:range("A" + string(linha, "99999999999999")):value = temp-movimentos.cd-transacao.
             excelappl:range("B" + string(linha, "99999999999999")):value = temp-movimentos.nr-serie-doc-original.
             excelappl:range("C" + string(linha, "99999999999999")):value = temp-movimentos.nr-doc-original.
             excelappl:range("D" + string(linha, "99999999999999")):value = temp-movimentos.cd-unidade-carteira.
             excelappl:range("E" + string(linha, "99999999999999")):value = temp-movimentos.cd-carteira-usuario.
             excelappl:range("F" + string(linha, "99999999999999")):value = nome.
             excelappl:range("G" + string(linha, "99999999999999")):value = temp-movimentos.cd-prestador-solicitante.
             excelappl:range("H" + string(linha, "99999999999999")):value = temp-movimentos.cd-servico.
             excelappl:range("I" + string(linha, "99999999999999")):value = descricao.
             excelappl:range("J" + string(linha, "99999999999999")):value = temp-movimentos.cd-prestador-pagamento.
             excelappl:range("K" + string(linha, "99999999999999")):value = preserv.nm-prestador.
             excelappl:range("L" + string(linha, "99999999999999")):value = temp-movimentos.in-nivel-prestador.
             excelappl:range("M" + string(linha, "99999999999999")):value = temp-movimentos.lg-anestesista.
             excelappl:range("N" + string(linha, "99999999999999")):value = temp-movimentos.qt-repasse.
             excelappl:range("O" + string(linha, "99999999999999")):value = temp-movimentos.qt-procedimento.
             excelappl:range("P" + string(linha, "99999999999999")):value = temp-movimentos.vl-real-pago.
             excelappl:range("Q" + string(linha, "99999999999999")):value = modalidade.
             excelappl:range("R" + string(linha, "99999999999999")):value = plano.
             excelappl:range("S" + string(linha, "99999999999999")):value = tipo-plano.
             excelappl:range("T" + string(linha, "99999999999999")):value = temp-movimentos.cd-modulo.
             excelappl:range("U" + string(linha, "99999999999999")):value = hr-inicial.
             excelappl:range("V" + string(linha, "99999999999999")):value = hr-final.
           
             ASSIGN linha = linha + 1.
             END.
           END.
Avatar do usuário
eder.ufscar
Usuário Junior
Usuário Junior
 
Mensagens: 28
Registro: 03 Set 2009, 10:07

Re: Excel e Progress

Mensagempor jalegria em 28 Jul 2010, 08:20

Sim, mas deve ter outros comando para abrir a aplicação Excel.

Vc tem q ter em mente que qdo o programa estiver executando alguma linha dentro do bloco DO ON STOP...END e o usuario der CTRL-BREAK o progress dará um RETRY no bloco indo para o IF que está dentro dele logo no começo.

Sacou?
Faz uns testes aí e envia o veredicto...
Não é possível convencer um crente de coisa alguma, pois as suas crenças não se baseiam em evidências, mas sim numa profunda necessidade de acreditar. Carl Sagan
Avatar do usuário
jalegria
Usuário Pleno
Usuário Pleno
 
Mensagens: 60
Registro: 30 Mar 2010, 11:27
Localização: São Paulo / SP


Voltar para Progress 4GL

Quem está online

Usuários navegando neste fórum: CommonCrawl [Bot], Yahoo [Bot] e 1 visitante