Seleção de Arquivo

Discussão em 'Progress 4GL' iniciado por leonardosg, Março 16, 2010.

  1. leonardosg

    leonardosg Sem Pontuação

    Muito obrigado, a solução do LeandroSantos era o que eu precisava.
  2. Felipe Amaral de Souza

    Felipe Amaral de Souza Membro Participativo

    Boa tarde! Será que não teria como fazer esta seleção múltipla de arquivos utilizando a dialog padrão do windows? Utilizando o código do Leandro (browser progress) é possível fazer a seleção de vários arquivos porém se perde a opção de navegação simplificada entre os diretórios (obriga o usuário a utilizar o teclado)... Alguém já conseguiu fazer o mesmo utilizando a system-dialog get-file ou algo similar?

    Verifiquei que em várias aplicações Windows, quando se clica em abrir, é permitido selecionar apenas um arquivo porém especificamente no Word é possível selecionar múltiplos arquivos, não sei se ele usa outro objeto do Windows ou se criou um novo com essa funcionalidade...

    Obrigado!
  3. Felipe Amaral de Souza

    Felipe Amaral de Souza Membro Participativo

    Verifiquei também que nesta lógica não vem a extensão do arquivo... :(
  4. joelscampos

    joelscampos Membro Participativo

    Segue um código com drag and drop:

    Código:
    DEF TEMP-TABLE tt-arquivo NO-UNDO
        FIELD nr-arquivo                            AS INT  FORMAT ">>"
        FIELD nm-arquivo                            AS CHAR FORMAT "x(100)"
        FIELD uf                                    AS CHAR FORMAT "x(2)".
    
    
    
    
    
    DEF VAR in-tipo-arquivo-aux         AS INT VIEW-AS RADIO-SET RADIO-BUTTONS "Localidades",1,"Logradouros",2,"Grandes Usuários",3  NO-UNDO.
    
    DEF QUERY q-file FOR tt-arquivo.
    
    DEF BROWSE b-file QUERY q-file
        DISP
        tt-arquivo.nr-arquivo       LABEL "Nr."         WIDTH 3
        tt-arquivo.nm-arquivo       LABEL "Arquivo"     WIDTH 50
        tt-arquivo.uf               LABEL "UF"      
        ENABLE tt-arquivo.nm-arquivo
        WITH SEPARATORS DROP-TARGET SIZE 75 BY 10 TITLE "Arraste os arquivos para esta janela".
    
    /*------ Frame -------------------------------------------------------------------------------------*/
    FORM
        in-tipo-arquivo-aux         AT ROW 1.3 COL 1.5    LABEL "Tipo"   
        b-file                      AT ROW 5 COL 1.5
        WITH SIZE 77 BY 19 SIDE-LABELS VIEW-AS DIALOG-BOX OVERLAY ROW 4 CENTERED THREE-D FONT 2 FRAME f-arquivos TITLE "Arquivos de Entrada".
    
    
    
    
    
    b-file:COLUMN-RESIZABLE = YES.
    
    
    ON DROP-FILE-NOTIFY OF  b-file
    DO:
    
        DEF VAR i AS INT NO-UNDO.
    
        DO i = 1 TO b-file:NUM-DROPPED-FILES:
    
            CREATE tt-arquivo.
            ASSIGN
                tt-arquivo.nr-arquivo       = i
                tt-arquivo.nm-arquivo       = b-file:GET-DROPPED-FILE(i).
        END.
        OPEN QUERY q-file FOR EACH tt-arquivo.
        BROWSE b-file:REFRESH().
    END.
    
    
    OPEN QUERY q-file FOR EACH tt-arquivo.
    
    
    
    UPDATE
        in-tipo-arquivo-aux
        b-file
        WITH FRAME f-arquivos.
    

Compartilhe esta Página