1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

UPC - FillIn

Discussão em 'Outros/Diversos' iniciado por fdantas, Fevereiro 12, 2009.

  1. fdantas

    fdantas Administrator Moderador

    Código:
    /********************************************************************************* 
    ** Programa...: upc_fillin.p
    ** Author.....: Desconhecido
    ** Descricao..: Criar um Fill In na tela e alimentar o mesmo.
    ** Data.......: 22/02/2002 
    ** 
    ** Visite www.4each.com.br 
    ** 
    *********************************************************************************/
    
    /* Definicao de variaveis globais ********/
    {utp/ut-glob.i}
    
    /* Parameter Definitions ****************************************************/
    
    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.
    
    /* variaveis locais *********************************************************/
    def var c-objeto as char          no-undo.
    def new global shared var h_query           as widget-handle no-undo.
    def new global shared var wh-objeto         as WIDGET-HANDLE NO-UNDO.
    def new global shared var adm-broker-hdl    as handle        no-undo.
    def new global shared var wh-nome           as widget-handle no-undo.
    def new global shared var tx-label-nome     AS widget-handle no-undo.
    DEF new global shared var w-rowid-contrato  AS Rowid         No-undo.
    define Var xc-objects As Char.
    define Var xi-objects As Int.
    define Var xh-objects As Handle.
    
    assign c-objeto   = entry(num-entries(p-wgh-object:file-name, "~/"), p-wgh-object:file-name, "~/").
    
    if  p-ind-event = "INITIALIZE" and
        p-ind-object = "CONTAINER" then
    do:
        
        RUN get-link-handle IN adm-broker-hdl (INPUT p-wgh-object,
                                               INPUT "CONTAINER-TARGET":U,
                                               OUTPUT xc-objects).
        
        Do xi-objects = 1 To Num-entries(xc-objects):
            Assign xh-objects = Widget-handle(Entry(xi-objects,xc-objects)).
            if xh-objects:file-name = "inqry/q01in065.w" Then
               Assign h_query = xh-objects.
            
        End.
        
        create tEXT tx-label-nome
        assign frame        = p-wgh-frame
               format       = "x(16)"
               width        = 16
               screen-value = "Nome:"
               row          = 13.9
               col          = 46.2
               visible      = yes.
        
        create fill-in wh-nome
        assign frame              = p-wgh-frame
               name               = "Nome"
               data-type          = "character"
               format             = "X(30)"
               width              = 28
               height             = 0.75
               row                = 13.8
               col                = 58.4
               visible            = YES
               sensitive          = NO.
        
    end.
    
    if  p-ind-event = "DISPLAY" and
        p-ind-object = "VIEWER" and
        p-wgh-object:FILE-NAME = "cnp/cn0201-v01.w" then
    do:
        IF VALID-HANDLE(wh-nome) THEN DO:
            FIND FIRST TABELA 
                 WHERE ROWID(TABELA) = p-row-table NO-LOCK NO-ERROR.
            
            IF AVAILABLE TABELA THEN DO:
                FIND FIRST EXT-TABELA 
                     WHERE EXT-TABELA.ep-codigo = i-ep-codigo-usuario /* Definida no UT-GLOB.I**/ 
                       AND EXT-TABELA.NOME_DO_CAMPO = TABELA.NOME_DO_CAMPO NO-LOCK NO-ERROR.
    
                IF AVAILABLE EXT-TABELA THEN
                    ASSIGN wh-nome:SCREEN-VALUE = EXT-TABELA.NOME_DO_CAMPO.
            END.
        END.
    END.
    
    
    IF p-ind-event            = 'ADD'              AND
       p-ind-object           = 'VIEWER'           AND
       p-wgh-object:private-data = 'cnp/cn0201-v01.w' THEN DO:
    
        ASSIGN wh-objeto = p-wgh-frame:FIRST-CHILD.
        
        DO WHILE VALID-HANDLE(wh-objeto):
            IF wh-objeto:NAME = 'tx-label-nome' THEN
                ASSIGN wh-objeto:SCREEN-VALUE = STRING("NOME :","X(12)").
    
        END.
    END.
    
    
    if  p-ind-event = "END-UPDATE"   and
        p-ind-object = "VIEWER" then do:
        
        find first TABELA 
             where rowid(TABELA) = w-rowid-ped-venda no-lock no-error.
        find first EXT-TABELA 
             WHERE mgesp.EXT-TABELA.nome-abrev    = TABELA.nome-abrev    
               AND mgesp.EXT-TABELA.nr-pedcli     = TABELA.nr-pedcli     
               AND mgesp.EXT-TABELA.nr-sequencia  = TABELA.nr-sequencia  
               AND mgesp.EXT-TABELA.it-codigo     = TABELA.it-codigo     
               AND mgesp.EXT-TABELA.cod-refer     = TABELA.cod-refer     NO-ERROR.
        
        if available mgesp.EXT-TABELA then
            assign mgesp.EXT-TABELA.nome          = wh-nome:SCREEN-VALUE.
                   
    END.
    
    
    
    

    Arquivos Anexados:

Compartilhe esta Página