[RESOLVIDO] Erro 0x800a01a8 pi-gera-excel

Discussão em 'EMS , HCM e Totvs 11' iniciado por kakaos, Julho 23, 2012.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. kakaos

    kakaos Membro Participativo

    Bom dia pessoal,
    estou tendo problemas direto com um relatorio, as vezes quando executo ele dá o erro: Erro 0x800a01a8 pi-gera-excel meq/meq05p.p (5890) e outros com tela em anexo, alguem sabe com posso resolver isto?
    obrigado.
  2. baltazar

    baltazar Membro Participativo

    Envie print-screens.
  3. eriutoncharles

    eriutoncharles Membro Participativo

    Boa tarde!

    Poste a parte que gera a planilha e/ou o gráfico para que o pessoal aqui possa analisar!

    Abraços!
  4. kakaos

    kakaos Membro Participativo

    segue...

    /* ***************************************** PROCEDURES ***************************************** */

    PROCEDURE pi-gera-excel:

    /*Abre o Excel*/
    CREATE "Excel.APPLICATION" chExcel.
    ASSIGN chexcel:DisplayAlerts = FALSE
    chexcel:VISIBLE = FALSE.

    /* Carrega arquivo de modelo */
    chbook = chexcel:Workbooks:eek:pen(search(tt-param.arq-ori-mod)).
    /*Seleciona a Planilha1*/
    chbook:Sheets("Plan1"):SELECT().
    chWorkSheet = chbook:activesheet.


    /*Define a impressao como PAISAGEM */
    chExcel:WorkBooks:ITEM(1):WorkSheets:ITEM(1):pageSetup:Orientation = 2.

    /*Define a largura das colunas*/
    chWorkSheet:cells(1,01):columnWidth=07. /*Regiao*/
    chWorkSheet:cells(1,02):columnWidth=15. /*Microrregiao*/
    chWorkSheet:cells(1,03):columnWidth=20. /*Pais*/
    chWorkSheet:cells(1,04):columnWidth=10. /*Estado*/
    chWorkSheet:cells(1,05):columnWidth=14. /*Fm. Comercial*/
    chWorkSheet:cells(1,06):columnWidth=25. /*Descricao Fm. Comercial*/
    chWorkSheet:cells(1,07):columnWidth=14. /*Fm. Material*/
    chWorkSheet:cells(1,08):columnWidth=30. /*Descricao Fm. Material*/
    chWorkSheet:cells(1,09):columnWidth=16. /*ITEM*/
    chWorkSheet:cells(1,10):columnWidth=35. /*Desc-item*/
    chWorkSheet:cells(1,11):columnWidth=06. /*Ano*/
    chWorkSheet:cells(1,12):columnWidth=04. /*Mes*/
    chWorkSheet:cells(1,13):columnWidth=15. /*Cliente*/
    chWorkSheet:cells(1,14):columnWidth=15. /*Grupo*/
    chWorkSheet:cells(1,15):columnWidth=25. /*Descricao do Grupo de Cliente*/
    chWorkSheet:cells(1,16):columnWidth=11. /*Tipo Pedido*/
    chWorkSheet:cells(1,17):columnWidth=25. /*Cod. Complementar*/
    chWorkSheet:cells(1,18):columnWidth=15. /*Nr. Pedido*/
    chWorkSheet:cells(1,19):columnWidth=13. /*Data Venda*/
    chWorkSheet:cells(1,20):columnWidth=14. /*Descricao Moeda*/
    chWorkSheet:cells(1,21):columnWidth=11. /*Valor Moeda*/
    chWorkSheet:cells(1,22):columnWidth=11. /*Vl, Real*/
    chWorkSheet:cells(1,23):columnWidth=10. /*Unidade*/
    chWorkSheet:cells(1,24):columnWidth=12. /*Qtd*/
    chWorkSheet:cells(1,25):columnWidth=12. /*Cod.Cliente*/
    chWorkSheet:cells(1,26):columnWidth=40. /*Nome Cliente*/
    chWorkSheet:cells(1,27):columnWidth=15. /*CNPJ*/
    chWorkSheet:cells(1,28):columnWidth=30. /*Cidade*/
    chWorkSheet:cells(1,29):columnWidth=15. /*Pedido EMS*/
    chWorkSheet:cells(1,30):columnWidth=15. /*Representante*/
    chWorkSheet:cells(1,31):columnWidth=12. /*Situacao*/
    chWorkSheet:cells(1,32):columnWidth=20. /*Descricao da situacao*/
    chWorkSheet:cells(1,33):columnWidth=25. /*Descricao do grupo de estoque*/
    chWorkSheet:cells(1,34):columnWidth=12. /*Sit.Credito*/



    /*Preenche os titulos das colunas*/
    chWorkSheet:cells(1,01) = "REGIÃO".
    chWorkSheet:cells(1,02) = "MICRORREGIÃO".
    chWorkSheet:cells(1,03) = "PAIS".
    chWorkSheet:cells(1,04) = "ESTADO".
    chWorkSheet:cells(1,05) = "FM. COMERCIAL".
    chWorkSheet:cells(1,06) = "DESC.FM.COM".
    chWorkSheet:cells(1,07) = "FM. MATERIAL".
    chWorkSheet:cells(1,08) = "DESC.FM.MAT".
    chWorkSheet:cells(1,09) = "ITEM".
    chWorkSheet:cells(1,10) = "DESC.ITEM".
    chWorkSheet:cells(1,11) = "ANO".
    chWorkSheet:cells(1,12) = "MÊS".
    chWorkSheet:cells(1,13) = "CLIENTE".
    chWorkSheet:cells(1,14) = "GRUPO CLIENTE".
    chWorkSheet:cells(1,15) = "DESC.GR.CLIENTE".
    chWorkSheet:cells(1,16) = "TIPO PEDIDO".
    chWorkSheet:cells(1,17) = "COD. COMPLEMENTO".
    chWorkSheet:cells(1,18) = "Nr. PEDIDO".
    chWorkSheet:cells(1,19) = "DATA VENDA".
    chWorkSheet:cells(1,20) = "DESC. MOEDA".
    chWorkSheet:cells(1,21) = "VL.MOEDA".
    chWorkSheet:cells(1,22) = "VL. REAL".
    chWorkSheet:cells(1,23) = "UNIDADE".
    chWorkSheet:cells(1,24) = "QTD PEDIDA".
    chWorkSheet:cells(1,25) = "COD.CLIENTE".
    chWorkSheet:cells(1,26) = "NOME CLIENTE".
    chWorkSheet:cells(1,27) = "CNPJ".
    chWorkSheet:cells(1,28) = "CIDADE".
    chWorkSheet:cells(1,29) = "PEDIDO EMS".
    chWorkSheet:cells(1,30) = "REPRESENTANTE".
    chWorkSheet:cells(1,31) = "SIT. PEDIDO".
    chWorkSheet:cells(1,32) = "DESC. SIT. PEDIDO".
    chWorkSheet:cells(1,33) = "DESC. GR. ESTOQUE".
    chWorkSheet:cells(1,34) = "SIT.CREDITO".

    /*Coloca os titulos em negrito e colore o fundo de cinza claro*/
    chWorkSheet:Range("A1:Y1"):Font:Bold = True.
    chworksheet:Range("A1:Y1"):interior:colorindex = 15.

    /*Preenche o Excel*/
    FOR EACH tt-ordena NO-LOCK :
    chWorkSheet:cells(linha,01) = tt-reg.
    chWorkSheet:cells(linha,02) = tt-mic-reg.
    chWorkSheet:cells(linha,03) = tt-pais.
    chWorkSheet:cells(linha,04) = tt-estado.
    chWorkSheet:cells(linha,05) = tt-fm-cod-com.
    chWorkSheet:cells(linha,06) = tt-fm-des-com.
    chWorkSheet:cells(linha,07) = tt-fm-codigo.
    chWorkSheet:cells(linha,08) = tt-fm-des.
    chWorkSheet:cells(linha,09) = tt-it-codigo.
    chWorkSheet:cells(linha,10) = tt-desc-item.
    chWorkSheet:cells(linha,11) = tt-ano.
    chWorkSheet:cells(linha,12) = tt-mes.
    chWorkSheet:cells(linha,13) = tt-nome-abrev.
    chWorkSheet:cells(linha,14) = tt-cod-gr-cli.
    chWorkSheet:cells(linha,15) = tt-des-gr-cli.
    chWorkSheet:cells(linha,16) = tt-tp-pedido.
    chWorkSheet:cells(linha,17) = tt-codigo-refer.
    chWorksheet:cells(linha,18) = tt-nr-pedcli. /* :numberformat = "@".*/
    chWorkSheet:cells(linha,19) = tt-dt-implant.
    chWorkSheet:cells(linha,20) = tt-mo-descricao.
    chWorkSheet:cells(linha,21) = tt-vl-tot-it.
    chWorkSheet:cells(linha,22) = tt-valor-real.
    chWorkSheet:cells(linha,23) = tt-des-un.
    chWorkSheet:cells(linha,24) = tt-qt-pedida.
    chWorkSheet:cells(linha,25) = tt-cod-emitente.
    chWorkSheet:cells(linha,26) = tt-nome-emit.
    chWorkSheet:cells(linha,27) = tt-cnpj.
    chWorksheet:cells(linha,28) = tt-cidade. /*:numberformat = "@".*/
    chWorkSheet:cells(linha,29) = tt-pedido-ems.
    chWorkSheet:cells(linha,30) = tt-repres.
    chWorkSheet:cells(linha,31) = tt-cod-sit-ped.
    chWorkSheet:cells(linha,32) = tt-des-sit-ped.
    chWorkSheet:cells(linha,33) = tt-des-ge-cod.
    chWorkSheet:cells(linha,34) = tt-cod-sit-aval.
    /*chWorkSheet:cells(linha,36) =
    chWorkSheet:cells(linha,37) =
    */

    ASSIGN linha = linha + 1.

    END.

    /*Deixa o Excel Visivel*/
    chExcel:VISIBLE = TRUE.

    /*Define o caminho destino*/
    tt-param.arq-des-mod = REPLACE (tt-param.arq-des-mod , "/" , "\").
    ChExcel:ActiveWorkbook:SaveAs(tt-param.arq-des-mod,,,,,,).

    RELEASE OBJECT chExcel.
    chExcel=?.

    /*Fechamento do output do relat¢rio*/
    {include/i-rpclo.i &STREAM="stream str-rp"}
    RUN pi-finalizar IN h-acomp.
    RETURN "OK":U.

    /*Elimina o processo do Excel da memoria depois que foi fechado*/
    chExcel:ActiveWorkbook:CLOSE NO-ERROR.
    chExcel:DisplayAlerts = FALSE.
    chexcel:QUIT().

    END PROCEDURE.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página