DUPLICANDO ITENS APARTIR DO ICMS60

JOHNSTEVE 23/09/2016 13:58:07
#467378
Kerplunk nossa nem sei oq te dizer viu. é top esse metodo muito show de bola. bem q vc falou q eu tava fazendo um Caminhão de coisas. q poderia da problema como passei.
nesse metodo é show de bola muito show de bola. :D

ja estou pegando os dados da NFe :D

agora so falta os Itens da NFe. e Impostos :D

vc pode me dizer como pego os Itens ?
estou fazendo assim.
   If txtArquivo.Text = [Ô][Ô] Then
MsgBox([Ô]Localize o Arquivo XMl para Importação[Ô])
Else
[ô] btn_importar_ClickExtracted()

Dim ser As New XmlSerializer(GetType(Ler_XML_NFe.nfeProc))
Dim textReader As TextReader = DirectCast(New StreamReader(txtArquivo.Text), TextReader)
Dim reader As New XmlTextReader(textReader)
reader.Read()


Dim nota As Ler_XML_NFe.nfeProc = DirectCast(ser.Deserialize(reader), Ler_XML_NFe.nfeProc)


txt_Numero_NotaFiscal.Text = nota.NFe.infNFe.ide.nNF
txt_Serie.Text = nota.NFe.infNFe.ide.serie
txt_Modelo.Text = nota.NFe.infNFe.ide.mod
txt_NaturezaOperacao.Text = nota.NFe.infNFe.ide.natOp
mkb_DataEmissao.Text = CDate(nota.NFe.infNFe.ide.dhEmi)


[ô]AQUI FICA OS DADOS DO EMITENTE
txt_Cnpj_Emitente.Text = nota.NFe.infNFe.emit.CNPJ
txt_RazaoSocial_Emitente.Text = nota.NFe.infNFe.emit.xNome
txt_Ins_Estadual_Emitente.Text = nota.NFe.infNFe.emit.IE

_CRT_ = nota.NFe.infNFe.emit.CRT
If _CRT_ = [Ô]1[Ô] Then
Me.lbl_regime_tributacao.Text = [Ô]1-SIMPLES NACIONAL[Ô]
ElseIf _CRT_ <> [Ô]1[Ô] Then
Me.lbl_regime_tributacao.Text = [Ô]2-EMPRESA NORMAL[Ô]
End If

[ô]AQUI FICA O ENDEREÇO DO EMITENTE
txt_Logradouro_Emitente.Text = nota.NFe.infNFe.dest.enderDest.xLgr
txt_Cidade_Emitente.Text = nota.NFe.infNFe.dest.enderDest.xMun
txt_UF_Emitente.Text = nota.NFe.infNFe.dest.enderDest.UF
txt_Cep_Emitente.Text = nota.NFe.infNFe.dest.enderDest.CEP

Try
TelFornecedor = nota.NFe.infNFe.dest.enderDest.fone
Catch ex As Exception
TelFornecedor = Nothing
End Try
If TelFornecedor <> [Ô][Ô] Then
txt_Telefone_Emitente.Text = TelFornecedor
End If

txt_Bairro_Emitente.Text = nota.NFe.infNFe.dest.enderDest.xBairro
txt_Numero_Emitente.Text = nota.NFe.infNFe.dest.enderDest.nro
txtCodMunicipio.Text = nota.NFe.infNFe.dest.enderDest.cMun

Dim AddGrid As Integer
For AddGrid = 0 To dgv_Produtos_NotaFiscal.Rows.Count - 1
dgv_Produtos_NotaFiscal.Rows.Add()

dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(0).Value = nota.NFe.infNFe.det
..........
........
.........[ô]falta os itens e Impostos

Next
NILSONTRES 23/09/2016 15:16:03
#467382
Resposta escolhida
Itens é mais ou menos isso.
For I = 0 To Nota.NFe.infNFe.det.Count - 1
Dim V_vProd As Double = Format(CType(Replace(Nota.NFe.infNFe.det(I).prod.vProd, [Ô].[Ô], [Ô],[Ô]), Double))
[ô]**GRID2
GRID_ITENS2.Rows.Add()
GRID_ITENS2.Rows(I).Cells(ICODCORRES2.Name).Value = [Ô]COD.CORRES[Ô]
GRID_ITENS2.Rows(I).Cells(IITEM2.Name).Value = I + 1
GRID_ITENS2.Rows(I).Cells(ICODPROD2.Name).Value = Nota.NFe.infNFe.det(I).prod.cProd
GRID_ITENS2.Rows(I).Cells(ICODBARRAS2.Name).Value = Nota.NFe.infNFe.det(I).prod.cEAN
GRID_ITENS2.Rows(I).Cells(IDESCRICAO2.Name).Value = Nota.NFe.infNFe.det(I).prod.xProd.ToUpper

[ô]**GRIDITENS
GRID_ITENS.Rows.Add()
GRID_ITENS.Rows(I).Cells(IDESC.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(ITOT.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvBC_ICMS.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpICMS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IpRedBC.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IpMVAST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvBCST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvICMSST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpICMSST.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvCredICMSSN.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpCredSN.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvBC_COFINS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvCOFINS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IpCOFINS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvBC_PIS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvPIS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IpPIS.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IpIPI.Name).Value = [Ô]0[Ô]
GRID_ITENS.Rows(I).Cells(IvBC_IPI.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvIPI.Name).Value = [Ô]0[Ô]


GRID_ITENS.Rows(I).Cells(ICODCORRES.Name).Value = [Ô]COD.CORRES[Ô]
GRID_ITENS.Rows(I).Cells(IITEM.Name).Value = I + 1
GRID_ITENS.Rows(I).Cells(ICODPROD.Name).Value = Nota.NFe.infNFe.det(I).prod.cProd
GRID_ITENS.Rows(I).Cells(ICODBARRAS.Name).Value = Nota.NFe.infNFe.det(I).prod.cEAN
GRID_ITENS.Rows(I).Cells(IDESCRICAO.Name).Value = Nota.NFe.infNFe.det(I).prod.xProd.ToUpper
GRID_ITENS.Rows(I).Cells(INCM.Name).Value = Nota.NFe.infNFe.det(I).prod.NCM

[ô]***********ICMS
[ô]**ICMS00
If Not Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS00 Is Nothing Then
GRID_ITENS.Rows(I).Cells(ICST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS00.CST
GRID_ITENS.Rows(I).Cells(IvBC_ICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS00.vBC
GRID_ITENS.Rows(I).Cells(IpICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS00.pICMS
GRID_ITENS.Rows(I).Cells(IvICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS00.vICMS
GRID_ITENS.Rows(I).Cells(IpRedBC.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpMVAST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvBCST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvICMSST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpICMSST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvCredICMSSN.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpCredSN.Name).Value = [Ô]0,00[Ô]
End If
[ô]**ICMS10
If Not Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10 Is Nothing Then
GRID_ITENS.Rows(I).Cells(ICST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.CST
GRID_ITENS.Rows(I).Cells(IvBC_ICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.vBC
GRID_ITENS.Rows(I).Cells(IpICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.pICMS
GRID_ITENS.Rows(I).Cells(IvICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.vICMS
GRID_ITENS.Rows(I).Cells(IpRedBC.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpMVAST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.pMVAST
GRID_ITENS.Rows(I).Cells(IvBCST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.vBCST
GRID_ITENS.Rows(I).Cells(IpICMSST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.pICMSST [ô]pICMSST
GRID_ITENS.Rows(I).Cells(IvICMSST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS10.vICMSST
GRID_ITENS.Rows(I).Cells(IvCredICMSSN.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpCredSN.Name).Value = [Ô]0,00[Ô]
End If
[ô]**ICMS20
If Not Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20 Is Nothing Then
GRID_ITENS.Rows(I).Cells(ICST.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20.CST
GRID_ITENS.Rows(I).Cells(IvBC_ICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20.vBC
GRID_ITENS.Rows(I).Cells(IpICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20.pICMS
GRID_ITENS.Rows(I).Cells(IvICMS.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20.vICMS
GRID_ITENS.Rows(I).Cells(IpRedBC.Name).Value = Nota.NFe.infNFe.det(I).imposto.ICMS.ICMS20.pRedBC
GRID_ITENS.Rows(I).Cells(IpMVAST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvBCST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpICMSST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvICMSST.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvCredICMSSN.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpCredSN.Name).Value = [Ô]0,00[Ô]
End If
[ô]**ICMS30
JOHNSTEVE 23/09/2016 16:25:00
#467392
vlw NILSONTRES ja estou quase concluindo

eu preciso das classe do ICMS20 icms30 icms41 icms51 icms70 ICMS90
os xmls q tenho aqui de exemplo. são icms00, icms10, icms60

eu crio um novo projeto e importo o xml que contem esses ICMS> dae copio e colo no meu projeto :D

Nilson se possivel me passe as classes desses icms que citei :) fazendo favor
NILSONTRES 23/09/2016 16:58:51
#467398
Segue a classe completa.



JOHNSTEVE 24/09/2016 16:16:59
#467422
Citação:

:
Segue a classe completa.





Vlw Nilson

ôw Nilson no IPI eu fiz assim. mais em alguns XML da ERRO.
veja no print
JOHNSTEVE 24/09/2016 16:20:00
#467423
O Kerplnuk esta de Parabéns

Que Facilidade de importar o XML, sem falar que é 100% seguro.

eu ia me ferrar na minha função q tinha feito usando o dataset. kkkkk

Chega dei rissada Kerplunk, quando vc falou [Ô]Meu Senhor, que caminhão de coisas...[Ô]
JOHNSTEVE 26/09/2016 08:52:10
#467480
Nilson bom dia tudo bem?

Nilson, para finalizar so falta o IPI. a função para tratar..
veja como fiz. ta dando erro

    [ô] If Not nota.NFe.infNFe.det(AddGrid).imposto.IPI.IPITrib Is Nothing Then
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(16).Value = FormatNumber(Convert.ToDouble(nota.NFe.infNFe.det(AddGrid).imposto.IPI.IPITrib.pIPI).ToString().Replace([Ô].[Ô], [Ô],[Ô]), 2) [ô][ô]aliq ipi
dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(14).Value = nota.NFe.infNFe.det(AddGrid).imposto.IPI.IPITrib.vIPI [ô]vlr ipi

[ô]Else
[ô]dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(16).Value = [Ô]0,00[Ô]
[ô]dgv_Produtos_NotaFiscal.Rows.Item(AddGrid).Cells(14).Value = [Ô]0,00[Ô]
[ô]End If


eu so preciso da Aliquota e o Valor mais da erro nesse if q fiz
NILSONTRES 26/09/2016 18:27:41
#467539
[ô]**IPI
If Not Nota.NFe.infNFe.det(I).imposto.IPI Is Nothing Then
[ô]**IPITrib
If Not Nota.NFe.infNFe.det(I).imposto.IPI.IPITrib Is Nothing Then
GRID_ITENS.Rows(I).Cells(ICST_IPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.IPITrib.CST
GRID_ITENS.Rows(I).Cells(IcEnq_IPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.cEnq
GRID_ITENS.Rows(I).Cells(IvBC_IPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.IPITrib.vBC
GRID_ITENS.Rows(I).Cells(IpIPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.IPITrib.pIPI
GRID_ITENS.Rows(I).Cells(IvIPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.IPITrib.vIPI
End If
[ô]**IPINT
If Not Nota.NFe.infNFe.det(I).imposto.IPI.IPINT Is Nothing Then
GRID_ITENS.Rows(I).Cells(ICST_IPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.IPINT.CST
GRID_ITENS.Rows(I).Cells(IcEnq_IPI.Name).Value = Nota.NFe.infNFe.det(I).imposto.IPI.cEnq
GRID_ITENS.Rows(I).Cells(IvBC_IPI.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IpIPI.Name).Value = [Ô]0,00[Ô]
GRID_ITENS.Rows(I).Cells(IvIPI.Name).Value = [Ô]0,00[Ô]
End If
End If

Estou fazendo assim e esta tudo normal.
Esta utilizando a mesma classe que enviei ? me parece problema de instancia não referenciada.
JOHNSTEVE 26/09/2016 18:54:06
#467544
Opa NILSONTRES
Muito obg pela classes vc me ajudou muito obg mesmo..

entao estou usando sim sua classe. eu ja sei qual foi o problema.. foi no na minha logica do IPI. q tava fazendo errado..
eu comparei com a sua q esta 100% certo foi so questao de um detalhe q eu tava colocando a mais no IPI..

eu tava fazendo assim>
   If Not nota.NFe.infNFe.det(AddGrid).imposto.IPI.IPITrib


e o certo q eu vi no seu . tem q começar assim como vc passou ai no exemplo para mim

  [ô]**IPI
If Not Nota.NFe.infNFe.det(I).imposto.IPI Is Nothing Then


testei aqui deu certo :D agora posso encerrar o Topico
NILSONTRES 26/09/2016 19:05:27
#467546
Página 4 de 5 [42 registro(s)]
Tópico encerrado , respostas não são mais permitidas