none
Reportwier com Datatable RRS feed

  • Pergunta

  • Galera, Boa Tarde..

    Fiz um relatorio com reportwier, via codigo onde monto o pedido PAI e Pedidos filhos.

    O pai e unico e os filhos dependendo to tanto de filhos que esse pedido tem. o problema é que pode ser qualquer quantidade de filho ele so carrega o pai e um filho.

    E xemplo..

    Pedido pai(Codigo '1'), pedidos filhos (Codigo '1','2','3') so vai carregar o pai e o filho 3.

    Segue a funçao que estou usando.

    Dim orcl As String = "select cdpfi as numpedcomp from lep_web_pedido where ebeln  = '" & NumPedPrinc & "'"
            Dim dtNumFilho As DataTable = ExecuteDataTable(orcl)

            Dim dtPedidoFilho As New DataTable

     For Each Item As DataRow In dtNumFilho.Rows


              


                Dim orcl1 As String = "Select distinct fornc as FORNECEDOR, name1 as RAZSOC,'' as NEG,'' as CODNEG,eindt as ENTREGA,zterm as COND_PAGTO, inco1 as FRETE,' ' as PORCDESC,fileg as LOCALDESTINO,locen as  LOCALENTREGA,txz01 as DESCRICAOTP FROM lep_web_pedido where cdpfi in('" & Item("Numpedcomp") & "') "
                Dim dtLocalEntregaparc As DataTable = ExecuteDataTable(orcl1)


                Dim orcl2 As String = "Select distinct RAZSOC , ENDERECO, NUMERO, CEP, CIDADE, ESTADO, DDD, FONE, CGCCPF, INSCRICAO, (select FANTASIA from CAD_FILIAL where CODFIL = '" & dtLocalEntregaparc.Rows(0)("LOCALDESTINO") & "') FANTASIA2 from CAD_FILIAL where CODFIL = '" & dtLocalEntregaparc.Rows(0)("LOCALENTREGA") & "'"
                Dim dtLocalEntregaparc2 As DataTable = ExecuteDataTable(orcl2)


                Dim orcl3 As String = "Select txz01 as DESCRICAO,idnlf as REFER,VLICM as CODIGO,menge as QTDE,brtwr as PRECO_BRUTO,' ' as REF_COR,VLIPI as IPI,color as COR,(menge*brtwr) as TOTAL,'testetotal1' as TOTAL1 from lep_web_pedido where cdpfi in ('" & Item("Numpedcomp") & "') "
                Dim dtItens As DataTable = ExecuteDataTable(orcl3)


                Dim orcl4 As String = "Select sum(menge) as QTDE,(brtwr*menge) as TOTAL from lep_web_pedido where cdpfi in('" & Item("Numpedcomp") & "') group by menge,brtwr"
                Dim dtTotal As DataTable = ExecuteDataTable(orcl4)


                'Tirei para teste Luiz


                Dim Quantidade As Integer = 0
                Dim Total As Double = 0


                For Each TotalItens As DataRow In dtTotal.Rows


                    'Quantidade = Quantidade + TotalItens("QTDE")
                    'Total = Total + TotalItens("Total")
                    Quantidade = TotalItens("QTDE")
                    Total = TotalItens("Total")


                Next


                For Each subItem As DataRow In dtItens.Rows


                    dtPedidoFilho.Rows.Add(Item("NumPedComp"), dtLocalEntregaparc.Rows(0)("FORNECEDOR"), dtLocalEntregaparc.Rows(0)("RAZSOC"), dtLocalEntregaparc.Rows(0)("NEG"), dtLocalEntregaparc.Rows(0)("CODNEG"), dtLocalEntregaparc.Rows(0)("ENTREGA"), dtLocalEntregaparc.Rows(0)("COND_PAGTO"), dtLocalEntregaparc.Rows(0)("FRETE"), dtLocalEntregaparc.Rows(0)("PORCDESC"), dtLocalEntregaparc.Rows(0)("DESCRICAOTP"), dtLocalEntregaparc2.Rows(0)("RAZSOC"), dtLocalEntregaparc2.Rows(0)("ENDERECO"), dtLocalEntregaparc2.Rows(0)("NUMERO"), dtLocalEntregaparc2.Rows(0)("CEP"), dtLocalEntregaparc2.Rows(0)("CIDADE"), dtLocalEntregaparc2.Rows(0)("ESTADO"), dtLocalEntregaparc2.Rows(0)("DDD"), dtLocalEntregaparc2.Rows(0)("FONE"), dtLocalEntregaparc2.Rows(0)("CGCCPF"), dtLocalEntregaparc2.Rows(0)("INSCRICAO"), dtLocalEntregaparc2.Rows(0)("FANTASIA2"), subItem("DESCRICAO"), subItem("REFER"), subItem("CODIGO"), subItem("QTDE"), subItem("PRECO_BRUTO"), subItem("REF_COR"), subItem("COR"), subItem("IPI"), Quantidade, Total)


                Next








            Next


            Return dtPedidoFilho


            dtPedidoFilho.Dispose()
            dtPedidoFilho.Clear()


        End Function

    quarta-feira, 8 de fevereiro de 2012 17:23

Todas as Respostas