+3 votos
78 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) | 78 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 (917 pontos)
selecionada por

Perguntas relacionadas

Melhores May 2020
  1. henrique.muller

    18 Pontos

  2. joao.melo

    14 Pontos

  3. joseglauber

    11 Pontos

  4. willian.metalsystem

    8 Pontos

  5. SlimShady

    7 Pontos

  6. lucas.melo

    3 Pontos

  7. fluipress.luciano

    2 Pontos

  8. pajucara.wallacef

    2 Pontos

  9. jean.filho

    2 Pontos

  10. maicon.pereira

    2 Pontos

200 pontos
Melhores 2020 May 25 - 31
  1. willian.metalsystem

    2 Pontos

434 perguntas
476 respostas
346 comentários
466 usuários