Rodar BO via AppServer

Discussão em 'Progress 4GL' iniciado por DTerra, Junho 1, 2011.

  1. DTerra

    DTerra Sem Pontuação

    Boa tarde a todos,
    Estou fazendo uns teste com o AppServer e já consegui conectar para ler e alterar dados.
    Agora estou precisando rodar uma BO do Datasul via AppServer e não estou conseguindo. Quando tento executar algum método da BO é retornado o erro:

    Alguém sabe me dizer como posso rodar BOs ou APIs da Datasul via AppServer?

    Att.,
    Daniel Terra de Oliveira
  2. weiss_sbs

    weiss_sbs Membro Participativo

    Vc precisa estar registrado no EMS para executar programas padrões do EMS no AppServer, eu utilixo o programa de login da Datasul para executar, passo como parametro usuário e senha.

    Tente fazer isto...ok

    define temp-table tt-erros
    field cod-erro as integer
    field desc-erro as character format "x(256)"
    field desc-arq as character.

    run btb/btapi910za.p (INPUT 'usuario', input 'senha', output table tt-erros).
  3. LFBuozi

    LFBuozi Membro Participativo

    Se você usar o hardlock, a API que usa é diferente:

    Código:
    Def Temp-table tt_erro_login No-undo
        Field ttv_num_cod_erro   As Integer
        Field ttv_cod_desc_erro  As Character.
    
    RUN prgtec/btb/btb432zd.r (INPUT "usuario":U, INPUT "senha":U, OUTPUT TABLE tt_erro_login).
     /* RUN prgtec/btb/btb432zd.r (INPUT "dominio\usuario":U, INPUT "senha":U, OUTPUT TABLE tt_erro_login). /* Para login integrado */ */
    For Each tt_erro_login:
        Message "Erro: " 
                String(tt_erro_login.ttv_num_cod_erro) + " - ":U + 
                tt_erro_login.ttv_cod_desc_erro 
                View-as Alert-box Information.
    End.
    
  4. DTerra

    DTerra Sem Pontuação

    Funcionou galera!
    Muito Obrigado!

    Att.,
    Daniel Terra
  5. DTerra

    DTerra Sem Pontuação

    Boa tarde Pessoal,
    Estou usando o seguinte código para me logar no EMS via AppServer:

    Código:
    RUN prgtec/btb/btb432zd.r (INPUT "super":U,
                               INPUT "senha":U,
                               OUTPUT TABLE tt_erro_login).
    
    for each tt_erro_login no-lock:
            
            create RowErrors.
            assign RowErrors.ErrorNumber      = tt_erro_login.ttv_num_cod_erro
                   RowErrors.ErrorDescription = tt_erro_login.ttv_cod_desc_erro.
    
            run pi-imp-erros.
        
    end.
    
    Mas com esse login a variável i-pais-impto-usuario não está sendo setada. Alguém sabe como corrigir?

Compartilhe esta Página