+3 votos
51 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 (77 pontos) | 51 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 (899 pontos)
selecionada por

Perguntas relacionadas

Melhores Mar 2020
  1. henrique.muller

    28 Pontos

  2. willian.metalsystem

    24 Pontos

  3. juliano.pezzini

    14 Pontos

  4. alan.jantz

    9 Pontos

  5. SlimShady

    6 Pontos

  6. maicon.pereira

    6 Pontos

  7. anônimo

    5 Pontos

  8. rafael.paludo

    5 Pontos

  9. fabio

    5 Pontos

  10. robert.volles

    5 Pontos

200 pontos
Melhores 2020 Mar 30 - Apr 05
  1. anônimo

    5 Pontos

  2. willian.metalsystem

    2 Pontos

420 perguntas
470 respostas
342 comentários
465 usuários