# OS 91994 - MELHORIA - DOC. ELETRÔNICO - DOWNLOAD DE XML EM LOTE

#### **Objetivo:**

Essa solicitação tem por objetivo implementar a nova rotina de **download de arquivos XML de NF-e em lote** no módulo **Documentos Eletrônicos (NFE &gt; Download em Lote)**, garantindo que:

- Os filtros e regras de tela funcionem conforme especificação;
- O download em lote (selecionados e todos) gere arquivos ZIP corretos;
- A integração com **Relatórios &gt; Em Processamento** esteja funcionando;
- O download individual a partir do relatório seja concluído com sucesso;
- A **situação originalmente reportada** na solicitação seja efetivamente corrigida no desenvolvimento final.

#### **Premissas:**

- Necessário o ambiente estar atualizado com a versão: **Doc. Eletrônico** de número **126308 Genexus 17** ou superior;
- Funcionalidade "**wpDownLoteXML"** precisa estar ativa no perfil do usuário.  
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/oAySKDRJMUHMdLvt-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/oAySKDRJMUHMdLvt-image.png)
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/JuhTVqU5epKrT3WB-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/JuhTVqU5epKrT3WB-image.png)
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/zPACZZzOIij2ttqU-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/zPACZZzOIij2ttqU-image.png)
    
      
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/KeBWx3lJFw9prOed-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/KeBWx3lJFw9prOed-image.png)
- Usuário com permissão à empresa/filial onde existem NF-e emitidas.

#### **Teste realizado após a atualização**

#### **Cenário 01 – Acesso à tela e regras de filtros**

**Objetivo do cenário:**  
Garantir que o acesso à tela respeite permissões e que os filtros iniciais sejam aplicados corretamente.

**Passo a passo:**

1. Acessar o **módulo Documentos Eletrônicos**.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/YpwtppURh34I1lIy-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/YpwtppURh34I1lIy-image.png)
2. Navegar até o menu **NFE &gt; Download em Lote**.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/vIqkIxHjwGJp9LGU-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/vIqkIxHjwGJp9LGU-image.png)
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/sIIHCoByBERkrNKL-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/sIIHCoByBERkrNKL-image.png)

<p class="callout info">**Resultado esperado:**</p>

- Ao acessar o menu, a tela **Download em Lote** é exibida conforme layout definido.
- As datas de emissão **Inicial e Final** são preenchidas automaticamente com o **período dos últimos 15 dias**.
- O grid lista **somente XML de notas do tipo NF-e**.
- Ao informar uma Data Final menor que a Data Inicial, o sistema **zera a variável correspondente à Data Final** (campo é limpo/ajustado) e impede a pesquisa inconsistente, conforme regra definida.
- Usuário **sem a funcionalidade “wpDownLoteXML”** não consegue acessar a tela (menu oculto, acesso negado ou mensagem de permissão, conforme padrão do sistema).

---

#### **Cenário 02 – Tentativa de “Baixar Selecionados” sem seleção no grid**

**Objetivo do cenário:**  
Validar a mensagem de alerta ao tentar baixar XML sem nenhum registro selecionado.

**Pré-requisitos:**

- Cenário 01 validado.
- Existência de NF-e listadas no grid.

**Passo a passo:**

1. Na tela **NFE &gt; Download em Lote**, manter os filtros que retornem registros no grid.
2. **Não marcar** nenhuma linha no grid.
3. Clicar no botão **“Baixar Selecionados”**.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/h9zr3OQTr3xcfavi-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/h9zr3OQTr3xcfavi-image.png)

<p class="callout info">**Resultado esperado:**</p>

- O sistema **não** inicia nenhum processo de download.
- É exibida **mensagem de alerta** informando que **não há registros selecionados** para download.
- Nenhum arquivo ZIP é gerado.

---

#### **Cenário 03 – Download em lote apenas dos registros selecionados na página**

**Objetivo do cenário:**  
Confirmar que o botão **“Baixar Selecionados”** gera um ZIP apenas com os XML selecionados na **página atual**.

**Pré-requisitos:**

- Cenário 01 validado.
- Grid com múltiplos registros paginados (mais de uma página de resultados).

**Passo a passo:**

1. Na tela **NFE &gt; Download em Lote**, aplicar filtros que retornem mais de uma página de NF-e.
2. Na **página atual** do grid, marcar alguns registros desejados (ex.: 3 notas).
3. Confirmar que existem outras páginas com registros (sem marcar nada nas demais páginas).
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/nUt68WljZogL2OTq-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/nUt68WljZogL2OTq-image.png)
4. Clicar no botão **“Baixar Selecionados”**.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/2Hz6wToa0eW6wfnV-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/2Hz6wToa0eW6wfnV-image.png)
5. Aguardar a geração do arquivo ZIP e o download pelo navegador.
6. Abrir o arquivo ZIP gerado e verificar seu conteúdo.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/E62hirXUCprIU0qF-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/E62hirXUCprIU0qF-image.png)

<p class="callout info">**Resultado esperado:**</p>

- O sistema exibe status de processamento (se aplicável) e em seguida o download do **arquivo ZIP** é iniciado.
- O **arquivo ZIP** contém **apenas os XML dos registros selecionados na página atual**.
- Não são incluídos XML de registros não selecionados ou de outras páginas do grid.
- Os arquivos XML dentro do ZIP estão íntegros e com nomenclatura conforme padrão de NF-e.

---

#### **Cenário 04 – Download de todas as notas (processamento em segundo plano)**

**Objetivo do cenário:**  
Validar o fluxo de **“Baixar todos”**, com geração do arquivo ZIP em segundo plano e acompanhamento pela tela **Relatórios &gt; Em Processamento**.

**Pré-requisitos:**

- Cenário 01 validado.
- Existência de várias NF-e retornadas pela pesquisa.

**Passo a passo:**

1. Na tela **NFE &gt; Download em Lote**, aplicar filtros que retornem um conjunto representativo de NF-e (múltiplas notas).
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/C0ndopK1HfeCFWMh-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/C0ndopK1HfeCFWMh-image.png)
2. Clicar no botão **“Baixar todos”**.
3. Na mensagem de confirmação exibida, clicar em **“SIM”** para prosseguir.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/1izThU6IljdEszQX-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/1izThU6IljdEszQX-image.png)
4. Verificar se o sistema redireciona automaticamente para a tela **Relatórios &gt; Em Processamento**.
5. Na tela de **Em Processamento**, localizar o registro do download em lote recém-gerado (pelo nome do relatório/descrição, data e usuário).  
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/TevceDJo5MPYFMqa-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/TevceDJo5MPYFMqa-image.png)
6. Aguardar o término do processamento.
7. Após a conclusão, clicar para **baixar o arquivo ZIP** gerado.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/e1oOk0P06PyaLu3P-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/e1oOk0P06PyaLu3P-image.png)
8. Abrir o ZIP e validar a quantidade e o conteúdo dos XML.
    
    [![image.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/scaled-1680-/Lq7uyFCE3b9rZON0-image.png)](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-11/Lq7uyFCE3b9rZON0-image.png)

<p class="callout info">**Resultado esperado:**</p>

- Ao clicar em **“Baixar todos”**, o sistema exibe uma **mensagem de confirmação**.
- Ao confirmar (**SIM**), o processo de geração do ZIP é enviado para **processamento em segundo plano**.
- A tela **Relatórios &gt; Em Processamento** é exibida automaticamente, mostrando o **registro do processo de download em lote**.
- Após a conclusão, o **arquivo ZIP** fica disponível para download no dashboard.
- O ZIP contém **todos os XML das notas que atendem aos filtros aplicados** (não apenas os da página atual).
- Arquivos XML estão íntegros e consistentes com o filtro de pesquisa utilizado na tela de Download em Lote.

![4.png](https://wiki.sendsolutions.com.br/uploads/images/gallery/2025-03/scaled-1680-/eO9m8fVMKPpticCz-4.png)

<p class="callout danger">**ATENÇÃO: As informações neste documento são meramente ilustrativas e utilizadas apenas para fins de teste.**</p>