Histórico da Página
...
Figura 2 - Popup para seleção dos arquivos a serem transferidos para o servidor.
Figura 3 - Popup para seleção dos arquivos com o modo de exibição: transfer.
Atributos
O componente possue 2 possui 3 atributos excenciais para seu correto funcionamentopara a parametrização do componente:
Atributo | Descrição |
|---|---|
storageMode | Modo com que será armazenado os arquivos. Podendo ser temporary (temporário) ou definitive (definitivo).Obs: Definitivo ainda indisponível. |
selectionFileMode | Quantidade de arquivos que o usuário poderá selecionar. Podendo ser single (único) ou multiple (vários). |
| mode | Modo de exibição da tela e comportamento do upload. Pode ser transfer (exibe somente a aba de Transferência, ao clicar no botão Ok, é realizado o upload de todos os arquivos presente na grid onde não haverá a necessidade de efetuar o Upload para depois seleciona-lo na aba de Visualização) ou all (exibe as abas Transferência e Visualização com as ações padrão do componente). Caso o parâmetro não seja configurado, o sistema define como padrão o valor all. |
Modo de Uso
O componente DatasulUpload no Metadados pode ser utilizado através de formulários do tipo FreeForm, conforme mostra a figura abaixo da paleta de componentes:
Figura 34 - Localização Localização na paleta de componente no freeform
...
Método/Atributo | Descrição |
|---|---|
GETPROPERTY ( upload, "files" ) | Retorna uma Temp-Table contendo as informações (name, type, size) dos arquivos selecionados pelo usuário. |
SETPROPERTY ( upload, "filtersFile", ttFiltersFile ) | Atribui uma Temp-Table contendo a descrição (description) e os tipos de arquivos (extension) que podem ser selecionados para realizar o upload. |
| OPEN-UPLOAD(widgetId, mode) | Abre a tela de Upload relacionada ao componente DatasulUpload (widgetId), customizada de acordo com o parâmetro mode ('transfer' ou 'all'). |
Evento | Descrição |
|---|---|
onCloseUpload | Evento disparado ao fechar a tela de Upload, independentemente do modo escolhido. |
Exemplos
Veremos a seguir um exemplo de como pegar os arquivos que foram selecionados pelo usuário:
| Bloco de código |
|---|
...
| ||
/* Referência para o componente de upload */ |
...
DEFINE VARIABLE upload AS WIDGET-HANDLE. |
...
/* Formato da Temp Table retornado pela função de pegar a propriedade files */ |
...
DEFINE TEMP-TABLE ttFiles |
...
FIELD name AS CHARACTER |
...
FIELD type AS CHARACTER |
...
FIELD appServerPath AS CHARACTER |
...
FIELD jbossPath AS CHARACTER |
...
FIELD size AS DECIMAL. |
...
/* Pega as propriedades dos arquivos que foram realizados upload e selecionados pelo usuário */ |
...
ttFiles = GETPROPERTY(upload, "files"). |
...
| Nota |
|---|
Observações:
|
...
Agora veremos um outro exemplo de como filtrar os tipos de arquivos que o usuário poderá fazer upload*:
| Bloco de código | |
|---|---|
|
...
| |
/* Referência para o componente de upload */ |
...
DEFINE VARIABLE upload AS WIDGET-HANDLE. |
...
/*Estrutura de dados necessária para os filtros de arquivos*/ |
...
DEFINE TEMP-TABLE |
...
FIELD description AS CHARACTERFIELD extension AS CHARACTER./* Documentos */CREATE ttFiltersFile....
ttFiltersFileFIELD description AS CHARACTERFIELD extension AS CHARACTER. /* Documentos */ CREATE ttFiltersFile.ttFiltersFile.description = "Documentos". |
...
ttFiltersFile.extension = "*.txt;*.doc;*.pdf;". |
...
/* Imagens */ |
...
CREATE ttFiltersFile. |
...
ttFiltersFile.description = "Images". |
...
ttFiltersFile.extension = "*.png;*.jpeg;*.bmp". |
...
/* Atribui ao componente de upload os tipos de arquivos que podem ser feitos upload */ |
...
SETPROPERTY(upload,"filtersFile",ttFiltersFile). |
...
| Nota |
|---|
Observações:
|
Um exemplo para a chamada do componente de upload via ABLScript.
| Bloco de código | ||
|---|---|---|
| ||
/* Referência para o componente de upload |
...
*/
DEFINE VARIABLE uploadFile AS WIDGET-HANDLE.
/* Função que executa a chamada do Popup de Upload */
OPEN-UPLOAD(uploadFile, "transfer"). |
| Nota |
|---|
Observações:
|
...

