Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Informações
  • Disponível a partir da Lib 2023022020230227;
  • Uma vez que os dados de processamento são gravados no BD ao invés da memória, uma performance inferior é esperada em relação a geração com dados em memória;
  • A definição deste método deve ser realizada antes que seja realizada qualquer inserção de dados no objeto (ex.: AddRow);
  • Sua utilização exige ambiente previamente preparado, visto a necessidade de gravação dos dados no BD;
  • Funcional apenas para ambientes com versão do DbAccess 22.1.1.0 ou superior.

...

lHabilitou := FwMsExcelXlsx():SetWriteinDB(<lWriteinDb>, <nLimit>) 

Parâmetros


NomeTipoDescriçãoDefaultObrigatório
lWriteinDbLógicoInformar .T. para habilitar a gravação no BD
X
nLimitNumérico

Indica o limite de registros para disparar o Bulk Insert. 

200.000


Retorno


TipoDescrição
Lógico

Informa se a funcionalidade foi habilitada com sucesso.

Exemplo:
Caso seja efetuada uma tentativa de uso em ambiente com DbAccess inferior a 22.1.1.0, será retornado .F. e nesta situação os dados serão gravados da forma padrão (em memória), ocasionando maior consumo de memória do sistema.

Informações
titleImportante

Considerações sobre o uso do parâmetro <nLimit>:

  • Para reduzir o impacto de performance, a gravação no banco de dados ocorre por Bulk Insert, por padrão os registros são gravados em blocos de 200.000 registros (células);
  • Por limitação do SQLite, a inserção ocorre registro a registro gerando impacto de performance;
  • Quanto maior o numero de registros, melhor será a performance neste modo porém com maior consumo de memória e custo para o BD.

...