Conferência de Volumes Disponibilizado uma tela de conferência de volumes das Notas Fiscais (NFe's) emitidas. Neste manual será feito a explicação do funcionamento da mesma: Configuração Inicial (Recomendada) Nas configurações globais, indique as operações que serão predominantes na conferência separando-as por virgula; O campo de configuração fica em Configurações > Configurações Globais > Geral > Operações para tela de Conferência de Volumes. Exemplo de configuração: 5, 10, 16 Modo de uso Abra a tela de conferência e preencha os filtros necessários, são eles: - Filial: irá carregar a filial logada pelo operador; - Transportador: necessário indicar a transportadora vinculada às NFe's, uma por vez; - Operações: carrega as operações previamente configuradas nas Globais, mas permite edição na tela conforme necessário. Conferência de Volumes de Notas Fiscais Visão geral Tela criada para permitir que o operador realize a conferência física dos volumes de notas fiscais antes do carregamento do caminhão. O operador bipa as etiquetas das caixas (cada etiqueta contém a chave NFe em código de barras), e o sistema acompanha a contagem por NF até que o total bipado bata com o total de volumes informado em cada nota. Pré-requisitos / Configuração Parâmetro global de operações Em Configurações → Configurações Globais → Geral → Operações para tela de Conferência de Volumes, cadastrar os IDs das operações que devem aparecer na conferência, separados por vírgula. Exemplo: 1,49,19 Comportamento: Se vazio → a tela exibe alerta e o operador precisa selecionar as operações manualmente em cada conferência Se mal formatado (ex.: usar ; no lugar de ,) → a tela exibe alerta de configuração incorreta Acessando a tela (Adicione aqui o caminho do menu — depende de onde foi plugada na navegação do sistema) Filtros (cabeçalho) Campo Comportamento Filial Pré-preenchida com a filial do operador logado. Pode ser alterada. Transportador Obrigatório. Operação Multi-seleção. Vem pré-marcada com os IDs do parâmetro global; operador pode adicionar/remover. Período Conferência Combo com presets (Hoje, Ontem, Esta Semana, etc.) + "Personalizar". De / a Visíveis somente em "Personalizar". Aceitam data e hora (dd/MM/yyyy HH:mm). Por que data + hora Permite separar carga manhã (ex.: 06:00 → 12:00) de carga tarde (ex.: 13:00 → 18:00) no mesmo dia, e incluir notas faturadas à noite do dia anterior na carga do dia seguinte. Atalhos F3 — Pesquisar F5 — Gravar Fluxo de uso 1. Selecionar filtros e Pesquisar Operador preenche transportador, ajusta período/operações se necessário e clica Pesquisar (ou pressiona F3). A tela: Verifica se há outra conferência ativa no período (ver "Lock") Carrega a lista de NFs que atendem aos filtros Bloqueia os filtros (Filial, Transportador, Operação, Período) para garantir que a conferência siga a base carregada 2. Bipar volumes No campo Chave o operador bipa a etiqueta com o leitor (chave NFe de 44 dígitos). Cada bipada: Localiza a NF na lista e incrementa em 1 o volume conferido Salva automaticamente no banco (não há "Cancelar a bipagem") Emite bip sonoro de sucesso (Asterisk) e mantém o foco no campo A linha pinta amarela (parcial) ou verde (conferido) conforme a contagem Identificadores aceitos Chave NFe (44 dígitos) — uso normal via scanner ID da NF — coluna "Código" da grid; pode ser digitado e Enter Botão de seleção (…) — abre popup pra busca manual quando preciso 3. Atualizar a grid durante a conferência Se uma NF nova for faturada durante a conferência (caso de "surgiu mais uma caixa nessa carga"): O operador clica Pesquisar novamente A grid é recarregada As NFs já bipadas mantêm o progresso, a NF nova aparece como Pendente Filtros continuam bloqueados (a re-busca usa os mesmos valores) 4. Finalizar Três botões no rodapé: Gravar (F5) — finaliza a conferência. Mostra resumo (X conferidas, Y parciais, Z pendentes) e pede confirmação. Após confirmar: libera o lock e limpa o grid (operador pode iniciar nova carga sem fechar a tela). Cancelar — pede confirmação, libera o lock e limpa o grid. As bipagens continuam salvas no banco (não é desfeito) — podem ser retomadas depois com os mesmos filtros. Fechar — pede confirmação se há carga ativa, libera o lock e fecha a tela. Lock de conferência Sistema de trava que impede que duas pessoas confiram a mesma carga ao mesmo tempo. Como funciona Ao clicar Pesquisar (com notas encontradas), é registrado um lock contendo: emitente, transportador, data inicial, data final, operador e horário de início. Detecção de conflito A trava usa detecção de período sobreposto (não só igualdade exata). Considera conflito quando: lock.dataInicial ≤ novaConsulta.dataFinal E novaConsulta.dataInicial ≤ lock.dataFinal Exemplos: Lock existente: [10/03 00:00 → 11/03 15:00] Tentativa: [11/03 09:00 → 11/03 12:00] (período contido) → bloqueia Tentativa: [10/03 13:00 → 10/03 18:00] (tarde, sem sobrepor manhã 06:00→12:00) → permite Mensagens exibidas Cenário Mensagem Outro operador conferindo carga sobreposta "O operador 'X' está conferindo uma carga deste transportador no período … desde HH:mm:ss. Aguarde a finalização ou ajuste o período para não sobrepor." Mesmo operador, outra janela "Você já está conferindo uma carga deste transportador no período … (aberta às HH:mm:ss). Volte para a janela já aberta…" Quando o lock é liberado Automaticamente em: Gravar, Cancelar, Fechar, e ao destruir o controle (fechamento normal da tela). Não é liberado em: crash do sistema (kill do processo). Se isso ocorrer e o lock impedir uma conferência legítima, o registro deve ser removido manualmente da tabela nfConferenciaVolumeEdicao. Importante: lock só é criado se houver notas Se a pesquisa não retornar notas, não é criado lock — o operador pode ajustar os filtros sem ficar com travas órfãs. Status das NFs na grid Status Cor da linha Significado Pendente Branca Nenhum volume bipado Parcial Amarela Pelo menos 1 volume bipado, mas faltam mais Conferido Verde Total bipado = total de volumes da NF Alertas durante a bipagem Situação Comportamento Chave/ID não pertence à carga carregada Bip de erro + alerta "NF não pertence à carga carregada. Verifique transportador, emitente e período." NF já totalmente conferida Bip de erro + alerta "NF X já está totalmente conferida (N de N volumes)." Persistência Cada bipada é persistida imediatamente na tabela nfConferenciaVolume. Isso garante que: Crash ou fechamento inesperado não perde progresso O operador pode fechar a tela, voltar mais tarde e continuar de onde parou Em caso de revezamento (operador A faz parte, sai; operador B continua), basta o A liberar o lock (Cancelar/Fechar) que o B abre os mesmos filtros e a grid já vem com o progresso parcial O que dá pra ajustar Caminho do menu — preencher quando definirem Screenshots — se você quiser, adicionar prints (filtros, bipagem em andamento, resumo de gravação) Tabela de troubleshooting — só se aparecerem casos recorrentes em uso real Quer que eu adicione alguma seção que esqueci (relatórios futuros? integração com outras telas?) ou cortar algo que parece demais pra esse nível de doc?