+4 votos
258 visitas
Tenho uma tela em Delphi, feita com componentes padrão do Delphi e preciso colocar um componente para acessar um campo do tipo arquivo da minha tabela.

Qual a melhor forma para se fazer isso?
por (81 pontos) | 258 visitas

1 Resposta

+1 voto
Melhor resposta

Existem a funções do BSistema

unit uBSistemaWrapper;
...
CurrentSystemWrapper.SetFieldDocument
procedure SetFieldDocument(const aTable, aField: WideString; aHandle: Integer; const aLocalFile: WideString; SetFileNameInRecord: WordBool);
Informa o arquivo para tabela, campo e registro passados por parâmetro. O parâmetro SetFileNameInRecord indica que o sistema deve executar um update atualizando o nome do arquivo no campo correspondente. 
Obs.: Caso o sistema esteja com uma transação aberta, ficará a cargo do desenvolvimento o término da transação.
procedure GetFieldDocument(const aTable,aField:WideString;aHandle:Integer; const aLocalFile: WideString);
Copia o arquivo especificado do servidor para o arquivo informado em "aLocalFile".
procedure ClearFieldDocument(const aTable, aField:WideString; aHandle: Integer;SetFileNameInRecord: WordBool);
Remove o arquivo informado do servidor. Caso o parâmetro "SetFileNameInRecord" for informado como True o sistema irá executar um update atualizando o valor do campo para NULO.
Obs.: Caso o sistema esteja com uma transação aberta, ficará a cargo do desenvolvimento o término da transação. A operação de remoção de arquivo do servidor não pode ser desfeita, portanto, é altamente recomendado que esta seja a última operação antes do término de uma transação.
por (956 pontos)
selecionada por

Perguntas relacionadas

Melhores Aug 2025
  1. RheaIoi8215

    5 Pontos

  2. RositaLansel

    5 Pontos

  3. MilesWeston

    5 Pontos

  4. RoseannViera

    5 Pontos

  5. DianaNickel

    5 Pontos

  6. KandiGower0

    5 Pontos

200 pontos
Melhores 2025 Aug 18 - 24
  1. Larson

    156 Pontos

  2. danilo.pereira

    96 Pontos

  3. danilo.pereira

    96 Pontos

  4. danilo.pereira

    96 Pontos

  5. luciano.fronza

    61 Pontos

  6. luciano.fronza

    61 Pontos

  7. luciano.fronza

    61 Pontos

  8. diuari.molinari

    52 Pontos

  9. diuari.molinari

    51 Pontos

  10. diuari.molinari

    51 Pontos

517 perguntas
566 respostas
389 comentários
710 usuários