Softcomshop - Rejeição NFCe: Vários registros em rejeição, porem com status de elaboração não sendo possível fazer o reenvio
Software: SOFTCOMSHOP | Grupo: VENDAS
Solução
Causa: Caso seja emitido uma NFCe no SOFTCOMSHOP e por algum motivo ela rejeite e seu status fique em elaboração e após fazer a correção do motivo da rejeição tente fazer o reenvio, não vai ser possível pois o botão para reenvio de NFCe só fica disponível se o status da venda ficar em rejeição;

Solução : Para podermos reenviar essas vendas e autorizar, primeiramente devemos alterar o status das vendas, após a correção do motivo da rejeição; Para alterar o status da nota:
Devemos acessar o banco do cliente através do HeidiSQL, DBeaver ou MySQL.
Filtrar o banco do cliente e acessar a tabela nota_fiscal_eletronica e na coluna recibo_situacao a informação da coluna provavelmente vai estar como " NULL "; Caso esteja e seja uma pequena quantidade de registros de venda, deve-se alterar o status para "NAO_RECEBIDO" na coluna e reenviar a nota no SOFTCOMSHOP;

2.1. Caso seja mais de uma venda pode ser executado uma consulta seleção onde irá trazer as vendas que estejam com o status " NULL " na coluna " recibo_situacao ";
SELECT y.id, y.recibo_situacao, y.chave_acesso
FROM venda AS x
INNER JOIN nota_fiscal_eletronica AS y
ON (x.nfe_id = y.id)
WHERE y.recibo_situacao IS NULL
2.2. Verificar se as vendas listadas correspondem as que precisa alterar.
2.3. Executar a consulta UPDATE, atualizando o status de todas as vendas listadas anteriormente no SELECT para " NAO_RECEBIDO "
UPDATE venda AS x
INNER JOIN nota_fiscal_eletronica AS y
ON (x.nfe_id = y.id)
SET y.recibo_situacao = 'NAO_ENVIADO'
WHERE y.recibo_situacao IS NULL

2.4. Para reenviar as vendas em lote podemos executar um comando no Shell para que seja acionado o EndPoint do SOFTCOMSHOP onde realizar o reenvio da venda para autorizar o cupom de acordo com as vendas listadas;
Abrir o Windows Power Shell como administrador e em seguida anexar o script:
Lista de Valores
$valores = @(" VALORES ")
#URL base
$urlBase =
' "URL do cliente " /vendas/{0}/gerar-nota-fiscal-consumidor'
#Loop para abrir a URL para cada valor na lista
foreach ($valor in $valores) {
#Construir a URL completa
$urlCompleta = $urlBase -f $valor
#Abrir a URL no navegador padrão
Start-Process $urlCompleta
}Onde na linha " $valores = @(" VALORES ") " deve ser informado as vendas que deseja reenviar. Exemplo, reenviar as vendas e 1 a 5... a linha de código devera ficar no script:
" $valores = @(" 1, 2, 3, 4, 5 ") ";
Já na linha ' "URL do cliente " /vendas/{0}/gerar-nota-fiscal-consumidor ' , deverá ser anexado a url do cliente; Exemplo, url: https;//qualidade.softcomshop.bom.br, com isso a linha irá ficar:
' https;//qualidade.softcomshop.bom.br /vendas/{0}/gerar-nota-fiscal-consumidor '
Após realizar os ajustes, só executar o script e aguardar a finalização;
Validar no sistema se as vendas foram enviadas;
Tags: softcomshop, rejeição, nfce, elaboração, reenvio, reenviar