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]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Compartilhe

    braine
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 67
    Registrado : 16/01/2014

    [Resolvido]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Mensagem  braine em Sex 21 Jul 2017, 14:50

    Peço ajuda do fórum mais uma vez

    Estou montando um formulário de Entrada de Nota
    Aonde pega os Dados do "Empenho" ou "Pedido" e confronta a quantidade pedida e lança na TabItensdaNota e atualiza os valores no SubFormulario Dados Empenho.

    Até ai tudo funcionando corretamente.

    Gostaria de colocar um "Botão" que ao ser acionado Apagasse todos os itens lançados na TabItensdaNota e "Desfizesse" as alterações que Foram feitas em Dados Empenho.

    [Você precisa estar registrado e conectado para ver este link.]

    braine
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 67
    Registrado : 16/01/2014

    Re: [Resolvido]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Mensagem  braine em Ter 25 Jul 2017, 12:15

    Consegui, o subformulário mudei para uma listbox. Que ao receber "duplo click" no item desejado abre o formulário "excluir item" e joga o Foco no botão "Excluir" que ao receber foco  desfaz as alterações que haviam sido feitas. E volta para o lançamento de "Nota".

    [Você precisa estar registrado e conectado para ver este link.]

    Código da listbox:

    Private Sub Lista_DblClick(Cancel As Integer)

    On Error Resume Next
    If Lista.Column(0) = Null Or Lista.Column(0) = "" Then Exit Sub  'se clicar fora do registro na lista cancela o evento
    DoCmd.OpenForm "formexclusaoiten", , , "código =" & Lista.Column(0)
    Forms!formexclusaoiten.Visible = True 'mostra o formulário "formexclusaoiten"
    Forms!formexclusaoiten!Excluir.SetFocus 'Joga o foco no botão Excluir

    End Sub

    Código do botão Excluir

    Private Sub Excluir_GotFocus()
    Dim ent As String
    Dim aen As String
    Dim val As String

    ent = Forms!formexclusaoiten!subformItem!entregue.Value
    aen = Forms!formexclusaoiten!subformItem!Aentregar.Value
    val = Forms!formexclusaoiten!subformItem!valorentregue.Value
    'Atualiza os campos "Entregue", "AEntregar" e "ValorEntregue"
    Forms!formexclusaoiten!subformItem!entregue = Null 'limpa o campo Entregue
    Forms!formexclusaoiten!subformItem!entregue = ent - Me!entregue 'Atualiza o valor Entregue

    Forms!formexclusaoiten!subformItem!Aentregar = Null 'limpa o campo Aentregar
    Forms!formexclusaoiten!subformItem!Aentregar = aen + Me!entregue 'Atualiza o valor Aentregar

    Forms!formexclusaoiten!subformItem!valorentregue = Null 'limpa o campo Valor Entregue
    Forms!formexclusaoiten!subformItem!valorentregue = Forms!formexclusaoiten!subformItem!entregue * Me!PrecoUnitario 'Atualiza o Valor Entregue

    'Atualiza o Status da mercadoria
    Select Case Forms!formexclusaoiten!subformItem!entregue
    Case Is = 0
    Forms!formexclusaoiten!subformItem!Status.Value = "Não Entregue"

    Case Is > Forms!formexclusaoiten!subformItem!Quantidade.Value
    Forms!formexclusaoiten!subformItem!Status.Value = "Erro"

    Case Is = Forms!formexclusaoiten!subformItem!Quantidade.Value
    Forms!formexclusaoiten!subformItem!Status.Value = "Entregue"

    Case Is > Forms!formexclusaoiten!subformItem!Quantidade.Value
    Forms!formexclusaoiten!subformItem!Status.Value = "Erro"

    Case Is < Forms!formexclusaoiten!subformItem!Quantidade.Value
    Forms!formexclusaoiten!subformItem!Status.Value = "Parcial"


    End Select
    'If MsgBox("Deseja realmente excluir o registro atual?", vbQuestion + vbYesNo, "Sistema") = vbNo Then Exit Sub 'Se a resposta for não cancela a ação
       'exclui o registro
       DoCmd.SetWarnings False 'oculta mensagens nativas do access na exclusão
       DoCmd.RunCommand acCmdDeleteRecord
       DoCmd.SetWarnings False 'retorna a propriedade nativa do access
       DoCmd.ShowAllRecords
       DoCmd.GoToRecord , , acNewRec

    DoCmd.OpenForm "fornotafiscal"
    DoCmd.Requery "lista"
    Forms!formexclusaoiten.Visible = False
    Me.Item.SetFocus
    Me.Item.Requery
    End Sub

    braine
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 67
    Registrado : 16/01/2014

    Re: [Resolvido]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Mensagem  braine em Ter 25 Jul 2017, 12:22

    Meus amigos preciso resolver somente a questão de quando e cancelar o lançamento da Nota toda.

    Não sei como fazer, mas tenho a nossa de como funciona.

    a Cada Item lançado na nota ele recebe um numero em sequencia 1,2,3... Gostaria de colocar um código que quando selecionado a exclusão da Nota. Roda-se um código que pegasse o Total de itens digamos 5, e fosse desfazendo as alterações como em contagem regressiva tipo "5", faz um Loop retorna "4"... até chegar no "0" e Cancelar A nota em si.


    braine
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 67
    Registrado : 16/01/2014

    Re: [Resolvido]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Mensagem  braine em Ter 25 Jul 2017, 13:28

    Quase pronto, esta dando erro quando o botão "Excluir" do formexclusaoiten recebe o Foco, código abaixo:

    Private Sub Cancelar_Click()
    Dim Cancelar As Byte
    Dim itens As Byte
    Do While Cancelar < Me!TotalItens 'Será executado exatamente a quantia de itens da nota'
     
    DoCmd.OpenForm "formexclusaoiten", , , "NumeroItens =" & TotalItens
    Forms!formexclusaoiten.Visible = True 'mostra o formulário "formexclusaoiten"
    Forms!formexclusaoiten!Excluir.SetFocus

    'Diminui o item excluido
    itens = Forms!fornotafiscal!TotalItens - 1
    Forms!fornotafiscal!TotalItens = Null
    Forms!fornotafiscal!TotalItens = itens

       Cancelar = Cancelar + 1
    Loop
    End Sub

    [Você precisa estar registrado e conectado para ver este link.]

    Não sei aonde estou errando

    Ou tem um jeito mais facil?

    braine
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 67
    Registrado : 16/01/2014

    Re: [Resolvido]Desfazer Lançamentos em 1 Subformulário e atualizar os valores em outro.

    Mensagem  braine em Ter 25 Jul 2017, 19:03

    Abrir outro especifico para o Loop

      Data/hora atual: Seg 11 Dez 2017, 22:59