[RESOLVIDO] UPC - CD0704

Discussão em 'EMS , HCM e Totvs 11' iniciado por kikofr, Abril 15, 2010.

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

    kikofr Membro Participativo

    Bom dia,

    fiz a seguinte upc para validar se o usuário tem permissão ou não para alterar e adicionar novos clientes.

    Código:
    IF p-ind-event = "end-enable"
       AND p-ind-object = "VIEWER"
       AND p-wgh-object:FILE-NAME = "cdp/cd0704-v06.w" THEN DO:
       FIND FIRST grp_usuar
            WHERE  grp_usuar.cod_grp_usuar = "CLI" NO-LOCK NO-ERROR.
        IF AVAIL grp_usuar THEN DO:
            FIND FIRST usuar_grp_usuar
                WHERE usuar_grp_usuar.cod_grp_usuar = grp_usuar.cod_grp_usuar 
                  AND usuar_grp_usuar.cod_usuario = USERID("MGCAD") NO-LOCK NO-ERROR.
            IF NOT AVAIL usuar_grp_usuar THEN DO:
                run utp/ut-msgs.p (input "show":U, 
                                   input 17006, 
                                   input "USUÁRIO SEM PERMISSÃO PARA ALTERAÇÃO DE CLIENTES!").
                RETURN "ADM-ERROR":U.            
                LEAVE.
            END.
        END.
    END.
    
    Com essa UPC apareceu a mensagem na tela, mas ainda permitiu fazer alterações no cadastro. Aonde posso estar errando?
  2. petruzad

    petruzad Membro Participativo

    Alterar de RETURN "ADM-ERROR":U. para RETURN "NOK":U.
  3. kikofr

    kikofr Membro Participativo

    Bom dia,

    Fiz a alteração, mas mesmo assim continua liberando a alteração de clientes.
  4. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Caro colega,

    Em minha base (EMS206B - Progress Vs101a) cadastrei a UPC abaixo e quando da ALTERAÇÃO funcionou, não deixando alterar, porém na Inclusão será apresentado a mensagem também, mas permitirá incluir.

    Código:
    
    /**********************************************************************************************************************
    
        Rotina      :  
        
        Data        : 
        
        Autor       : 
        
        Objetivo    : 
        
    **********************************************************************************************************************/
    
    DEFINE INPUT PARAMETER p-ind-event          AS CHARACTER.
    DEFINE INPUT PARAMETER p-ind-object         AS CHARACTER.
    DEFINE INPUT PARAMETER p-wgh-object         AS HANDLE.
    DEFINE INPUT PARAMETER p-wgh-frame          AS WIDGET-HANDLE.
    DEFINE INPUT PARAMETER p-cod-table          AS CHARACTER.
    DEFINE INPUT PARAMETER p-row-table          AS ROWID.
    
    if (p-ind-event           = "END-ENABLE"        and
        p-ind-event           = "VALIDATE")         and        
       p-ind-object           = "VIEWER"            and
       p-wgh-object:file-name = "cdp/cd0704-v01.w"  then do:
    
        find first mgcad.grp_usuar
             where mgcad.grp_usuar.cod_grp_usuar = "CLI" no-lock no-error.
        
        find first mgcad.usuar_grp_usuar
             where mgcad.usuar_grp_usuar.cod_grp_usuar = mgcad.grp_usuar.cod_grp_usuar 
               and mgcad.usuar_grp_usuar.cod_usuario = userid("MGCAD") no-lock no-error.
    
        if not avail usuar_grp_usuar then do:
    
            run utp/ut-msgs.p (input "show":U, 
                               input 17006, 
                               input "USUÁRIO SEM PERMISSÃO PARA ALTERAÇÃO DE CLIENTES!" + "~~" + "").
            return "NOk":U.            
    
        end.
    
    end.
    
    
    Alguns eventos não são tratados os return, sendo assim, você poderá colocar a mesma validação do evento VALIDATE
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página