Private Sub InsereEntradas() 'Função de inserção de notas deacordo com a quantidade expressa na GUI 'Propriedades Dim n As Integer Dim i As Integer Dim idNota As Long Dim idItem As Long Dim ideNNF As Long Dim tipoOp As Integer Dim cfop As Integer 'Seta o tipo e CFOP dependendo da operação If Option1.Value = True Then tipoOp = 0 cfop = 1102 Else tipoOp = 1 cfop = 5102 End If 'Recupara o id da última nota idNota = 0 Dim sql As Variant sql = "SELECT MAX(ID) FROM NOTAS" Set qryGERAL = conn.Execute(sql) If qryGERAL(0) > 0 Then idNota = qryGERAL(0) End If 'Recupera o id do último item idItem = 0 sql = "SELECT MAX(ID) FROM NOTAS_ITENS" Set qryGERAL = conn.Execute(sql) If qryGERAL(0) > 0 Then idItem = qryGERAL(0) End If 'Recupera IDE_NNF na tabela notas ideNNF = 0 sql = "SELECT MAX(IDE_NNF) FROM NOTAs" Set qryGERAL = conn.Execute(sql) If qryGERAL(0) > 0 Then ideNNF = qryGERAL(0) End If ProgressBar1.Min = 0 ProgressBar1.Max = CInt(txtNotas(0).Text) For n = 1 To CInt(txtNotas(0).Text) 'Inicio da inserção das notas conforme quantidade especificada no txtNota(0) idNota = idNota + 1 ideNNF = ideNNF + 1 sql = "EXECUTE PROCEDURE ASS_NOTAS" sql = sql + "(" + CStr(idNota) + "," 'CODIGO SEQUENCIAL. USADO PARA REFERENCIAR TABELA [NOTAS_ITENS]. sql = sql + CStr(tipoOp) + "," 'Tipo de Operação 0-entrada / 1-saída sql = sql + CStr(cfop) + "," 'Código Fiscal de Operações e Prestações. Utilizar Tabela de CFOP. sql = sql + "'00'," 'Tabela Situação do Documento sql = sql + "1," 'Indicador da forma de pagamento: sql = sql + "'01'," 'Tabela Documentos Fiscais do ICMS 4.1.1 sql = sql + "'0'," 'Série do Documento Fiscal, preencher com zeros na hipótese de a NF-e não possuir série. sql = sql + CStr(ideNNF) + "," 'Número do Documento Fiscal. sql = sql + "'01/11/2011'," 'Data de emissão do Documento Fiscal sql = sql + "'01/26/2011'," 'Data de Saída ou da Entrada da Mercadoria/Produto sql = sql + "'00:00:00'," 'Hora de Saída ou da Entrada da Mercadoria/Produto sql = sql + "1500602," 'Código do Município de Ocorrência do Fato Gerador. sql = sql + "''," 'CHAVE DA NF-E. CASO O REGISTRO FOR REFERENTE A NFE. DEIXAR NULL SE FOR MODELO 1/1A sql = sql + "''," 'CHAVE DO CONHECIMENTO DE TRANSPORTE ELETRONICO. sql = sql + "'" + txtNotas(3).Text + "'," 'CODIGO DO DESTINATARIO/EMITENTE DA NOTA sql = sql + "'" + txtNotas(1).Text + "'," 'CPF do REMETENTE/RECEBEDOR sql = sql + "'" + txtNotas(2).Text + "'," 'Razão Social ou Nome sql = sql + "'ORTOBOM'," 'Nome fantasia sql = sql + "'ROD. BR 316'," 'Logradouro sql = sql + "'S/N'," 'Numero sql = sql + "'KM 10'," 'Complemento sql = sql + "'SÃO JOÃO'," 'Bairro sql = sql + "1504422," 'Código do município. Utilizar a Tabela do IBGE sql = sql + "'MARITUBA'," 'Nome do município sql = sql + "'PA'," 'Sigla UF sql = sql + "'67200000'," 'Código de Endereçamento Postal. sql = sql + "1058," 'Codigo do País sql = sql + "'BRASIL'," 'Nome do País sql = sql + "''," 'Telefone sql = sql + "'151973164'," 'Inscricao Estadual sql = sql + "''," 'IE do Substituto Tributário sql = sql + "''," 'Inscrição Municipal sql = sql + "''," 'CNAE fiscal sql = sql + "0," 'Código de Regime Tributário sql = sql + "''," 'Inscrição na SUFRAMA sql = sql + "''," 'Endereço do correio eletrônico. sql = sql + "0," 'Codigo da Transportadora sql = sql + "9," 'Modalidade do frete sql = sql + "''," 'Informar o CNPJ ou o CPF do Transportador sql = sql + "''," 'Razão Social ou nome sql = sql + "''," 'Inscrição Estadual sql = sql + "''," 'Nome do Bairro sql = sql + "''," 'Logradouro sql = sql + "1058," 'Codigo do Pais sql = sql + "0," 'Código do município. Utilizar a Tabela do IBGE sql = sql + "''," 'Descricao do Municipio do Transportador sql = sql + "0," 'Numero sql = sql + "''," 'Sigla UF sql = sql + "''," 'Placa do Veículo sql = sql + "''," 'Registro Nacional de Transportador de Carga (ANTT) sql = sql + "0," 'Quantidade de volumes transportados sql = sql + "''," 'Espécie dos volumes transportados sql = sql + "''," 'Marca dos volumes transportados sql = sql + "''," 'Numeração dos volumes transportados sql = sql + "0," 'Peso Líquido (em kg) sql = sql + "0," 'Peso Bruto (em kg) sql = sql + "544.10," 'Base de Cálculo do ICMS sql = sql + "92.49," 'Valor Total do ICMS sql = sql + "0," 'Base de Cálculo do ICMS ST sql = sql + "0," 'Valor Total do ICMS ST sql = sql + "544.10," 'Valor Total dos produtos (C100) ou da prestação de serviços (D100, D500) sql = sql + "0," 'Valor Total do Frete sql = sql + "0," 'Valor Total do Seguro sql = sql + "0," 'Valor Total do Desconto sql = sql + "0," 'Valor Total do II sql = sql + "0," 'Valor Total do IPI sql = sql + "0," 'Valor do PIS sql = sql + "0," 'Valor do COFINS sql = sql + "0," 'Outras Despesas acessórias sql = sql + "544.10," 'Valor Total da NF sql = sql + "''," 'Numero da NF referenciada. sql = sql + "''," 'Modelo do Documento Fiscal sql = sql + "0," 'Número de ordem seqüencial do ECF sql = sql + "0," 'Número do Contador de Ordem de Operação - COO sql = sql + "1," 'Formato de Impressão. 1-Retrato/ 2-Paisagem sql = sql + "1," 'Tipo de Emissão da NF sql = sql + "0," 'Dígito Verificador da Chave de Acesso da NF-e sql = sql + "1," 'Identificação do Ambiente. 1-Produção/ 2-Homologação sql = sql + "0," 'Finalidade de emissão da NFe sql = sql + "0," 'Identificador do processo de emissão da NF-e: sql = sql + "''," 'Identificador da versão do processo de emissão (informar a versão do aplicativo emissor de NF-e). sql = sql + "'01/01/2011'," 'Data e Hora da entrada em contingência sql = sql + "''," 'Justificativa da entrada em contingência sql = sql + "null," 'Indicador do tipo de titulo de credito (apenas para NFs 1/1A): sql = sql + "null," 'Código de classe de consumo de energia elétrica ou gás. sql = sql + "null);" 'Indicador do emitente do documento fiscal: conn.Execute (sql) idItem = idItem + 1 'Insere o primeiro item da nota sql = "EXECUTE PROCEDURE ASS_NOTAS_ITENS(" sql = sql + CStr(idItem) + "," 'NUMERO SEQUENCIAL sql = sql + CStr(idNota) + "," 'REFERE-SE AO [NOTAS].[ID], VINCULANDO OS DADOS. MESTRE/DETALHE. sql = sql + "'0000000005557'," 'Código do produto sql = sql + "'0000000005557'," 'GTIN (Global Trade Item Number) do produto, antigo código EAN ou código de barras sql = sql + "'COLCHAO ORTOBOM D-45 PHYSICAL 138X20..............'," 'Descrição do produto. sql = sql + "''," 'Código NCM com 8 dígitos ou 2 dígitos (gênero). sql = sql + CStr(cfop) + "," 'Código Fiscal de Operações e Prestações sql = sql + "'UN'," 'Informar a unidade de comercialização do produto. sql = sql + "1," 'Informar a quantidade de comercialização do produto sql = sql + "0," 'Informar o valor unitário de comercialização do produto. sql = sql + "246.61," 'Valor Total Bruto dos Produtos sql = sql + "0," 'Valor Total do Frete sql = sql + "0," 'Valor Total do Seguro sql = sql + "0," 'Valor do Desconto sql = sql + "0," 'Outras despesas acessórias sql = sql + "'00'," 'CODIGO DE SITUACAO TRIBUTARIA. Tributação do ICMS sql = sql + "'01'," 'CODIGO DE SITUACAO TRIBUTARIA. Tributação do PIS sql = sql + "'01'," 'CODIGO DE SITUACAO TRIBUTARIA. Tributação do COFINS sql = sql + "'99'," 'CODIGO DE SITUACAO TRIBUTARIA. Tributação do IPI sql = sql + "''," 'Número do Documento de Importação DI/DSI/DA sql = sql + "NULL," 'Data de Registro da DI/DSI/DA sql = sql + "''," 'Local de desembaraço sql = sql + "''," 'Sigla da UF onde ocorreu o Desembaraço Aduaneiro sql = sql + "''," 'Código do exportador sql = sql + "0," 'NUMERO IDENTIFICADOR MESTRE/DETALHE. sql = sql + "246.61," ' sql = sql + "17.00," ' sql = sql + "41.92," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL," ' sql = sql + "NULL);" ' conn.Execute (sql) idItem = idItem + 1 'Insere o segundo item da nota sql = "EXECUTE PROCEDURE ASS_NOTAS_ITENS(" sql = sql + CStr(idItem) + "," sql = sql + CStr(idNota) + "," sql = sql + "'0000000019266'," sql = sql + "'0000000019266'," sql = sql + "'0000000019266'," sql = sql + "''," sql = sql + CStr(cfop) + "," sql = sql + "'UN'," sql = sql + "1," sql = sql + "0," sql = sql + "100.29," sql = sql + "0," sql = sql + "0," sql = sql + "0," sql = sql + "0," sql = sql + "'00'," sql = sql + "'01'," sql = sql + "'01'," sql = sql + "'99'," sql = sql + "''," sql = sql + "NULL," sql = sql + "''," sql = sql + "''," sql = sql + "''," sql = sql + "0," sql = sql + "100.29," sql = sql + "17.00," sql = sql + "17.05," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL);" conn.Execute (sql) idItem = idItem + 1 'Insere o terceiro item da nota sql = "EXECUTE PROCEDURE ASS_NOTAS_ITENS(" sql = sql + CStr(idItem) + "," sql = sql + CStr(idNota) + "," sql = sql + "'0000000008303'," sql = sql + "'0000000008303'," sql = sql + "'BOX ORTOBOM UNION ESPUMA 88X43....................'," sql = sql + "''," sql = sql + CStr(cfop) + "," sql = sql + "'UN'," sql = sql + "1," sql = sql + "0," sql = sql + "197.20," sql = sql + "0," sql = sql + "0," sql = sql + "0," sql = sql + "0," sql = sql + "'00'," sql = sql + "'01'," sql = sql + "'01'," sql = sql + "'99'," sql = sql + "''," sql = sql + "NULL," sql = sql + "''," sql = sql + "''," sql = sql + "''," sql = sql + "0," sql = sql + "197.20," sql = sql + "17.00," sql = sql + "33.52," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "0," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL," sql = sql + "NULL);" conn.Execute (sql) ProgressBar1.Value = n Next MsgBox "Notas Inseridas com sucesso!" ProgressBar1.Value = 0 Adodc1.Refresh End Sub