Skip to main content
O ExportJob representa uma solicitação de exportação. Ele registra o recurso exportado, o escopo autorizado, as colunas e filtros escolhidos, o status do processamento e o arquivo final gerado em storage.

Campos

Relacionamentos

  • Relaciona-se com Organization, quando o escopo exigir organização.
  • Relaciona-se com Company, quando o escopo for COMPANY.
  • Relaciona-se com Cooperative, quando o escopo for COOPERATIVE.
  • Relaciona-se com User por requestedByUserId.
  • Referencia ExportResource por resource.
  • Relaciona-se com ExportScheduled, quando o job foi gerado por agendamento.

Regras de Negócio

  • resource deve existir como catálogo ativo em ExportResource.
  • exportScheduledId deve ser preenchido somente quando o job nasce de um ExportScheduled.
  • scopeType define quais identificadores de escopo são obrigatórios. Por exemplo, COOPERATIVE exige cooperativeId.
  • columns deve ser subconjunto das colunas permitidas no catálogo.
  • filters deve respeitar os campos e operadores permitidos no catálogo.
  • fileKey, fileName, contentType, sizeBytes, totalRows e expiresAt são preenchidos quando o arquivo final é gerado.
  • URLs assinadas para download não devem ser persistidas. Elas são derivadas de fileKey.
  • EXPIRED indica que o arquivo não deve mais ser disponibilizado para download.
  • Remoção lógica preserva histórico do job, mas não substitui a política de retenção do arquivo.

Enums

DataTransferScopeType

DataTransferFileFormat

ExportJobStatus

Example