private void ProcessarDetalhesNotasFiscaisMercadorias(RegistroC100 regC100, string codEmp) { this.UpdateStatusAsynchronousExecution("Processando detalhes de documento fiscal"); // Processa possíveis informações de importação this.UpdateStatusAsynchronousExecution("Processando informações de importação"); IEnumerable <RegistroC120> registrosC120 = NotasFiscaisMercadoriasService.GetRegistrosC120(regC100.PK_NOTAFIS, codEmp); foreach (RegistroC120 regC120 in registrosC120) { this.UpdateStatusAsynchronousExecution("Gerando Registro C120"); DadosArquivoPisCofinsService.PersistirRegistro(regC120); } // Processsa informações dos itens da nota fiscal this.UpdateStatusAsynchronousExecution("Processando itens de documento fiscal"); IEnumerable <RegistroC170> registrosC170 = NotasFiscaisMercadoriasService.GetRegistrosC170(regC100.PK_NOTAFIS, codEmp); foreach (RegistroC170 regC170 in registrosC170) { this.UpdateStatusAsynchronousExecution("Gerando Registro C170"); DadosArquivoPisCofinsService.PersistirRegistro(regC170); this.ProcessarUnidade(regC170.UNID, codEmp); this.ProcessarProduto(regC170.COD_ITEM, codEmp); } }
private void ProcessarNotasFiscaisMercadorias() { try { IEnumerable <RegistroC100> registrosC100 = NotasFiscaisMercadoriasService.GetRegistrosC100(); foreach (RegistroC100 regC100 in registrosC100) { try { this.UpdateStatusAsynchronousExecution("Gerando Registro C100"); DadosArquivoFiscalService.PersistirRegistro(regC100); // Processa informações do cliente ou fornecedor vinculado a uma nota fiscal this.ProcessarParticipante(regC100.COD_PART); if (regC100.ST_DOC_CANCELADO != "S") // Não persiste registros filhos caso haja cancelamento { this.ProcessarDetalhesNotasFiscaisMercadorias(regC100); } } catch (Exception ex) { throw ex; } } } catch (Exception ex) { throw ex; } }
private void ProcessarDetalhesNotasFiscaisMercadorias(RegistroC100 regC100) { try { this.UpdateStatusAsynchronousExecution("Processando detalhes de documento fiscal"); // Processsa informações dos itens da nota fiscal this.UpdateStatusAsynchronousExecution("Processando itens de documento fiscal"); IEnumerable <RegistroC170> registrosC170 = NotasFiscaisMercadoriasService.GetRegistrosC170(regC100.PK_NOTAFIS); foreach (RegistroC170 regC170 in registrosC170) { this.UpdateStatusAsynchronousExecution("Gerando Registro C170"); DadosArquivoFiscalService.PersistirRegistro(regC170); this.ProcessarUnidade(regC170.UNID); this.ProcessarProduto(regC170.COD_ITEM); } try { // Processa informações de impostos agrupadas por Situação Tributária, CFOP e // Alíquota de ICMS this.UpdateStatusAsynchronousExecution("Processando impostos de documento fiscal"); IEnumerable <RegistroC190> registrosC190 = NotasFiscaisMercadoriasService.GetRegistrosC190(regC100.PK_NOTAFIS); foreach (RegistroC190 regC190 in registrosC190) { this.UpdateStatusAsynchronousExecution("Gerando Registro C190"); DadosArquivoFiscalService.PersistirRegistro(regC190); } } catch (Exception ex) { throw ex; } } catch (Exception) { throw; } }