Duvida Capturar Impressoras

Discussão em 'Progress 4GL' iniciado por dudabrito, Junho 5, 2023.

  1. dudabrito

    dudabrito Membro Participativo

    Bom dia,

    Alguém sabe alguma forma de capturar as impressoras que estão na sessão do usuário no Totvs/Datasul ?

    A saber meus usuário conectam em uma máquina terminal service para acessar o Totvs, sendo que temos 7 máquinas terminal service que ele pode acessar. E o nome da impressora muda conforme o terminal que ele acessa, ai não consigo pegar o nome completo da impressora para redirecionar impressão. Não posso mandar para impressora padrão. Veja exemplo em anexo.

    Arquivos Anexados:

  2. lcpaulino

    lcpaulino Membro Participativo

    DEFINE VARIABLE c-aux-nome-impressoras AS CHARACTER NO-UNDO.
    DEFINE VARIABLE i-aux AS INTEGER NO-UNDO.

    DEFINE TEMP-TABLE tt-impressora NO-UNDO
    FIELD nome AS CHARACTER.

    EMPTY TEMP-TABLE tt-impressora.

    ASSIGN c-aux-nome-impressoras = SESSION:GET-PRINTERS().

    IF TRIM(c-aux-nome-impressoras) <> '' THEN DO:
    DO i-aux = 1 TO NUM-ENTRIES(c-aux-nome-impressoras):
    CREATE tt-impressora.
    ASSIGN tt-impressora.nome = ENTRY(i-aux, c-aux-nome-impressoras).
    END.
    END.

    FOR EACH tt-impressora:
    DISP
    tt-impressora.nome FORMAT 'x(100)'
    WITH SCROLLABLE.
    END.

    /*talvez isso resolva*/
  3. dudabrito

    dudabrito Membro Participativo

    Obrigado meu caro, matou a pau.
    Confesso que não conhecia o comando SESSION:GET-PRINTERS() mas seu código complementar me ajudou muito. Obrigadão.
  4. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    Uma dica pra limpar aquela sua lista, nas opções do TS, desmarca compartilhar impressoras, dai na lista de impressoras do TS, só vai aparecer as impressoras do TS e as REDIRECT vão sumir.

Compartilhe esta Página