MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    [Resolvido]Abrir Form atraves de código e retorna ao código

    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Convidado 10/4/2011, 03:19

    Tenho o Seguinte código

    Private Sub cmdTotalizar_Click()
    Dim MSG
    If Me.ltxProdutosVenda.ListCount > 0 Then
    MSG = MsgBox("Confirma totalizar ( finalizar ) a venda ?", vbInformation + vbYesNo, "SysVen")

    'Se a venda é Totalizada vai para o comando Parcelar
    If MSG = vbYes Then GoTo Parcelar
    Exit Sub
    If MSG = vbNo Then

    MsgBox "Não há produtos vendidos.", vbInformation, "SysVen"
    End If
    Parcelar:
    MSG = MsgBox("Parcelar a Venda? ", vbInformation + vbYesNo, "SysVen")

    'Se a venda é Paecelada, abre o Form de parcelamento
    If MSG = vbYes Then
    DoCmd.OpenForm "Cadastro_Parcelas"
    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value
    Forms!Cadastro_Parcelas.Vl_Bruto.Value = Me.txtTotal.Value
    Exit Sub

    If MSG = vbNo Then GoTo Totalizar
    Totalizar:

    If Me.ltxProdutosVenda.ListCount > 0 Then
    MSG = MsgBox("Confirma totalizar ( finalizar ) a venda ?", vbInformation + vbYesNo, "SysVen")


    * Observem que acima ele abre o Form de parcelamento.. antes da totalizacao da compra...
    o que preciso...
    que ele execute o codigo e abra o Form Cadastro_Parcelas e que quando eu sair do Form Cadastro_Parcela...
    ele continue a executar o codigo Seguinte...

    Se puderem me ajudar fico Grato

    Harysohn
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Alexandre Neves 10/4/2011, 09:51

    Bom dia Hary

    Substitua
    DoCmd.OpenForm "Cadastro_Parcelas"
    por
    DoCmd.OpenForm "Cadastro_Parcelas", acNormal, , , , acDialog
    Cumprimentos,
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty FUNCIONOU EM PARTES

    Mensagem  Convidado 10/4/2011, 13:19

    Amigo Vieira...

    Ele executou o form Cadastro_Parcelas e voltou ao código.. mas ele não entendeu as linhas seguintes...

    Observe que a duas linhas seguinte, são usadas para jogar valores do Form VENDAS em campos text no Form Cadastro Parcela..

    If MSG = vbYes Then
    DoCmd.OpenForm "Cadastro_Parcelas", acNormal, , , , acDialog
    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value
    Forms!Cadastro_Parcelas.Vl_Bruto.Value = Me.txtTotal.Value



    Então quando abre o Cadastro parcelas as linhas que transferem o texto não são colocadas no form de destino,
    e dá erro no código...


    Se puder ajudar, ficarei grato.. Obrigado...

    Saudações.

    Harysohn
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Alexandre Neves 10/4/2011, 14:29

    Novamente, Hary

    Não sou Vieira, mas não é tão importante.

    O formulário Cadastro_Parcelas está aberto?quando executa o código? Se não estiver, não funcionará.
    Cumprimentos,
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Alexandre, Cumprimentando....

    Mensagem  Convidado 10/4/2011, 15:48

    Eu clico no botao, toalizar a venda, onde executa rotinas de atualizacao de estoque e finalizacão da venda...

    Mas antes disso ele pergunta se quer parcelar a venda, Se Sim, abre o Form cadastro Parcelas (que utiliza valores do Form vendas para executar o parcelamento)

    If MSG = vbYes Then GoTo Parcelar
    Exit Sub
    If MSG = vbNo Then

    MsgBox "Não há produtos vendidos.", vbInformation, "SysVen"
    End If
    Parcelar:
    MSG = MsgBox("Parcelar a Venda? ", vbInformation + vbYesNo, "SysVen")

    'Se a venda é Paecelada, abre o Form de parcelamento
    If MSG = vbYes Then
    DoCmd.OpenForm "Cadastro_Parcelas"
    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value
    Forms!Cadastro_Parcelas.Vl_Bruto.Value = Me.txtTotal.Value


    Entao depois desse comando deve voltar ao codigo para finalizar a venda...
    nesse codigo..

    Totalizar:

    If Me.ltxProdutosVenda.ListCount > 0 Then
    MSG = MsgBox("Confirma totalizar ( finalizar ) a venda ?", vbInformation + vbYesNo, "SysVen")

    'Se a venda é Totalizada vai para o comando Totalizar
    If MSG = vbYes Then GoTo Totalizar

    DoCmd.OpenForm "frmTOTAL"
    Forms!FrmTotal.txtTotalCompra.Value = Me.txtTotal.Value

    DoCmd.SetWarnings False
    'Envia Dígito fiscal para atualizar na devida tabela
    DoCmd.OpenQuery "cnsCupom"
    DoCmd.OpenReport "fatura", acNormal


    'Envia venda para a Tbl Saidas
    DoCmd.OpenQuery "cnsSaidas"
    DoCmd.OpenQuery "cnsEXPRVA"
    DoCmd.SetWarnings True

    Forms!frmVENDAA.txtTotal.Value = "0,00"
    Me.Refresh


    'Limpa os campos do Cliente depois de totalizada a Venda
    Me.Cliente.Value = ""
    Me.Endereco.Value = ""
    Me.Cidade.Value = ""
    Me.Bairro.Value = ""
    Me.UF.Value = ""
    Me.RGCPF.Value = ""

    End If
    Forms!FrmTotal.SetFocus

    End If
    End If
    End Sub


    Acontece que se coloco a sugestão do amigo vieira.. acDialog..
    ele abra o Form cadastro parcelas mas não reconhece os campos necessario na tabela Vendas


    DoCmd.OpenForm "Cadastro_Parcelas", acNormal, , , , acDialog ( Aqui abre o form parcelas, mas não reconhece as linhas seguintes que são necessarias ao parcelamento.)

    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value
    Forms!Cadastro_Parcelas.Vl_Bruto.Value = Me.txtTotal.Value//

    E quando sai do parcelamento o codigo recomeca justamente nessa linha, o que dá erro..


    Se puder ajudar ficarei imensamente grato..
    Obrigado Harysohn


    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Alexandre Neves 10/4/2011, 16:40

    Novamente, Hary

    Arrume convenientemente o código e, se necessitar, carregue a parte da bd para ver melhor.

    Quando avalia uma condição e tem duas saídas, uma em caso verdadeiro e outra em caso falso, deve utilizar o If ... Then ... Else ...
    Cumprimentos,
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Continuando

    Mensagem  Convidado 10/4/2011, 16:57

    Caro alexandre, apliquei as correcoes quanto ao ElseIf

    Agora pensei assim..

    como preciso que o Form Cadastro_Parcelas abra com a opcao AcDialog

    ele não entende as linha subsequentes que são necessarias...

    DoCmd.OpenForm "Cadastro_Parcelas", acNormal, , , , acDialog
    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value (Essas linhas)
    Forms!Cadastro_Parcelas.Vl_Bruto.Value = Me.txtTotal.Value (Essas linhas)

    Então pensei na seguinte solução:

    Ao inves de carregar esses comando atraves do Form Vendas, carregalos no evento ao Abrir fo Form parcela...

    Assim:


    Private Sub Form_Open(Cancel As Integer)
    Forms!FrmEntrada_Merc.Cliente.Value = Me.Nome_Cliente.Value
    Forms!FrmEntrada_Merc.Me.txtTotal.Value = Vl_Bruto.Value

    End Sub

    Acontece que o Form Parcelas não esta puxando os valores do Form Vendas...

    Tem como analizar as linha e ver o que está Errado?

    Obrigado

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Alexandre Neves 10/4/2011, 17:02

    Vamos lá ver se nos entendemos:
    A intrução
    Forms!Cadastro_Parcelas.Nome_Cliente.Value = Me.Cliente.Value
    indica que o controlo Nome_Cliente do formulário Cadastro_Parcelas assume o valor do controlo Cliente do formulário actual. Qual o formulário actual? Em que formulário está o foco?
    Cumprimentos,
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Assim

    Mensagem  Convidado 10/4/2011, 17:08

    O Form que principal é o

    FormVENDA

    no código eu abro o Form_Parcelas

    Nome_Cliente.Value (Este campo é do FORM_Parcelas
    = Me.Cliente.Value (Esse campo é do FrmVENDA

    Então quando o codigo abre o Form_Parcelas
    O valor contido no Caixa Cliente vai para a Caixa Nome_Cliente do Form Parcelas
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Alexandre Neves 10/4/2011, 17:59

    Que confusão está a fazer:
    Parece-me que pretende que o formulário Cadastro_Parcelas, ao abrir, abra com o nome do cliente do formulário frmVendas.
    Se assim for, execute o código ao abrir do formulário Cadastro_Parcelas: Forms!Cadastro_Parcelas!Nome_Cliente=Forms!frmVendas!Cliente
    Cumprimentos,
    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty EXATO...

    Mensagem  Convidado 10/4/2011, 18:17

    Foi o que fiz amigo...


    DoCmd.GoToRecord , , acNewRec

    Me.Nome_Cliente.Value = Forms!FrmVendaa.Cliente.Value
    Me.Vl_Bruto.Value = Forms!FrmVendaa.txtTotal.Value

    'Limpa o Registro de Parcelamento para o recebimento das novas parcelas do Cliente
    DoCmd.SetWarnings False
    DoCmd.RunSQL "Delete * from tbl_parcelas_Vendas where Num_OR = " & Me.Num_OR & ""
    DoCmd.SetWarnings True
    Me.Forma_Pgto.Requery
    Me.Forma_Pgto.SetFocus


    Ai sim depois que faço o parcelamento e fecho o form Parcela

    ele retornar para o FrmVendar e executa o restante do codigo finalizando a venda....


    A lógica que usei é a seguinte...

    Faz-se a venda para o cliente...

    ao clicar no botão Finaliza Vendas...
    ele abre o Form do parcelamento questionando se deseja percelar...
    Se sim.. efetua o parcelamento
    se Não, não efetua o parcelamento e totaliza a venda a Vista...

    Entendeu?

    Agora sim Deu certo...

    rsrs Quanto a confusao, me perdoe... mas ainda estou no comecinho das veredas do VBA
    Mestre alexandre...

    Muito obrigado pela atenção dispensada meu amigo..

    Tenha uma ótima tarde e um bom final de semana

    Abraços

    Harysohn

    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Dilson 11/4/2011, 10:23

    Olá Harysohn, bom dia!

    Exceto em um post não utilizaste das letras maiúsculas para dar destaque em palavras.

    Amigo, fiz as devidas correções e gostaria de pedir-lhe que não utilize letras maiúsculas para destacar palavras, pois contraria a regra 12 do Fórum. A sugestão é que se utilize do negrito ou cor diferente.

    Os melhores cumprimentos

    avatar
    Convidado
    Convidado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty OK

    Mensagem  Convidado 11/4/2011, 15:50

    Obrigado pela dica...
    Grato..
    harysohn

    Conteúdo patrocinado


    [Resolvido]Abrir Form atraves de código e retorna ao código Empty Re: [Resolvido]Abrir Form atraves de código e retorna ao código

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 20:29