+3 votos
58 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) | 58 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

423 perguntas
470 respostas
342 comentários
466 usuários