MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Controle de Vendas CNPJ

    Compartilhe
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 30/10/2018, 20:24

    Existe 1 campo na tabela pra lancamento em dinheiro e outro para credito
    seria este codigo acima ?

    Grato
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 31/10/2018, 11:40

    Bom dia

    Coloquei assim, mas na caixa de texto ficou R$ 0,00

    =Nz(DSoma("[PagoDinheiro]";"TblVenda";"[Ano]= [AnoRef] and [Empresa]= 'EmpresaA'");0)
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 31/10/2018, 11:58

    dai fiz assim:

    =Nz(DSoma("PagoDinheiro";"TblVenda";"Empresa= 'EmpresaA'");0)

    Somou certinho agora mas somou todos os anos quero que some tudo baseado somente no ano que esta em Me.RefAno que esta no Forn
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 31/10/2018, 14:13

    consegui aqui

    =Nz(DSoma("PagoDinheiro";"tblVenda";"Empresa= 'EmpresaA' AND DataVEnda BETWEEN #" & Format(DataSerial(Ano(Data());1;1);"mm/dd/yyyy") & "# AND #" & Format(DataSerial(Ano(Data());12;31);"mm/dd/yyyy") & "#"))

    Usei um codigo ja antes fornecido em outro Form.

    Andre
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 31/10/2018, 14:34

    Tem um pequeno detalhe aqui na Formula.

    Apesar dela estar certinha , preciso que a referencia seja feita pela Me.RefAno , pois se eu mudar no Form de 2018 para outro ano, o resultado ficara o mesmo.

    Alguem pode me passar a forma correta do codigo acima ?

    Andre

    avatar
    FabioGO
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 105
    Registrado : 22/08/2012

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  FabioGO em 1/11/2018, 11:43

    Não sei como está em seu formulário, mas pode ser que por ele estar desacoplado não funcione.
    Então coloque o código no evento após atualizar do seu campo AnoRef do formulário.

    Código:
    Me.SuaCaixaTexto = Nz(DSum("[PagoDinheiro]", "TblVenda", "[Ano])= [AnoRef] and [Empresa] = 'EmpresaA'"), 0)

    Faça o mesmo para as outras cxs de texto, trocando o nome dos referidos campos
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 1/11/2018, 13:44

    FabioGo, bom Dia,

    Fiz o seguinte:

    No ultimo exemplo aqui postado pelo IvanJR, ele fez duas macros conforme abaixo, entao trabalhei nelas e adaptei para as caixas novas que eu queria criar.
    adaptei tambem em Consulta QRYVEndas os campos PagoDinheiro, Pago Debito, PagoCartao e PagoPendencia, nestes ficou a soma de PagoDinheiro + PagoPendencia e PagoCredito + PagoDebito, para a caixa seguinte.

    Private Sub fncFazLista1 e Private Sub fncFazLista2

    Sendo assim deu tudo certo e removi das caixas de texto o que havia ja colocado em Fonte de Controle das mesmas.

    Ficou assim:




    Código:
    Private Sub AnoRef_AfterUpdate()
        Me!LstEmpresaA.RowSource = ""
        Me!LstEmpresaA.AddItem "Ano;Mês;Empresa;TotalVendas;TotalCompras"
        Me!V1 = 0: Me!V2 = 0
        Me!B1 = 0: Me!B2 = 0
       
        Me!LstEmpresaB.RowSource = ""
        Me!LstEmpresaB.AddItem "Ano;Mês;Empresa;TotalVendas;TotalCompras"
        Me!V3 = 0: Me!V4 = 0
        Me!B3 = 0: Me!B4 = 0
       
        If Nz(Me!AnoRef) = "" Then Exit Sub
       
        Call fncFazLista1
        Call fncFazLista2
       
    End Sub

    Código:
    Private Sub fncFazLista1()

        Dim i As Byte
        Dim rs As DAO.Recordset
        Dim arrValor(1 To 12, 1 To 2) As Currency
        Dim arrValor2(1 To 12, 1 To 2) As Currency
        Dim arrValor3(1 To 12, 1 To 2) As Currency
        Dim strEmpresa, strFantasia As String
       
        strEmpresa = "EmpresaA"
        strFantasia = "EmpresaB"
                                           
        Set rs = CurrentDb.OpenRecordset("SELECT * " & _
                                        "FROM QryVendas " & _
                                        "WHERE Ano = " & Me!AnoRef & " And Empresa = '" & strEmpresa & "' " & _
                                        "ORDER BY Mês;", 8)
                                                                           
        While Not rs.EOF
            arrValor(rs.Fields(1), 1) = rs.Fields(3)
            arrValor2(rs.Fields(1), 1) = rs.Fields(4)
            arrValor3(rs.Fields(1), 1) = rs.Fields(5)
            rs.MoveNext
        Wend
       
        rs.Close: Set rs = Nothing
       
        Set rs = CurrentDb.OpenRecordset("SELECT * " & _
                                        "FROM QryCompras " & _
                                        "WHERE Ano = " & Me!AnoRef & " And Empresa = '" & strFantasia & "' " & _
                                        "ORDER BY Mês;", 8)
                                       
        While Not rs.EOF
            arrValor(rs.Fields(1), 2) = rs.Fields(3)
            rs.MoveNext
        Wend
       
        rs.Close: Set rs = Nothing
       
        For i = 1 To 12
            Me!LstEmpresaA.AddItem Me!AnoRef & ";" & StrConv(MonthName(i), vbProperCase) & ";" & strEmpresa & ";R$ " & Format(arrValor(i, 1), "Standard") & ";R$ " & Format(arrValor(i, 2), "Standard")
            Me!V1 = Me!V1 + arrValor(i, 1): Me!V2 = Me!V2 + arrValor(i, 2)
            Me!B1 = Me!B1 + arrValor2(i, 1): Me!B2 = Me!B2 + arrValor3(i, 1)
            Next i

    End Sub

    Código:
    Private Sub fncFazLista2()

        Dim i As Byte
        Dim rs As DAO.Recordset
        Dim arrValor(1 To 12, 1 To 2) As Currency
        Dim arrValor2(1 To 12, 1 To 2) As Currency
        Dim arrValor3(1 To 12, 1 To 2) As Currency
        Dim strEmpresa As String
       
        strEmpresa = "EmpresaB"
        strFantasia = "EmpresaA"

        Set rs = CurrentDb.OpenRecordset("SELECT * " & _
                                        "FROM QryVendas " & _
                                        "WHERE Ano = " & Me!AnoRef & " And Empresa = '" & strEmpresa & "' " & _
                                        "ORDER BY Mês;", 8)
                                       
        While Not rs.EOF
            arrValor(rs.Fields(1), 1) = rs.Fields(3)
            arrValor2(rs.Fields(1), 1) = rs.Fields(4)
            arrValor3(rs.Fields(1), 1) = rs.Fields(5)
            rs.MoveNext
        Wend
       
        rs.Close: Set rs = Nothing

        Set rs = CurrentDb.OpenRecordset("SELECT * " & _
                                        "FROM QryCompras " & _
                                        "WHERE Ano = " & Me!AnoRef & " And Empresa = '" & strFantasia & "' " & _
                                        "ORDER BY Mês;", 8)
                                       
        While Not rs.EOF
            arrValor(rs.Fields(1), 2) = rs.Fields(3)
            rs.MoveNext
        Wend
       
        rs.Close: Set rs = Nothing
       
        For i = 1 To 12
            Me!LstEmpresaB.AddItem Me!AnoRef & ";" & StrConv(MonthName(i), vbProperCase) & ";" & strEmpresa & ";R$ " & Format(arrValor(i, 1), "Standard") & ";R$ " & Format(arrValor(i, 2), "Standard")
            Me!V3 = Me!V3 + arrValor(i, 1): Me!V4 = Me!V4 + arrValor(i, 2)
            Me!B3 = Me!B3 + arrValor2(i, 1): Me!B4 = Me!B4 + arrValor3(i, 1)
        Next i

    End Sub

    Fico Grato, neste tópico, a Vc FabioGo e IvanJr pelo apoio prestado.

    Andre
    avatar
    fazerbem
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 331
    Registrado : 05/03/2017

    Re: [Resolvido]Controle de Vendas CNPJ

    Mensagem  fazerbem em 1/11/2018, 13:46

    Grato e fechando

      Data/hora atual: 26/3/2019, 03:00